@across-protocol/sdk 4.3.45 → 4.3.46

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.
Files changed (34) hide show
  1. package/dist/cjs/arch/svm/SpokeUtils.d.ts +21 -10
  2. package/dist/cjs/arch/svm/SpokeUtils.js +128 -10
  3. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/encoders.d.ts +19 -0
  5. package/dist/cjs/arch/svm/encoders.js +52 -0
  6. package/dist/cjs/arch/svm/encoders.js.map +1 -0
  7. package/dist/cjs/arch/svm/index.d.ts +1 -0
  8. package/dist/cjs/arch/svm/index.js +1 -0
  9. package/dist/cjs/arch/svm/index.js.map +1 -1
  10. package/dist/cjs/providers/solana/retryRpcFactory.js +14 -10
  11. package/dist/cjs/providers/solana/retryRpcFactory.js.map +1 -1
  12. package/dist/esm/arch/svm/SpokeUtils.d.ts +38 -10
  13. package/dist/esm/arch/svm/SpokeUtils.js +151 -10
  14. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  15. package/dist/esm/arch/svm/encoders.d.ts +19 -0
  16. package/dist/esm/arch/svm/encoders.js +43 -0
  17. package/dist/esm/arch/svm/encoders.js.map +1 -0
  18. package/dist/esm/arch/svm/index.d.ts +1 -0
  19. package/dist/esm/arch/svm/index.js +1 -0
  20. package/dist/esm/arch/svm/index.js.map +1 -1
  21. package/dist/esm/providers/solana/retryRpcFactory.js +15 -10
  22. package/dist/esm/providers/solana/retryRpcFactory.js.map +1 -1
  23. package/dist/types/arch/svm/SpokeUtils.d.ts +38 -10
  24. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  25. package/dist/types/arch/svm/encoders.d.ts +20 -0
  26. package/dist/types/arch/svm/encoders.d.ts.map +1 -0
  27. package/dist/types/arch/svm/index.d.ts +1 -0
  28. package/dist/types/arch/svm/index.d.ts.map +1 -1
  29. package/dist/types/providers/solana/retryRpcFactory.d.ts.map +1 -1
  30. package/package.json +1 -1
  31. package/src/arch/svm/SpokeUtils.ts +187 -4
  32. package/src/arch/svm/encoders.ts +86 -0
  33. package/src/arch/svm/index.ts +1 -0
  34. package/src/providers/solana/retryRpcFactory.ts +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { MessageTransmitterClient, SvmSpokeClient } from "@across-protocol/contracts";
2
2
  import { Mint } from "@solana-program/token";
3
- import { Account, Address, FetchAccountConfig, IAccountMeta, KeyPairSigner, ReadonlyUint8Array, type TransactionSigner, type Commitment } from "@solana/kit";
3
+ import { Account, Address, FetchAccountConfig, IAccountMeta, IInstruction, KeyPairSigner, ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type ReadonlyAccount, type Commitment } from "@solana/kit";
4
4
  import winston from "winston";
5
5
  import { DepositWithBlock, FillStatus, FillWithBlock, RelayData, RelayDataWithMessageHash } from "../../interfaces";
6
6
  import { BigNumber, EvmAddress, Address as SdkAddress, SvmAddress } from "../../utils";
7
+ import { type AcrossPlusMessage } from "./";
7
8
  import { SvmCpiEventsClient } from "./eventsClient";
8
9
  import { AttestedCCTPMessage, SVMProvider } from "./types";
9
10
  /**
@@ -132,7 +133,25 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
132
133
  recipient: SvmAddress;
133
134
  outputToken: SvmAddress;
134
135
  }, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
135
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
136
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
137
+ version: 0;
138
+ }>, "feePayer">>;
139
+ /**
140
+ * Creates a fill instruction with an instruction params PDA as the relayData input.
141
+ * @param spokePoolAddr Address of the spoke pool we're trying to fill through
142
+ * @param solanaClient RPC client to interact with Solana chain
143
+ * @param relayData RelayData instance, supplemented with destinationChainId
144
+ * @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
145
+ * @param repaymentChainId Chain id where relayer repayment is desired
146
+ * @param repaymentAddress Address to which repayment will go to on repaymentChainId
147
+ * @returns FillRelay transaction
148
+ */
149
+ export declare function getIPFillRelayTx(spokePoolAddr: SvmAddress, solanaClient: SVMProvider, relayData: Omit<RelayData, "recipient" | "outputToken"> & {
150
+ destinationChainId: number;
151
+ recipient: SvmAddress;
152
+ outputToken: SvmAddress;
153
+ }, signer: TransactionSigner, repaymentChainId: number, repaymentAddress: SdkAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
154
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
136
155
  version: 0;
137
156
  }>, "feePayer">>;
138
157
  /**
@@ -144,10 +163,11 @@ export declare function getFillRelayTx(spokePoolAddr: SvmAddress, solanaClient:
144
163
  * @param createRecipientAtaIfNeeded - Whether to create a recipient token account.
145
164
  * @returns The fill instruction.
146
165
  */
147
- export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
148
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
166
+ export declare const createFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillInput: SvmSpokeClient.FillRelayInput, relayData: Pick<SvmSpokeClient.RelayDataArgs, "outputAmount" | "recipient">, tokenDecimals: number, createRecipientAtaIfNeeded?: boolean, remainingAccounts?: (WritableAccount | ReadonlyAccount)[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
167
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
149
168
  version: 0;
150
169
  }>, "feePayer">>;
170
+ export declare function deserializeMessage(_message: string): AcrossPlusMessage;
151
171
  /**
152
172
  * Creates a deposit instruction.
153
173
  * @param signer - The signer of the transaction.
@@ -158,7 +178,7 @@ export declare const createFillInstruction: (signer: TransactionSigner, solanaCl
158
178
  * @returns The deposit instruction.
159
179
  */
160
180
  export declare const createDepositInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, depositInput: SvmSpokeClient.DepositInput, tokenDecimals: number, createVaultAtaIfNeeded?: boolean) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
161
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
181
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
162
182
  version: 0;
163
183
  }>, "feePayer">>;
164
184
  /**
@@ -169,7 +189,7 @@ export declare const createDepositInstruction: (signer: TransactionSigner, solan
169
189
  * @returns The request slow fill instruction.
170
190
  */
171
191
  export declare const createRequestSlowFillInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, requestSlowFillInput: SvmSpokeClient.RequestSlowFillInput) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
172
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
192
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
173
193
  version: 0;
174
194
  }>, "feePayer">>;
175
195
  /**
@@ -185,7 +205,7 @@ export declare function getSlowFillRequestTx(spokePoolAddr: SvmAddress, solanaCl
185
205
  recipient: SvmAddress;
186
206
  outputToken: SvmAddress;
187
207
  }, signer: TransactionSigner): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
188
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
208
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
189
209
  version: 0;
190
210
  }>, "feePayer">>;
191
211
  /**
@@ -196,17 +216,25 @@ export declare function getSlowFillRequestTx(spokePoolAddr: SvmAddress, solanaCl
196
216
  * @returns The close fill PDA instruction.
197
217
  */
198
218
  export declare const createCloseFillPdaInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, fillStatusPda: Address) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
199
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
219
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
200
220
  version: 0;
201
221
  }>, "feePayer">>;
202
222
  export declare const createReceiveMessageInstruction: (signer: TransactionSigner, solanaClient: SVMProvider, input: MessageTransmitterClient.ReceiveMessageInput, remainingAccounts: IAccountMeta<string>[]) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
203
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
223
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
204
224
  version: 0;
205
225
  }>, "feePayer">>;
206
226
  export declare function getAssociatedTokenAddress(owner: SvmAddress, mint: SvmAddress, tokenProgramId?: Address<string>): Promise<Address<string>>;
207
227
  export declare function getRelayDataHash(relayData: RelayData & {
208
228
  messageHash: string;
209
229
  }, destinationChainId: number): string;
230
+ /**
231
+ * Returns a set of instructions to execute to fill a relay via instruction params.
232
+ * @param spokePool The program ID of the Solana spoke pool.
233
+ * @param relayData The relay data to write to the instruction params PDA.
234
+ * @param signer The transaction signer and authority of the instruction params PDA.
235
+ * @param maxWriteSize The maximum fragment size to write to instruction params.
236
+ */
237
+ export declare function getFillRelayViaInstructionParamsInstructions(spokePool: Address<string>, relayData: RelayData, repaymentChainId: number, repaymentAddress: SdkAddress, signer: TransactionSigner<string>, maxWriteSize?: number): Promise<IInstruction[]>;
210
238
  /**
211
239
  * Returns the delegate PDA for deposit.
212
240
  */
@@ -268,7 +296,7 @@ export declare function getAccountMetasForTokenlessMessage(solanaClient: SVMProv
268
296
  * @returns The CCTP v1 receive message transaction.
269
297
  */
270
298
  export declare function getCCTPV1ReceiveMessageTx(solanaClient: SVMProvider, signer: KeyPairSigner, message: AttestedCCTPMessage, hubChainId: number, recipientAta: SvmAddress): Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
271
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
299
+ instructions: readonly IInstruction<string, readonly (IAccountMeta<string> | import("@solana/kit").IAccountLookupMeta<string, string>)[]>[];
272
300
  version: 0;
273
301
  }>, "feePayer">>;
274
302
  /**
@@ -10,7 +10,7 @@ import { arrayify } from "ethers/lib/utils";
10
10
  import { CHAIN_IDs, TOKEN_SYMBOLS_MAP } from "../../constants";
11
11
  import { FillStatus, } from "../../interfaces";
12
12
  import { EvmAddress, SvmAddress, bs58, chainIsProd, chainIsSvm, chunk, delay, getMessageHash, isUnsafeDepositId, keccak256, mapAsync, toAddressType, } from "../../utils";
13
- import { createDefaultTransaction, getCCTPNoncePda, getEventAuthority, getFillStatusPda, getSelfAuthority, getStatePda, isDepositForBurnEvent, simulateAndDecode, toAddress, unwrapEventData, getRootBundlePda, toSvmRelayData, } from "./";
13
+ import { createDefaultTransaction, getCCTPNoncePda, getEventAuthority, getFillStatusPda, getSelfAuthority, getStatePda, isDepositForBurnEvent, simulateAndDecode, toAddress, unwrapEventData, getRootBundlePda, getAcrossPlusMessageDecoder, getAccountMeta, getInstructionParamsPda, toSvmRelayData, } from "./";
14
14
  import { SVM_BLOCK_NOT_AVAILABLE, SVM_SLOT_SKIPPED, isSolanaError } from "./provider";
15
15
  import { SVMEventNames } from "./types";
16
16
  import { getEmergencyDeleteRootBundleRootBundleId, getNearestSlotTime, isEmergencyDeleteRootBundleMessageBody, isRelayRootBundleMessageBody, } from "./utils";
@@ -483,7 +483,7 @@ export function createTokenAccountsInstruction(mint, relayer) {
483
483
  */
