curvance 3.1.12 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/abis/ProtocolReader.json +10 -0
  2. package/dist/abis/SimpleZapper.json +6 -1
  3. package/dist/chains/index.d.ts +12 -2
  4. package/dist/chains/index.d.ts.map +1 -1
  5. package/dist/chains/monad-mainnet.json +27 -22
  6. package/dist/classes/CToken.d.ts +12 -6
  7. package/dist/classes/CToken.d.ts.map +1 -1
  8. package/dist/classes/CToken.js +90 -40
  9. package/dist/classes/CToken.js.map +1 -1
  10. package/dist/classes/DexAggregators/Kuru.js +8 -8
  11. package/dist/classes/DexAggregators/Kuru.js.map +1 -1
  12. package/dist/classes/DexAggregators/KyberSwap.d.ts +2 -3
  13. package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
  14. package/dist/classes/DexAggregators/KyberSwap.js +30 -11
  15. package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
  16. package/dist/classes/ERC20.d.ts +1 -0
  17. package/dist/classes/ERC20.d.ts.map +1 -1
  18. package/dist/classes/ERC20.js +3 -0
  19. package/dist/classes/ERC20.js.map +1 -1
  20. package/dist/classes/ERC4626.d.ts +17 -0
  21. package/dist/classes/ERC4626.d.ts.map +1 -0
  22. package/dist/classes/ERC4626.js +37 -0
  23. package/dist/classes/ERC4626.js.map +1 -0
  24. package/dist/classes/PositionManager.d.ts +4 -2
  25. package/dist/classes/PositionManager.d.ts.map +1 -1
  26. package/dist/classes/PositionManager.js +6 -0
  27. package/dist/classes/PositionManager.js.map +1 -1
  28. package/dist/classes/ProtocolReader.d.ts +1 -0
  29. package/dist/classes/ProtocolReader.d.ts.map +1 -1
  30. package/dist/classes/ProtocolReader.js +1 -0
  31. package/dist/classes/ProtocolReader.js.map +1 -1
  32. package/dist/classes/Zapper.d.ts +6 -1
  33. package/dist/classes/Zapper.d.ts.map +1 -1
  34. package/dist/classes/Zapper.js +34 -5
  35. package/dist/classes/Zapper.js.map +1 -1
  36. package/dist/helpers.d.ts +9 -3
  37. package/dist/helpers.d.ts.map +1 -1
  38. package/dist/helpers.js +5 -1
  39. package/dist/helpers.js.map +1 -1
  40. package/dist/setup.d.ts +5 -3
  41. package/dist/setup.d.ts.map +1 -1
  42. package/dist/setup.js +7 -5
  43. package/dist/setup.js.map +1 -1
  44. package/package.json +4 -7
@@ -15,6 +15,7 @@ const Zapper_1 = require("./Zapper");
15
15
  const setup_1 = require("../setup");
16
16
  const PositionManager_1 = require("./PositionManager");
17
17
  const NativeToken_1 = require("./NativeToken");
