tbc-tx-parser 0.2.0 → 0.3.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
@@ -28,9 +28,12 @@ Currently supported:
28
28
  The parser never accesses the network or fetches prevouts by txid. The caller must provide `inputUtxos` for every transaction input.
29
29
  Coinbase reward transactions have no spendable input prevouts and are the only exception that may omit `inputUtxos`.
30
30
 
31
- ## 0.2.0: tbc-contract 1.7.2 compatibility
31
+ ## 0.3.0: tbc-contract 1.7.3 with historical compatibility
32
32
 
33
- This release pins `tbc-contract@1.7.2` and `tbc-lib-js@1.0.31`. Renamed implementations remain in their existing business families:
33
+ This release pins `tbc-contract@1.7.3` and `tbc-lib-js@1.0.31`. The runtime alias
34
+ `tbc-contract-172` pins the original `tbc-contract@1.7.2` AMM codecs so existing
35
+ 143-byte pools remain decodable alongside 1.7.3 168-byte pools. Renamed
36
+ implementations remain in their existing business families:
34
37
 
35
38
  | Internally recognized implementation | Public business family |
36
39
  | --- | --- |
@@ -51,6 +54,17 @@ Modern action checks include token conservation and input amount slots, StableCo
51
54
 
52
55
  All contract generations use the same asset-flow conventions. `assetFlows` describes transfers, locks, releases, minting, burning and source-linked returns. Contract carriers and full pool reserves stay in `chain`; they are not additional payments. Repeated payments remain separate, and unknown positive outputs remain unrecognized TBC transfers. An address endpoint is `{ address }`; transaction output locations stay in `chain.outputs`. Malformed evidence is reported through `classification.issues` and unrecognized flow context.
53
56
 
57
+ AMM 1.7.3 retains the public `poolNft` family and adds optional pool metadata:
58
+ `lpFeeRate`, `taxFeeRate`, `serviceProviderFeeRate`, `protocolFeeRate` (basis points),
59
+ `feeAddress` (the single P2PKH recipient for non-LP fee shares), and
60
+ `serviceProviderTagHex` (the exact immutable tag bytes, including empty/non-UTF-8
61
+ labels). `serviceFeeRate` is the sum of the four rates; `lpPlan` is absent for
62
+ 1.7.3 pools. Existing 1.7.2 and legacy PoolNFT metadata keeps its original shape.
63
+ The new fields appear in decoded Pool Tape and pool-creation asset metadata.
64
+ The parser authenticates each generation's full Code template, checks Code/Tape
65
+ version and authorization consistency, and verifies the fee recipient against the
66
+ Code's committed script hash before accepting a standard pool transition.
67
+
54
68
  Plan 6 decoding distinguishes the historical 130/80-bp total/LP schedule from the current 330/200-bp schedule using the on-chain total fee rate. Legacy locked LP tapes and native pool payouts below 500 satoshis are also handled.
55
69
 
56
70
  ## Basic Usage
@@ -311,21 +325,28 @@ On 2026-09-30, 568 transactions were freshly broadcast to testnet and fetched ba
311
325
  - 513 transactions covering the supported contract actions: FT, NFT, StableCoin, AMM/LP, native/token HTLC, timelock, native/token-pair orders, legacy StableCoin, and funding transactions.
312
326
  - 55 additional legacy contract transactions: FT, NFT, MultiSig, ordinary/locked PoolNFT v2, and OrderBook.
313
327
 
314
- The checked-in `tests/fixtures/contract-172-live.json` and `contract-legacy-live.json` contain raw transactions, complete raw parents, and input context. The compatibility runner checked native builders against the pinned JS reference and script interpreters before broadcasting. Parser regressions check txids, parent bindings, fees, business classification, and malformed evidence. This is the covered broadcast matrix, not a claim to test every possible contract combination.
328
+ On 2026-10-12, another 72 previously broadcast/refetched 1.7.3 AMM lifecycle
329
+ transactions were captured: 24 each from JS, Rust and Go, covering public and
330
+ controller pools, plain/timelocked LP, liquidity, both swaps and LP transfers.
331
+ No new signing or broadcasting was needed for this parser update.
332
+
333
+ The checked-in `tests/fixtures/contract-172-live.json`, `contract-legacy-live.json`
334
+ and `contract-173-amm-live.json` contain raw transactions, complete raw parents,
335
+ and input context. The compatibility runner checked native builders against the pinned JS reference and script interpreters before broadcasting. Parser regressions check txids, parent bindings, fees, business classification, and malformed evidence. This is the covered broadcast matrix, not a claim to test every possible contract combination.
315
336
 
316
337
  ```bash
317
338
  pnpm build
318
339
  pnpm typecheck
319
340
  pnpm test # deterministic offline regressions, including fresh captured transactions
320
- pnpm test:live # read-only exact-raw refetch of all 568 fresh txids; no private key
341
+ pnpm test:live # read-only exact-raw refetch of all 640 captured txids; no private key
321
342
  pnpm test:all # offline regressions plus the current live refetch
322
343
  ```
323
344
 
324
- Start with the [decode example guide](tests/decode/README.md). It links one real transaction per business scenario, and [index.json](tests/decode/index.json) lists all 568 results with complete txids and source corpora:
345
+ Start with the [decode example guide](tests/decode/README.md). It links one real transaction per business scenario, and [index.json](tests/decode/index.json) lists all 640 results with complete txids and source corpora:
325
346
 
326
- - `tests/decode/new-contracts/<family>/`: 327 transactions for the newly integrated implementations.
347
+ - `tests/decode/new-contracts/<family>/`: 387 transactions for the modern implementations.
327
348
  - `tests/decode/legacy-contracts/<family>/`: 68 newly broadcast legacy compatibility transactions.
328
- - `tests/decode/native/`: 173 ordinary TBC transactions, including funding and multisig; these do not count as new-contract action coverage.
349
+ - `tests/decode/native/`: 185 ordinary TBC transactions, including funding and multisig; these do not count as new-contract action coverage.
329
350
 
330
351
  Each `case-*.json` is the actual public return value. Case metadata, generation grouping and broadcast evidence belong to the index, not the parser's result. Filenames use business actions and txids, without transaction-builder language categories. Default integration tests compare every result against a fresh offline decode. Public compatibility tests also verify endpoints, pool deltas, LP redemption and order settlement independently of the snapshots.
331
352
 
