@pushchain/core 1.1.36 → 1.1.37

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.
@@ -18,6 +18,7 @@ const anchor_1 = require("@coral-xyz/anchor");
18
18
  const progress_hook_types_1 = require("../progress-hook/progress-hook.types");
19
19
  const progress_hook_1 = tslib_1.__importDefault(require("../progress-hook/progress-hook"));
20
20
  const uea_evm_1 = require("../constants/abi/uea.evm");
21
+ const tokens_1 = require("../constants/tokens");
21
22
  class Orchestrator {
22
23
  constructor(universalSigner, pushNetwork, rpcUrls = {}, printTraces = false, progressHook) {
23
24
  this.universalSigner = universalSigner;
@@ -63,6 +64,139 @@ class Orchestrator {
63
64
  execute(execute) {
64
65
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
65
66
  try {
67
+ // FUNDS_TX short-circuit: Bridge tokens from Ethereum Sepolia to Push Chain
68
+ // No payload execution; supports USDC/USDT ERC-20 via UniversalGatewayV0.sendFunds
69
+ if (execute.funds) {
70
+ if (!execute.data || execute.data === '0x') {
71
+ // Disallow user-provided `value` for funds-only bridging. The SDK derives
72
+ // origin-chain msg.value automatically from the funds input:
73
+ // - Native path: msg.value = bridgeAmount
74
+ // - ERC-20 path: msg.value = 0
75
+ if (execute.value !== undefined && execute.value !== BigInt(0)) {
76
+ throw new Error('Do not set `value` when using funds bridging; the SDK sets origin msg.value from `funds.amount` automatically');
77
+ }
78
+ const chain = this.universalSigner.account.chain;
79
+ if (chain !== enums_1.CHAIN.ETHEREUM_SEPOLIA) {
80
+ throw new Error('Funds bridging is only supported on Ethereum Sepolia for now');
81
+ }
82
+ const { defaultRPC, lockerContract } = chain_1.CHAIN_INFO[chain];
83
+ const rpcUrls = this.rpcUrls[chain] || defaultRPC;
84
+ const evmClient = new evm_client_1.EvmClient({ rpcUrls });
85
+ const gatewayAddress = lockerContract;
86
+ if (!gatewayAddress) {
87
+ throw new Error('Universal Gateway address not configured');
88
+ }
89
+ // Resolve token: default to native token based on VM (ETH for EVM, SOL for SVM)
90
+ if (!execute.funds.token) {
91
+ const available = tokens_1.MOVEABLE_TOKENS[chain] || [];
92
+ const vm = chain_1.CHAIN_INFO[chain].vm;
93
+ const preferredSymbol = vm === enums_1.VM.EVM ? 'ETH' : vm === enums_1.VM.SVM ? 'SOL' : undefined;
94
+ const nativeToken = preferredSymbol
95
+ ? available.find((t) => t.symbol === preferredSymbol)
96
+ : undefined;
97
+ if (!nativeToken) {
98
+ throw new Error('Native token not configured for this chain');
99
+ }
100
+ execute.funds.token = nativeToken;
101
+ }
102
+ const tokenAddr = execute.funds.token.address;
103
+ const amount = execute.funds.amount;
104
+ // Approve gateway to pull tokens if ERC-20 (not native sentinel)
105
+ if (execute.funds.token.mechanism === 'approve') {
106
+ yield this.ensureErc20Allowance(evmClient, tokenAddr, gatewayAddress, amount);
107
+ }
108
+ else if (execute.funds.token.mechanism === 'permit2') {
109
+ throw new Error('Permit2 is not supported yet');
110
+ }
111
+ else if (execute.funds.token.mechanism === 'native') {
112
+ // Native flow uses msg.value == bridgeAmount and bridgeToken = address(0)
113
+ }
114
+ // Call UniversalGatewayV0.sendFunds(recipient, bridgeToken, bridgeAmount, revertCFG)
115
+ const recipient = execute.to; // funds to recipient on Push Chain
116
+ const isNative = execute.funds.token.mechanism === 'native';
117
+ const bridgeToken = execute.funds.token.mechanism === 'approve'
118
+ ? tokenAddr
119
+ : '0x0000000000000000000000000000000000000000';
120
+ const bridgeAmount = amount;
121
+ const revertCFG = {
122
+ fundRecipient: this.universalSigner.account
123
+ .address,
124
+ revertMsg: '0x',
125
+ }; // typed by viem via ABI
126
+ const txHash = yield evmClient.writeContract({
127
+ abi: abi_1.UNIVERSAL_GATEWAY_V0,
128
+ address: gatewayAddress,
129
+ functionName: 'sendFunds',
130
+ args: [recipient, bridgeToken, bridgeAmount, revertCFG],
131
+ signer: this.universalSigner,
132
+ value: isNative ? bridgeAmount : BigInt(0),
133
+ });
134
+ // Wait for confirmations on origin chain per chain config
135
+ yield evmClient.waitForConfirmations({
136
+ txHash: txHash,
137
+ confirmations: 14,
138
+ timeoutMs: 210000, // CHAIN_INFO[chain].timeout,
139
+ });
140
+ // Fetch origin-chain tx and transform to UniversalTxResponse
141
+ const tx = yield evmClient.getTransaction(txHash);
142
+ return yield this.transformToUniversalTxResponse(tx);
143
+ }
144
+ else {
145
+ // Bridge funds + execute payload. Support ERC-20 (approve) and native ETH.
146
+ const { chain, evmClient, gatewayAddress } = this.ensureSepoliaGateway();
147
+ if (!execute.funds.token) {
148
+ throw new Error('Token is required for bridging with payload');
149
+ }
150
+ const mechanism = execute.funds.token.mechanism;
151
+ if (mechanism !== 'approve') {
152
+ throw new Error('Only ERC-20 tokens are supported for funds+payload; native and permit2 are not supported yet');
153
+ }
154
+ const { deployed: isUEADeployed, nonce } = yield this.getUeaStatusAndNonce();
155
+ const { payload: universalPayload, gasAmount } = yield this.buildGatewayPayloadAndGas(execute, nonce);
156
+ const [minMax] = yield Promise.all([
157
+ evmClient.readContract({
158
+ abi: abi_1.UNIVERSAL_GATEWAY_V0,
159
+ address: gatewayAddress,
160
+ functionName: 'getMinMaxValueForNative',
161
+ }),
162
+ ]);
163
+ const minAllowed = minMax[0];
164
+ const maxAllowed = minMax[1];
165
+ if (gasAmount < minAllowed || gasAmount > maxAllowed) {
166
+ throw new Error(`Gas deposit out of range. min=${minAllowed.toString()} max=${maxAllowed.toString()} got=${gasAmount.toString()}`);
167
+ }
168
+ const revertCFG = {
169
+ fundRecipient: this.universalSigner.account
170
+ .address,
171
+ revertMsg: '0x',
172
+ };
173
+ // ERC-20 bridge token path
174
+ const tokenAddr = execute.funds.token.address;
175
+ const bridgeAmount = execute.funds.amount;
176
+ yield this.ensureErc20Allowance(evmClient, tokenAddr, gatewayAddress, bridgeAmount);
177
+ const txHash = yield evmClient.writeContract({
178
+ abi: abi_1.UNIVERSAL_GATEWAY_V0,
179
+ address: gatewayAddress,
180
+ functionName: 'sendTxWithFunds',
181
+ args: [
182
+ tokenAddr,
183
+ bridgeAmount,
184
+ universalPayload,
185
+ revertCFG,
186
+ viem_1.zeroHash,
187
+ ],
188
+ signer: this.universalSigner,
189
+ value: gasAmount,
190
+ });
191
+ yield evmClient.waitForConfirmations({
192
+ txHash: txHash,
193
+ confirmations: 1,
194
+ timeoutMs: chain_1.CHAIN_INFO[chain].timeout,
195
+ });
196
+ const tx = yield evmClient.getTransaction(txHash);
197
+ return yield this.transformToUniversalTxResponse(tx);
198
+ }
199
+ }
66
200
  // Set default value for value if undefined
67
201
  if (execute.value === undefined) {
68
202
  execute.value = BigInt(0);
@@ -593,6 +727,129 @@ class Orchestrator {
593
727
  }
594
728
  });
595
729
  }
730
+ ensureErc20Allowance(evmClient, tokenAddress, spender, requiredAmount) {
731
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
732
+ const chain = this.universalSigner.account.chain;
733
+ const owner = this.universalSigner.account.address;
734
+ const currentAllowance = yield evmClient.readContract({
735
+ abi: abi_1.ERC20_EVM,
736
+ address: tokenAddress,
737
+ functionName: 'allowance',
738
+ args: [owner, spender],
739
+ });
740
+ if (currentAllowance >= requiredAmount)
741
+ return;
742
+ // Some ERC-20s like USDT require setting allowance to 0 before changing
743
+ // an existing non-zero allowance to a different non-zero value.
744
+ if (currentAllowance > BigInt(0)) {
745
+ this.printLog(`Resetting existing allowance from ${currentAllowance.toString()} to 0 for spender ${spender}`);
746
+ const resetTxHash = yield evmClient.writeContract({
747
+ abi: abi_1.ERC20_EVM,
748
+ address: tokenAddress,
749
+ functionName: 'approve',
750
+ args: [spender, BigInt(0)],
751
+ signer: this.universalSigner,
752
+ });
753
+ yield evmClient.waitForConfirmations({
754
+ txHash: resetTxHash,
755
+ confirmations: 1,
756
+ timeoutMs: chain_1.CHAIN_INFO[chain].timeout,
757
+ });
758
+ }
759
+ const setTxHash = yield evmClient.writeContract({
760
+ abi: abi_1.ERC20_EVM,
761
+ address: tokenAddress,
762
+ functionName: 'approve',
763
+ args: [spender, requiredAmount],
764
+ signer: this.universalSigner,
765
+ });
766
+ yield evmClient.waitForConfirmations({
767
+ txHash: setTxHash,
768
+ confirmations: 1,
769
+ timeoutMs: chain_1.CHAIN_INFO[chain].timeout,
770
+ });
771
+ try {
772
+ const updated = yield evmClient.readContract({
773
+ abi: abi_1.ERC20_EVM,
774
+ address: tokenAddress,
775
+ functionName: 'allowance',
776
+ args: [owner, spender],
777
+ });
778
+ if (updated < requiredAmount) {
779
+ this.printLog('Warning: allowance not updated yet; proceeding');
780
+ }
781
+ }
782
+ catch (_a) {
783
+ // ignore
784
+ }
785
+ });
786
+ }
787
+ /**
788
+ * Ensures we're on Sepolia, returns EVM client and gateway address.
789
+ */
790
+ ensureSepoliaGateway() {
791
+ const chain = this.universalSigner.account.chain;
792
+ if (chain !== enums_1.CHAIN.ETHEREUM_SEPOLIA) {
793
+ throw new Error('Funds + payload bridging is only supported on Ethereum Sepolia for now');
794
+ }
795
+ const { defaultRPC, lockerContract } = chain_1.CHAIN_INFO[chain];
796
+ const rpcUrls = this.rpcUrls[chain] || defaultRPC;
797
+ const evmClient = new evm_client_1.EvmClient({ rpcUrls });
798
+ const gatewayAddress = lockerContract;
799
+ if (!gatewayAddress) {
800
+ throw new Error('Universal Gateway address not configured');
801
+ }
802
+ return { chain, evmClient, gatewayAddress };
803
+ }
804
+ /**
805
+ * Computes UEA and fetches its nonce if deployed; returns 0 otherwise.
806
+ */
807
+ getUeaNonceForExecution() {
808
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
809
+ const UEA = this.computeUEAOffchain();
810
+ const [code] = yield Promise.all([
811
+ this.pushClient.publicClient.getCode({ address: UEA }),
812
+ ]);
813
+ return code !== undefined ? yield this.getUEANonce(UEA) : BigInt(0);
814
+ });
815
+ }
816
+ /**
817
+ * Returns UEA deployment status and nonce (0 if not deployed).
818
+ */
819
+ getUeaStatusAndNonce() {
820
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
821
+ const UEA = this.computeUEAOffchain();
822
+ const [code] = yield Promise.all([
823
+ this.pushClient.publicClient.getCode({ address: UEA }),
824
+ ]);
825
+ const deployed = code !== undefined;
826
+ const nonce = deployed ? yield this.getUEANonce(UEA) : BigInt(0);
827
+ return { deployed, nonce };
828
+ });
829
+ }
830
+ /**
831
+ * Builds UniversalPayload for the gateway and computes the native gas deposit.
832
+ */
833
+ buildGatewayPayloadAndGas(execute, nonce) {
834
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
835
+ var _a, _b;
836
+ const gasEstimate = execute.gasLimit || BigInt(1e7);
837
+ const payloadValue = (_a = execute.value) !== null && _a !== void 0 ? _a : BigInt(0);
838
+ const gasAmount = (_b = execute.value) !== null && _b !== void 0 ? _b : BigInt(0);
839
+ const universalPayload = {
840
+ to: execute.to,
841
+ value: payloadValue,
842
+ data: execute.data || '0x',
843
+ gasLimit: gasEstimate,
844
+ maxFeePerGas: execute.maxFeePerGas || BigInt(1e10),
845
+ maxPriorityFeePerGas: execute.maxPriorityFeePerGas || BigInt(0),
846
+ nonce,
847
+ deadline: execute.deadline || BigInt(9999999999),
848
+ vType: tx_1.VerificationType.universalTxVerification,
849
+ };
850
+ return { payload: universalPayload, gasAmount };
851
+ });
852
+ }
596
853
  /********************************** HELPER FUNCTIONS **************************************************/