484
484
  export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
485
485
  return __awaiter(this, void 0, void 0, function () {
486
- var svmRelayData, program, messageHash, _relayDataHash, relayDataHash, _a, state, delegate, mintInfo, fillStatus, eventAuthority, _b, recipientAta, relayerAta, fillInput;
486
+ var svmRelayData, program, messageHash, _relayDataHash, relayDataHash, _a, state, delegate, mintInfo, fillStatus, eventAuthority, _b, recipientAta, relayerAta, remainingAccounts, acrossPlusMessage_1, fillInput;
487
487
  return __generator(this, function (_c) {
488
488
  switch (_c.label) {
489
489
  case 0:
@@ -508,6 +508,16 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
508
508
  ])];
509
509
  case 2:
510
510
  _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1];
511
+ remainingAccounts = [];
512
+ if (relayData.message !== "0x") {
513
+ acrossPlusMessage_1 = deserializeMessage(relayData.message);
514
+ // The first `remainingAccount` _must_ be the handler address.
515
+ // https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
516
+ remainingAccounts.push(getAccountMeta(acrossPlusMessage_1.handler, true));
517
+ remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_1.accounts.map(function (account, idx) {
518
+ return getAccountMeta(account, idx < acrossPlusMessage_1.accounts.length - acrossPlusMessage_1.read_only_len);
519
+ }));
520
+ }
511
521
  fillInput = {
512
522
  signer: signer,
513
523
  state: state,
@@ -528,7 +538,81 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
528
538
  };
529
539
  // Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
530
540
  // if it doesn't exist.