18
+ const ERC4626_1 = require("./ERC4626");
18
19
  class CToken extends Calldata_1.Calldata {
19
20
  provider;
20
21
  address;
@@ -24,6 +25,9 @@ class CToken extends Calldata_1.Calldata {
24
25
  market;
25
26
  zapTypes = [];
26
27
  leverageTypes = [];
28
+ isVault = false;
29
+ isNativeVault = false;
30
+ isWrappedNative = false;
27
31
  constructor(provider, address, cache, market) {
28
32
  super();
29
33
  this.provider = provider;
@@ -32,19 +36,22 @@ class CToken extends Calldata_1.Calldata {
32
36
  this.cache = cache;
33
37
  this.market = market;
34
38
  const chain_config = (0, helpers_1.getChainConfig)();
35
- const isNativeVault = chain_config.native_vaults.some(vault => vault.contract == this.asset.address);
36
- // const isVault = chain_config.vaults.some(vault => vault.contract == this.asset.address);
37
- const isWrappedNative = chain_config.wrapped_native == this.asset.address;
38
- if (isNativeVault)
39
+ this.isNativeVault = chain_config.native_vaults.some(vault => vault.contract == this.asset.address);
40
+ this.isVault = chain_config.vaults.some(vault => vault.contract == this.asset.address);
41
+ this.isWrappedNative = chain_config.wrapped_native == this.asset.address;
42
+ if (this.isNativeVault)
39
43
  this.zapTypes.push('native-vault');
40
- if ("nativeVaultPositionManager" in this.market.plugins && isNativeVault)
44
+ if ("nativeVaultPositionManager" in this.market.plugins && this.isNativeVault)
41
45
  this.leverageTypes.push('native-vault');
42
- if (isWrappedNative)
46
+ if (this.isWrappedNative)
43
47
  this.zapTypes.push('native-simple');
44
- // if(isVault) this.zapTypes.push('vault');
45
- // if("vaultPositionManager" in this.market.plugins && isVault) this.leverageTypes.push('vault');
46
- // if("simplePositionManager" in this.market.plugins) this.leverageTypes.push('simple');
47
- // this.zapTypes.push('simple');
48
+ if (this.isVault)
49
+ this.zapTypes.push('vault');
50
+ if ("vaultPositionManager" in this.market.plugins && this.isVault)
51
+ this.leverageTypes.push('vault');
52
+ if ("simplePositionManager" in this.market.plugins)
53
+ this.leverageTypes.push('simple');
54
+ this.zapTypes.push('simple');
48
55
  }
49
56
  get adapters() { return this.cache.adapters; }
50
57
  get borrowPaused() { return this.cache.borrowPaused; }
@@ -58,6 +65,7 @@ class CToken extends Calldata_1.Calldata {
58
65
  get isBorrowable() { return this.cache.isBorrowable; }
59
66
  get exchangeRate() { return this.cache.exchangeRate; }
60
67
  get canZap() { return this.zapTypes.length > 0; }
68
+ get maxLeverage() { return (0, decimal_js_1.default)(this.cache.maxLeverage / helpers_1.BPS); }
61
69
  get canLeverage() { return this.leverageTypes.length > 0; }
62
70
  get liquidationPrice() {
63
71
  if (this.cache.liquidationPrice == helpers_1.UINT256_MAX)
@@ -158,6 +166,15 @@ class CToken extends Calldata_1.Calldata {
158
166
  ltv() {
159
167
  return (0, decimal_js_1.default)(this.cache.collRatio).div(helpers_1.BPS);
160
168
  }
169
+ getUnderlyingVault() {
170
+ if (!this.isVault && !this.isNativeVault) {
171
+ throw new Error("CToken does not use a vault asset as its underlying asset");
172
+ }
173
+ return new ERC4626_1.ERC4626(this.provider, this.getAsset(false));
174
+ }
175
+ async getVaultAsset(asErc20) {
176
+ return asErc20 ? await this.getUnderlyingVault().fetchAsset(true) : await this.getUnderlyingVault().fetchAsset(false);
177
+ }
161
178
  getAsset(asErc20) {
162
179
  return asErc20 ? new ERC20_1.ERC20(this.provider, this.cache.asset.address, this.cache.asset) : this.cache.asset.address;
163
180
  }
@@ -216,7 +233,7 @@ class CToken extends Calldata_1.Calldata {
216
233
  const isApproved = allowance >= amount;
217
234
  if (!isApproved) {
218
235
  const symbol = await asset.fetchSymbol();
219
- throw new Error(`Plugin needs to be approved for the asset: ${symbol}`);
236
+ throw new Error(`Plugin(${plugin}) needs to be approved for the asset: ${symbol}`);
220
237
  }
221
238
  return isApproved;
222
239
  }
@@ -379,7 +396,7 @@ class CToken extends Calldata_1.Calldata {
379
396
  await this.fetchUserCollateral();
380
397
  return tx;
381
398
  }
382
- getZapBalance(zap) {
399
+ async getZapBalance(zap) {
383
400
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
384
401
  let asset;
385
402
  if (typeof zap === 'object') {
@@ -395,6 +412,9 @@ class CToken extends Calldata_1.Calldata {
395
412
  case 'none':
396
413
  asset = this.getAsset(true);
397
414
  break;
415
+ case 'vault':
416
+ asset = await this.getVaultAsset(true);
417
+ break;
398
418
  case 'native-vault':
399
419
  asset = new NativeToken_1.NativeToken(setup_1.setup_config.chain, this.provider);
400
420
  break;
@@ -458,8 +478,9 @@ class CToken extends Calldata_1.Calldata {
458
478
  }
459
479
  /** @returns A list of tokens mapped to their respective zap options */
460
480
  async getDepositTokens(search = null) {
481
+ const underlying = this.getAsset(true);
461
482
  let tokens = [{
462
- interface: this.getAsset(true),
483
+ interface: underlying,
463
484
  type: 'none'
464
485
  }];
465
486
  let tokens_exclude = [this.asset.address.toLocaleLowerCase()];
@@ -481,6 +502,14 @@ class CToken extends Calldata_1.Calldata {
481
502
  tokens_exclude.push(helpers_1.NATIVE_ADDRESS);
482
503
  }
483
504
  }
505
+ if (this.zapTypes.includes('vault')) {
506
+ const vault_asset = await this.getVaultAsset(true);
507
+ tokens.push({
508
+ interface: vault_asset,
509
+ type: 'vault'
510
+ });
511
+ tokens_exclude.push(vault_asset.address.toLocaleLowerCase());
512
+ }
484
513
  if (this.zapTypes.includes('simple')) {
485
514
  let dexAggSearch = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.getAvailableTokens(this.provider, search);
486
515
  tokens = tokens.concat(dexAggSearch.filter(token => !tokens_exclude.includes(token.interface.address.toLocaleLowerCase())));
@@ -493,7 +522,8 @@ class CToken extends Calldata_1.Calldata {
493
522
  return this.market.reader.hypotheticalRedemptionOf(signer.address, this, shares);
494
523
  }
495
524
  previewLeverageUp(newLeverage, borrow) {
496
- if (this.getLeverage() == null || this.getLeverage() != null && newLeverage.lte(this.getLeverage())) {
525
+ const currentLeverage = this.getLeverage() ?? (0, decimal_js_1.default)(0);
526
+ if (newLeverage.lte(currentLeverage)) {
497
527
  throw new Error("New leverage must be more than current leverage");
498
528
  }
499
529
  const collateralAvail = this.cache.userCollateral;
@@ -514,7 +544,7 @@ class CToken extends Calldata_1.Calldata {
514
544
  const collateralAssetReduction = BigInt(leverageDiff.mul(collateralAssetsAvail).toFixed(0));
515
545
  return { collateralAssetReduction, leverageDiff };
516
546
  }
517
- async leverageUp(borrow, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.05)) {
547
+ async leverageUp(borrow, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
518
548
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
519
549
  const slippage = (0, helpers_1.toBps)(slippage_);
520
550
  const manager = this.getPositionManager(type);
@@ -522,7 +552,7 @@ class CToken extends Calldata_1.Calldata {
522
552
  const { borrowAmount } = this.previewLeverageUp(newLeverage, borrow);
523
553
  switch (type) {
524
554
  case 'simple': {
525
- const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(signer.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount, false), slippage);
555
+ const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(manager.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount, false), slippage);
526
556
  calldata = manager.getLeverageCalldata({
527
557
  borrowableCToken: borrow.address,
528
558
  borrowAssets: borrow.convertTokenInput(borrowAmount),
@@ -530,7 +560,18 @@ class CToken extends Calldata_1.Calldata {
530
560
  expectedShares: BigInt(quote.min_out),
531
561
  swapAction: action,
532
562
  auxData: "0x",
533
- }, slippage * helpers_1.WAD);
563
+ }, (0, helpers_1.fromBpsToWad)(slippage));
564
+ break;
565
+ }
566
+ case 'vault': {
567
+ calldata = manager.getLeverageCalldata({
568
+ borrowableCToken: borrow.address,
569
+ borrowAssets: borrow.convertTokenInput(borrowAmount),
570
+ cToken: this.address,
571
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
572
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
573
+ auxData: "0x",
574
+ }, (0, helpers_1.fromBpsToWad)(slippage));
534
575
  break;
535
576
  }
536
577
  case 'native-vault': {
@@ -538,10 +579,10 @@ class CToken extends Calldata_1.Calldata {
538
579
  borrowableCToken: borrow.address,
539
580
  borrowAssets: borrow.convertTokenInput(borrowAmount),
540
581
  cToken: this.address,
541
- expectedShares: borrow.convertTokenInput(borrowAmount),
582
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
542
583
  swapAction: PositionManager_1.PositionManager.emptySwapAction(),
543
584
  auxData: "0x",
544
- }, slippage * helpers_1.WAD);
585
+ }, (0, helpers_1.fromBpsToWad)(slippage));
545
586
  break;
546
587
  }
547
588
  default: throw new Error("Unsupported position manager type");
@@ -551,7 +592,7 @@ class CToken extends Calldata_1.Calldata {
551
592
  to: manager.address
552
593
  });
553
594
  }
554
- async leverageDown(borrowToken, currentLeverage, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.05)) {
595
+ async leverageDown(borrowToken, currentLeverage, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
555
596
  if (newLeverage.gte(currentLeverage)) {
556
597
  throw new Error("New leverage must be less than current leverage");
557
598
  }
@@ -563,8 +604,8 @@ class CToken extends Calldata_1.Calldata {
563
604
  const { collateralAssetReduction, leverageDiff } = this.previewLeverageDown(newLeverage, currentLeverage);
564
605
  switch (type) {
565
606
  case 'simple': {
566
- const { action, quote } = await config.dexAgg.quoteAction(signer.address, this.asset.address, borrowToken.asset.address, collateralAssetReduction, slippage);
567
- const minRepay = leverageDiff.equals(1) ? 0 : quote.min_out;
607
+ const { action, quote } = await config.dexAgg.quoteAction(manager.address, this.asset.address, borrowToken.asset.address, collateralAssetReduction, slippage);
608
+ const minRepay = leverageDiff.equals(1) ? 0 : quote.out - (BigInt((0, decimal_js_1.default)(quote.out).mul(.05).toFixed(0)));
568
609
  calldata = manager.getDeleverageCalldata({
569
610
  cToken: this.address,
570
611
  collateralAssets: collateralAssetReduction,
@@ -572,7 +613,7 @@ class CToken extends Calldata_1.Calldata {
572
613
  repayAssets: BigInt(minRepay),
573
614
  swapActions: [action],
574
615
  auxData: "0x",
575
- }, slippage * helpers_1.WAD);
616
+ }, (0, helpers_1.fromBpsToWad)(slippage));
576
617
  break;
577
618
  }
578
619
  default: throw new Error("Unsupported position manager type");
@@ -582,15 +623,15 @@ class CToken extends Calldata_1.Calldata {
582
623
  to: manager.address
583
624
  });
584
625
  }
585
- async depositAndLeverage(depositAmount, borrow, borrowAmount, type, slippage_ = (0, decimal_js_1.default)(0.5)) {
626
+ async depositAndLeverage(depositAmount, borrow, borrowAmount, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
586
627
  depositAmount = await this.ensureUnderlyingAmount(depositAmount, 'none');
587
628
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
588
629
  const slippage = (0, helpers_1.toBps)(slippage_);
589
630
  const manager = this.getPositionManager(type);
590
631
  let calldata;
591
632
  switch (type) {
592
- case 'simple':
593
- const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(signer.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount), slippage);
633
+ case 'simple': {
634
+ const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(manager.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount), slippage);
594
635
  calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
595
636
  borrowableCToken: borrow.address,
596
637
  borrowAssets: borrow.convertTokenInput(borrowAmount),
@@ -598,24 +639,29 @@ class CToken extends Calldata_1.Calldata {
598
639
  expectedShares: BigInt(quote.min_out),
599
640
  swapAction: action,
600
641
  auxData: "0x",
601
- }, slippage * helpers_1.WAD);
642
+ }, (0, helpers_1.fromBpsToWad)(slippage));
643
+ break;
644
+ }
645
+ case 'vault': {
646
+ calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
647
+ borrowableCToken: borrow.address,
648
+ borrowAssets: borrow.convertTokenInput(borrowAmount),
649
+ cToken: this.address,
650
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
651
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
652
+ auxData: "0x",
653
+ }, (0, helpers_1.fromBpsToWad)(slippage));
602
654
  break;
655
+ }
603
656
  case 'native-vault': {
604
657
  calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
605
658
  borrowableCToken: borrow.address,
606
659
  borrowAssets: borrow.convertTokenInput(borrowAmount),
607
660
  cToken: this.address,
608
- expectedShares: borrow.convertTokenInput(borrowAmount),
609
- swapAction: {
610
- inputToken: helpers_1.EMPTY_ADDRESS,
611
- inputAmount: 0n,
612
- outputToken: helpers_1.EMPTY_ADDRESS,
613
- target: helpers_1.EMPTY_ADDRESS,
614
- slippage: 0n,
615
- call: "0x"
616
- },
661
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
662
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
617
663
  auxData: "0x",
618
- }, slippage * helpers_1.WAD);
664
+ }, (0, helpers_1.fromBpsToWad)(slippage));
619
665
  break;
620
666
  }