@@ -0,0 +1,32 @@
1
+ import type { PoolNftAssetMetadata } from '../../types/result.js';
2
+ type Generation = '1.7.2' | '1.7.3';
3
+ export interface PoolCode {
4
+ generation: Generation;
5
+ originalUTXO: Buffer;
6
+ ftTapeSize: number;
7
+ poolCodeHash: Buffer;
8
+ tbcFeeScriptHash: Buffer;
9
+ authorization: import('tbc-contract').PoolAuthorization;
10
+ profile: string;
11
+ serviceProviderTag?: Buffer;
12
+ }
13
+ export type PoolTape = (import('tbc-contract-172').DecodedPoolTape & {
14
+ generation: '1.7.2';
15
+ }) | (import('tbc-contract').DecodedPoolTape & {
16
+ generation: '1.7.3';
17
+ });
18
+ /** Each pinned parser authenticates the complete compiler template, including its tail. */
19
+ export declare function poolCode(hex: string): PoolCode | undefined;
20
+ export declare function poolTape(hex: string): PoolTape | undefined;
21
+ /** Normalize an old plan to equivalent explicit rates without inventing a plan for new pools. */
22
+ export declare function poolFeePolicy(tape: PoolTape): import('tbc-contract').SwapFeePolicy;
23
+ export declare function poolConfigurationIssues(code: PoolCode, tape: PoolTape): string[];
24
+ export declare function poolMetadata(code: PoolCode, tape: PoolTape): PoolNftAssetMetadata;
25
+ export declare const poolMath: {
26
+ quoteAddLP(s: import("tbc-contract").PoolMathState, amount: bigint, first?: bigint): import("tbc-contract").AddLPQuote;
27
+ quoteRemoveLP(s: import("tbc-contract").PoolMathState, amount: bigint): import("tbc-contract").RemoveLPQuote;
28
+ quoteSwapFT(s: import("tbc-contract").PoolMathState, amount: bigint, policy: import("tbc-contract").SwapFeePolicy): import("tbc-contract").SwapFTQuote;
29
+ quoteSwapTBC(s: import("tbc-contract").PoolMathState, amount: bigint, policy: import("tbc-contract").SwapFeePolicy): import("tbc-contract").SwapTBCQuote;
30
+ };
31
+ export {};
32
+ //# sourceMappingURL=amm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amm.d.ts","sourceRoot":"","sources":["../../../src/protocols/modern/amm.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,KAAK,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;AACpC,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,OAAO,cAAc,EAAE,iBAAiB,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AACD,MAAM,MAAM,QAAQ,GAChB,CAAC,OAAO,kBAAkB,EAAE,eAAe,GAAG;IAAE,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,GACtE,CAAC,OAAO,cAAc,EAAE,eAAe,GAAG;IAAE,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAcvE,2FAA2F;AAC3F,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAM1D;AACD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAO1D;AAED,iGAAiG;AACjG,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,cAAc,EAAE,aAAa,CAUlF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAahF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,oBAAoB,CAcjF;AAGD,eAAO,MAAM,QAAQ,EAAuD;IAC1E,UAAU,CAAC,CAAC,EAAE,OAAO,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,cAAc,EAAE,UAAU,CAAC;IACvH,aAAa,CAAC,CAAC,EAAE,OAAO,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,cAAc,EAAE,aAAa,CAAC;IAC7G,WAAW,CAAC,CAAC,EAAE,OAAO,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,cAAc,EAAE,aAAa,GAAG,OAAO,cAAc,EAAE,WAAW,CAAC;IACvJ,YAAY,CAAC,CAAC,EAAE,OAAO,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,cAAc,EAAE,aAAa,GAAG,OAAO,cAAc,EAAE,YAAY,CAAC;CAC1J,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { createRequire } from 'node:module';
2
+ import { createHash } from 'node:crypto';
3
+ import sdk from 'tbc-contract';
4
+ import { tbc } from '../../adapters/tbc-lib.js';
5
+ const require = createRequire(import.meta.url);
6
+ const currentCode = require('tbc-contract/lib/util/tbc-amm/artifacts.js');
7
+ const legacyCode = require('tbc-contract-172/lib/util/tbc-amm/artifacts.js');
8
+ // Import only the historical codecs, avoiding the old package's global root initializer.
9
+ const legacyTape = require('tbc-contract-172/lib/util/tbc-amm/tape.js');
10
+ const legacyFees = require('tbc-contract-172/lib/util/tbc-amm/fees.js');
11
+ /** Each pinned parser authenticates the complete compiler template, including its tail. */
12
+ export function poolCode(hex) {
13
+ for (const [generation, codec] of [['1.7.3', currentCode], ['1.7.2', legacyCode]]) {
14
+ try {
15
+ return { ...codec.parsePoolCode(Buffer.from(hex, 'hex')), generation };
16
+ }
17
+ catch { /* Another generation or an unsupported/modified script. */ }
18
+ }
19
+ return undefined;
20
+ }
21
+ export function poolTape(hex) {
22
+ try {
23
+ const bytes = Buffer.from(hex, 'hex');
24
+ if (bytes.length === 143)
25
+ return { ...legacyTape.decodePoolTape(bytes), generation: '1.7.2' };
26
+ if (bytes.length === 168)
27
+ return { ...sdk.decodePoolTape(bytes), generation: '1.7.3' };
28
+ }
29
+ catch { /* Invalid framing or fields. */ }
30
+ return undefined;
31
+ }
32
+ /** Normalize an old plan to equivalent explicit rates without inventing a plan for new pools. */
33
+ export function poolFeePolicy(tape) {
34
+ if (tape.generation === '1.7.3')
35
+ return sdk.resolveSwapFeePolicy(tape, new tbc.Address(tape.feeAddress, tbc.Networks.livenet).toString());
36
+ const old = legacyFees.resolveSwapFeePolicy(tape.lpPlan, tape.serviceFeeRate);
37
+ return sdk.resolveSwapFeePolicy({
38
+ lpFeeRate: old.lpFeeBps,
39
+ taxFeeRate: 0,
40
+ serviceProviderFeeRate: old.totalFeeBps - old.lpFeeBps,
41
+ protocolFeeRate: 0,
42
+ }, old.serviceFeeAddress);
43
+ }
44
+ export function poolConfigurationIssues(code, tape) {
45
+ const issues = [];
46
+ if (code.generation !== tape.generation)
47
+ issues.push('POOL_CODE_TAPE_VERSION_MISMATCH');
48
+ const controlled = code.authorization.kind === 'controller';
49
+ if (tape.withSwapHashLock !== controlled || tape.withLpHashLock !== controlled)
50
+ issues.push('POOL_AUTHORIZATION_MISMATCH');
51
+ try {
52
+ const policy = poolFeePolicy(tape);
53
+ const script = tbc.Script.buildPublicKeyHashOut(policy.serviceFeeAddress).toBuffer();
54
+ if (!createHash('sha256').update(script).digest().equals(code.tbcFeeScriptHash))
55
+ issues.push('POOL_FEE_RECIPIENT_MISMATCH');
56
+ }
57
+ catch {
58
+ issues.push('INVALID_POOL_FEE_CONFIGURATION');
59
+ }
60
+ return issues;
61
+ }
62
+ export function poolMetadata(code, tape) {
63
+ const flags = { withLock: tape.withSwapHashLock, withLockTime: tape.withLpLocktime };
64
+ if (tape.generation === '1.7.2')
65
+ return { serviceFeeRate: tape.serviceFeeRate, lpPlan: tape.lpPlan, ...flags };
66
+ return {
67
+ serviceFeeRate: tape.lpFeeRate + tape.taxFeeRate + tape.serviceProviderFeeRate + tape.protocolFeeRate,
68
+ lpFeeRate: tape.lpFeeRate,
69
+ taxFeeRate: tape.taxFeeRate,
70
+ serviceProviderFeeRate: tape.serviceProviderFeeRate,
71
+ protocolFeeRate: tape.protocolFeeRate,
72
+ feeAddress: new tbc.Address(tape.feeAddress, tbc.Networks.livenet).toString(),
73
+ serviceProviderTagHex: code.serviceProviderTag?.toString('hex'),
74
+ ...flags,
75
+ };
76
+ }
77
+ // Both generations use the same reserve equations; normalized policies preserve old rounding.
78
+ export const poolMath = require('tbc-contract/lib/util/tbc-amm/math.js');
79
+ //# sourceMappingURL=amm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amm.js","sourceRoot":"","sources":["../../../src/protocols/modern/amm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../src/protocols/modern/analyze.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EAET,YAAY,EACZ,aAAa,EACb,yBAAyB,EAE1B,MAAM,gBAAgB,CAAC;AAqGxB,qGAAqG;AACrG,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EAAE,EACtB,OAAO,EAAE,aAAa,EAAE,EACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,EAAE,EACtB,kBAAkB,EAAE,yBAAyB,GAC5C;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,cAAc,EAAE,yBAAyB,CAAA;CAAE,GAAG,SAAS,CA64BpF"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../src/protocols/modern/analyze.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EAET,YAAY,EACZ,aAAa,EACb,yBAAyB,EAE1B,MAAM,gBAAgB,CAAC;AAwGxB,qGAAqG;AACrG,wBAAgB,aAAa,CAC3B,MAAM,EAAE,YAAY,EAAE,EACtB,OAAO,EAAE,aAAa,EAAE,EACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,EAAE,EACtB,kBAAkB,EAAE,yBAAyB,GAC5C;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,cAAc,EAAE,yBAAyB,CAAA;CAAE,GAAG,SAAS,CA64BpF"}
@@ -1,7 +1,6 @@
1
1
  import { assetIdentities } from '../../core/asset-identity.js';