531
- return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, mintInfo.data.decimals, true)];
541
+ return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, svmRelayData, mintInfo.data.decimals, true, remainingAccounts)];
542
+ }
543
+ });
544
+ });
545
+ }
546
+ /**
547
+ * Creates a fill instruction with an instruction params PDA as the relayData input.
548
+ * @param spokePoolAddr Address of the spoke pool we're trying to fill through
549
+ * @param solanaClient RPC client to interact with Solana chain
550
+ * @param relayData RelayData instance, supplemented with destinationChainId
551
+ * @param signer signer associated with the relayer creating a Fill. Can be VoidSigner for gas estimation
552
+ * @param repaymentChainId Chain id where relayer repayment is desired
553
+ * @param repaymentAddress Address to which repayment will go to on repaymentChainId
554
+ * @returns FillRelay transaction
555
+ */
556
+ export function getIPFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, repaymentChainId, repaymentAddress) {
557
+ return __awaiter(this, void 0, void 0, function () {
558
+ var program, _relayDataHash, relayDataHash, _a, state, delegate, instructionParams, mint, mintInfo, _b, recipientAta, relayerAta, fillStatus, eventAuthority, remainingAccounts, acrossPlusMessage_2, fillInput;
559
+ return __generator(this, function (_c) {
560
+ switch (_c.label) {
561
+ case 0:
562
+ program = toAddress(spokePoolAddr);
563
+ _relayDataHash = getRelayDataHash(__assign(__assign({}, relayData), { messageHash: getMessageHash(relayData.message) }), relayData.destinationChainId);
564
+ relayDataHash = new Uint8Array(Buffer.from(_relayDataHash.slice(2), "hex"));
565
+ return [4 /*yield*/, Promise.all([
566
+ getStatePda(program),
567
+ getFillRelayDelegatePda(relayDataHash, BigInt(repaymentChainId), toAddress(repaymentAddress), program),
568
+ getInstructionParamsPda(program, signer.address),
569
+ ])];
570
+ case 1:
571
+ _a = _c.sent(), state = _a[0], delegate = _a[1], instructionParams = _a[2];
572
+ mint = toAddress(relayData.outputToken);
573
+ return [4 /*yield*/, getMintInfo(solanaClient, mint)];
574
+ case 2:
575
+ mintInfo = _c.sent();
576
+ return [4 /*yield*/, Promise.all([
577
+ getAssociatedTokenAddress(relayData.recipient, relayData.outputToken, mintInfo.programAddress),
578
+ getAssociatedTokenAddress(SvmAddress.from(signer.address), relayData.outputToken, mintInfo.programAddress),
579
+ getFillStatusPda(program, relayData, relayData.destinationChainId),
580
+ getEventAuthority(program),
581
+ ])];
582
+ case 3:
583
+ _b = _c.sent(), recipientAta = _b[0], relayerAta = _b[1], fillStatus = _b[2], eventAuthority = _b[3];
584
+ remainingAccounts = [];
585
+ if (relayData.message !== "0x") {
586
+ acrossPlusMessage_2 = deserializeMessage(relayData.message);
587
+ // The first `remainingAccount` _must_ be the handler address.
588
+ // https://github.com/across-protocol/contracts/blob/3310f8dc716407a5f97ef5fd2eae63df83251f2f/programs/svm-spoke/src/utils/message_utils.rs#L36.
589
+ remainingAccounts.push(getAccountMeta(acrossPlusMessage_2.handler, true));
590
+ remainingAccounts.push.apply(remainingAccounts, acrossPlusMessage_2.accounts.map(function (account, idx) {
591
+ return getAccountMeta(account, idx < acrossPlusMessage_2.accounts.length - acrossPlusMessage_2.read_only_len);
592
+ }));
593
+ }
594
+ fillInput = {
595
+ signer: signer,
596
+ state: state,
597
+ delegate: delegate,
598
+ mint: mint,
599
+ relayerTokenAccount: relayerAta,
600
+ recipientTokenAccount: recipientAta,
601
+ fillStatus: fillStatus,
602
+ tokenProgram: mintInfo.programAddress,
603
+ associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ADDRESS,
604
+ systemProgram: SYSTEM_PROGRAM_ADDRESS,
605
+ eventAuthority: eventAuthority,
606
+ program: program,
607
+ instructionParams: instructionParams,
608
+ relayHash: relayDataHash,
609
+ relayData: null,
610
+ repaymentChainId: null,
611
+ repaymentAddress: null,
612
+ };
613
+ // Pass createRecipientAtaIfNeeded =true to the createFillInstruction function to create the recipient token account
614
+ // if it doesn't exist.
615
+ return [2 /*return*/, createFillInstruction(signer, solanaClient, fillInput, { outputAmount: relayData.outputAmount.toBigInt(), recipient: toAddress(relayData.recipient) }, mintInfo.data.decimals, true, remainingAccounts)];
532
616
  }
533
617
  });
534
618
  });
@@ -542,21 +626,23 @@ export function getFillRelayTx(spokePoolAddr, solanaClient, relayData, signer, r
542
626
  * @param createRecipientAtaIfNeeded - Whether to create a recipient token account.
543
627
  * @returns The fill instruction.
544
628
  */
545
- export var createFillInstruction = function (signer, solanaClient, fillInput, tokenDecimals, createRecipientAtaIfNeeded) {
629
+ export var createFillInstruction = function (signer, solanaClient, fillInput, relayData, tokenDecimals, createRecipientAtaIfNeeded, remainingAccounts) {
546
630
  if (createRecipientAtaIfNeeded === void 0) { createRecipientAtaIfNeeded = true; }
631
+ if (remainingAccounts === void 0) { remainingAccounts = []; }
547
632
  return __awaiter(void 0, void 0, void 0, function () {
548
633
  var mintInfo, approveIx, getCreateAssociatedTokenIdempotentIx, createFillIx, _a;
549
- return __generator(this, function (_b) {
550
- switch (_b.label) {
634
+ var _b;
635
+ return __generator(this, function (_c) {
636
+ switch (_c.label) {
551
637
  case 0: return [4 /*yield*/, getMintInfo(solanaClient, fillInput.mint)];
552
638
  case 1:
553
- mintInfo = _b.sent();
639
+ mintInfo = _c.sent();
554
640
  approveIx = getApproveCheckedInstruction({
555
641
  source: fillInput.relayerTokenAccount,
556
642
  mint: fillInput.mint,
557
643
  delegate: fillInput.delegate,
558
644
  owner: fillInput.signer,
559
- amount: fillInput.relayData.outputAmount,
645
+ amount: relayData.outputAmount,
560
646
  decimals: tokenDecimals,
561
647
  }, {
562
648
  programAddress: mintInfo.programAddress,
@@ -564,7 +650,7 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
564
650
  getCreateAssociatedTokenIdempotentIx = function () {
565
651
  return getCreateAssociatedTokenIdempotentInstruction({
566
652
  payer: signer,
567
- owner: fillInput.relayData.recipient,
653
+ owner: relayData.recipient,
568
654
  mint: fillInput.mint,
569
655
  ata: fillInput.recipientTokenAccount,
570
656
  systemProgram: SYSTEM_PROGRAM_ADDRESS,
@@ -572,9 +658,11 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
572
658
  });
573
659
  };
574
660
  createFillIx = SvmSpokeClient.getFillRelayInstruction(fillInput);
661
+ // Add remaining accounts.
662
+ (_b = createFillIx.accounts).push.apply(_b, remainingAccounts);
575
663
  _a = pipe;
576
664
  return [4 /*yield*/, createDefaultTransaction(solanaClient, signer)];
577
- case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent(), function (tx) {
665
+ case 2: return [2 /*return*/, _a.apply(void 0, [_c.sent(), function (tx) {
578
666
  return createRecipientAtaIfNeeded ? appendTransactionMessageInstruction(getCreateAssociatedTokenIdempotentIx(), tx) : tx;
579
667
  },
580
668
  function (tx) { return appendTransactionMessageInstruction(approveIx, tx); },
@@ -583,6 +671,13 @@ export var createFillInstruction = function (signer, solanaClient, fillInput, to
583
671
  });
584
672
  });
585
673
  };
674
+ export function deserializeMessage(_message) {
675
+ var message = new Uint8Array(Buffer.from(_message.startsWith("0x") ? _message.slice(2) : _message, "hex"));
676
+ // Add remaining accounts if the relayData has a non-empty message.
677
+ // @dev ! since in the context of creating a `fillRelayTx`, `relayData` must be defined.
678
+ var acrossPlusMessageDecoder = getAcrossPlusMessageDecoder();
679
+ return acrossPlusMessageDecoder.decode(message);
680
+ }
586
681
  /**
587
682
  * Creates a deposit instruction.
588
683
  * @param signer - The signer of the transaction.
@@ -859,6 +954,52 @@ function fetchBatchFillStatusFromPdaAccounts(provider, fillStatusPdas, relayData
859
954
  });
860
955
  });
861
956
  }
957
+ /**
958
+ * Returns a set of instructions to execute to fill a relay via instruction params.
959
+ * @param spokePool The program ID of the Solana spoke pool.
960
+ * @param relayData The relay data to write to the instruction params PDA.
961
+ * @param signer The transaction signer and authority of the instruction params PDA.
962
+ * @param maxWriteSize The maximum fragment size to write to instruction params.
963
+ */
964
+ export function getFillRelayViaInstructionParamsInstructions(spokePool, relayData, repaymentChainId, repaymentAddress, signer, maxWriteSize) {
965
+ if (maxWriteSize === void 0) { maxWriteSize = 450; }
966
+ return __awaiter(this, void 0, void 0, function () {
967
+ var instructionParams, relayDataEncoder, svmRelayData, encodedRelayData, initInstructionParamsIx, instructions, i, offset, offsetEnd, fragment, writeInstructionParamsIx;
968
+ return __generator(this, function (_a) {
969
+ switch (_a.label) {
970
+ case 0: return [4 /*yield*/, getInstructionParamsPda(spokePool, signer.address)];
971
+ case 1:
972
+ instructionParams = _a.sent();
973
+ relayDataEncoder = SvmSpokeClient.getFillRelayParamsEncoder();
974
+ svmRelayData = toSvmRelayData(relayData);
975
+ encodedRelayData = relayDataEncoder.encode({
976
+ relayData: svmRelayData,
977
+ repaymentChainId: repaymentChainId,
978
+ repaymentAddress: toAddress(repaymentAddress),
979
+ });
980
+ initInstructionParamsIx = SvmSpokeClient.getInitializeInstructionParamsInstruction({
981
+ signer: signer,
982
+ instructionParams: instructionParams,
983
+ totalSize: encodedRelayData.length,
984
+ });
985
+ instructions = [initInstructionParamsIx];
986
+ for (i = 0; i <= encodedRelayData.length / maxWriteSize; ++i) {
987
+ offset = i * maxWriteSize;
988
+ offsetEnd = Math.min(offset + maxWriteSize, encodedRelayData.length);
989
+ fragment = encodedRelayData.slice(offset, offsetEnd);
990
+ writeInstructionParamsIx = SvmSpokeClient.getWriteInstructionParamsFragmentInstruction({
991
+ signer: signer,
992
+ instructionParams: instructionParams,
993
+ offset: offset,
994
+ fragment: fragment,
995
+ });
996
+ instructions.push(writeInstructionParamsIx);
997
+ }
998
+ return [2 /*return*/, instructions];
999
+ }
1000
+ });
1001
+ });
1002
+ }
862
1003
  /**
863
1004
  * Returns the delegate PDA for deposit.
864
1005
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAClH,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,0DAA0D,CAAC;AAC/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,gCAAgC,EAEhC,qBAAqB,EACrB,SAAS,EACT,4BAA4B,EAC5B,6CAA6C,GAC9C,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,WAAW,EAOX,mCAAmC,EACnC,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,+BAA+B,EAC/B,wBAAwB,EACxB,2BAA2B,EAC3B,aAAa,EACb,aAAa,EACb,IAAI,EACJ,iCAAiC,EACjC,IAAI,GAKL,MAAM,aAAa,CAAC;AACrB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAEL,UAAU,GAKX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,UAAU,EAEV,UAAU,EACV,IAAI,EACJ,WAAW,EACX,UAAU,EACV,KAAK,EACL,KAAK,EACL,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,QAAQ,EACR,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC3B,cAAc,EACd,uBAAuB,EAEvB,cAAc,GACf,MAAM,IAAI,CAAC;AAEZ,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAuB,aAAa,EAAe,MAAM,SAAS,CAAC;AAC1E,OAAO,EACL,wCAAwC,EACxC,kBAAkB,EAClB,sCAAsC,EACtC,4BAA4B,GAC7B,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG,GAAG,CAAC;AAQpC,MAAM,UAAU,OAAO,CAAC,QAAqB,EAAE,UAAsB,EAAE,MAAuB;IAC5F,OAAO,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED,SAAe,qBAAqB,CAClC,QAAqB,EACrB,UAAsB,EACtB,MAAuB;;;;;;;oBAGd,qBAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,YAAA,EAAE,CAAC,CAAC,IAAI,EAAE,EAAA;wBAApD,sBAAO,SAA6C,EAAC;;;oBAErD,IAAI,aAAa,CAAC,KAAG,CAAC,EAAE;wBACN,IAAI,GAAK,KAAG,CAAC,OAAO,OAAhB,CAAiB;wBACrC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC;4BACZ,EAAE,EAAE,mBAAmB;4BACvB,OAAO,EAAE,6BAA6B;4BACtC,IAAI,MAAA;4BACJ,UAAU,YAAA;yBACX,CAAC,CAAC;qBACJ;oBAED,+EAA+E;oBAC/E,MAAM,KAAG,CAAC;;;;;CAEb;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAqB,EACrB,UAAkB,EAClB,UAAc,EACd,MAAuB;IADvB,2BAAA,EAAA,cAAc;IAGd,OAAO,iCAAiC,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AACxF,CAAC;AAED,SAAe,iCAAiC,CAC9C,QAAqB,EACrB,UAAkB,EAClB,YAAoB,EACpB,UAAkB,EAClB,MAAuB;;;;;;;oBAMR,qBAAM,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAA;;oBAA3D,UAAU,GAAG,SAA8C,CAAC;;;;oBAE5D,IAAI,CAAC,aAAa,CAAC,KAAG,CAAC,EAAE;wBACvB,MAAM,KAAG,CAAC;qBACX;oBAEe,IAAI,GAAK,KAAG,CAAC,OAAO,OAAhB,CAAiB;oBAC/B,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;oBAE3B,KAAA,KAAG,CAAC,OAAO,CAAC,MAAM,CAAA;;6BACnB,gBAAgB,CAAC,CAAjB,wBAAgB;6BAGhB,uBAAuB,CAAC,CAAxB,wBAAuB;;;wBAF1B,sBAAO,SAAS,EAAC;;oBAKX,YAAY,GAAG,SAAA,CAAC,EAAI,YAAY,CAAA,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACvD,IAAI,YAAY,IAAI,UAAU,EAAE;wBAC9B,MAAM,IAAI,KAAK,CAAC,iDAA0C,IAAI,oBAAU,YAAY,oBAAiB,CAAC,CAAC;qBACxG;oBACD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC;wBACZ,EAAE,EAAE,qBAAqB;wBACzB,OAAO,EAAE,wCAAiC,YAAY,yCAA+B,YAAY,CAAE;wBACnG,IAAI,MAAA;wBACJ,YAAY,cAAA;wBACZ,UAAU,YAAA;wBACV,YAAY,cAAA;qBACb,CAAC,CAAC;oBACH,qBAAM,KAAK,CAAC,YAAY,CAAC,EAAA;;oBAAzB,SAAyB,CAAC;oBAC1B,sBAAO,iCAAiC,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,EAAC;;oBAInG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC;wBACZ,EAAE,EAAE,qBAAqB;wBACzB,OAAO,EAAE,kCAAkC;wBAC3C,SAAS,EAAE,IAAI;wBACf,IAAI,MAAA;wBACJ,YAAY,cAAA;wBACZ,UAAU,YAAA;qBACX,CAAC,CAAC;oBACH,MAAM,IAAI,KAAK,CAAC,sDAA+C,IAAI,eAAK,IAAI,CAAE,EAAE,EAAE,KAAK,EAAE,KAAG,EAAE,CAAC,CAAC;;;oBAIhG,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;oBACrC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,UAAU,EAAE,0CAAmC,UAAU,CAAE,CAAC,CAAC,CAAC,iBAAiB;oBAE5G,sBAAO,SAAS,EAAC;;;;CAClB;AAED;;;;;GAKG;AACH,MAAM,UAAgB,eAAe,CAAC,QAAqB,EAAE,QAAiB;;;;;wBAC9D,qBAAM,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAA;;oBAA5C,KAAK,GAAG,SAAoC;oBAClD,sBAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAC;;;;CACtC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAkB,EAAE,SAAiB;IACvE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAgB,WAAW,CAC/B,WAA+B,EAC/B,SAAoB,EACpB,MAAsB,EACtB,IAAa,EACb,eAAkC,CAAC,SAAS;;;IAA5C,gCAAA,EAAA,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;;;;;;oBAElC,kEAAkE;oBAClE,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE;wBAChC,MAAM,IAAI,KAAK,CAAC,6CAAsC,SAAS,CAAE,CAAC,CAAC;qBACpE;oBAEK,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;oBAChC,IAAI,GAAG,SAAS,CAAC;oBACO,qBAAM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,EAAA;;oBAAhE,WAAW,GAAK,CAAA,SAAgD,CAAA,KAArD;oBAInB,OAAO,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;oBAGjG,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;oBACjF,SAAS,GAAG,OAAO,GAAG,cAAc,CAAC;oBAGrB,qBAAM,WAAW,CAAC,WAAW,CAAC,gBAAgB,EAAE,SAAS,EAAE,OAAO,CAAC,EAAA;;oBAAnF,YAAY,GAAG,MAAA,CAAC,SAAmE,CAAC,0CAAE,IAAI,CAAC,UAAC,KAAK;wBACrG,OAAA,SAAS,CAAC,EAAE,CAAE,KAAK,CAAC,IAA4C,CAAC,SAAS,CAAC;oBAA3E,CAA2E,CAC5E;oBAED,iDAAiD;oBACjD,IAAI,CAAC,YAAY,EAAE;wBACjB,sBAAO,SAAS,EAAC;qBAClB;oBAEK,qBAAqB,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC,CAG7F,CAAC;oBACI,kBAAkB,GAAG,qBAAqB,CAAC,kBAA4B,CAAC;oBAC9E,2CAA2C;oBAC3C,sBAAO,oBACL,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE,EACzC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,IACR,qBAAqB,KACxB,SAAS,EAAE,aAAa,CAAC,qBAAqB,CAAC,SAAmB,EAAE,SAAS,CAAC,MAAM,CAAC,EACrF,SAAS,EAAE,aAAa,CAAC,qBAAqB,CAAC,SAAmB,EAAE,kBAAkB,CAAC,EACvF,UAAU,EAAE,aAAa,CAAC,qBAAqB,CAAC,UAAoB,EAAE,SAAS,CAAC,MAAM,CAAC,EACvF,WAAW,EAAE,aAAa,CAAC,qBAAqB,CAAC,WAAqB,EAAE,kBAAkB,CAAC,EAC3F,gBAAgB,EAAE,aAAa,CAAC,qBAAqB,CAAC,gBAA0B,EAAE,kBAAkB,CAAC,GAClF,EAAC;;;;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAgB,eAAe,CACnC,SAAkB,EAClB,SAAmC,EACnC,kBAA0B,EAC1B,eAAmC,EACnC,MAAsB,EACtB,QAAiB;;;;;;oBAEjB,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,wCAAwC,CAAC,CAAC;oBAC3E,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;oBAEpB,qBAAM,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAA;;oBAAhF,aAAa,GAAG,SAAgE;oBAClF,MAAM,GAAG,MAAM,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,CAAC,CAAC,CAAC;yBAG/B,CAAA,QAAQ,KAAK,SAAS,CAAA,EAAtB,wBAAsB;oBAClB,UAAU,GAAG,WAAW,CAAC;oBAC+B,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAC9E,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,UAAU,YAAA,EAAE,CAAC;4BAC5D,kBAAkB,CAAC,QAAQ,EAAE,EAAE,UAAU,YAAA,EAAE,EAAE,MAAM,CAAC;yBACrD,CAAC,EAAA;;oBAHI,KAAwD,SAG5D,EAHK,iBAAiB,QAAA,EAAE,UAAgC,EAAxB,WAAW,UAAA,EAAE,SAAS,eAAA;oBAIxD,MAAM,GAAG,WAAW,CAAC;oBAErB,mDAAmD;oBACnD,IAAI,iBAAiB,CAAC,MAAM,EAAE;wBACtB,kBAAkB,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;wBACtE,sBAAO,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAC;qBACvC;oBACD,6FAA6F;oBAC7F,uDAAuD;yBAClD,IAAI,SAAS,GAAG,SAAS,CAAC,YAAY,EAAE;wBAC3C,sBAAO,UAAU,CAAC,QAAQ,EAAC;qBAC5B;;;gBAGH,+GAA+G;gBAC/G,sBAAO,8BAA8B,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,CAAC,EAAC;;;;CAC/E;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAgB,eAAe,CACnC,SAAkB,EAClB,SAAqC,EACrC,kBAA0B,EAC1B,eAAmC,EACnC,MAAsB,EACtB,QAAiB;;;;;;;oBAEjB,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,wCAAwC,CAAC,CAAC;oBAC3E,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;oBACpC,SAAS,GAAG,GAAG,CAAC;oBAChB,gBAAgB,GAAG,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;oBAInD,qBAAM,OAAO,CAAC,GAAG,CACf,gBAAgB,CAAC,GAAG,CAAC,UAAC,cAAc;4BAClC,OAAA,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,UAAC,SAAS,IAAK,OAAA,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAA1D,CAA0D,CAAC,CAAC;wBAA1G,CAA0G,CAC3G,CACF,EAAA;;oBALG,cAAc,GAAG,CACrB,SAIC,CACF,CAAC,IAAI,EAAE;oBAER,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,EAAE;wBACpC,MAAM,CAAC,IAAI,CAAC;4BACV,EAAE,EAAE,+BAA+B;4BACnC,OAAO,EACL,mIAAmI;yBACtI,CAAC,CAAC;qBACJ;yBAKC,CAAA,QAAQ,KAAK,SAAS,CAAA,EAAtB,wBAAsB;oBAClB,qBAAM,mCAAmC,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,EAAA;;oBAAtF,KAAA,SAAsF,CAAA;;;oBACtF,KAAA,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;;;oBAH3C,YAAY,KAG+B;oBAG3C,eAAe,GAAG,YAAY,CAAC,MAAM,CAAW,UAAC,GAAG,EAAE,MAAM,EAAE,KAAK;wBACvE,IAAI,MAAM,KAAK,SAAS,EAAE;4BACxB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;yBACjB;wBACD,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC,CAAC;oBAGD,cAAc,GAAG,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;oBACnD,cAAc,GAAgD,EAAE,CAAC;oBAGjE,IAAI,GAAG,SAAS,CAAC;yBACR,QAAQ,EAAR,wBAAQ;oBAAG,KAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;;wBAAI,qBAAM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,EAAA;;oBAAjD,KAAA,CAAC,SAAgD,CAAC,CAAC,IAAI,CAAA;;;oBAA9F,MAAM,KAAwF;0BAIlE,EAAd,iCAAc;;;yBAAd,CAAA,4BAAc,CAAA;oBAA7B;oBACkB,qBAAM,OAAO,CAAC,GAAG,CACpC,OAAK,CAAC,GAAG,CAAC,UAAO,YAAY;;;;;;4CAEzB,KAAK,EAAE,YAAY;;wCACP,qBAAM,8BAA8B,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAA;4CAFzG,uBAEE,aAAU,GAAE,SAA2F;iDACvG;;;6BACH,CAAC,CACH,EAAA;;oBAPK,YAAY,GAAG,SAOpB;oBACD,cAAc,CAAC,IAAI,OAAnB,cAAc,EAAS,YAAY,EAAE;;;oBATnB,IAAc,CAAA;;;oBAYlC,oDAAoD;oBACpD,cAAc,CAAC,OAAO,CAAC,UAAC,EAAqB;4BAAnB,KAAK,WAAA,EAAE,UAAU,gBAAA;wBACzC,YAAY,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;oBACnC,CAAC,CAAC,CAAC;oBAEH,sBAAO,YAAY,EAAC;;;;CACrB;AAED;;;;;;;;;GASG;AACH,MAAM,UAAgB,aAAa,CACjC,SAAmC,EACnC,kBAA0B,EAC1B,eAAmC,EACnC,QAAgB,EAChB,MAAe,EACf,MAAuB;;;;;;oBAEvB,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,wCAAwC,CAAC,CAAC;oBAC3E,IAAI,GAAG,SAAS,CAAC;0BACvB,MAAM,aAAN,MAAM;oBAAN,KAAA,MAAM,CAAA;;;oBAAK,KAAA,MAAM,CAAA;oBAAE,qBAAM,kBAAkB,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,EAAA;;0BAAnF,MAAM,GAAK,kBAAO,CAAC,SAAgE,CAAC,CAAC,IAAI,EAAC;;;oBAA1F,GAA2F;oBAGrF,SAAS,GAAG,eAAe,CAAC,iBAAiB,EAAE,CAAC;oBAChC,qBAAM,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,CAAC,EAAA;;oBAAhF,aAAa,GAAG,SAAgE;oBAGnE,qBAAM,eAAe,CAAC,yBAAyB,CAChE,aAAa,CAAC,WAAW,EACzB,aAAa,EACb,MAAM,CAAC,QAAQ,CAAC,EAChB,MAAM,CAAC,MAAM,CAAC,EACd,EAAE,KAAK,EAAE,EAAE,EAAE,CACd,EAAA;;oBANK,UAAU,GAAG,SAMlB;oBACD,MAAM,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE,8CAAuC,aAAa,mBAAS,UAAU,CAAC,MAAM,CAAE,CAAC,CAAC;oBAEjH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;wBACnB,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wBAC7B,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,CAQhF,CAAC;wBACI,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC;wBACxC,eAAe,GAAG,sBACnB,SAAS,KACZ,eAAe,EAAE,YAAY,CAAC,SAAS,EACvC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,gBAAgB,EAAE,CAAC,EACnB,QAAQ,EAAE,CAAC,EACX,kBAAkB,oBAAA,EAClB,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,EAC9D,WAAW,EAAE,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE,kBAAkB,CAAC,EACrE,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAC7D,gBAAgB,EAAE,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,EAC/E,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC,EAC5D,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC,EACjE,kBAAkB,wBACb,SAAS,CAAC,kBAAkB,KAC/B,gBAAgB,EAAE,SAAS,CAAC,kBAAkB,CAAC,gBAAgB,MAEjD,CAAC;wBACnB,sBAAO,eAAe,EAAC;qBACxB;oBAED,sBAAO,SAAS,EAAC;;;;CAClB;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,oBAAoB,CACxC,SAAqB,EACrB,SAAoB,EACpB,MAAiC,EACjC,qBAAsC,EACtC,gBAAyC,EACzC,gBAAwB;;;;;;oBAElB,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;oBACrC,MAAM,CACJ,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC5C,8CAAuC,gBAAgB,eAAK,gBAAgB,CAAC,QAAQ,EAAE,MAAG,CAC3F,CAAC;oBAEI,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBAChD,cAAc,GAAG,gBAAgB,uBAAM,SAAS,KAAE,WAAW,aAAA,KAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC;oBAC/F,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAE5E,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAEoC,qBAAM,OAAO,CAAC,GAAG,CAAC;4BACpG,WAAW,CAAC,OAAO,CAAC;4BACpB,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,kBAAkB,CAAC;4BAClE,iBAAiB,CAAC,OAAO,CAAC;4BAC1B,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;4BACzF,yBAAyB,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC;yBAC1D,CAAC,EAAA;;oBANI,KAA8E,SAMlF,EANK,QAAQ,QAAA,EAAE,aAAa,QAAA,EAAE,cAAc,QAAA,EAAE,WAAW,QAAA,EAAE,mBAAmB,QAAA;oBAQ1E,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;oBAC/C,sBAAO,cAAc,CAAC,uBAAuB,CAAC;4BAC5C,MAAM,QAAA;4BACN,KAAK,EAAE,QAAQ;4BACf,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;4BAC5D,IAAI,EAAE,YAAY,CAAC,WAAW;4BAC9B,mBAAmB,EAAE,mBAAmB;4BACxC,qBAAqB,EAAE,qBAAqB;4BAC5C,UAAU,EAAE,aAAa;4BACzB,cAAc,gBAAA;4BACd,OAAO,SAAA;4BACP,SAAS,EAAE,aAAa;4BACxB,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;4BAC7B,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;4BAChD,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;yBACpD,CAAC,EAAC;;;;CACJ;AAED;;;;GAIG;AACH,MAAM,UAAU,8BAA8B,CAC5C,IAAgB,EAChB,OAAkC;IAElC,OAAO,cAAc,CAAC,iCAAiC,CAAC;QACtD,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAgB,cAAc,CAClC,aAAyB,EACzB,YAAyB,EACzB,SAIC,EACD,MAAyB,EACzB,gBAAwB,EACxB,gBAA4B;;;;;;oBAEtB,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;oBAE/C,MAAM,CACJ,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC5C,4CAAqC,gBAAgB,iCAAuB,gBAAgB,MAAG,CAChG,CAAC;oBAEI,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;oBACnC,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBAChD,cAAc,GAAG,gBAAgB,uBAAM,SAAS,KAAE,WAAW,aAAA,KAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC;oBAC/F,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAElB,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAChF,WAAW,CAAC,OAAO,CAAC;4BACpB,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;4BACtG,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,WAAW,CAAC;4BACnD,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,kBAAkB,CAAC;4BAClE,iBAAiB,CAAC,OAAO,CAAC;yBAC3B,CAAC,EAAA;;oBANI,KAA0D,SAM9D,EANK,KAAK,QAAA,EAAE,QAAQ,QAAA,EAAE,QAAQ,QAAA,EAAE,UAAU,QAAA,EAAE,cAAc,QAAA;oBAQzB,qBAAM,OAAO,CAAC,GAAG,CAAC;4BACnD,yBAAyB,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC;4BAC9F,yBAAyB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC;yBAC3G,CAAC,EAAA;;oBAHI,KAA6B,SAGjC,EAHK,YAAY,QAAA,EAAE,UAAU,QAAA;oBAOzB,iBAAiB,GAA0C,EAAE,CAAC;oBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE;wBACxB,sBAAoB,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBAChE,8DAA8D;wBAC9D,gJAAgJ;wBAChJ,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;wBACxE,iBAAiB,CAAC,IAAI,OAAtB,iBAAiB,EACZ,mBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,GAAG;4BAC7C,OAAA,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,mBAAiB,CAAC,QAAQ,CAAC,MAAM,GAAG,mBAAiB,CAAC,aAAa,CAAC;wBAAlG,CAAkG,CACnG,EACD;qBACH;oBAEK,SAAS,GAAkC;wBAC/C,MAAM,EAAE,MAAM;wBACd,KAAK,OAAA;wBACL,QAAQ,UAAA;wBACR,IAAI,EAAE,YAAY,CAAC,WAAW;wBAC9B,mBAAmB,EAAE,UAAU;wBAC/B,qBAAqB,EAAE,YAAY;wBACnC,UAAU,YAAA;wBACV,YAAY,EAAE,QAAQ,CAAC,cAAc;wBACrC,sBAAsB,EAAE,gCAAgC;wBACxD,aAAa,EAAE,sBAAsB;wBACrC,cAAc,gBAAA;wBACd,OAAO,SAAA;wBACP,SAAS,EAAE,aAAa;wBACxB,SAAS,EAAE,YAAY;wBACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC1C,gBAAgB,EAAE,SAAS,CAAC,gBAAgB,CAAC;qBAC9C,CAAC;oBACF,oHAAoH;oBACpH,uBAAuB;oBACvB,sBAAO,qBAAqB,CAC1B,MAAM,EACN,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,QAAQ,CAAC,IAAI,CAAC,QAAQ,EACtB,IAAI,EACJ,iBAAiB,CAClB,EAAC;;;;CACH;AAED;;;;;;;;;GASG;AACH,MAAM,UAAgB,gBAAgB,CACpC,aAAyB,EACzB,YAAyB,EACzB,SAIC,EACD,MAAyB,EACzB,gBAAwB,EACxB,gBAA4B;;;;;;oBAEtB,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;oBACnC,cAAc,GAAG,gBAAgB,uBAChC,SAAS,KAAE,WAAW,EAAE,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,KAC9D,SAAS,CAAC,kBAAkB,CAC7B,CAAC;oBACI,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAErC,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAC7D,WAAW,CAAC,OAAO,CAAC;4BACpB,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;4BACtG,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;yBACjD,CAAC,EAAA;;oBAJI,KAAuC,SAI3C,EAJK,KAAK,QAAA,EAAE,QAAQ,QAAA,EAAE,iBAAiB,QAAA;oBAMnC,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;oBAC7B,qBAAM,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,EAAA;;oBAAhD,QAAQ,GAAG,SAAqC;oBAES,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAC/E,yBAAyB,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC;4BAC9F,yBAAyB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC;4BAC1G,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,kBAAkB,CAAC;4BAClE,iBAAiB,CAAC,OAAO,CAAC;yBAC3B,CAAC,EAAA;;oBALI,KAAyD,SAK7D,EALK,YAAY,QAAA,EAAE,UAAU,QAAA,EAAE,UAAU,QAAA,EAAE,cAAc,QAAA;oBASrD,iBAAiB,GAA0C,EAAE,CAAC;oBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE;wBACxB,sBAAoB,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBAChE,8DAA8D;wBAC9D,gJAAgJ;wBAChJ,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;wBACxE,iBAAiB,CAAC,IAAI,OAAtB,iBAAiB,EACZ,mBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,GAAG;4BAC7C,OAAA,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,mBAAiB,CAAC,QAAQ,CAAC,MAAM,GAAG,mBAAiB,CAAC,aAAa,CAAC;wBAAlG,CAAkG,CACnG,EACD;qBACH;oBAEK,SAAS,GAAkC;wBAC/C,MAAM,EAAE,MAAM;wBACd,KAAK,OAAA;wBACL,QAAQ,UAAA;wBACR,IAAI,MAAA;wBACJ,mBAAmB,EAAE,UAAU;wBAC/B,qBAAqB,EAAE,YAAY;wBACnC,UAAU,YAAA;wBACV,YAAY,EAAE,QAAQ,CAAC,cAAc;wBACrC,sBAAsB,EAAE,gCAAgC;wBACxD,aAAa,EAAE,sBAAsB;wBACrC,cAAc,gBAAA;wBACd,OAAO,SAAA;wBACP,iBAAiB,mBAAA;wBACjB,SAAS,EAAE,aAAa;wBACxB,SAAS,EAAE,IAAI;wBACf,gBAAgB,EAAE,IAAI;wBACtB,gBAAgB,EAAE,IAAI;qBACvB,CAAC;oBAEF,oHAAoH;oBACpH,uBAAuB;oBACvB,sBAAO,qBAAqB,CAC1B,MAAM,EACN,YAAY,EACZ,SAAS,EACT,EAAE,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAC9F,QAAQ,CAAC,IAAI,CAAC,QAAQ,EACtB,IAAI,EACJ,iBAAiB,CAClB,EAAC;;;;CACH;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,IAAM,qBAAqB,GAAG,UACnC,MAAyB,EACzB,YAAyB,EACzB,SAAwC,EACxC,SAA2E,EAC3E,aAAqB,EACrB,0BAA0C,EAC1C,iBAA6D;IAD7D,2CAAA,EAAA,iCAA0C;IAC1C,kCAAA,EAAA,sBAA6D;;;;;;wBAE5C,qBAAM,WAAW,CAAC,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,EAAA;;oBAA1D,QAAQ,GAAG,SAA+C;oBAC1D,SAAS,GAAG,4BAA4B,CAC5C;wBACE,MAAM,EAAE,SAAS,CAAC,mBAAmB;wBACrC,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;wBAC5B,KAAK,EAAE,SAAS,CAAC,MAAM;wBACvB,MAAM,EAAE,SAAS,CAAC,YAAY;wBAC9B,QAAQ,EAAE,aAAa;qBACxB,EACD;wBACE,cAAc,EAAE,QAAQ,CAAC,cAAc;qBACxC,CACF,CAAC;oBAEI,oCAAoC,GAAG;wBAC3C,OAAA,6CAA6C,CAAC;4BAC5C,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,SAAS,CAAC,SAAS;4BAC1B,IAAI,EAAE,SAAS,CAAC,IAAI;4BACpB,GAAG,EAAE,SAAS,CAAC,qBAAqB;4BACpC,aAAa,EAAE,sBAAsB;4BACrC,YAAY,EAAE,SAAS,CAAC,YAAY;yBACrC,CAAC;oBAPF,CAOE,CAAC;oBAEC,YAAY,GAAG,cAAc,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;oBAEvE,0BAA0B;oBAC1B,CAAA,KAAA,YAAY,CAAC,QAAQ,CAAA,CAAC,IAAI,WAAI,iBAAiB,EAAE;oBAE1C,KAAA,IAAI,CAAA;oBACT,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;wBADtD,sBAAO,kBACL,SAAoD,EACpD,UAAC,EAAE;4BACD,OAAA,0BAA0B,CAAC,CAAC,CAAC,mCAAmC,CAAC,oCAAoC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;wBAAjH,CAAiH;wBACnH,UAAC,EAAE,IAAK,OAAA,mCAAmC,CAAC,SAAS,EAAE,EAAE,CAAC,EAAlD,CAAkD;wBAC1D,UAAC,EAAE,IAAK,OAAA,mCAAmC,CAAC,YAAY,EAAE,EAAE,CAAC,EAArD,CAAqD,EAC9D,EAAC;;;;CACH,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7G,mEAAmE;IACnE,wFAAwF;IACxF,IAAM,wBAAwB,GAAG,2BAA2B,EAAE,CAAC;IAC/D,OAAO,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAAG,UACtC,MAAyB,EACzB,YAAyB,EACzB,YAAyC,EACzC,aAAqB,EACrB,sBAAsC;IAAtC,uCAAA,EAAA,6BAAsC;;;;;;oBAEhC,oCAAoC,GAAG;wBAC3C,OAAA,6CAA6C,CAAC;4BAC5C,KAAK,EAAE,MAAM;4BACb,KAAK,EAAE,YAAY,CAAC,KAAK;4BACzB,IAAI,EAAE,YAAY,CAAC,IAAI;4BACvB,GAAG,EAAE,YAAY,CAAC,KAAK;4BACvB,aAAa,EAAE,YAAY,CAAC,aAAa;4BACzC,YAAY,EAAE,YAAY,CAAC,YAAY;yBACxC,CAAC;oBAPF,CAOE,CAAC;oBACY,qBAAM,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,EAAA;;oBAA7D,QAAQ,GAAG,SAAkD;oBAC7D,SAAS,GAAG,4BAA4B,CAC5C;wBACE,MAAM,EAAE,YAAY,CAAC,qBAAqB;wBAC1C,IAAI,EAAE,YAAY,CAAC,IAAI;wBACvB,QAAQ,EAAE,YAAY,CAAC,QAAQ;wBAC/B,KAAK,EAAE,YAAY,CAAC,SAAS;wBAC7B,MAAM,EAAE,YAAY,CAAC,WAAW;wBAChC,QAAQ,EAAE,aAAa;qBACxB,EACD;wBACE,cAAc,EAAE,QAAQ,CAAC,cAAc;qBACxC,CACF,CAAC;oBACI,SAAS,GAAG,cAAc,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;oBAC9D,KAAA,IAAI,CAAA;oBACT,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;wBADtD,sBAAO,kBACL,SAAoD,EACpD,UAAC,EAAE;4BACD,OAAA,sBAAsB,CAAC,CAAC,CAAC,mCAAmC,CAAC,oCAAoC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;wBAA7G,CAA6G;wBAC/G,UAAC,EAAE,IAAK,OAAA,mCAAmC,CAAC,SAAS,EAAE,EAAE,CAAC,EAAlD,CAAkD;wBAC1D,UAAC,EAAE,IAAK,OAAA,mCAAmC,CAAC,SAAS,EAAE,EAAE,CAAC,EAAlD,CAAkD,EAC3D,EAAC;;;;CACH,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,gCAAgC,GAAG,UAC9C,MAAyB,EACzB,YAAyB,EACzB,oBAAyD;;;;;gBAEnD,iBAAiB,GAAG,cAAc,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;gBAEtF,KAAA,IAAI,CAAA;gBAAC,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;oBAAhE,sBAAO,kBAAK,SAAoD,EAAE,UAAC,EAAE;wBACnE,OAAA,mCAAmC,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBAA1D,CAA0D,EAC3D,EAAC;;;KACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAgB,oBAAoB,CACxC,aAAyB,EACzB,YAAyB,EACzB,SAIC,EACD,MAAyB;;;;;;oBAEnB,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;oBACnC,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBAChD,aAAa,GAAG,gBAAgB,uBAAM,SAAS,KAAE,WAAW,aAAA,KAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC;oBAExD,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAC5D,WAAW,CAAC,OAAO,CAAC;4BACpB,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,kBAAkB,CAAC;4BAClE,iBAAiB,CAAC,OAAO,CAAC;yBAC3B,CAAC,EAAA;;oBAJI,KAAsC,SAI1C,EAJK,KAAK,QAAA,EAAE,UAAU,QAAA,EAAE,cAAc,QAAA;oBAMlC,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;oBACzC,oBAAoB,GAAwC;wBAChE,MAAM,QAAA;wBACN,KAAK,OAAA;wBACL,UAAU,YAAA;wBACV,cAAc,gBAAA;wBACd,OAAO,SAAA;wBACP,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC;wBAClC,SAAS,EAAE,YAAY;wBACvB,aAAa,EAAE,sBAAsB;qBACtC,CAAC;oBAEF,sBAAO,gCAAgC,CAAC,MAAM,EAAE,YAAY,EAAE,oBAAoB,CAAC,EAAC;;;;CACrF;AAED;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,6BAA6B,GAAG,UAC3C,MAAyB,EACzB,YAAyB,EACzB,aAAsB;;;;;;gBAEC,KAAA,CAAA,KAAA,cAAc,CAAA,CAAC,0BAA0B,CAAA;;oBAC9D,MAAM,QAAA;;gBACC,qBAAM,WAAW,CAAC,cAAc,CAAC,yBAAyB,CAAC,EAAA;;gBAF9D,cAAc,GAAG,eAErB,QAAK,GAAE,SAA2D;wBAClE,aAAU,GAAE,aAAa;6BACzB;gBACK,KAAA,IAAI,CAAA;gBAAC,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;oBAAhE,sBAAO,kBAAK,SAAoD,EAAE,UAAC,EAAE;wBACnE,OAAA,mCAAmC,CAAC,cAAc,EAAE,EAAE,CAAC;oBAAvD,CAAuD,EACxD,EAAC;;;KACH,CAAC;AAEF,MAAM,CAAC,IAAM,+BAA+B,GAAG,UAC7C,MAAyB,EACzB,YAAyB,EACzB,KAAmD,EACnD,iBAAyC;;;;;;gBAEnC,gBAAgB,GAAG,wBAAwB,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;gBACtF,CAAA,KAAC,gBAAgB,CAAC,QAAmC,CAAA,CAAC,IAAI,WAAI,iBAAiB,EAAE;gBAC1E,KAAA,IAAI,CAAA;gBAAC,qBAAM,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAA;oBAAhE,sBAAO,kBAAK,SAAoD,EAAE,UAAC,EAAE;wBACnE,OAAA,mCAAmC,CAAC,gBAAgB,EAAE,EAAE,CAAC;oBAAzD,CAAyD,EAC1D,EAAC;;;KACH,CAAC;AAEF,MAAM,UAAgB,yBAAyB,CAC7C,KAAiB,EACjB,IAAgB,EAChB,cAAuD;IAAvD,+BAAA,EAAA,sCAAuD;;;;;;oBAEjD,OAAO,GAAG,iBAAiB,EAAE,CAAC;oBACV,qBAAM,wBAAwB,CAAC;4BACvD,cAAc,EAAE,gCAAgC;4BAChD,KAAK,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;yBAC3G,CAAC,EAAA;;oBAHK,eAAe,GAAI,CAAA,SAGxB,CAAA,GAHoB;oBAItB,sBAAO,eAAe,EAAC;;;;CACxB;AAED,MAAM,UAAU,gBAAgB,CAAC,SAA8C,EAAE,kBAA0B;IACzG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,mCAAmC,CAAC,CAAC;IAEpF,IAAM,aAAa,GAAG,aAAa,EAAE,CAAC;IAEtC,IAAM,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAM,gBAAgB,GAAG,cAAc,CAAC,mBAAmB,EAAE,CAAC;IAC9D,IAAM,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC/D,IAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACtE,IAAM,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAE/F,2EAA2E;IAC3E,mJAAmJ;IACnJ,8FAA8F;IAC9F,sEAAsE;IACtE,IAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC;IAC1E,IAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;QAClC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC;QACxC,kBAAkB;QAClB,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;KAClE,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC;AAClC,CAAC;AAED,SAAe,8BAA8B,CAC3C,aAAsB,EACtB,MAAc,EACd,eAAmC;;;;;;oBAG7B,aAAa,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBAEjF,qBAAM,OAAO,CAAC,GAAG,CACf,aAAa,CAAC,GAAG,CAAC,UAAC,SAAS;4BAC1B,4EAA4E;4BAC5E,OAAA,eAAe,CAAC,yBAAyB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;wBAArG,CAAqG,CACtG,CACF,EAAA;;oBANG,cAAc,GAAG,CACrB,SAKC,CACF,CAAC,IAAI,EAAE;oBAER,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC/B,2DAA2D;wBAC3D,sBAAO,UAAU,CAAC,QAAQ,EAAC;qBAC5B;oBAED,gDAAgD;oBAChD,cAAc,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,EAAvB,CAAuB,CAAC,CAAC;oBAKjD,eAAe,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;oBAC7C,QAAQ,eAAgB,CAAC,IAAI,EAAE;wBAC7B,KAAK,aAAa,CAAC,WAAW;4BAC5B,sBAAO,UAAU,CAAC,MAAM,EAAC;wBAC3B,KAAK,aAAa,CAAC,iBAAiB;4BAClC,sBAAO,UAAU,CAAC,iBAAiB,EAAC;wBACtC;4BACE,MAAM,IAAI,KAAK,CAAC,iCAA0B,eAAgB,CAAC,IAAI,CAAE,CAAC,CAAC;qBACtE;;;;;CACF;AAED;;;;;;;;;;;;GAYG;AACH,SAAe,mCAAmC,CAChD,QAAqB,EACrB,cAAyB,EACzB,cAA2B,EAC3B,MAAsB;;;;;;oBAEhB,SAAS,GAAG,GAAG,CAAC;oBAChB,UAAU,GAAG,WAAW,CAAC;oBAEM,qBAAM,OAAO,CAAC,GAAG,CAAC;4BACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,UAAU,YAAA,EAAE,CAAC,EAArD,CAAqD,CAAC,CAAC;4BACnH,kBAAkB,CAAC,QAAQ,EAAE,EAAE,UAAU,YAAA,EAAE,EAAE,MAAM,CAAC;yBACrD,CAAC,EAAA;;oBAHI,KAA+B,SAGnC,EAHK,WAAW,QAAA,EAAI,SAAS,kBAAA;oBAKzB,YAAY,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAK;wBACzD,uDAAuD;wBACvD,IAAI,OAAO,CAAC,MAAM,EAAE;4BAClB,IAAM,cAAc,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;4BACxD,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC;yBACnC;wBAED,6FAA6F;wBAC7F,uDAAuD;wBACvD,IAAI,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE;4BAClD,OAAO,UAAU,CAAC,QAAQ,CAAC;yBAC5B;wBAED,0HAA0H;wBAC1H,OAAO,SAAS,CAAC;oBACnB,CAAC,CAAC,CAAC;oBAEH,sBAAO,YAAY,EAAC;;;;CACrB;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,4CAA4C,CAChE,SAA0B,EAC1B,SAAoB,EACpB,gBAAwB,EACxB,gBAA4B,EAC5B,MAAiC,EACjC,YAAkB;IAAlB,6BAAA,EAAA,kBAAkB;;;;;wBAEQ,qBAAM,uBAAuB,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAA;;oBAA5E,iBAAiB,GAAG,SAAwD;oBAE5E,gBAAgB,GAAG,cAAc,CAAC,yBAAyB,EAAE,CAAC;oBAC9D,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;oBACzC,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC;wBAC/C,SAAS,EAAE,YAAY;wBACvB,gBAAgB,kBAAA;wBAChB,gBAAgB,EAAE,SAAS,CAAC,gBAAgB,CAAC;qBAC9C,CAAC,CAAC;oBAEG,uBAAuB,GAAG,cAAc,CAAC,yCAAyC,CAAC;wBACvF,MAAM,QAAA;wBACN,iBAAiB,mBAAA;wBACjB,SAAS,EAAE,gBAAgB,CAAC,MAAM;qBACnC,CAAC,CAAC;oBACG,YAAY,GAAmB,CAAC,uBAAuB,CAAC,CAAC;oBAE/D,KAAS,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,YAAY,EAAE,EAAE,CAAC,EAAE;wBAC1D,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC;wBAC1B,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;wBACrE,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;wBACrD,wBAAwB,GAAG,cAAc,CAAC,4CAA4C,CAAC;4BAC3F,MAAM,QAAA;4BACN,iBAAiB,mBAAA;4BACjB,MAAM,QAAA;4BACN,QAAQ,UAAA;yBACT,CAAC,CAAC;wBACH,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;qBAC7C;oBACD,sBAAO,YAAY,EAAC;;;;CACrB;AAED;;GAEG;AACH,MAAM,UAAgB,qBAAqB,CACzC,WAaC,EACD,SAA0B;;;;;;oBAEpB,OAAO,GAAG,iBAAiB,EAAE,CAAC;oBAC9B,GAAG,GAAG,aAAa,EAAE,CAAC;oBACtB,GAAG,GAAG,aAAa,EAAE,CAAC;oBAEtB,KAAK,GAAiB;wBAC1B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;wBACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;wBACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;wBACvD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;wBACxD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;wBACpD,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;wBACzC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;wBAC3D,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;wBAC7D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;wBACvD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;wBACrD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;wBAC7D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC/D,WAAW,CAAC,OAAO;qBACpB,CAAC;oBAEI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBAEhE,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC;yBAC3C,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAKV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;GAEG;AACH,MAAM,UAAgB,wBAAwB,CAC5C,WAYC,EACD,SAA0B;;;;;;oBAEpB,OAAO,GAAG,iBAAiB,EAAE,CAAC;oBAC9B,GAAG,GAAG,aAAa,EAAE,CAAC;oBACtB,GAAG,GAAG,aAAa,EAAE,CAAC;oBAEtB,KAAK,GAAiB;wBAC1B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;wBACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;wBACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;wBACvD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;wBACxD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;wBACpD,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;wBACzC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;wBAC3D,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;wBAC7D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;wBAC3D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;wBAC1D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC/D,WAAW,CAAC,OAAO;qBACpB,CAAC;oBAEI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBAEhE,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC;yBAC3C,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAKV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;GAEG;AACH,MAAM,UAAgB,uBAAuB,CAC3C,SAAqB,EACrB,gBAAwB,EACxB,gBAAiC,EACjC,SAA0B;;;;;;oBAEpB,OAAO,GAAG,iBAAiB,EAAE,CAAC;oBAC9B,GAAG,GAAG,aAAa,EAAE,CAAC;oBAEtB,KAAK,GAAiB;wBAC1B,SAAS;wBACT,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;wBAC7C,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;qBAClD,CAAC;oBAEI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;oBAEhE,qBAAM,wBAAwB,CAAC;4BAC3C,cAAc,EAAE,SAAS;4BACzB,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC;yBAC3C,CAAC,EAAA;;oBAHK,GAAG,GAAI,CAAA,SAGZ,CAAA,GAHQ;oBAKV,sBAAO,GAAG,EAAC;;;;CACZ;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,6BAA6B,GAAG,UAC3C,YAAyB,EACzB,MAAqB,EACrB,KAAa,EACb,YAAoB;;;;oBAEH,qBAAM,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,EAAA;;gBAA3E,QAAQ,GAAG,SAAgE;gBAC3D,qBAAM,wBAAwB,CAAC,yBAAyB,CAAC;wBAC7E,KAAK,EAAE,KAAK;wBACZ,UAAU,EAAE,QAAQ;qBACrB,CAAC,EAAA;;gBAHI,aAAa,GAAG,SAGpB;gBACI,cAAc,GAAG,UAAC,GAAW;oBACjC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE;wBACnB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;qBAC5D;oBACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzB,CAAC,CAAC;gBACK,qBAAM,iBAAiB,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,CAAC,EAAA;oBAAnF,sBAAO,SAA4E,EAAC;;;KACrF,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAgB,kCAAkC,CACtD,YAAyB,EACzB,MAAqB,EACrB,YAAoB;;;;;;oBAEd,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnC,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;oBACpE,cAAc,GAAG,cAAc,CAAC,yBAAyB,CAAC;oBAC/C,qBAAM,WAAW,CAAC,cAAc,CAAC,EAAA;;oBAA5C,QAAQ,GAAG,SAAiC;oBAC5B,qBAAM,gBAAgB,EAAE,EAAA;;oBAAxC,aAAa,GAAG,SAAwB;oBACvB,qBAAM,iBAAiB,CAAC,cAAc,CAAC,EAAA;;oBAAxD,cAAc,GAAG,SAAuC;oBAExD,IAAI,GAA2B;wBACnC,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;wBACjD,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;wBACtD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;qBACxD,CAAC;yBAEE,4BAA4B,CAAC,aAAa,CAAC,WAAW,CAAC,EAAvD,wBAAuD;oBAGrD,qBAAM,cAAc,CAAC,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAA;;oBADjD,YAAY,GAClB,CAAA,SAAuD,CAAA,kBADrC;oBAEH,qBAAM,gBAAgB,CAAC,cAAc,EAAE,YAAY,CAAC,EAAA;;oBAAjE,UAAU,GAAG,SAAoD;oBAEvE,sDACK,IAAI;4BACP,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACvD,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACjD,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACnD,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAC/D,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACvD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;mCACvD;;yBAGA,sCAAsC,CAAC,aAAa,CAAC,WAAW,CAAC,EAAjE,wBAAiE;oBAC7D,YAAY,GAAG,wCAAwC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;oBACtE,qBAAM,gBAAgB,CAAC,cAAc,EAAE,YAAY,CAAC,EAAA;;oBAAjE,UAAU,GAAG,SAAoD;oBAEvE,sDACK,IAAI;4BACP,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACvD,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACjD,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACnD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACvD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;mCACvD;wBAGJ,sDACK,IAAI;wBACP,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;wBACjD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;wBACvD,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;+BACvD;;;;CACH;AAED;;;;;;;GAOG;AACH,SAAe,gCAAgC,CAC7C,OAA4B,EAC5B,UAAkB,EAClB,oBAA6B,EAC7B,YAAwB;;;;;;oBAElB,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;oBACvE,MAAM,GAAG,UAAU,CAAC,IAAI,CAC5B,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CACvG,CAAC;oBAE0B,qBAAM,wBAAwB,CAAC;4BACzD,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,iBAAiB,CAAC;yBAC3B,CAAC,EAAA;;oBAHK,iBAAiB,GAAI,CAAA,SAG1B,CAAA,GAHsB;oBAKC,qBAAM,wBAAwB,CAAC;4BACtD,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,cAAc,CAAC;yBACxB,CAAC,EAAA;;oBAHK,cAAc,GAAI,CAAA,SAGvB,CAAA,GAHmB;oBAKG,qBAAM,wBAAwB,CAAC;4BACrD,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;yBACvD,CAAC,EAAA;;oBAHK,aAAa,GAAI,CAAA,SAGtB,CAAA,GAHkB;oBAKsB,qBAAM,wBAAwB,CAAC;4BACvE,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,mBAAmB,CAAC;yBAC7B,CAAC,EAAA;;oBAHK,+BAA+B,GAAI,CAAA,SAGxC,CAAA,GAHoC;oBAKL,qBAAM,wBAAwB,CAAC;4BAC9D,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;yBACnD,CAAC,EAAA;;oBAHK,sBAAsB,GAAI,CAAA,SAG/B,CAAA,GAH2B;oBAMN,qBAAM,wBAAwB,CAAC;4BACpD,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE;gCACL,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gCACzC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;gCACzD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;6BAChE;yBACF,CAAC,EAAA;;oBAPK,YAAY,GAAI,CAAA,SAOrB,CAAA,GAPiB;oBASe,qBAAM,wBAAwB,CAAC;4BAC/D,cAAc,EAAE,oBAAoB;4BACpC,KAAK,EAAE,CAAC,wBAAwB,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;yBAChE,CAAC,EAAA;;oBAHK,uBAAuB,GAAI,CAAA,SAGhC,CAAA,GAH4B;oBAK9B,sBAAO;4BACL,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAC1D,EAAE,OAAO,EAAE,uBAAuB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAChE,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACvD,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACtD,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACrD,EAAE,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAChE,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAC/D,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BAC9D,EAAE,OAAO,EAAE,+BAA+B,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;4BACxE,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;yBAC9D,EAAC;;;;CACH;AAED;;;;;;;;GAQG;AACH,MAAM,UAAgB,yBAAyB,CAC7C,YAAyB,EACzB,MAAqB,EACrB,OAA4B,EAC5B,UAAkB,EAClB,YAAwB;;;;;wBAEQ,qBAAM,wBAAwB,CAAC;wBAC7D,cAAc,EAAE,wBAAwB,CAAC,mCAAmC;wBAC5E,KAAK,EAAE,CAAC,qBAAqB,CAAC;qBAC/B,CAAC,EAAA;;oBAHK,qBAAqB,GAAI,CAAA,SAG9B,CAAA,GAH0B;oBAKA,qBAAM,wBAAwB,CAAC;4BACzD,cAAc,EAAE,wBAAwB,CAAC,mCAAmC;4BAC5E,KAAK,EAAE,CAAC,mBAAmB,CAAC;yBAC7B,CAAC,EAAA;;oBAHK,iBAAiB,GAAI,CAAA,SAG1B,CAAA,GAHsB;oBAKlB,mBAAmB,GAAG,qBAAqB,CAAC,OAAO,CAAC;wBACxD,CAAC,CAAC,0BAA0B,CAAC,sCAAsC;wBACnE,CAAC,CAAC,cAAc,CAAC,yBAAyB,CAAC;oBAEtB,qBAAM,wBAAwB,CAAC;4BACpD,cAAc,EAAE,wBAAwB,CAAC,mCAAmC;4BAC5E,KAAK,EAAE,CAAC,+BAA+B,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;yBAC3E,CAAC,EAAA;;oBAHK,YAAY,GAAI,CAAA,SAGrB,CAAA,GAHiB;oBAMA,qBAAM,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,EAAA;;oBAA7F,UAAU,GAAG,SAAgF;yBAGtD,qBAAqB,CAAC,OAAO,CAAC,EAA9B,wBAA8B;oBACvE,qBAAM,gCAAgC,CACpC,OAAO,EACP,UAAU,EACV,0BAA0B,CAAC,sCAAsC,EACjE,YAAY,CACb,EAAA;;oBALD,KAAA,SAKC,CAAA;;wBACD,qBAAM,kCAAkC,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,EAAA;;oBAApF,KAAA,SAAoF,CAAA;;;oBAPlF,YAAY,KAOsE;oBAElF,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;wBACxD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;wBACnD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;oBAEvC,KAAK,GAAiD;wBAC1D,OAAO,EAAE,wBAAwB,CAAC,mCAAmC;wBACrE,KAAK,EAAE,MAAM;wBACb,MAAM,EAAE,MAAM;wBACd,YAAY,cAAA;wBACZ,kBAAkB,EAAE,qBAAqB;wBACzC,cAAc,EAAE,iBAAiB;wBACjC,UAAU,YAAA;wBACV,QAAQ,EAAE,mBAAmB;wBAC7B,aAAa,EAAE,sBAAsB;wBACrC,OAAO,EAAE,YAAY;wBACrB,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;qBAC9D,CAAC;oBAEF,sBAAO,+BAA+B,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC,EAAC;;;;CACnF;AAED;;;;;;;;;;GAUG;AAEH,MAAM,UAAU,sBAAsB,CACpC,YAAyB,EACzB,gBAAuC,EACvC,MAAqB,EACrB,YAAwB,EACxB,QAAgB,EAChB,UAAc;IANhB,iBAmCC;IA9BC,yBAAA,EAAA,gBAAgB;IAChB,2BAAA,EAAA,cAAc;IAEd,OAAO,QAAQ,CAAC,gBAAgB,EAAE,UAAO,OAAO;;;;wBACrB,qBAAM,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,CAAC,EAAA;;oBAA3G,gBAAgB,GAAG,SAAwF;yBAE7G,QAAQ,EAAR,wBAAQ;oBACW,KAAA,CAAA,KAAA,YAAY,CAAA;yBAC9B,mBAAmB,CAAA;oBAClB,KAAA,+BAA+B,CAAA;oBAAC,qBAAM,iCAAiC,CAAC,gBAAgB,CAAC,EAAA;wBAF9E,qBAAM,cAEjB,kBAAgC,SAAyD,EAAC;wBAC1F;4BACE,QAAQ,EAAE,QAAQ;yBACnB,EACF;yBACA,IAAI,EAAE,EAAA;;oBAPH,MAAM,GAAG,SAON;oBACT,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;wBACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;qBAC9C;oBACD,sBAAO,EAAE,EAAC;wBAGc,qBAAM,iCAAiC,CAAC,gBAAgB,CAAC,EAAA;;oBAA7E,iBAAiB,GAAG,SAAyD;oBAC7E,SAAS,GAAG,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;oBAC3D,kBAAkB,GAAG,+BAA+B,CAAC,iBAAiB,CAAC,CAAC;oBAC9E,qBAAM,YAAY;6BACf,eAAe,CAAC,kBAAkB,EAAE,EAAE,mBAAmB,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;6BAC7F,IAAI,EAAE,EAAA;;oBAFT,SAES,CAAC;oBAEV,sBAAO,SAAS,EAAC;;;SAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAgB,WAAW,CAC/B,YAAyB,EACzB,IAAqB,EACrB,MAA2B;;;;wBAEpB,qBAAM,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,EAAA;wBAAlD,sBAAO,SAA2C,EAAC;;;;CACpD"}
@@ -0,0 +1,19 @@
1
+ import { type Address, type Decoder, type Encoder, type ReadonlyUint8Array, type WritableAccount, type ReadonlyAccount } from "@solana/kit";
2
+ export type AcrossPlusMessage = {
3
+ handler: Address;
4
+ read_only_len: number;
5
+ value_amount: bigint;
6
+ accounts: Array<Address>;
7
+ handler_message: ReadonlyUint8Array;
8
+ };
9
+ export type CompiledIx = {
10
+ program_id_index: number;
11
+ account_key_indexes: Array<number>;
12
+ data: ReadonlyUint8Array;
13
+ };
14
+ export declare function getAcrossPlusMessageEncoder(): Encoder<AcrossPlusMessage>;
15
+ export declare function getAcrossPlusMessageDecoder(): Decoder<AcrossPlusMessage>;
16
+ export declare function getHandlerMessageEncoder(): Encoder<Array<CompiledIx>>;
17
+ export declare function getCompiledIxEncoder(): Encoder<CompiledIx>;
18
+ export declare function getCompiledIxDecoder(): Decoder<CompiledIx>;
19
+ export declare function getAccountMeta(value: Address, isWritable: boolean): WritableAccount | ReadonlyAccount;
@@ -0,0 +1,43 @@
1
+ import { AccountRole, addDecoderSizePrefix, addEncoderSizePrefix, getAddressDecoder, getAddressEncoder, getArrayEncoder, getArrayDecoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU8Decoder, getU8Encoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, } from "@solana/kit";
2
+ export function getAcrossPlusMessageEncoder() {
3
+ return getStructEncoder([
4
+ ["handler", getAddressEncoder()],
5
+ ["read_only_len", getU8Encoder()],
6
+ ["value_amount", getU64Encoder()],
7
+ ["accounts", getArrayEncoder(getAddressEncoder())],
8
+ ["handler_message", addEncoderSizePrefix(getBytesEncoder(), getU32Encoder())],
9
+ ]);
10
+ }
11
+ export function getAcrossPlusMessageDecoder() {
12
+ return getStructDecoder([
13
+ ["handler", getAddressDecoder()],
14
+ ["read_only_len", getU8Decoder()],
15
+ ["value_amount", getU64Decoder()],
16
+ ["accounts", getArrayDecoder(getAddressDecoder())],
17
+ ["handler_message", addDecoderSizePrefix(getBytesDecoder(), getU32Decoder())],
18
+ ]);
19
+ }
20
+ export function getHandlerMessageEncoder() {
21
+ return getArrayEncoder(getCompiledIxEncoder());
22
+ }
23
+ export function getCompiledIxEncoder() {
24
+ return getStructEncoder([
25
+ ["program_id_index", getU8Encoder()],
26
+ ["account_key_indexes", getArrayEncoder(getU8Encoder())],
27
+ ["data", addEncoderSizePrefix(getBytesEncoder(), getU32Encoder())],
28
+ ]);
29
+ }
30
+ export function getCompiledIxDecoder() {
31
+ return getStructDecoder([
32
+ ["program_id_index", getU8Decoder()],
33
+ ["account_key_indexes", getArrayDecoder(getU8Decoder())],
34
+ ["data", addDecoderSizePrefix(getBytesDecoder(), getU32Decoder())],
35
+ ]);
36
+ }
37
+ export function getAccountMeta(value, isWritable) {
38
+ return Object.freeze({
39
+ address: value,
40
+ role: isWritable ? AccountRole.WRITABLE : AccountRole.READONLY,
41
+ });
42
+ }
43
+ //# sourceMappingURL=encoders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoders.js","sourceRoot":"","sources":["../../../../src/arch/svm/encoders.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GAOd,MAAM,aAAa,CAAC;AAgBrB,MAAM,UAAU,2BAA2B;IACzC,OAAO,gBAAgB,CAAC;QACtB,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC;QAChC,CAAC,eAAe,EAAE,YAAY,EAAE,CAAC;QACjC,CAAC,cAAc,EAAE,aAAa,EAAE,CAAC;QACjC,CAAC,UAAU,EAAE,eAAe,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClD,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;KAC9E,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,OAAO,gBAAgB,CAAC;QACtB,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC;QAChC,CAAC,eAAe,EAAE,YAAY,EAAE,CAAC;QACjC,CAAC,cAAc,EAAE,aAAa,EAAE,CAAC;QACjC,CAAC,UAAU,EAAE,eAAe,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClD,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;KAC9E,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,eAAe,CAAC,oBAAoB,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,gBAAgB,CAAC;QACtB,CAAC,kBAAkB,EAAE,YAAY,EAAE,CAAC;QACpC,CAAC,qBAAqB,EAAE,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC;QACxD,CAAC,MAAM,EAAE,oBAAoB,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;KACnE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,gBAAgB,CAAC;QACtB,CAAC,kBAAkB,EAAE,YAAY,EAAE,CAAC;QACpC,CAAC,qBAAqB,EAAE,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC;QACxD,CAAC,MAAM,EAAE,oBAAoB,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;KACnE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,UAAmB;IAChE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ;KAC/D,CAAC,CAAC;AACL,CAAC"}
@@ -5,3 +5,4 @@ export * from "./utils";
5
5
  export * from "./constants";
6
6
  export * from "./BlockUtils";
7
7
  export * from "./provider";
8
+ export * from "./encoders";
@@ -5,4 +5,5 @@ export * from "./utils";
5
5
  export * from "./constants";
6
6
  export * from "./BlockUtils";
7
7
  export * from "./provider";
8
+ export * from "./encoders";
8
9
  //# sourceMappingURL=index.js.map