597
854
  /**
598
855
  * Transforms a TransactionReceipt to UniversalTxReceipt format
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/orchestrator/orchestrator.ts"],"names":[],"mappings":";;;;AAAA,+BAcc;AACd,yDAAqD;AACrD,8CAA6D;AAM7D,wDAAoD;AACpD,8CAAyE;AACzE,0CAO0B;AAC1B,4DAAwD;AACxD,wDAAoD;AACpD,6CAA2D;AAC3D,kEAA4C;AAE5C,2CAI4B;AAC5B,4DAAwD;AACxD,8CAA0C;AAC1C,8EAG8C;AAC9C,2FAA4D;AAE5D,sDAAmD;AAMnD,gDAAqE;AAErE,MAAa,YAAY;IAGvB,YACmB,eAAgC,EACzC,WAAyB,EAChB,UAA4C,EAAE,EAC9C,cAAc,KAAK,EAC5B,YAAgD;QAJvC,oBAAe,GAAf,eAAe,CAAiB;QACzC,gBAAW,GAAX,WAAW,CAAc;QAChB,YAAO,GAAP,OAAO,CAAuC;QAC9C,gBAAW,GAAX,WAAW,CAAQ;QAC5B,iBAAY,GAAZ,YAAY,CAAoC;QAExD,IAAI,SAAgB,CAAC;QACrB,IAAI,WAAW,KAAK,oBAAY,CAAC,OAAO,EAAE,CAAC;YACzC,SAAS,GAAG,aAAK,CAAC,YAAY,CAAC;QACjC,CAAC;aAAM,IACL,WAAW,KAAK,oBAAY,CAAC,aAAa;YAC1C,WAAW,KAAK,oBAAY,CAAC,OAAO,EACpC,CAAC;YACD,SAAS,GAAG,aAAK,CAAC,kBAAkB,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,aAAK,CAAC,aAAa,CAAC;QAClC,CAAC;QAED,MAAM,aAAa,GACjB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,kBAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC;QAE9D,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAU,CAAC;YAC/B,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACI,UAAU;QACf,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEM,cAAc;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACG,OAAO,CAAC,OAAsB;;YAClC,IAAI,CAAC;gBACH,4EAA4E;gBAC5E,mFAAmF;gBACnF,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;wBAC3C,0EAA0E;wBAC1E,6DAA6D;wBAC7D,2CAA2C;wBAC3C,gCAAgC;wBAChC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC/D,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAC;wBACJ,CAAC;wBACD,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;wBACjD,IAAI,KAAK,KAAK,aAAK,CAAC,gBAAgB,EAAE,CAAC;4BACrC,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;wBACJ,CAAC;wBAED,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;wBACzD,MAAM,OAAO,GAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;wBAC5D,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBAC7C,MAAM,cAAc,GAAG,cAA+B,CAAC;wBACvD,IAAI,CAAC,cAAc,EAAE,CAAC;4BACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;wBAC9D,CAAC;wBAED,gFAAgF;wBAChF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;4BACzB,MAAM,SAAS,GACZ,wBAAe,CAAC,KAAK,CAAiC,IAAI,EAAE,CAAC;4BAChE,MAAM,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;4BAChC,MAAM,eAAe,GACnB,EAAE,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC5D,MAAM,WAAW,GAAG,eAAe;gCACjC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC;gCACrD,CAAC,CAAC,SAAS,CAAC;4BACd,IAAI,CAAC,WAAW,EAAE,CAAC;gCACjB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;4BAChE,CAAC;4BACD,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC;wBACpC,CAAC;wBAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAwB,CAAC;wBAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;wBAEpC,iEAAiE;wBACjE,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;4BAChD,MAAM,IAAI,CAAC,oBAAoB,CAC7B,SAAS,EACT,SAAS,EACT,cAAc,EACd,MAAM,CACP,CAAC;wBACJ,CAAC;6BAAM,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;4BACvD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;wBAClD,CAAC;6BAAM,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;4BACtD,0EAA0E;wBAC5E,CAAC;wBAED,qFAAqF;wBACrF,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,mCAAmC;wBACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC;wBAC5D,MAAM,WAAW,GACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;4BACzC,CAAC,CAAC,SAAS;4BACX,CAAC,CAAE,4CAA8D,CAAC;wBACtE,MAAM,YAAY,GAAG,MAAM,CAAC;wBAE5B,MAAM,SAAS,GAAG;4BAChB,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO;iCACxC,OAAwB;4BAC3B,SAAS,EAAE,IAAI;yBACI,CAAC,CAAC,wBAAwB;wBAE/C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;4BAC3C,GAAG,EAAE,0BAAsC;4BAC3C,OAAO,EAAE,cAAc;4BACvB,YAAY,EAAE,WAAW;4BACzB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC;4BACvD,MAAM,EAAE,IAAI,CAAC,eAAe;4BAC5B,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;yBAC3C,CAAC,CAAC;wBAEH,0DAA0D;wBAC1D,MAAM,SAAS,CAAC,oBAAoB,CAAC;4BACnC,MAAM,EAAE,MAAM;4BACd,aAAa,EAAE,EAAE;4BACjB,SAAS,EAAE,MAAM,EAAE,6BAA6B;yBACjD,CAAC,CAAC;wBAEH,6DAA6D;wBAC7D,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;wBAClD,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;oBACvD,CAAC;yBAAM,CAAC;wBACN,2EAA2E;wBAC3E,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,GACxC,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBAE9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;4BACzB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;wBACjE,CAAC;wBAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;wBAChD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC5B,MAAM,IAAI,KAAK,CACb,8FAA8F,CAC/F,CAAC;wBACJ,CAAC;wBAED,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,GACtC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBACpC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAC5C,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;wBAEvD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;4BACjC,SAAS,CAAC,YAAY,CAA4B;gCAChD,GAAG,EAAE,0BAAsC;gCAC3C,OAAO,EAAE,cAAc;gCACvB,YAAY,EAAE,yBAAyB;6BACxC,CAAC;yBACH,CAAC,CAAC;wBACH,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC7B,IAAI,SAAS,GAAG,UAAU,IAAI,SAAS,GAAG,UAAU,EAAE,CAAC;4BACrD,MAAM,IAAI,KAAK,CACb,iCAAiC,UAAU,CAAC,QAAQ,EAAE,QAAQ,UAAU,CAAC,QAAQ,EAAE,QAAQ,SAAS,CAAC,QAAQ,EAAE,EAAE,CAClH,CAAC;wBACJ,CAAC;wBAED,MAAM,SAAS,GAAG;4BAChB,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO;iCACxC,OAAwB;4BAC3B,SAAS,EAAE,IAAI;yBACI,CAAC;wBAEtB,2BAA2B;wBAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAwB,CAAC;wBAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;wBAE1C,MAAM,IAAI,CAAC,oBAAoB,CAC7B,SAAS,EACT,SAAS,EACT,cAAc,EACd,YAAY,CACb,CAAC;wBAEF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;4BAC3C,GAAG,EAAE,0BAAsC;4BAC3C,OAAO,EAAE,cAAc;4BACvB,YAAY,EAAE,iBAAiB;4BAC/B,IAAI,EAAE;gCACJ,SAAS;gCACT,YAAY;gCACZ,gBAAgB;gCAChB,SAAS;gCACT,eAAQ;6BACT;4BACD,MAAM,EAAE,IAAI,CAAC,eAAe;4BAC5B,KAAK,EAAE,SAAS;yBACjB,CAAC,CAAC;wBAEH,MAAM,SAAS,CAAC,oBAAoB,CAAC;4BACnC,MAAM,EAAE,MAAM;4BACd,aAAa,EAAE,CAAC;4BAChB,SAAS,EAAE,kBAAU,CAAC,KAAK,CAAC,CAAC,OAAO;yBACrC,CAAC,CAAC;wBAEH,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;wBAClD,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC;gBAED,2CAA2C;gBAC3C,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAChC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC;gBAED,sDAAsD;gBACtD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACvC,CAAC;gBAED,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;gBACjD,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC1D,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;gBACtC;;mBAEG;gBACH,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,UAAU,CAAC,CAAC;oBACnD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC1C,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5D,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD;;mBAEG;gBACH,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,CAAC,CAAC;gBACtD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBACrD,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC;gBAC9C,MAAM,aAAa,GAAG,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC;gBACrD,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;gBACrE;;mBAEG;gBACH,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,CAAC,CAAC;gBACtD,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACtC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;oBACtD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;iBAChC,CAAC,CAAC;gBACH,MAAM,aAAa,GAAG,IAAI,KAAK,SAAS,CAAC;gBACzC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,mBAAmB,CACtB,mCAAa,CAAC,aAAa,EAC3B,GAAG,EACH,aAAa,EACb,KAAK,EACL,KAAK,CACN,CAAC;gBACF;;mBAEG;gBACH,IAAI,aAAa,GAAuB,OAAO,CAAC,aAAa,CAAC;gBAC9D,IAAI,aAAa,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrD,oBAAoB;oBACpB,aAAa,GAAG,IAAA,iBAAU,EAAC,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;gBACrE,CAAC;gBACD,uEAAuE;gBACvE,MAAM,kBAAkB,GACtB,CAAC,CAAC,aAAa,IAAI,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CACjC,IAAI,CAAC,SAAS,CACZ;oBACE,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;oBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC;oBACzC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC;oBAClD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,MAAM,CAAC,CAAC,CAAC;oBAC/D,KAAK;oBACL,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC;oBAChD,KAAK,EAAE,kBAAkB;wBACvB,CAAC,CAAC,qBAAgB,CAAC,uBAAuB;wBAC1C,CAAC,CAAC,qBAAgB,CAAC,kBAAkB;iBACxC,EACD,IAAI,CAAC,cAAc,CACpB,CACkB,CAAC;gBACtB,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC;oBAC9C,iBAAiB,EAAE,GAAG;oBACtB,OAAO,EAAE,gBAAgB;iBAC1B,CAAC,CAAC;gBACH;;mBAEG;gBACH,IAAI,gBAA+B,CAAC;gBACpC;;;;;mBAKG;gBACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB;;uBAEG;oBACH,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;oBACrE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC/C,gBAAgB,EAChB,GAAG,CACJ,CAAC;oBACF,gBAAgB,GAAG,IAAA,iBAAU,EAAC,SAAS,CAAC,CAAC;oBACzC,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;gBAC1E,CAAC;qBAAM,CAAC;oBACN;;uBAEG;oBACH,MAAM,cAAc,GAAG,aAAa,GAAG,KAAK,CAAC;oBAC7C,MAAM,eAAe,GAAG,sBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,iCAAiC;oBAC1G,MAAM,UAAU,GACd,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC;oBAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAE/D,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;oBAClE,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,CAC3C,eAAe,EACf,aAAa,CACd,CAAC;oBACF,aAAa,GAAG,IAAA,iBAAU,EAAC,kBAAkB,CAAC,CAAC;oBAC/C,gBAAgB,GAAG,IAAA,iBAAU,EAAC,kBAAkB,CAAC,CAAC;oBAClD;;uBAEG;oBACH,MAAM,EAAE,EAAE,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;oBAEjC,IAAI,CAAC,mBAAmB,CACtB,mCAAa,CAAC,aAAa,EAC3B,EAAE,KAAK,UAAE,CAAC,GAAG;wBACX,CAAC,CAAC,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;wBAC7C,CAAC,CAAC,aAAa,EACjB,kBAAU,CAAC,KAAK,CAAC,CAAC,aAAa,CAChC,CAAC;oBACF,MAAM,IAAI,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;oBAC5D,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,CAAC,CAAC;gBACxD,CAAC;gBACD;;mBAEG;gBACH,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,UAAU,CAAC,CAAC;gBACnD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAC7C,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,gBAAgB,CACjB,CAAC;gBACF,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;gBACpE,OAAO,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,mBAAmB,CAAC,mCAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;gBAC3D,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;KAAA;IAED;;;;;;OAMG;IACW,OAAO;qEACnB,MAAc,EAAE,sBAAsB;QACtC,gBAAwB,eAAQ;YAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAE7D,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,OAAO,GAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;YAE5D,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,qDAAqD;oBACrD,MAAM,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;wBACzD,IAAI,wBAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa;wBAC3D,OAAO,CAAC,OAAO,CAAC,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;qBAC5C,CAAC,CAAC;oBAEH,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC,mBAAmB;oBAC9C,MAAM,YAAY,GAChB,CAAC,MAAM,GAAG,MAAM,CAAC,SAAA,EAAE,EAAI,cAAc,CAAA,CAAC,CAAC,GAAG,mBAAmB,CAAC;oBAEhE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;wBAC3C,GAAG,EAAE,oBAAqB;wBAC1B,OAAO,EAAE,cAAc;wBACvB,YAAY,EAAE,UAAU;wBACxB,IAAI,EAAE,CAAC,aAAa,CAAC;wBACrB,MAAM,EAAE,IAAI,CAAC,eAAe;wBAC5B,KAAK,EAAE,YAAY;qBACpB,CAAC,CAAC;oBACH,OAAO,IAAA,iBAAU,EAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBAED,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,uEAAuE;oBACvE,MAAM,CAAC,mBAAmB,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CACrE;wBACE,IAAI,wBAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa;wBAC3D,OAAO,CAAC,OAAO,CAAC,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,OAAO,CACb,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAC1C,CAAC,IAAA,oBAAa,EAAC,QAAQ,CAAC,CAAC,EACzB,IAAI,mBAAS,CAAC,cAAc,CAAC,CAC9B,CACF;qBACF,CACF,CAAC;oBAEF,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,eAAe;oBACzC,MAAM,YAAY,GAChB,CAAC,MAAM,GAAG,MAAM,CAAC,SAAA,EAAE,EAAI,cAAc,CAAA,CAAC,CAAC,GAAG,mBAAmB,CAAC;oBAEhE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;wBAC3C,GAAG,EAAE,oBAAc;wBACnB,OAAO,EAAE,cAAc;wBACvB,YAAY,EAAE,UAAU;wBACxB,IAAI,EAAE,CAAC,YAAY,EAAE,IAAA,cAAO,EAAC,aAAa,CAAC,CAAC;wBAC5C,MAAM,EAAE,IAAI,CAAC,eAAe;wBAC5B,QAAQ,EAAE;4BACR,MAAM,EAAE,SAAS;4BACjB,IAAI,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;4BACzD,WAAW,EAAE,IAAI,mBAAS,CACxB,8CAA8C,CAC/C;4BACD,aAAa,EAAE,uBAAa,CAAC,SAAS;yBACvC;qBACF,CAAC,CAAC;oBACH,OAAO,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzC,CAAC;gBAED;oBACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;KAAA;IAEa,oBAAoB,CAChC,gBAAkC,EAClC,iBAAgC,EAChC,OAAgB;;YAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAE1C,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;wBACxC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;oBAClD,CAAC;oBACD,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;wBACxC,MAAM,EAAE;4BACN,OAAO,EAAE,OAAO,IAAI,OAAO;4BAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;4BACxB,iBAAiB;yBAClB;wBACD,KAAK,EAAE;4BACL,gBAAgB,EAAE;gCAChB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;gCAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;gCAClC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;gCAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;gCACrC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;gCACzC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE;gCACjD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;gCAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;gCACrC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;6BACjC;yBACF;wBACD,WAAW,EAAE,kBAAkB;wBAC/B,OAAO,EAAE,gBAAgB;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC;wBACvC,iBAAiB;wBACjB,OAAO,EAAE,gBAAgB;wBACzB,OAAO,EAAE,OAAO,IAAI,OAAO;qBAC5B,CAAC,CAAC;oBACH,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAA,oBAAa,EAAC,MAAM,CAAC,CAAC,CAAC;gBACjE,CAAC;gBAED,OAAO,CAAC,CAAC,CAAC;oBACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;KAAA;IAED;;OAEG;IACW,eAAe,CAC3B,aAAsB,EACtB,aAAsB,EACtB,gBAAmC,EACnC,gBAAgC;;;YAEhC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YACxD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAE1C,MAAM,kBAAkB,GAAuB;gBAC7C,cAAc,EAAE,oBAAY,CAAC,EAAE,CAAC;gBAChC,OAAO,EAAE,OAAO;gBAChB,KAAK,EACH,EAAE,KAAK,UAAE,CAAC,GAAG;oBACX,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG;wBACf,CAAC,CAAC,IAAA,iBAAU,EAAC,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC9C,CAAC,CAAC,OAAO;aACd,CAAC;YAEF,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACrE,MAAM,IAAI,GAAU,EAAE,CAAC;YAEvB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB;;mBAEG;gBACH,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;gBAChE,CAAC;gBACD,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;oBACjC,MAAM;oBACN,kBAAkB;oBAClB,MAAM,EAAE,aAAa;iBACtB,CAAC,CACH,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;oBAC9B,MAAM;oBACN,kBAAkB;oBAClB,MAAM,EAAE,aAAa;iBACtB,CAAC,CACH,CAAC;YACJ,CAAC;YAED,IAAI,gBAAgB,IAAI,gBAAgB,EAAE,CAAC;gBACzC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;oBACtC,MAAM;oBACN,kBAAkB;oBAClB,gBAAgB;oBAChB,gBAAgB;iBACjB,CAAC,CACH,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACzD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC1D,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,WAAW,GACf,MAAA,MAAA,EAAE,CAAC,MAAM,0CACL,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,EAC5C,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;;gBAClB,OAAA,MAAA,CAAC,CAAC,UAAU,0CACR,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,gBAAgB,EACpD,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAsB,CAAC,CAAA;aAAA,CACnD,mCAAI,EAAE,CAAC;YAEZ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YAED,0DAA0D;YAC1D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,WAAW,CAAC,GAAG,CAAC,CAAO,IAAI,EAAE,EAAE;gBAC7B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC,CAAA,CAAC,CACH,CAAC;YAEF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAC5D,CAAC;QACJ,CAAC;KAAA;IAED;;;;;OAKG;IACW,UAAU,CACtB,OAAsB;;YAEtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;gBACnD,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,IAAI,CAAC,eAAe;aAC7B,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAChE,OAAO,MAAM,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC;QAC/D,CAAC;KAAA;IAED;;;;;;;;;;;;OAYG;IACK,oBAAoB,CAAC,EAC3B,iBAAiB,EACjB,OAAO,EACP,OAAO,GAAG,OAAO,GAKlB;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;QACjD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;QAE1C,eAAe;QACf,MAAM,QAAQ,GAAG,IAAA,gBAAS,EACxB,IAAA,cAAO,EACL,qKAAqK,CACtK,CACF,CAAC;QAEF,sBAAsB;QACtB,MAAM,cAAc,GAAG,IAAA,gBAAS,EAC9B,IAAA,cAAO,EACL,EAAE,KAAK,UAAE,CAAC,GAAG;YACX,CAAC,CAAC,wEAAwE;YAC1E,CAAC,CAAC,2EAA2E,CAChF,CACF,CAAC;QAEF,MAAM,eAAe,GAAG,IAAA,gBAAS,EAC/B,IAAA,0BAAmB,EACjB;YACE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC/D,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C,EACD;YACE,cAAc;YACd,IAAA,gBAAS,EAAC,IAAA,cAAO,EAAC,OAAO,CAAC,CAAC;YAC3B,EAAE,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;YACzC,iBAAiB;SAClB,CACF,CACF,CAAC;QAEF,iBAAiB;QACjB,MAAM,UAAU,GAAG,IAAA,gBAAS,EAC1B,IAAA,0BAAmB,EACjB;YACE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;YACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACzC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE;YACjD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YACrC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;SACjC,EACD;YACE,QAAQ;YACR,OAAO,CAAC,EAAmB;YAC3B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YACrB,IAAA,gBAAS,EAAC,OAAO,CAAC,IAAqB,CAAC;YACxC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YAC5B,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YACrB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YACxB,OAAO,CAAC,KAAK;SACd,CACF,CACF,CAAC;QAEF,kBAAkB;QAClB,OAAO,IAAA,gBAAS,EACd,IAAA,mBAAY,EACV,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAChC,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC,CAC1C,CACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACG,UAAU;;YAId,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YACxD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAE1C,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,eAAe,GAAiB,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;gBACvE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc;gBACrD,GAAG,EAAE,gBAAiB;gBACtB,YAAY,EAAE,YAAY;gBAC1B,IAAI,EAAE;oBACJ;wBACE,cAAc,EAAE,oBAAY,CAAC,EAAE,CAAC;wBAChC,OAAO,EAAE,OAAO;wBAChB;;;;;2BAKG;wBACH,KAAK,EACH,EAAE,KAAK,UAAE,CAAC,GAAG;4BACX,CAAC,CAAC,OAAO;4BACT,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG;gCACf,CAAC,CAAC,IAAA,iBAAU,EAAC,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gCAC9C,CAAC,CAAC,OAAO;qBACd;iBACF;aACF,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC;gBAC1D,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;QACxE,CAAC;KAAA;IAED,kBAAkB;QAChB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;QACxD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;QAE1C,kDAAkD;QAClD,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,OAAwB,CAAC;QAClC,CAAC;QAED,kDAAkD;QAClD,IAAI,QAAuB,CAAC;QAC5B,IAAI,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG,EAAE,CAAC;YACpC,QAAQ,GAAG,OAAwB,CAAC;QACtC,CAAC;aAAM,IAAI,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAE,CAAC,GAAG,EAAE,CAAC;YAC3C,QAAQ,GAAG,IAAA,iBAAU,EAAC,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,wBAAwB,kBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,qEAAqE;QACrE,MAAM,gBAAgB,GAAG,IAAA,0BAAmB,EAC1C;YACE;gBACE,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACnC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;iBACjC;aACF;SACF,EACD,CAAC,EAAE,cAAc,EAAE,oBAAY,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CACjE,CAAC;QAEF,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,gBAAgB,CAAC,CAAC;QAEzC,uCAAuC;QACvC,MAAM,uBAAuB,GAAG,CAAC,wBAAwB;YACvD,sBAAsB;YACtB,iBAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5D,gCAAgC,CAAkB,CAAC;QAErD,+CAA+C;QAC/C,MAAM,YAAY,GAAG,IAAA,gBAAS,EAAC,uBAAuB,CAAC,CAAC;QAExD,6DAA6D;QAC7D,MAAM,UAAU,GAAG,IAAA,wBAAiB,EAAC;YACnC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc;YAClD,IAAI;YACJ,YAAY,EAAE,YAAY;SAC3B,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACW,WAAW,CAAC,OAAsB;;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,EAAE,EAAE,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAEjC,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;wBAClC,OAAO;wBACP,GAAG,EAAE,iBAAc;wBACnB,YAAY,EAAE,OAAO;qBACtB,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;wBAClC,OAAO;wBACP,GAAG,EAAE,aAAc;wBACnB,YAAY,EAAE,OAAO;qBACtB,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,CAAC,CAAC,CAAC;oBACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;KAAA;IAED,0DAA0D;IAC1D,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK;YACzC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO;SAC9C,CAAC;IACJ,CAAC;IAEa,4BAA4B,CACxC,WAAuB;;YAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;YAElD,QAAQ,EAAE,EAAE,CAAC;gBACX,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;oBAC7C,MAAM,SAAS,CAAC,oBAAoB,CAAC;wBACnC,MAAM,EAAE,IAAA,iBAAU,EAAC,WAAW,CAAC;wBAC/B,aAAa;wBACb,SAAS,EAAE,OAAO;qBACnB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED,KAAK,UAAE,CAAC,GAAG,CAAC,CAAC,CAAC;oBACZ,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;oBAC7C,MAAM,SAAS,CAAC,oBAAoB,CAAC;wBACnC,WAAW,EAAE,cAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBACjD,aAAa;wBACb,SAAS,EAAE,OAAO;qBACnB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBAED;oBACE,MAAM,IAAI,KAAK,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;KAAA;IAEa,oBAAoB,CAChC,SAAoB,EACpB,YAA2B,EAC3B,OAAsB,EACtB,cAAsB;;YAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAwB,CAAC;YAEpE,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,YAAY,CAAS;gBAC5D,GAAG,EAAE,eAAgB;gBACrB,OAAO,EAAE,YAAY;gBACrB,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;aACvB,CAAC,CAAC;YAEH,IAAI,gBAAgB,IAAI,cAAc;gBAAE,OAAO;YAE/C,wEAAwE;YACxE,gEAAgE;YAChE,IAAI,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CACX,qCAAqC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,OAAO,EAAE,CAC/F,CAAC;gBACF,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;oBAChD,GAAG,EAAE,eAAgB;oBACrB,OAAO,EAAE,YAAY;oBACrB,YAAY,EAAE,SAAS;oBACvB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC1B,MAAM,EAAE,IAAI,CAAC,eAAe;iBAC7B,CAAC,CAAC;gBACH,MAAM,SAAS,CAAC,oBAAoB,CAAC;oBACnC,MAAM,EAAE,WAAW;oBACnB,aAAa,EAAE,CAAC;oBAChB,SAAS,EAAE,kBAAU,CAAC,KAAK,CAAC,CAAC,OAAO;iBACrC,CAAC,CAAC;YACL,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC;gBAC9C,GAAG,EAAE,eAAgB;gBACrB,OAAO,EAAE,YAAY;gBACrB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC;gBAC/B,MAAM,EAAE,IAAI,CAAC,eAAe;aAC7B,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,oBAAoB,CAAC;gBACnC,MAAM,EAAE,SAAS;gBACjB,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,kBAAU,CAAC,KAAK,CAAC,CAAC,OAAO;aACrC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,YAAY,CAAS;oBACnD,GAAG,EAAE,eAAgB;oBACrB,OAAO,EAAE,YAAY;oBACrB,YAAY,EAAE,WAAW;oBACzB,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;iBACvB,CAAC,CAAC;gBACH,IAAI,OAAO,GAAG,cAAc,EAAE,CAAC;oBAC7B,IAAI,CAAC,QAAQ,CAAC,gDAAgD,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;YAAC,WAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;KAAA;IAED;;OAEG;IACK,oBAAoB;QAK1B,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;QACjD,IAAI,KAAK,KAAK,aAAK,CAAC,gBAAgB,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,OAAO,GAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7C,MAAM,cAAc,GAAG,cAA+B,CAAC;QACvD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACW,uBAAuB;;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC/B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;aACvD,CAAC,CAAC;YACH,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;IAED;;OAEG;IACW,oBAAoB;;YAIhC,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC/B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;aACvD,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,CAAC;YACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC7B,CAAC;KAAA;IAED;;OAEG;IACW,yBAAyB,CACrC,OAAsB,EACtB,KAAa;;;YAEb,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,MAAM,CAAC,CAAC,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,MAAM,CAAC,CAAC,CAAC,CAAC;YAE7C,MAAM,gBAAgB,GAAG;gBACvB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gBAC1B,QAAQ,EAAE,WAAW;gBACrB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC;gBAClD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,MAAM,CAAC,CAAC,CAAC;gBAC/D,KAAK;gBACL,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC;gBAChD,KAAK,EAAE,qBAAgB,CAAC,uBAAuB;aAC5B,CAAC;YAEtB,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;QAClD,CAAC;KAAA;IAED,wGAAwG;IAExG;;OAEG;IACK,6BAA6B,CACnC,OAA2B,EAAE,+BAA+B;IAC5D,kBAAuC;QAEvC,OAAO;YACL,cAAc;YACd,IAAI,EAAE,OAAO,CAAC,eAAe;YAE7B,gBAAgB;YAChB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAE1C,uBAAuB;YACvB,IAAI,EAAE,kBAAkB,CAAC,IAAI;YAC7B,EAAE,EAAE,kBAAkB,CAAC,EAAE;YACzB,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;YAEhD,iBAAiB;YACjB,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC;YAClD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAE5C,UAAU;YACV,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;YAEpC,aAAa;YACb,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5C,SAAS;YACT,GAAG,EAAE,kBAAkB,CAAC,GAAG,IAAI;gBAC7B,IAAI,EAAE,kBAAkB,CAAC,IAAI;gBAC7B,EAAE,EAAE,kBAAkB,CAAC,EAAE;aAC1B;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACW,8BAA8B,CAC1C,EAAc;;YAEd,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YACjD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,kBAAU,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,IAAmB,CAAC;YACxB,IAAI,EAAiB,CAAC;YACtB,IAAI,KAAa,CAAC;YAClB,IAAI,IAAY,CAAC;YACjB,IAAI,kBAMH,CAAC;YAEF,MAAM,SAAS,GACb,MAAM,sBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,8BAA8B,CAC1D,EAAE,CAAC,EAAmB,CACvB,CAAC;YACJ,IAAI,aAAqB,CAAC;YAE1B,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBACrB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAChD,CAAC;gBACD,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC1C,IAAI,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC,CAAC;gBAE1C,IAAI,OAAO,CAAC;gBAEZ,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBACtB,OAAO,GAAG,IAAA,yBAAkB,EAAC;wBAC3B,GAAG,EAAE,iBAAO;wBACZ,IAAI,EAAE,EAAE,CAAC,KAAK;qBACf,CAAC,CAAC;oBACH,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAA,EAAE,CAAC;wBACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBACpD,CAAC;oBACD,MAAM,gBAAgB,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAUvC,CAAC;oBAEF,EAAE,GAAG,gBAAgB,CAAC,EAAmB,CAAC;oBAC1C,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBAC7B,kBAAkB,GAAG;wBACnB,IAAI,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,IAAI,CAAC;wBACzB,EAAE,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC;wBACtC,KAAK,EAAE,EAAE,CAAC,KAAK;wBACf,IAAI,EAAE,EAAE,CAAC,KAAK;wBACd,KAAK,EAAE,EAAE,CAAC,KAAK;qBAChB,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,EAAE,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC,CAAC;oBACxC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;oBACjB,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC;oBAChB,kBAAkB,GAAG;wBACnB,IAAI,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,IAAI,CAAC;wBACzB,EAAE,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC;wBACtC,KAAK,EAAE,EAAE,CAAC,KAAK;wBACf,IAAI,EAAE,EAAE,CAAC,KAAK;wBACd,KAAK,EAAE,EAAE,CAAC,KAAK;qBAChB,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,aAAa,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC3B,EAAE,GAAG,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC,CAAC;gBACxC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;gBACjB,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC;gBAChB,kBAAkB,GAAG;oBACnB,IAAI,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,IAAI,CAAC;oBACzB,EAAE,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,EAAmB,CAAC;oBACtC,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,IAAI,EAAE,EAAE,CAAC,KAAK;oBACd,KAAK,EAAE,EAAE,CAAC,KAAK;iBAChB,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,GAAG,oBAAY,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,aAAa,EAAE,CAAC;YAEjE,mDAAmD;YACnD,IAAI,SAAoB,CAAC;YACzB,IAAI,CAAC;gBACH,SAAS,GAAG;oBACV,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK;oBAChB,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK;oBAChB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;oBACtD,OAAO,EAAE,EAAE,CAAC,OAAO;iBACpB,CAAC;YACJ,CAAC;YAAC,WAAM,CAAC;gBACP,sCAAsC;gBACtC,SAAS,GAAG;oBACV,CAAC,EAAE,oEAAoE;oBACvE,CAAC,EAAE,oEAAoE;oBACvE,CAAC,EAAE,CAAC;oBACJ,OAAO,EAAE,CAAC;iBACX,CAAC;YACJ,CAAC;YAED,6CAA6C;YAC7C,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,YAAY;YAC7B,IAAI,WAAW,GAAG,WAAW,CAAC;YAE9B,IAAI,EAAE,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC;gBACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,IAAI,GAAG,GAAG,CAAC;oBACX,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;qBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBAChC,IAAI,GAAG,GAAG,CAAC;oBACX,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;qBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,GAAG,GAAG,CAAC;oBACX,WAAW,GAAG,QAAQ,CAAC;gBACzB,CAAC;qBAAM,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;oBAC/B,IAAI,GAAG,GAAG,CAAC;oBACX,WAAW,GAAG,SAAS,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,MAAM,mBAAmB,GAAwB;gBAC/C,cAAc;gBACd,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,MAAM;gBAEN,gBAAgB;gBAChB,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC;gBACxC,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,EAAE;gBAC7B,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC;gBAC1C,OAAO;gBAEP,uBAAuB;gBACvB,IAAI,EAAE,IAAI,EAAE,8CAA8C;gBAC1D,EAAE,EAAE,EAAE,IAAI,EAAE;gBACZ,KAAK,EAAE,EAAE,CAAC,KAAK;gBAEf,aAAa;gBACb,IAAI,EAAE,iCAAiC;gBACvC,KAAK;gBAEL,SAAS;gBACT,QAAQ,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY;gBAC3C,QAAQ,EAAE,EAAE,CAAC,QAAQ;gBACrB,YAAY,EAAE,EAAE,CAAC,YAAY;gBAC7B,oBAAoB,EAAE,EAAE,CAAC,oBAAoB;gBAC7C,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;gBAElE,eAAe;gBACf,IAAI,EAAE,GAAsC,EAAE;oBAC5C,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;oBAChC,OAAO,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;gBAC1E,CAAC,CAAA;gBAED,cAAc;gBACd,IAAI;gBACJ,WAAW;gBACX,SAAS;gBAET,0BAA0B;gBAC1B,GAAG,EAAE,kBAAkB;aACxB,CAAC;YAEF,OAAO,mBAAmB,CAAC;QAC7B,CAAC;KAAA;IAED,8DAA8D;IACtD,cAAc,CAAC,IAAY,EAAE,KAAU;QAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ;YAC9B,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,2BAA2B;YAC9C,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IAED;;;;;;OAMG;IACK,WAAW,CAAC,KAAY;QAC9B,OAAO,CACL,KAAK,KAAK,aAAK,CAAC,YAAY;YAC5B,KAAK,KAAK,aAAK,CAAC,kBAAkB;YAClC,KAAK,KAAK,aAAK,CAAC,aAAa,CAC9B,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,KAAY;QAC5C,MAAM,SAAS,GAAG,CAAC,aAAK,CAAC,gBAAgB,EAAE,aAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,CACvE,KAAK,CACN,CAAC;QACF,IACE,SAAS;YACT,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO;gBACnC,kBAAU,CAAC,aAAK,CAAC,YAAY,CAAC,CAAC,OAAO,EACxC,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,GAAW;QAC1B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,MAAc,EAAE,GAAG,IAAW;QACxD,MAAM,SAAS,GAAG,uBAAc,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,WAAW,GAAkB,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,oCAAoC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;CACF;AA1yCD,oCA0yCC"}
@@ -48,6 +48,19 @@ export type ExecuteParams = {
48
48
  fundGas?: {
49
49
  chainToken: `0x${string}`;
50
50
  };
51
+ /**
52
+ * Optional funds movement from origin chain to Push Chain (FUNDS_TX).
53
+ * When present and no calldata is provided, the SDK will bridge the specified
54
+ * ERC‑20 token amount to Push Chain using the Universal Gateway.
55
+ *
56
+ * Notes:
57
+ * - Currently supported only on Ethereum Sepolia
58
+ * - pay-with-token gas abstraction is NOT supported yet
59
+ */
60
+ funds?: {
61
+ amount: bigint;
62
+ token?: import('../constants').MoveableToken;
63
+ };
51
64
  };