621
667
  default: throw new Error("Unsupported position manager type");
@@ -633,7 +679,7 @@ class CToken extends Calldata_1.Calldata {
633
679
  let inputToken = null;
634
680
  let type_of_zap;
635
681
  if (typeof zap == 'object') {
636
- slippage = zap.slippage;
682
+ slippage = BigInt(zap.slippage.mul(helpers_1.BPS).toString());
637
683
  inputToken = zap.inputToken;
638
684
  type_of_zap = zap.type;
639
685
  }
@@ -654,12 +700,16 @@ class CToken extends Calldata_1.Calldata {
654
700
  calldata = await zapper.getSimpleZapCalldata(this, inputToken, this.asset.address, assets, collateralize, slippage);
655
701
  calldata_overrides = { to: zapper.address };
656
702
  break;
703
+ case 'vault':
704
+ calldata = await zapper.getVaultZapCalldata(this, assets, collateralize);
705
+ calldata_overrides = { to: zapper.address };
706
+ break;
657
707
  case 'native-vault':
658
- calldata = zapper.getNativeZapCalldata(this, assets, collateralize);
708
+ calldata = await zapper.getNativeZapCalldata(this, assets, collateralize);
659
709
  calldata_overrides = { value: assets, to: zapper.address };
660
710
  break;
661
711
  case 'native-simple':
662
- calldata = zapper.getNativeZapCalldata(this, assets, collateralize, true);
712
+ calldata = await zapper.getNativeZapCalldata(this, assets, collateralize, true);
663
713
  calldata_overrides = { value: assets, to: zapper.address };
664
714
  break;
665
715
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
@@ -95,14 +95,14 @@ class Kuru {
95
95
  tokens.push({
96
96
  interface: erc20,
97
97
  type: 'simple',
98
- quote: async (tokenIn, tokenOut, amount, slippage) => {
99
- const raw_amount = (0, helpers_1.toBigInt)(amount, 18n);
100
- const data = await this.quote(signer.address, tokenIn, tokenOut, raw_amount, slippage);
101
- return {
102
- out: (0, helpers_1.toDecimal)(BigInt(data.out ?? 0), BigInt(token.decimals ?? 18)),
103
- min_out: (0, helpers_1.toDecimal)(BigInt(data.min_out ?? 0), BigInt(token.decimals ?? 18)),
104
- };
105
- }
98
+ // quote: async(tokenIn: string, tokenOut: string, amount: TokenInput, slippage: bigint) => {
99
+ // const raw_amount = toBigInt(amount, 18n);
100
+ // const data = await this.quote(signer.address, tokenIn, tokenOut, raw_amount, slippage);
101
+ // return {
102
+ // out: toDecimal(BigInt(data.out ?? 0), BigInt(token.decimals ?? 18)),
103
+ // min_out: toDecimal(BigInt(data.min_out ?? 0), BigInt(token.decimals ?? 18)),
104
+ // };
105
+ // }
106
106
  });
107
107
  }
108
108
  return tokens;
@@ -1 +1 @@
1
- {"version":3,"file":"Kuru.js","sourceRoot":"","sources":["../../../src/classes/DexAggregators/Kuru.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Kuru.js","sourceRoot":"","sources":["../../../src/classes/DexAggregators/Kuru.ts"],"names":[],"mappings":"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"}
@@ -77,9 +77,8 @@ export declare class KyberSwap implements IDexAgg {
77
77
  router: address;
78
78
  chain: string;
79
79
  client_id: string;
80
- constructor(dao?: address, router?: address, // TODO: Replace with actual KyberSwap router address
81
- chain?: string, api?: string);
82
- getAvailableTokens(provider: curvance_provider, query?: string | null): Promise<ZapToken[]>;
80
+ constructor(dao?: address, router?: address, chain?: string, api?: string);
81
+ getAvailableTokens(provider: curvance_provider, query?: string | null, page?: number, pageSize?: number): Promise<ZapToken[]>;
83
82
  quoteAction(wallet: string, tokenIn: string, tokenOut: string, amount: bigint, slippage: bigint): Promise<{
84
83
  action: Swap;
85
84
  quote: {
@@ -1 +1 @@
1
- {"version":3,"file":"KyberSwap.d.ts","sourceRoot":"","sources":["../../../src/classes/DexAggregators/KyberSwap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KyberSwap.d.ts","sourceRoot":"","sources":["../../../src/classes/DexAggregators/KyberSwap.ts"],"names":[],"mappings":"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"}