2
- import sdk from 'tbc-contract';
3
2
  import { tbc } from '../../adapters/tbc-lib.js';
4
- import { address, controllerHash, htlcCode, nftCode, orderCode, outpoint, poolCode, poolTape, poolMath, sha256, tokenCode, tokenState, } from './codecs.js';
3
+ import { address, controllerHash, htlcCode, nftCode, orderCode, outpoint, poolCode, poolTape, poolMath, poolFeePolicy, poolMetadata, poolConfigurationIssues, sha256, tokenCode, tokenState, } from './codecs.js';
5
4
  const sum = (items) => items.reduce((n, t) => n + t.state.balance, 0n);
6
5
  const owner = (s) => s.controller[20] === 0
7
6
  ? { address: address(s.controller.subarray(0, 20)) }
@@ -381,6 +380,9 @@ export function analyzeModern(inputs, outputs, txid, locktime, baseFlows, baseCl
381
380
  p.hex !== q?.hex))
382
381
  issues.push('INVALID_POOL_CONTINUITY');
383
382
  if (next && q) {
383
+ issues.push(...poolConfigurationIssues(q.code, next));
384
+ if (p && previous)
385
+ issues.push(...poolConfigurationIssues(p.code, previous));
384
386
  const expectedOrigin = outpoint(q.code.originalUTXO);
385
387
  if (!p) {
386
388
  if (inputs.some((i) => i.prevTxid === expectedOrigin.txid && i.vout === expectedOrigin.vout) &&
@@ -415,7 +417,7 @@ export function analyzeModern(inputs, outputs, txid, locktime, baseFlows, baseCl
415
417
  tbcAmount: previous.tbcAmount,
416
418
  poolValue: BigInt(p.value),
417
419
  };
418
- const policy = sdk.resolveSwapFeePolicy(next.lpPlan, next.serviceFeeRate);
420
+ const policy = poolFeePolicy(next);
419
421
  const matches = (v) => v.ftLpAmount === next.ftLpAmount &&
420
422
  v.ftAAmount === next.ftAAmount &&
421
423
  v.tbcAmount === next.tbcAmount &&
@@ -793,8 +795,7 @@ export function analyzeModern(inputs, outputs, txid, locktime, baseFlows, baseCl
793
795
  if (next && action === 'create')
794
796
  flows.push({
795
797
  asset: { type: 'nft', subtype: 'poolNft', contractId: txid, poolNft: {
796
- serviceFeeRate: next.serviceFeeRate, lpPlan: next.lpPlan,
797
- withLock: next.variant.startsWith('controller'), withLockTime: next.variant.endsWith('timelocked'),
798
+ ...poolMetadata(pool.code, next),
798
799
  } }, purpose: 'mint', direction: 'in',
799
800
  });
800
801
  if (next && previous && next.tbcAmount > previous.tbcAmount)
@@ -813,8 +814,7 @@ export function analyzeModern(inputs, outputs, txid, locktime, baseFlows, baseCl
813
814
  ftLpPartialHash: state.ftLpPartialHash.toString('hex'), ftAPartialHash: state.ftAPartialHash.toString('hex'),
814
815
  ftLpAmountRaw: state.ftLpAmount.toString(), ftLpDisplayAmount: exactDisplay(state.ftLpAmount, 6),
815
816
  ftAAmountRaw: state.ftAAmount.toString(), tbcSatoshis: Number(state.tbcAmount),
816
- ftContractTxid: state.ftAContractId, serviceFeeRate: state.serviceFeeRate, lpPlan: state.lpPlan,
817
- withLock: state.variant.startsWith('controller'), withLockTime: state.variant.endsWith('timelocked'),
817
+ ftContractTxid: state.ftAContractId, ...poolMetadata(p.code, state),
818
818
  } };
819
819
  }
820
820
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../src/protocols/modern/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,GAAG,MAAM,cAAc,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAShD,OAAO,EACL,OAAO,EACP,cAAc,EACd,QAAQ,EACR,OAAO,EACP,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,SAAS,EACT,UAAU,GAEX,MAAM,aAAa,CAAC;AASrB,MAAM,GAAG,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAChF,MAAM,KAAK,GAAG,CAAC,CAAa,EAAqB,EAAE,CACjD,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC;IACpB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;IACpD,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AAC7D,MAAM,SAAS,GAAG,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AACtF,SAAS,YAAY,CAAC,CAAS,EAAE,OAAe;IAC9C,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5F,CAAC;AACD,SAAS,cAAc,CACrB,QAA6B,EAC7B,MAAc,EACd,MAAgB,EAChB,WAAmB;IAEnB,OAAO;QACL,QAAQ;QACR,MAAM;QACN,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM;YACzB,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAClB,8DAA8D,CAAC,IAAI,CAAC,KAAK,CAAC,CAC3E;gBACH,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,aAAa;QACnB,WAAW;QACX,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC;AACjC,CAAC;AACD,SAAS,gBAAgB,CACvB,MAAsB,EACtB,OAAwB,EACxB,CAAa,EACb,MAAc;IAEd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG;QACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,CACzF,CAAC;IACF,IAAI,CAAC,IAAI,EAAE,OAAO;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IAC3C,IACE,CAAC,MAAM;QACP,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ;QAC7B,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC;QACpC,MAAM,CAAC,QAAQ,KAAK,CAAC;QAErB,OAAO,KAAK,CAAC;IACf,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAC1F,MAAM,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG;QAC/F,OAAO,KAAK,CAAC;IACf,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;IAC9C,IACE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe;QACvD,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvE,OAAO,KAAK,CAAC;IACf,IAAI,CAAC;QACH,OAAO,CACL,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,MAAM;YACrF,IAAI,CAAC,OAAO,KAAK,GAAG,CAAC,OAAO;YAC5B,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;YAChC,IAAI,CAAC,WAAW,KAAK,GAAG,CAAC,WAAW,CACrC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,aAAa,CAC3B,MAAsB,EACtB,OAAwB,EACxB,IAAY,EACZ,QAAgB,EAChB,SAAsB,EACtB,kBAA6C;IAE7C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAY,EAAE,EACrB,IAAI,GAAY,EAAE,CAAC;IACrB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EACjB,GAAG,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC;QAC9B,IACE,CAAC,IAAI;YACL,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ;YACxB,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;YAC/B,IAAI,CAAC,QAAQ,KAAK,CAAC;YACnB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAChB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC;YACP,KAAK;YACL,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,GAAG;YACH,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,EAAE,EAAE,CAAC,CAAC,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACzB,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAClC,MAAM,KAAK,GACT,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,GAAG;YAC3D,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAClC,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,EAC/B,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,CAAC;YACN,CAAC,CAAC;gBACE;oBACE,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,GAAG,EAAE,GAAI;oBACT,IAAI,EAAE,CAAC;oBACP,IAAI,EAAE,CAAC,CAAC,OAAQ,CAAC,cAAc;oBAC/B,KAAK,EAAE,CAAC,CAAC,OAAQ,CAAC,QAAS;iBAC5B;aACF;YACH,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EACtB,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,CAAC;YACN,CAAC,CAAC;gBACE;oBACE,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,GAAG,EAAE,GAAI;oBACT,IAAI,EAAE,CAAC;oBACP,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;oBAC1B,KAAK,EAAE,CAAC,CAAC,QAAQ;iBAClB;aACF;YACH,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACnE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,OAAQ,CAAC,MAAM,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACzC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,OAAQ,CAAC,MAAM,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CACJ,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpF,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,KAAK,GAAG,CACtE,CAAC;IACF,MAAM,aAAa,GACjB,UAAU;QACV,GAAG,CAAC,MAAM;QACV,IAAI,CAAC,MAAM;QACX,MAAM,CAAC,MAAM;QACb,UAAU,CAAC,MAAM;QACjB,WAAW,CAAC,MAAM;QAClB,UAAU,CAAC,MAAM;QACjB,WAAW,CAAC,MAAM;QAClB,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAClC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,aAAa;QAAE,OAAO,SAAS,CAAC;IACrC,MAAM,UAAU,GAAgB,EAAE,CAAC;IACnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;IAChD,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC1D,SAAS,gBAAgB,CAAC,MAAc,EAAE,IAAY,EAAE,WAAoB;QAC1E,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;YACzB,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,MAAM;YAC7B,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,CAC9C,CAAC;QACF,IAAI,MAAM;YAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;;YACjD,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7D,IAAI,QAAQ,GAAwB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY,CAAC;QAC9F,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,MAAM,GAAG,UAAU,CAAC;IACxB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3E,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAC3D,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,EACtD,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAChE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/C,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;gBACzF,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IACE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC5B,CAAC,MAAM,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CACxF;gBAED,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACxB,MAAM,MAAM,GACV,MAAM;YACN,MAAM,CAAC,IAAI,CACT,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,IAAI;gBAC1B,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;gBACtB,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,OAAO,CACrC,CAAC;QACJ,MAAM,YAAY,GAChB,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI;YAC5B,CAAC,IAAI,CAAC,MAAM;YACZ,CAAC,CAAC,MAAM;YACR,KAAK,GAAG,EAAE;YACV,CAAC,CAAC,CAAC,CAAC,iBAAiB,IAAI,KAAK,KAAK,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,UAAU,GACd,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY;YACpC,KAAK,GAAG,EAAE;YACV,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,MAAM,GACV,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM;YAC9B,WAAW,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,CAC5E;YACD,KAAK,GAAG,EAAE,CAAC;QACb,IAAI,YAAY;YAAE,EAAE,GAAG,IAAI,CAAC;QAC5B,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG;gBACrB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,CACzF,CAAC;YACF,uGAAuG;YACvG,EAAE;gBACA,IAAI,EAAE,OAAO,EAAE,UAAU;oBACzB,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,KAAK,GAAG;wBAC3E,CAAC,CAAC,IAAI,CAAC,QAAQ;wBACf,CAAC,CAAC,SAAS,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,IAAI,UAAU,IAAI,MAAM,CAAC;QAClD,IAAI,KAAK,KAAK,EAAE,IAAI,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACrE,IAAI,IAAI;YAAE,MAAM,GAAG,MAAM,CAAC;aACrB,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,GAAG,OAAO,CAAC;QACtE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,IAAI,WAAW,CAAC,MAAM,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACzC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACrF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9D,IAAI,QAAQ,GAAG,SAAS;gBAAE,MAAM,GAAG,QAAQ,CAAC;iBACvC,IAAI,QAAQ,GAAG,SAAS;gBAAE,MAAM,GAAG,UAAU,CAAC;YACnD,IACE,QAAQ,KAAK,SAAS;gBACtB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACd,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAC9E;gBAED,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAClD,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,EAAE;gBAAE,SAAS;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YAClE,MAAM,MAAM,GAAG;gBACb,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACzF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAsB,CAAC,CAAC;YACjD,MAAM,cAAc,GAClB,MAAM,CAAC,MAAM,KAAK,CAAC;gBACjB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACX,CAAC,CAAC;oBACE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1B,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ;wBAC9B,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI;qBAC3B,CAAC,CAAC;iBACJ,CAAC;YACR,MAAM,MAAM,GACV,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;gBAC5C,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9E,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,KAAK,oCAAoC,CAAC;YACzE,MAAM,OAAO,GAAG;gBACd,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM;gBAC1E,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;gBAC/B,MAAM;aACP,CAAC;YACF,MAAM,KAAK,GAAG;gBACZ,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,MAAsC;gBACzD,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;gBAChF,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3D,CAAC;YACF,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG;gBACb,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAC/B,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS;oBACzB,CAAC,CAAC;wBACE,OAAO,EAAE,CAAC,CAAC,OAAO;wBAClB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC;qBAClD;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;YACF,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM;gBACvB,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK;oBACL,MAAM;oBACN,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,KAAK;oBAChB,IAAI,EAAE,cAAc;oBACpB,OAAO;iBACR,CAAC,CAAC;iBACA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;gBAC3B,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK;oBACL,MAAM;oBACN,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,IAAI;oBACf,EAAE,EAAE,QAAQ;oBACZ,OAAO;iBACR,CAAC,CAAC;iBACA,IAAI,MAAM;gBACb,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK;oBACL,MAAM;oBACN,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,MAAM;oBACjB,IAAI,EAAE,cAAc;oBACpB,EAAE,EAAE,QAAQ;oBACZ,OAAO;iBACR,CAAC,CAAC;iBACA,IAAI,IAAI,CAAC,MAAM;gBAClB,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK;oBACL,MAAM;oBACN,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,KAAK;oBAChB,IAAI,EAAE,cAAc;oBACpB,EAAE,EAAE,QAAQ;oBACZ,OAAO;iBACR,CAAC,CAAC;;gBAEH,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK;oBACL,MAAM;oBACN,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,SAAS;oBACpB,EAAE,EAAE,QAAQ;oBACZ,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;iBAC3C,CAAC,CAAC;YACL,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,uFAAuF;QACvF,IAAI,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,MAAM;YAC7B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO;oBACnF,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC7C,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM;QAC9C,QAAQ;YACN,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,YAAY,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,YAAY,CAAC;gBAC7D,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC;IACb,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;QAC3E,QAAQ,GAAG,SAAS,CAAC;QACrB,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC;YACnD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;gBACxB,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,cAAc,CAAC;IACvB,CAAC;IAED,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAC9C,QAAQ,GAAG,YAAY,CAAC;QACxB,MAAM,GAAG,WAAW,CAAC;QACrB,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,GAAI,CAAE,CAAC,MAAM,CAAC;QACvD,IACE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;YACzE,UAAU,CAAC,QAAQ,KAAK,GAAG;YAC3B,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,QAAQ,KAAK,GAAG;YAC/C,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,QAAQ,KAAK,CAAC;YAE7C,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QAC5C,QAAQ,GAAG,SAAS,CAAC;QACrB,MAAM,GAAG,SAAS,CAAC;QACnB,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EACrB,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACzF,IACE,CAAC;YACD,CAAC,CAAC,QAAQ;gBACR,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ;gBACzC,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;gBAC/C,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG,CAAC;YAEnB,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACzC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;YACd,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,CAAC,CAAC,EAAE,CAAC;gBACP,IACE,MAAM,CAAC,IAAI,CACT,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,CAC5E;oBACD,IAAI,CAAC,SAAS,KAAK,EAAE;oBACrB,IAAI,CAAC,UAAU,KAAK,EAAE;oBACtB,IAAI,CAAC,SAAS,KAAK,EAAE;oBAErB,MAAM,GAAG,QAAQ,CAAC;;oBACf,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,CAAC,CAAc,EAAE,EAAE,CAChC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC9E,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CACzC,CAAC;gBACJ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACjF,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,EAC9C,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,EACxC,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;gBAC3C,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;oBAC/B,MAAM,GAAG,QAAQ,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC;qBAChE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;oBAAE,MAAM,GAAG,kBAAkB,CAAC;qBAC/D,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;oBAAE,MAAM,GAAG,aAAa,CAAC;qBAC5D,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE;oBAAE,MAAM,GAAG,aAAa,CAAC;qBAC5D,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;oBAAE,MAAM,GAAG,eAAe,CAAC;;oBAClE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBACjD,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG;wBACZ,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;qBAC3B,CAAC;oBACF,MAAM,MAAM,GAAG,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;oBAC1E,MAAM,OAAO,GAAG,CAAC,CAAuC,EAAE,EAAE,CAC1D,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU;wBAChC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;wBAC9B,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;wBAC9B,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAClC,IAAI,KAAK,GAAG,KAAK,CAAC;oBAClB,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,mBAAmB;wBACrD,KAAK,GAAG,OAAO,CACb,QAAQ,CAAC,UAAU,CACjB,KAAK,EACL,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,EACzB,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CACnC,CAAC,SAAS,CACZ,CAAC;yBACC,IAAI,MAAM,KAAK,kBAAkB,EAAE,CAAC;wBACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;wBACjD,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACjC,gBAAgB,CAAC,KAAK,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBACvE,CAAC;yBAAM,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;wBACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;wBACvD,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACjC,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACzD,IACE,KAAK,CAAC,IAAI,CAAC,iBAAiB,GAAG,EAAE;4BACjC,CAAC,OAAO,CAAC,IAAI,CACX,CAAC,CAAC,EAAE,EAAE,CACJ,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,iBAAiB;gCACnD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAI,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAC5E;4BAED,KAAK,GAAG,KAAK,CAAC;oBAClB,CAAC;yBAAM,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;wBACpC,MAAM,IAAI,GAAG;4BACX,CAAC;4BACD,GAAG,OAAO;iCACP,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACZ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAI,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAC1E;iCACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;yBAC1B,CAAC;wBACF,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;4BACxB,IAAI,CAAC;gCACH,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;gCACnF,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;4BAClF,CAAC;4BAAC,MAAM,CAAC;gCACP,OAAO,KAAK,CAAC;4BACf,CAAC;wBACH,CAAC,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,MAAM,KAAK,eAAe;wBAAE,KAAK,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;oBACnE,IAAI,CAAC,KAAK;wBAAE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACzD,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC9B,IACE,GAAG,CAAC,IAAI,CACN,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC5B,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC5E,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,QAAQ,CAC7C;gBAED,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC9C,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;YACnE,IACE,EAAE,CAAC,IAAI,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC1E,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzE;gBAED,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,UAAU;gBACxB,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,QAAQ;oBACzD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE,CAChC,GAAG,CACD,IAAI,CAAC,MAAM,CACT,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC5B,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,SAAS;gBAChE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,QAAQ,CAC7C,CACF,CAAC;YACJ,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,SAAS,CAAC;gBACvF,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,EACtE,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;gBACvE,MAAM,MAAM,GAAG,GAAG,CAChB,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,oCAAoC,CAAC,CACzF,CAAC;gBACF,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,KAAK,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU;oBACnF,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QAC9C,QAAQ,GAAG,WAAW,CAAC;QACvB,MAAM,GAAG,SAAS,CAAC;QACnB,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC;YAClD,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAChE,MAAM,QAAQ,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,WAAW,CAC3D,CAAC;gBACF,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM;oBAC1B,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM;wBACjB,CAAC,CAAC,CAAC,CAAC,MAAM;wBACV,CAAC,CAAC,CAAC,CAAC,MAAM;oBACZ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK;wBAChB,CAAC,CAAC,CAAC,CAAC,MAAM;wBACV,CAAC,CAAC,SAAS,CAAC;gBAChB,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,KAAK,KAAK,CAAC;gBACrE,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,UAAU;oBAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAChF,4EAA4E;gBAC5E,8EAA8E;gBAC9E,wEAAwE;gBACxE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;oBAC/F,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;gBAC/C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;oBAC3B,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,WAAW;wBAChE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;wBAClD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAClD,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;aAChE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC1D,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAClE,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI;gBAC9C,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;;gBACjE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACxF,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtB,KAAK,MAAM,KAAK,IAAI,UAAU;oBAC5B,IACE,CAAC,IAAI,CAAC,IAAI,CACR,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,KAAK,CAAC,QAAQ;wBACzC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK;wBACtC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,CAC1C;wBAED,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,EACnD,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;YACpD,IACE,GAAG;gBACH,IAAI;gBACJ,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW;gBAClD,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,EAAE;gBAClC,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC,MAAM,EAAE,WAAW;gBACpD,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EACxB,CAAC;gBACD,MAAM,GAAG,OAAO,CAAC;gBACjB,IACE,YAAY,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,WAAW,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;oBACnB,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;oBACjB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;oBACnB,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO;oBACvB,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU;oBAC7B,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE;oBAC3B,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC7B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CACtB,CACJ;oBAED,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBACzC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBACpE,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC;oBAC5C,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC3E,IACE,SAAS,KAAK,EAAE;wBACd,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;wBAC5B,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS;wBAEvE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBAC3C,CAAC;gBACD,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC;gBAC1D,MAAM,OAAO,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;gBAClD,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC;gBAC3D,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAU,EAAE,CAAS,EAAE,EAAE,CACnD,IAAI,CAAC,IAAI,CACP,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI;oBACtC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,EAAE;oBAC7B,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CACxB,CAAC;gBACJ,IAAI,CAAC,GAAG,CAAC,MAAM;oBAAE,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC7E,MAAM,IAAI,GAAG,OAAO,GAAG,IAAI,EACzB,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,GAAG,EAAE;oBAC1B,gBAAgB,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;gBACnE,IACE,IAAI,GAAG,EAAE;oBACT,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;oBAE/E,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACpC,IACE,IAAI,GAAG,EAAE;oBACT,CAAC,GAAG,CAAC,MAAM;wBACT,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC;wBACrD,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;oBAEtF,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACpC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBACf,IACE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC;wBAC9C,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;wBAE/C,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;gBAC7C,CAAC;qBAAM,IACL,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;oBAC5E,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;oBAE/C,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC7C,CAAC;;gBAAM,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC5C,CAAC;;YAAM,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAClD,CAAC;IACD,KAAK,MAAM,CAAC,IAAI;QACd,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;KACzD,EAAE,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM;YACrB,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM;gBACjB,CAAC,CAAC,CAAC,CAAC,MAAM;gBACV,CAAC,CAAC,CAAC,CAAC,MAAM;YACZ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK;gBAChB,CAAC,CAAC,CAAC,CAAC,MAAM;gBACV,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/C,MAAM,CAAC,GAAG,GAAG,CACX,IAAI,CAAC,MAAM,CACT,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,MAAM,CAAC,WAAW;YACpD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAChD,CACF,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7E,IAAI,CAAC,GAAG,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QAC5C,QAAQ,GAAG,MAAM,CAAC;QAClB,MAAM,GAAG,QAAQ,CAAC;QAClB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EACrB,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EACnB,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;YACxC,IAAI,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;gBAClC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ;oBAAE,MAAM,GAAG,UAAU,CAAC;;oBAC5E,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACtC,MAAM,GAAG,QAAQ,CAAC;gBAClB,IACE,CAAC,CAAC,QAAQ,KAAK,UAAU;oBACzB,QAAQ,GAAG,CAAC,CAAC,QAAQ;oBACrB,QAAQ,GAAG,SAAS,KAAK,CAAC,CAAC,QAAQ,GAAG,SAAS;oBAE/C,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,SAAS,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7D,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpF,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACtB,KAAK,MAAM,CAAC,IAAI,UAAU;oBACxB,IACE,CAAC,IAAI,CAAC,IAAI,CACR,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC,KAAK,CAAC,QAAQ;wBACrC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,QAAQ;wBACnC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CACtC;wBAED,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACvE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,YAAY,CAAC,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC9E,MAAM,OAAO,GAAG,MAAM;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC;aACjD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClC,IACE,OAAO,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAC3F;YAED,MAAM,GAAG,iBAAiB,CAAC;IAC/B,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM;YACrD,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;YAAE,SAAS;QACnD,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;gBAClC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO;gBAC1E,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAC3E,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;gBACzD,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC,OAAO;gBACnD,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,YAAY;aACjF,EAAE,CAAC;IACN,CAAC;IACD,gFAAgF;IAChF,+DAA+D;IAC/D,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAQ,CAAC,MAAM,CAAC;QACnD,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE;gBACzC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpF,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC1E,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;aAC/D,EAAE,CAAC;IACN,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QAC3C,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE;gBACzC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBACpF,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC1E,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;aAC/D,EAAE,CAAC;IACN,CAAC;IACD,iFAAiF;IACjF,sFAAsF;IACtF,MAAM,KAAK,GAAgB,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAChD,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CACvB,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM;aACrC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC;aACjD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,UAAU,GAAsB,aAAa,CAAC,MAAM,KAAK,CAAC;QAC9D,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE;QAC/B,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE;YACrD,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IAC3E,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC;IAChF,MAAM,YAAY,GAAkC,QAAQ;QAC1D,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,MAAM,WAAW,GAAG,CAAC,QAA2B,EAAqB,EAAE;QACrE,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY;YAAE,OAAO,YAAY,CAAC;QACpE,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/E,OAAO,KAAK,IAAI,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC3E,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,MAAe,EAAqB,EAAE;QACtD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAU,CAAC;YACvD,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACd,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;SAC/F,CAAC;IACJ,CAAC,CAAC;IACF,KAAK,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACvG,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,sFAAsF;QACtF,IAAI,QAAQ,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YAC5E,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS;oBAC5E,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACnG,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC;QACpB,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,KAAK,kBAAkB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1F,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;gBAAE,SAAS,CAAC,4DAA4D;YACnG,IAAI,CAAC,YAAY;gBAAE,SAAS;YAC5B,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC;QAC9E,CAAC;QACD,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9F,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,MAAM,KAAK,OAAO;gBAAE,SAAS,CAAC,0DAA0D;YAC5F,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpF,CAAC;aAAM,IAAI,QAAQ,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC9F,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACxE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/E,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACtG,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/E,CAAC;QACD,IAAI,MAAM,CAAC,MAAM;YAAE,IAAI,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,IAAI,IAAI,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5F,IAAI,IAAI,IAAI,MAAM,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC;gBAC1C,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE;wBACnE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;wBACxD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;qBACnG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI;aACtC,CAAC,CAAC;QACH,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC;gBACtE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;gBACrC,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACjE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY;aAC1E,CAAC,CAAC;QACH,4FAA4F;QAC5F,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3E,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;gBAAE,SAAS;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE;oBACjD,OAAO,EAAE,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC7G,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC5G,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,iBAAiB,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;oBAChG,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;oBAC9E,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;oBAC/F,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;iBACrG,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC;YAAE,SAAS;QAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;QACxG,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,KAAK;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QACvF,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC;YAC5C,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAI;YACpE,KAAK,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,KAAK,OAAO,CAAC;YAC5D,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,SAAS;QACjD,MAAM,EAAE,GAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YAC9D,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;QAC3F,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAW,CAAC;QACtD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU;gBAC7E,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,KAAK,IAAI,IAAI,CAAE,CAAC,GAAG,CAAC,EAAE;gBAClD,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACxF,MAAM,UAAU,GAAG,UAAU,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC7F,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;YAClG,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvE,MAAM,IAAI,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACjF,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM;gBACxB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAkB,EAAE,SAAS,EAAE,IAAa,EAAE;oBACrE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAe,EAAE,SAAS,EAAE,MAAe,EAAE;wBACjE,CAAC,CAAC,EAAE,OAAO,EAAE,UAAmB,EAAE,SAAS,EAAE,KAAc,EAAE,CAAC;gBAChE,IAAI,EAAE,cAAc,IAAI,UAAU,EAAE,EAAE;gBACtC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAC1F,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;gBACrF,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,IACE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;QAEjE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,KAAK;QACnB,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;YAC/C,CAAC,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IACtE,sGAAsG;IACtG,IACE,CAAC,MAAM,CAAC,MAAM;QACd,CAAC,UAAU;QACX,CAAC,GAAG,CAAC,MAAM;QACX,CAAC,IAAI,CAAC,MAAM;QACZ,CAAC,UAAU,CAAC,MAAM;QAClB,CAAC,WAAW,CAAC,MAAM;QACnB,CAAC,WAAW,CAAC,MAAM;QACnB,CAAC,YAAY,CAAC,MAAM;QACpB,CAAC,UAAU,CAAC,MAAM;QAClB,CAAC,WAAW,CAAC,MAAM;QAEnB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACnE,OAAO;QACL,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,cAAc,CAC5B,QAAQ,EACR,MAAM,EACN,MAAM,EACN,GAAG,QAAQ,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,EAAE,GAAG,CACzF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../src/protocols/modern/analyze.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import sdk from 'tbc-contract';
2
1
  import type { ContractDescriptor } from '../../types/script.js';
3
2
  interface StandardCodec {
4
3
  codeBytes: number;
@@ -19,23 +18,7 @@ interface StandardCodec {
19
18
  };
20
19
  }
21
20
  export declare const standard: StandardCodec;
22
- export interface PoolCode {
23
- originalUTXO: Buffer;
24
- ftTapeSize: number;
25
- poolCodeHash: Buffer;
26
- tbcFeeScriptHash: Buffer;
27
- authorization: {
28
- mode: string;
29
- controllerPubKeyHashes?: Buffer[];
30
- };
31
- profile: string;
32
- }
33
- export declare const poolCodec: {
34
- parsePoolCode(code: Buffer): PoolCode;
35
- };
36
- export declare const poolTapeCodec: {
37
- decodePoolTape(tape: Buffer): import("tbc-contract").DecodedPoolTape;
38
- };
21
+ export { poolCode, poolTape, poolMath, poolFeePolicy, poolMetadata, poolConfigurationIssues } from './amm.js';
39
22
  export declare const sha256: (b: Buffer) => NonSharedBuffer;
40
23
  export declare const controllerHash: (hex: string) => string;
41
24
  export declare function address(hash: Buffer): string;
@@ -75,8 +58,6 @@ export declare function nftCode(hex: string): {
75
58
  vout: number;
76
59
  };
77
60
  } | undefined;
78
- export declare function poolCode(hex: string): PoolCode | undefined;
79
- export declare function poolTape(hex: string): sdk.DecodedPoolTape | undefined;
80
61
  export interface HtlcCode {
81
62
  sender: string;
82
63
  receiver: string;
@@ -102,12 +83,5 @@ export interface OrderCode {
102
83
  };
103
84
  }
104
85
  export declare function orderCode(hex: string): OrderCode | undefined;
105
- export declare const poolMath: {
106
- quoteAddLP(s: import("tbc-contract").PoolMathState, amount: bigint, first?: bigint): import("tbc-contract").AddLPQuote;
107
- quoteRemoveLP(s: import("tbc-contract").PoolMathState, amount: bigint): import("tbc-contract").RemoveLPQuote;
108
- quoteSwapFT(s: import("tbc-contract").PoolMathState, amount: bigint, policy: import("tbc-contract").SwapFeePolicy): import("tbc-contract").SwapFTQuote;
109
- quoteSwapTBC(s: import("tbc-contract").PoolMathState, amount: bigint, policy: import("tbc-contract").SwapFeePolicy): import("tbc-contract").SwapTBCQuote;
110
- };
111
86
  export declare function legacyDescriptor(hex: string): ContractDescriptor | undefined;
112
- export {};
113
87
  //# sourceMappingURL=codecs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../../../src/protocols/modern/codecs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../../../src/protocols/modern/codecs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAKhE,UAAU,aAAa;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpD,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG;QACvB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG;QACzC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5D,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AACD,eAAO,MAAM,QAAQ,EAAmC,aAAa,CAAC;AAItE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAC9G,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,oBAA4C,CAAC;AAC7E,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,WAGxB,CAAC;AACnB,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AACD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM;;;EAKjC;AACD,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AACD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAqD5D;AACD,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AACD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CA2C7E;AACD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM;gBAQxB,kBAAkB;;;;;cAM5B;AACD,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAY1D;AACD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C;AACD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CA8F5D;AACD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAa5E"}
@@ -2,13 +2,12 @@ import { createRequire } from 'node:module';
2
2
  import { createHash } from 'node:crypto';
3
3
  import sdk from 'tbc-contract';
4
4
  import { tbc } from '../../adapters/tbc-lib.js';
5
- // These codecs are pinned to 1.7.2. Template parsers authenticate every fixed byte.
5
+ // Current codecs are pinned to 1.7.3; AMM also retains its exact 1.7.2 templates.
6
6
  // Some static helpers are missing from the upstream declaration file.
7
7
  const require = createRequire(import.meta.url);
8
8
  export const standard = sdk.TBC20Standard;
9
9
  const standardUtil = require('tbc-contract/lib/util/tbc20-standard/tbc20-standard-unlock.js');
10
- export const poolCodec = require('tbc-contract/lib/util/tbc-amm/artifacts.js');
11
- export const poolTapeCodec = require('tbc-contract/lib/util/tbc-amm/tape.js');
10
+ export { poolCode, poolTape, poolMath, poolFeePolicy, poolMetadata, poolConfigurationIssues } from './amm.js';
12
11
  export const sha256 = (b) => createHash('sha256').update(b).digest();
13
12
  export const controllerHash = (hex) => createHash('ripemd160')
14
13
  .update(sha256(sha256(Buffer.from(hex, 'hex'))))
@@ -136,22 +135,6 @@ export function nftCode(hex) {
136
135
  return undefined;
137
136
  }
138
137
  }
