@mcp-dockmaster/mcp-cryptowallet-evm 1.0.4 → 1.0.5

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.
@@ -14,11 +14,11 @@ export declare const createSuccessResponse: <T>(result: T, message?: string) =>
14
14
  */
15
15
  export declare const createErrorResponse: (message: string) => ToolResultSchema<any>;
16
16
  /**
17
- * Gets a provider from a provider URL
18
- * @param providerUrl The provider URL
17
+ * Gets the provider setup in memory
19
18
  * @returns An ethers.js provider
20
19
  */
21
- export declare const getProvider: (providerUrl?: string) => ethers.providers.Provider;
20
+ export declare const getProvider: () => ethers.providers.Provider;
21
+ export declare const setProvider: (providerURL: string) => void;
22
22
  /**
23
23
  * Gets a wallet from a private key, mnemonic, or JSON wallet
24
24
  * @param walletData The wallet data (private key, mnemonic, or JSON)
@@ -26,4 +26,4 @@ export declare const getProvider: (providerUrl?: string) => ethers.providers.Pro
26
26
  * @param provider Optional provider to connect the wallet to
27
27
  * @returns An ethers.js wallet
28
28
  */
29
- export declare const getWallet: (walletData?: string, password?: string, providerUrl?: string) => Promise<ethers.Wallet>;
29
+ export declare const getWallet: (walletData?: string, password?: string) => Promise<ethers.Wallet>;
@@ -1,4 +1,13 @@
1
1
  import { ethers } from "ethers";
2
+ let provider;
3
+ try {
4
+ provider = process.env.PROVIDER_URL ?
5
+ ethers.providers.getDefaultProvider(process.env.PROVIDER_URL) :
6
+ ethers.providers.getDefaultProvider('https://eth.llamarpc.com');
7
+ }
8
+ catch (error) {
9
+ console.error("Error initializing provider:", error);
10
+ }
2
11
  /**
3
12
  * Creates a success response with the given result
4
13
  * @param result The result to include in the response
@@ -35,20 +44,21 @@ export const createErrorResponse = (message) => {
35
44
  };
36
45
  };
37
46
  /**
38
- * Gets a provider from a provider URL
39
- * @param providerUrl The provider URL
47
+ * Gets the provider setup in memory
40
48
  * @returns An ethers.js provider
41
49
  */