52
65
  /**
53
66
  * New Universal Transaction Receipt interface with prioritized field ordering
@@ -4,6 +4,7 @@ import { UniversalAccount, UniversalSigner } from '../universal/universal.types'
4
4
  import { Utils } from '../utils';
5
5
  import { TypedData, TypedDataDomain } from 'viem';
6
6
  import { ProgressEvent } from '../progress-hook/progress-hook.types';
7
+ import { MoveableToken, PayableToken, ConversionQuote, MoveableTokenAccessor, PayableTokenAccessor } from '../constants/tokens';
7
8
  /**
8
9
  * @class PushChain
9
10
  *
@@ -61,6 +62,22 @@ export declare class PushChain {
61
62
  getTransactionUrl: (txHash: string) => string;
62
63
  listUrls: () => string[];
63
64
  };
65
+ /**
66
+ * Moveable and payable token registries exposed on the client instance.
67
+ * These are derived from the origin chain and only include tokens available for that chain.
68
+ */
69
+ moveable: {
70
+ token: MoveableTokenAccessor;
71
+ };
72
+ payable: {
73
+ token: PayableTokenAccessor;
74
+ };
75
+ funds: {
76
+ getConversionQuote: (amountIn: bigint, options: {
77
+ from: PayableToken | undefined;
78
+ to: MoveableToken | undefined;
79
+ }) => Promise<ConversionQuote>;
80
+ };
64
81
  private constructor();
65
82
  /**
66
83
  * @private