139
- export function poolCode(hex) {
140
- try {
141
- return poolCodec.parsePoolCode(Buffer.from(hex, 'hex'));
142
- }
143
- catch {
144
- return undefined;
145
- }
146
- }
147
- export function poolTape(hex) {
148
- try {
149
- return poolTapeCodec.decodePoolTape(Buffer.from(hex, 'hex'));
150
- }
151
- catch {
152
- return undefined;
153
- }
154
- }
155
138
  export function htlcCode(hex) {
156
139
  // Complete pinned template, with only four explicitly sized constructor fields variable.
157
140
  const pattern = /^63a820([0-9a-f]{64})8876a914([0-9a-f]{40})6704([0-9a-f]{8})8152ba816ea0646e040065cd1da263040065cd1da269a1676d7551686700686956ba01247f778104ffffffff9e6976a914([0-9a-f]{40})6888ac$/;
@@ -248,7 +231,6 @@ export function orderCode(hex) {
248
231
  }
249
232
  return undefined;
250
233
  }
251
- export const poolMath = require('tbc-contract/lib/util/tbc-amm/math.js');
252
234
  export function legacyDescriptor(hex) {
253
235
  if (hex.length < 100)
254
236
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"codecs.js","sourceRoot":"","sources":["../../../src/protocols/modern/codecs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codecs.js","sourceRoot":"","sources":["../../../src/protocols/modern/codecs.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,15 @@ export interface PoolNftTapeData {
10
10
  tbcSatoshis: number;
11
11
  ftContractTxid: string;
12
12
  serviceFeeRate?: number;
13
+ /** Independent AMM rates in basis points; absent on legacy plan-based pools. */
14
+ lpFeeRate?: number;
15
+ taxFeeRate?: number;
16
+ serviceProviderFeeRate?: number;
17
+ protocolFeeRate?: number;
18
+ /** The single P2PKH recipient of all non-LP fee shares. */
19
+ feeAddress?: string;
20
+ /** Exact immutable provider-tag bytes, represented as hex. */
21
+ serviceProviderTagHex?: string;
13
22
  lpPlan?: number;
14
23
  withLock?: boolean;
15
24
  withLockTime?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,15 @@ export interface ProtocolLayer {
59
59
  }
60
60
  export interface PoolNftAssetMetadata {
61
61
  serviceFeeRate?: number;
62
+ /** Independent AMM rates in basis points; absent on legacy plan-based pools. */
63
+ lpFeeRate?: number;
64
+ taxFeeRate?: number;
65
+ serviceProviderFeeRate?: number;
66
+ protocolFeeRate?: number;
67
+ /** The single P2PKH recipient of all non-LP fee shares. */
68
+ feeAddress?: string;
69
+ /** Exact immutable provider-tag bytes, represented as hex. */
70
+ serviceProviderTagHex?: string;
62
71
  lpPlan?: number;
63
72
  withLock?: boolean;
64
73
  withLockTime?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/types/result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/types/result.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,15 @@ export interface SemanticParty {
11
11
  export interface PoolNftAssetMetadata {
12
12
  version: 1 | 2;
13
13
  serviceFeeRate?: number;
14
+ /** Independent AMM rates in basis points; absent on legacy plan-based pools. */
15
+ lpFeeRate?: number;
16
+ taxFeeRate?: number;
17
+ serviceProviderFeeRate?: number;
18
+ protocolFeeRate?: number;
19
+ /** The single P2PKH recipient of all non-LP fee shares. */
20
+ feeAddress?: string;
21
+ /** Exact immutable provider-tag bytes, represented as hex. */
22
+ serviceProviderTagHex?: string;
14
23
  lpPlan?: number;
15
24
  withLock?: boolean;
16
25
  withLockTime?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/types/semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/types/semantic.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tbc-tx-parser",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Decode TBC txraw hex into structured transaction facts.",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@10.25.0",
@@ -45,7 +45,8 @@
45
45
  "transaction"
46
46
  ],
47
47
  "dependencies": {
48
- "tbc-contract": "1.7.2",
48
+ "tbc-contract": "1.7.3",
49
+ "tbc-contract-172": "npm:tbc-contract@1.7.2",
49
50
  "tbc-lib-js": "1.0.31"
50
51
  }
51
52
  }