42
- export const getProvider = (providerUrl) => {
43
- if (!providerUrl) {
44
- // Default to Ethereum mainnet if no provider URL is specified
45
- return ethers.getDefaultProvider();
50
+ export const getProvider = () => {
51
+ if (!provider) {
52
+ throw new Error(`Invalid provider URL: ${process.env.PROVIDER_URL}`);
46
53
  }
54
+ return provider;
55
+ };
56
+ export const setProvider = (providerURL) => {
47
57
  try {
48
- return new ethers.providers.JsonRpcProvider(providerUrl);
58
+ provider = ethers.providers.getDefaultProvider(providerURL);
49
59
  }
50
60
  catch (error) {
51
- throw new Error(`Invalid provider URL: ${providerUrl}`);
61
+ throw new Error(`Invalid provider URL: ${providerURL}`);
52
62
  }
53
63
  };
54
64
  /**
@@ -58,8 +68,8 @@ export const getProvider = (providerUrl) => {
58
68
  * @param provider Optional provider to connect the wallet to
59
69
  * @returns An ethers.js wallet
60
70
  */
61
- export const getWallet = async (walletData, password, providerUrl) => {
62
- const provider = providerUrl ? getProvider(providerUrl) : undefined;
71
+ export const getWallet = async (walletData, password) => {
72
+ const provider = getProvider();
63
73
  // If walletData is not provided, check for PRIVATE_KEY environment variable
64
74
  if (!walletData && process.env.PRIVATE_KEY) {
65
75
  const wallet = new ethers.Wallet(process.env.PRIVATE_KEY);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/handlers/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/handlers/utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { ToolResultSchema } from "../types.js";
2
2
  import { fromPrivateKeyHandlerInput, createMnemonicPhraseHandlerInput } from "./wallet.types.js";
3
+ export declare const setProviderHandler: (input: any) => Promise<ToolResultSchema<any>>;
3
4
  export declare const createWalletHandler: (input: any) => Promise<ToolResultSchema<any>>;
4
5
  export declare const fromPrivateKeyHandler: (input: fromPrivateKeyHandlerInput) => Promise<ToolResultSchema<any>>;
5
6
  export declare const createMnemonicPhraseHandler: (input: createMnemonicPhraseHandlerInput) => Promise<ToolResultSchema<any>>;
@@ -1,6 +1,18 @@
1
1
  import { ethers } from "ethers";
2
- import { createSuccessResponse, createErrorResponse, getProvider, getWallet } from "./utils.js";
2
+ import { createSuccessResponse, createErrorResponse, getProvider, getWallet, setProvider } from "./utils.js";
3
3
  import { generateMnemonic, } from '@scure/bip39';
4
+ // Provider handlers
5
+ export const setProviderHandler = async (input) => {
6
+ try {
7
+ setProvider(input.providerURL);
8
+ return createSuccessResponse({}, `Provider set successfully:
9
+ Provider URL: ${input.providerURL}
10
+ `);
11
+ }
12
+ catch (error) {
13
+ return createErrorResponse(`Failed to set provider: ${error.message}`);
14
+ }
15
+ };
4
16
  // Wallet Creation and Management
5
17
  export const createWalletHandler = async (input) => {
6
18
  try {
@@ -40,7 +52,7 @@ export const fromPrivateKeyHandler = async (input) => {
40
52
  if (!input.privateKey) {
41
53
  return createErrorResponse("Private key is required");
42
54
  }
43
- const provider = input.provider ? getProvider(input.provider) : undefined;
55
+ const provider = getProvider();
44
56
  const wallet = new ethers.Wallet(input.privateKey, provider);
45
57
  return createSuccessResponse({
46
58
  address: wallet.address,
@@ -84,7 +96,7 @@ export const fromMnemonicHandler = async (input) => {
84
96
  path: input.path,
85
97
  wordlist: (input.locale && ethers.wordlists[input.locale]) || ethers.wordlists.en
86
98
  };
87
- const provider = input.provider ? getProvider(input.provider) : undefined;
99
+ const provider = getProvider();
88
100
  const wallet = ethers.Wallet.fromMnemonic(input.mnemonic, options.path, options.wordlist);
89
101
  if (provider)
90
102
  wallet.connect(provider);
@@ -112,7 +124,7 @@ export const fromEncryptedJsonHandler = async (input) => {
112
124
  return createErrorResponse("Password is required");
113
125
  }
114
126
  const wallet = await ethers.Wallet.fromEncryptedJson(input.json, input.password);
115
- const provider = input.provider ? getProvider(input.provider) : undefined;
127
+ const provider = getProvider();
116
128
  if (provider) {
117
129
  wallet.connect(provider);
118
130
  }
@@ -187,10 +199,7 @@ export const getPrivateKeyHandler = async (input) => {
187
199
  // Blockchain Methods
188
200
  export const getBalanceHandler = async (input) => {
189
201
  try {
190
- if (!input.provider) {
191
- return createErrorResponse("Provider URL is required to get balance");
192
- }
193
- const wallet = await getWallet(input.wallet, input.password, input.provider);
202
+ const wallet = await getWallet(input.wallet, input.password);
194
203
  const balance = await wallet.getBalance(input.blockTag ?? "latest");
195
204
  return createSuccessResponse({
196
205
  balance: balance.toString(),
@@ -206,9 +215,9 @@ export const getBalanceHandler = async (input) => {
206
215
  };
207
216
  export const getChainIdHandler = async (input) => {
208
217
  try {
209
- const wallet = await getWallet(input.wallet, input.password, input.provider);
218
+ const wallet = await getWallet(input.wallet, input.password);
210
219
  if (!wallet.provider) {
211
- return createErrorResponse("Provider is required to get chain ID");
220
+ return createErrorResponse("Provider is required to get chain ID, please set the provider URL");
212
221
  }
213
222
  const chainId = await wallet.getChainId();
214
223
  return createSuccessResponse({
@@ -223,9 +232,9 @@ export const getChainIdHandler = async (input) => {
223
232
  };
224
233
  export const getGasPriceHandler = async (input) => {
225
234
  try {
226
- const wallet = await getWallet(input.wallet, input.password, input.provider);
235
+ const wallet = await getWallet(input.wallet, input.password);
227
236
  if (!wallet.provider) {
228
- return createErrorResponse("Provider is required to get gas price");
237
+ return createErrorResponse("Provider is required to get gas price, please set the provider URL");
229
238
  }
230
239
  const gasPrice = await wallet.getGasPrice();
231
240
  return createSuccessResponse({
@@ -242,9 +251,9 @@ export const getGasPriceHandler = async (input) => {
242
251
  };
243
252
  export const getTransactionCountHandler = async (input) => {
244
253
  try {
245
- const wallet = await getWallet(input.wallet, input.password, input.provider);
254
+ const wallet = await getWallet(input.wallet, input.password);
246
255
  if (!wallet.provider) {
247
- return createErrorResponse("Provider is required to get transaction count");
256
+ return createErrorResponse("Provider is required to get transaction count, please set the provider URL");
248
257
  }
249
258
  const transactionCount = await wallet.getTransactionCount(input.blockTag);
250
259
  return createSuccessResponse({
@@ -262,9 +271,9 @@ export const callHandler = async (input) => {
262
271
  if (!input.transaction) {
263
272
  return createErrorResponse("Transaction is required");
264
273
  }
265
- const wallet = await getWallet(input.wallet, input.password, input.provider);
274
+ const wallet = await getWallet(input.wallet, input.password);
266
275
  if (!wallet.provider) {
267
- return createErrorResponse("Provider is required to call a contract");
276
+ return createErrorResponse("Provider is required to call a contract, please set the provider URL");
268
277
  }
269
278
  const result = await wallet.call(input.transaction, input.blockTag);
270
279
  return createSuccessResponse({
@@ -283,9 +292,9 @@ export const sendTransactionHandler = async (input) => {
283
292
  if (!input.transaction) {
284
293
  return createErrorResponse("Transaction is required");
285
294
  }
286
- const wallet = await getWallet(input.wallet, input.password, input.provider);
295
+ const wallet = await getWallet(input.wallet, input.password);
287
296
  if (!wallet.provider) {
288
- return createErrorResponse("Provider is required to send a transaction");
297
+ return createErrorResponse("Provider is required to send a transaction, please set the provider URL");
289
298
  }
290
299
  const tx = await wallet.sendTransaction(input.transaction);
291
300
  return createSuccessResponse({
@@ -316,7 +325,7 @@ export const signTransactionHandler = async (input) => {
316
325
  if (!input.transaction) {
317
326
  return createErrorResponse("Transaction is required");
318
327
  }
319
- const wallet = await getWallet(input.wallet, input.password, input.provider);
328
+ const wallet = await getWallet(input.wallet, input.password);
320
329
  // For signing a transaction, we need to populate it first
321
330
  const populatedTx = await wallet.populateTransaction(input.transaction);
322
331
  const signedTx = await wallet.signTransaction(populatedTx);
@@ -335,9 +344,9 @@ export const populateTransactionHandler = async (input) => {
335
344
  if (!input.transaction) {
336
345
  return createErrorResponse("Transaction is required");
337
346
  }
338
- const wallet = await getWallet(input.wallet, input.password, input.provider);
347
+ const wallet = await getWallet(input.wallet, input.password);
339
348
  if (!wallet.provider) {
340
- return createErrorResponse("Provider is required to populate a transaction");
349
+ return createErrorResponse("Provider is required to populate a transaction, please set the provider URL");
341
350
  }
342
351
  const populatedTx = await wallet.populateTransaction(input.transaction);
343
352
  return createSuccessResponse({
@@ -464,13 +473,10 @@ export const verifyTypedDataHandler = async (input) => {
464
473
  // Provider Methods
465
474
  export const getBlockHandler = async (input) => {
466
475
  try {
467
- if (!input.provider) {
468
- return createErrorResponse("Provider is required");
469
- }
470
476
  if (!input.blockHashOrBlockTag) {
471
477
  return createErrorResponse("Block hash or block tag is required");
472
478
  }
473
- const provider = getProvider(input.provider);
479
+ const provider = getProvider();
474
480
  // In ethers.js v5, getBlock can take includeTransactions as a second parameter
475
481
  // but TypeScript definitions might not reflect this
476
482
  const block = await provider.getBlock(input.blockHashOrBlockTag, input.includeTransactions);
@@ -489,13 +495,10 @@ export const getBlockHandler = async (input) => {
489
495
  };
490
496
  export const getTransactionHandler = async (input) => {
491
497
  try {
492
- if (!input.provider) {
493
- return createErrorResponse("Provider is required");
494
- }
495
498
  if (!input.transactionHash) {
496
499
  return createErrorResponse("Transaction hash is required");
497
500
  }
498
- const provider = getProvider(input.provider);
501
+ const provider = getProvider();
499
502
  const transaction = await provider.getTransaction(input.transactionHash);
500
503
  return createSuccessResponse({
501
504
  transaction
@@ -510,13 +513,10 @@ export const getTransactionHandler = async (input) => {
510
513
  };
511
514
  export const getTransactionReceiptHandler = async (input) => {
512
515
  try {
513
- if (!input.provider) {
514
- return createErrorResponse("Provider is required");
515
- }
516
516
  if (!input.transactionHash) {
517
517
  return createErrorResponse("Transaction hash is required");
518
518
  }
519
- const provider = getProvider(input.provider);
519
+ const provider = getProvider();
520
520
  const receipt = await provider.getTransactionReceipt(input.transactionHash);
521
521
  return createSuccessResponse({
522
522
  receipt
@@ -531,13 +531,10 @@ export const getTransactionReceiptHandler = async (input) => {
531
531
  };
532
532
  export const getCodeHandler = async (input) => {
533
533
  try {
534
- if (!input.provider) {
535
- return createErrorResponse("Provider is required");
536
- }
537
534
  if (!input.address) {
538
535
  return createErrorResponse("Address is required");
539
536
  }
540
- const provider = getProvider(input.provider);
537
+ const provider = getProvider();
541
538
  const code = await provider.getCode(input.address, input.blockTag);
542
539
  return createSuccessResponse({
543
540
  code
@@ -552,16 +549,13 @@ export const getCodeHandler = async (input) => {
552
549
  };
553
550
  export const getStorageAtHandler = async (input) => {
554
551
  try {
555
- if (!input.provider) {
556
- return createErrorResponse("Provider is required");
557
- }
558
552
  if (!input.address) {
559
553
  return createErrorResponse("Address is required");
560
554
  }
561
555
  if (!input.position) {
562
556
  return createErrorResponse("Position is required");
563
557
  }
564
- const provider = getProvider(input.provider);
558
+ const provider = getProvider();
565
559
  const storage = await provider.getStorageAt(input.address, input.position, input.blockTag);
566
560
  return createSuccessResponse({
567
561
  storage
@@ -577,13 +571,13 @@ export const getStorageAtHandler = async (input) => {
577
571
  };
578
572
  export const estimateGasHandler = async (input) => {
579
573
  try {
580
- if (!input.provider) {
581
- return createErrorResponse("Provider is required");
582
- }
583
574
  if (!input.transaction) {
584
575
  return createErrorResponse("Transaction is required");
585
576
  }
586
- const provider = getProvider(input.provider);
577
+ const provider = getProvider();
578
+ if (!provider) {
579
+ return createErrorResponse("Provider is required to estimate gas, please set the provider URL");
580
+ }
587
581
  const gasEstimate = await provider.estimateGas(input.transaction);
588
582
  return createSuccessResponse({
589
583
  gasEstimate: gasEstimate.toString()
@@ -597,13 +591,13 @@ export const estimateGasHandler = async (input) => {
597
591
  };
598
592
  export const getLogsHandler = async (input) => {
599
593
  try {
600
- if (!input.provider) {
601
- return createErrorResponse("Provider is required");
602
- }
603
594
  if (!input.filter) {
604
595
  return createErrorResponse("Filter is required");
605
596
  }
606
- const provider = getProvider(input.provider);
597
+ const provider = getProvider();
598
+ if (!provider) {
599
+ return createErrorResponse("Provider is required to get logs, please set the provider URL");
600
+ }
607
601
  const logs = await provider.getLogs(input.filter);
608
602
  return createSuccessResponse({
609
603
  logs
@@ -617,13 +611,13 @@ export const getLogsHandler = async (input) => {
617
611
  };
618
612
  export const getEnsResolverHandler = async (input) => {
619
613
  try {
620
- if (!input.provider) {
621
- return createErrorResponse("Provider is required");
622
- }
623
614
  if (!input.name) {
624
615
  return createErrorResponse("ENS name is required");
625
616
  }
626
- const provider = getProvider(input.provider);
617
+ const provider = getProvider();
618
+ if (!provider) {
619
+ return createErrorResponse("Provider is required to get ENS resolver, please set the provider URL");
620
+ }
627
621
  // In ethers.js v5, getResolver might not be directly on the provider type
628
622
  // but it's available in the implementation
629
623
  const resolver = await provider.getResolver(input.name);
@@ -643,13 +637,13 @@ export const getEnsResolverHandler = async (input) => {
643
637
  };
644
638
  export const lookupAddressHandler = async (input) => {
645
639
  try {
646
- if (!input.provider) {
647
- return createErrorResponse("Provider is required");
648
- }
649
640
  if (!input.address) {
650
641
  return createErrorResponse("Address is required");
651
642
  }
652
- const provider = getProvider(input.provider);
643
+ const provider = getProvider();
644
+ if (!provider) {
645
+ return createErrorResponse("Provider is required to lookup ENS name, please set the provider URL");
646
+ }
653
647
  const name = await provider.lookupAddress(input.address);
654
648
  return createSuccessResponse({
655
649
  name
@@ -663,13 +657,13 @@ export const lookupAddressHandler = async (input) => {
663
657
  };
664
658
  export const resolveNameHandler = async (input) => {
665
659
  try {
666
- if (!input.provider) {
667
- return createErrorResponse("Provider is required");
668
- }
669
660
  if (!input.name) {
670
661
  return createErrorResponse("ENS name is required");
671
662
  }
672
- const provider = getProvider(input.provider);
663
+ const provider = getProvider();
664
+ if (!provider) {
665
+ return createErrorResponse("Provider is required to resolve ENS name, please set the provider URL");
666
+ }
673
667
  const address = await provider.resolveName(input.name);
674
668
  return createSuccessResponse({
675
669
  address
@@ -685,10 +679,10 @@ export const resolveNameHandler = async (input) => {
685
679
  // Network Methods
686
680
  export const getNetworkHandler = async (input) => {
687
681
  try {
688
- if (!input.provider) {
689
- return createErrorResponse("Provider is required");
682
+ const provider = getProvider();
683
+ if (!provider) {
684
+ return createErrorResponse("Provider is required to get network information, please set the provider URL");
690
685
  }
691
- const provider = getProvider(input.provider);
692
686
  const network = await provider.getNetwork();
693
687
  return createSuccessResponse({
694
688
  network: {
@@ -708,10 +702,10 @@ export const getNetworkHandler = async (input) => {
708
702
  };
709
703
  export const getBlockNumberHandler = async (input) => {
710
704
  try {
711
- if (!input.provider) {
712
- return createErrorResponse("Provider is required");
705
+ const provider = getProvider();
706
+ if (!provider) {
707
+ return createErrorResponse("Provider is required to get block number, please set the provider URL");
713
708
  }
714
- const provider = getProvider(input.provider);
715
709
  const blockNumber = await provider.getBlockNumber();
716
710
  return createSuccessResponse({
717
711
  blockNumber
@@ -725,10 +719,10 @@ export const getBlockNumberHandler = async (input) => {
725
719
  };
726
720
  export const getFeeDataHandler = async (input) => {
727
721
  try {
728
- if (!input.provider) {
729
- return createErrorResponse("Provider is required");
722
+ const provider = getProvider();
723
+ if (!provider) {
724
+ return createErrorResponse("Provider is required to get fee data, please set the provider URL");
730
725
  }
731
- const provider = getProvider(input.provider);
732
726
  // getFeeData is available in ethers v5.5.0+
733
727
  // @ts-ignore - getFeeData might not be in the type definitions depending on the version
734
728
  const feeData = await provider.getFeeData();
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/handlers/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhG,OAAO,EAAE,gBAAgB,GAAI,MAAM,cAAc,CAAC;AAClD,iCAAiC;AAEjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACtF,IAAI,CAAC;QACH,MAAM,OAAO,GAAQ,EAAE,CAAC;QAExB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAChC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,MAAM,GAAQ;YAChB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM;YACjC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC;QAEF,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,gDAAgD;YAChD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7D,MAAM,CAAC,eAAe,GAAG,eAAe,CAAC;QAC3C,CAAC;QAED,OAAO,qBAAqB,CAAC,MAAM,EAAE;iBACxB,MAAM,CAAC,OAAO;qBACV,MAAM,CAAC,UAAU;oBAClB,MAAM,CAAC,SAAS;kBAClB,MAAM,CAAC,QAAQ,EAAE,MAAM;0BACf,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;KAC1D,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,4BAA6B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAiC,EAAkC,EAAE;IAC/G,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAE7D,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,EAAE;iBACU,MAAM,CAAC,OAAO;qBACV,MAAM,CAAC,UAAU;oBAClB,MAAM,CAAC,SAAS;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,6CAA8C,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACtG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAAE,KAAuC,EAAkC,EAAE;IAC3H,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC/C,CAAC;QACD,iFAAiF;QACjF,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAEzD,OAAO,qBAAqB,CAAC;YAC3B,QAAQ,EAAE,QAAQ;SACnB,EAAE;mBACY,QAAQ;KACtB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,qCAAsC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACtF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,OAAO,GAAQ;YACnB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE;SAClF,CAAC;QAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE1F,IAAI,QAAQ;YAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEvC,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM;YACjC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,EAAE;iBACU,MAAM,CAAC,OAAO;qBACV,MAAM,CAAC,UAAU;oBAClB,MAAM,CAAC,SAAS;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,0CAA2C,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACnG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAC3F,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO,mBAAmB,CAAC,4BAA4B,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,EAAE,iDAAiD,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,gDAAiD,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACzG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACvF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAE5E,OAAO,qBAAqB,CAAC;YAC3B,eAAe;SAChB,EAAE,+BAA+B,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,6BAA8B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACtF,CAAC;AACH,CAAC,CAAC;AAEF,oBAAoB;AAEpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACpF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,EAAE;iBACU,MAAM,CAAC,OAAO;KAC1B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,iCAAkC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACtF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO,qBAAqB,CAAC;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,EAAE;oBACa,MAAM,CAAC,SAAS;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,oCAAqC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACvF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7D,OAAO,qBAAqB,CAAC;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,EAAE;qBACc,MAAM,CAAC,UAAU;KACjC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,qCAAsC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC,CAAC;AACF,qBAAqB;AAErB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACpF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;QAEpE,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;YAC3B,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;SAChD,EAAE;iBACU,OAAO,CAAC,QAAQ,EAAE;wBACX,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;KACpD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,iCAAkC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACpF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,sCAAsC,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QAE1C,OAAO,qBAAqB,CAAC;YAC3B,OAAO;SACR,EAAE;kBACW,OAAO,CAAC,QAAQ,EAAE;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,2BAA4B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACrF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;QAE5C,OAAO,qBAAqB,CAAC;YAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC7B,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3D,EAAE;mBACY,QAAQ,CAAC,QAAQ,EAAE;2BACX,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC;KAChE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,4BAA6B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAC7F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,+CAA+C,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE1E,OAAO,qBAAqB,CAAC;YAC3B,gBAAgB;SACjB,EAAE;2BACoB,gBAAgB,CAAC,QAAQ,EAAE;KACjD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,oCAAqC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAC9E,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpE,OAAO,qBAAqB,CAAC;YAC3B,MAAM;SACP,EAAE;gBACS,MAAM;KACjB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,4BAA6B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC,CAAC;AAEF,sBAAsB;AAEtB,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACzF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,4CAA4C,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE3D,OAAO,qBAAqB,CAAC;YAC3B,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE;YACjC,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC1B,OAAO,EAAE,EAAE,CAAC,OAAO;YACnB,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,IAAI,EAAE,EAAE,CAAC,IAAI;SACd,EAAE;cACO,EAAE,CAAC,IAAI;eACN,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE;mBACf,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE;mBACtB,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE;cAC5B,EAAE,CAAC,IAAI;KAChB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACzF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,0DAA0D;QAC1D,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE3D,OAAO,qBAAqB,CAAC;YAC3B,iBAAiB,EAAE,QAAQ;SAC5B,EAAE;4BACqB,QAAQ;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAC7F,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,mBAAmB,CAAC,gDAAgD,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAExE,OAAO,qBAAqB,CAAC;YAC3B,oBAAoB,EAAE;gBACpB,EAAE,EAAE,WAAW,CAAC,EAAE;gBAClB,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE;gBAC1C,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE;gBAC1C,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE;gBACpC,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,YAAY,EAAE,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE;gBAClD,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,EAAE,QAAQ,EAAE;aACnE;SACF,EAAE;YACK,WAAW,CAAC,EAAE;cACZ,WAAW,CAAC,IAAI;eACf,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,eAAe;mBAC5C,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,eAAe;mBACnD,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,eAAe;KACjE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,mCAAoC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC,CAAC;AAEF,kBAAkB;AAElB,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACrF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE1D,OAAO,qBAAqB,CAAC;YAC3B,SAAS;YACT,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,EAAE;mBACY,SAAS;kBACV,KAAK,CAAC,OAAO;KAC1B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,2BAA4B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACvF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAClD,OAAO,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7D,gDAAgD;QAChD,8EAA8E;QAC9E,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEtF,OAAO,qBAAqB,CAAC;YAC3B,SAAS;YACT,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,EAAE;mBACY,SAAS;gBACZ,KAAK,CAAC,MAAM;eACb,KAAK,CAAC,KAAK;eACX,KAAK,CAAC,KAAK;KACrB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,8BAA+B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACvF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACzD,OAAO,mBAAmB,CAAC,8CAA8C,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAE/E,OAAO,qBAAqB,CAAC;YAC3B,OAAO;YACP,gBAAgB;SACjB,EAAE,OAAO,CAAC,CAAC,CAAC;kBACC,KAAK,CAAC,OAAO;mBACZ,KAAK,CAAC,SAAS;iBACjB,KAAK,CAAC,OAAO;KACzB,CAAC,CAAC,CAAC;kBACU,KAAK,CAAC,OAAO;mBACZ,KAAK,CAAC,SAAS;iBACjB,KAAK,CAAC,OAAO;KACzB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,6BAA8B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACtF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACzF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACxF,OAAO,mBAAmB,CAAC,2DAA2D,CAAC,CAAC;QAC1F,CAAC;QAED,4DAA4D;QAC5D,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,CACnD,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAE/E,OAAO,qBAAqB,CAAC;YAC3B,OAAO;YACP,gBAAgB;SACjB,EAAE,OAAO,CAAC,CAAC,CAAC;gBACD,KAAK,CAAC,MAAM;eACb,KAAK,CAAC,KAAK;eACX,KAAK,CAAC,KAAK;mBACP,KAAK,CAAC,SAAS;iBACjB,KAAK,CAAC,OAAO;KACzB,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,gCAAiC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACzF,CAAC;AACH,CAAC,CAAC;AAEF,mBAAmB;AAEnB,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAClF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC/B,OAAO,mBAAmB,CAAC,qCAAqC,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,+EAA+E;QAC/E,oDAAoD;QACpD,MAAM,KAAK,GAAG,MAAO,QAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAErG,OAAO,qBAAqB,CAAC;YAC3B,KAAK;SACN,EAAE;oBACa,KAAK,CAAC,IAAI;sBACR,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,eAAe;yBACxC,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,eAAe;4BAC3C,KAAK,CAAC,YAAY,EAAE,MAAM,IAAI,eAAe;KACpE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,wBAAyB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACjF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACxF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,mBAAmB,CAAC,8BAA8B,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEzE,OAAO,qBAAqB,CAAC;YAC3B,WAAW;SACZ,EAAE;0BACmB,KAAK,CAAC,eAAe;qBAC1B,WAAW;KAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,8BAA+B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IAC/F,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,mBAAmB,CAAC,8BAA8B,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAE5E,OAAO,qBAAqB,CAAC;YAC3B,OAAO;SACR,EAAE;0BACmB,KAAK,CAAC,eAAe;6BAClB,OAAO;KAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,sCAAuC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACjF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEnE,OAAO,qBAAqB,CAAC;YAC3B,IAAI;SACL,EAAE;iBACU,KAAK,CAAC,OAAO;cAChB,IAAI;KACb,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,uBAAwB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACtF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE3F,OAAO,qBAAqB,CAAC;YAC3B,OAAO;SACR,EAAE;iBACU,KAAK,CAAC,OAAO;kBACZ,KAAK,CAAC,QAAQ;iBACf,OAAO;KACnB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,0BAA2B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACrF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAElE,OAAO,qBAAqB,CAAC;YAC3B,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;SACpC,EAAE;sBACe,WAAW,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,2BAA4B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACjF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAElD,OAAO,qBAAqB,CAAC;YAC3B,IAAI;SACL,EAAE;cACO,IAAI;KACb,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,uBAAwB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACxF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,0EAA0E;QAC1E,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAO,QAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEjE,OAAO,qBAAqB,CAAC;YAC3B,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC,CAAC,CAAC,IAAI;SACT,EAAE,QAAQ,CAAC,CAAC,CAAC;iBACD,QAAQ,CAAC,OAAO;cACnB,QAAQ,CAAC,IAAI;KACtB,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACvF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEzD,OAAO,qBAAqB,CAAC;YAC3B,IAAI;SACL,EAAE,IAAI,CAAC,CAAC,CAAC;cACA,IAAI;KACb,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,8BAA+B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACrF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEvD,OAAO,qBAAqB,CAAC;YAC3B,OAAO;SACR,EAAE,OAAO,CAAC,CAAC,CAAC;cACH,KAAK,CAAC,IAAI;iBACP,OAAO;KACnB,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC,CAAC;AAEF,kBAAkB;AAElB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACpF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAE5C,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B;SACF,EAAE;sBACe,OAAO,CAAC,IAAI;kBAChB,OAAO,CAAC,OAAO;qBACZ,OAAO,CAAC,UAAU;KAClC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,sCAAuC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACxF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC;QAEpD,OAAO,qBAAqB,CAAC;YAC3B,WAAW;SACZ,EAAE;sBACe,WAAW,CAAC,QAAQ,EAAE;KACvC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,+BAAgC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAU,EAAkC,EAAE;IACpF,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7C,4CAA4C;QAC5C,wFAAwF;QACxF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAE5C,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE;gBACP,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE;gBACtC,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE;gBAC9C,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAAE,QAAQ,EAAE;aAC/D;SACF,EAAE;mBACY,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE;yBACtB,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE;kCACvB,OAAO,CAAC,oBAAoB,EAAE,QAAQ,EAAE;KACrE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,2BAA4B,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/handlers/wallet.ts"],"names":[],"mappings":"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"}