@paraswap/dex-lib 2.15.5-curve-v1-issue → 2.15.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.
- package/build/abi/maverick/pool.json +913 -0
- package/build/abi/maverick/router.json +703 -0
- package/build/dex/curve-v1/curve-v1.js +3 -6
- package/build/dex/curve-v1/curve-v1.js.map +1 -1
- package/build/dex/curve-v1/pools/3pool.js +1 -1
- package/build/dex/curve-v1/pools/3pool.js.map +1 -1
- package/build/dex/curve-v1/pools/curve-pool.js +2 -2
- package/build/dex/curve-v1/pools/curve-pool.js.map +1 -1
- package/build/dex/maverick/config.d.ts +4 -0
- package/build/dex/maverick/config.js +20 -0
- package/build/dex/maverick/config.js.map +1 -0
- package/build/dex/maverick/maverick-math/maverick-pool-math.d.ts +67 -0
- package/build/dex/maverick/maverick-math/maverick-pool-math.js +406 -0
- package/build/dex/maverick/maverick-math/maverick-pool-math.js.map +1 -0
- package/build/dex/maverick/maverick-math/maverick-sol-math.d.ts +17 -0
- package/build/dex/maverick/maverick-math/maverick-sol-math.js +139 -0
- package/build/dex/maverick/maverick-math/maverick-sol-math.js.map +1 -0
- package/build/dex/maverick/maverick-pool.d.ts +41 -0
- package/build/dex/maverick/maverick-pool.js +130 -0
- package/build/dex/maverick/maverick-pool.js.map +1 -0
- package/build/dex/maverick/maverick.d.ts +42 -0
- package/build/dex/maverick/maverick.js +174 -0
- package/build/dex/maverick/maverick.js.map +1 -0
- package/build/dex/maverick/subgraph-queries.d.ts +4 -0
- package/build/dex/maverick/subgraph-queries.js +114 -0
- package/build/dex/maverick/subgraph-queries.js.map +1 -0
- package/build/dex/maverick/types.d.ts +46 -0
- package/build/dex/maverick/types.js +3 -0
- package/build/dex/maverick/types.js.map +1 -0
- package/build/dex/uniswap-v2/config.js +8 -0
- package/build/dex/uniswap-v2/config.js.map +1 -1
- package/package.json +1 -1
- package/src/dex/curve-v1/curve-v1.ts +3 -8
- package/src/dex/curve-v1/pools/3pool.ts +1 -1
- package/src/dex/curve-v1/pools/curve-pool.ts +3 -3
- package/src/dex/uniswap-v2/config.ts +10 -0
- package/src/dex/uniswap-v2/uniswap-v2-e2e-mainnet.test.ts +130 -0
- package/.idea/aws.xml +0 -17
- package/.idea/codeStyles/Project.xml +0 -19
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/inspectionProfiles/Project_Default.xml +0 -6
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/paraswap-dex-lib.iml +0 -9
- package/.idea/runConfigurations.xml +0 -10
- package/.idea/vcs.xml +0 -6
- package/build/dex/aave-v3/tokens/arbitrum.json +0 -50
- package/build/dex/aave-v3/tokens/avalanche.json +0 -74
- package/build/dex/aave-v3/tokens/fantom.json +0 -62
- package/build/dex/aave-v3/tokens/optimism.json +0 -50
- package/build/dex/aave-v3/tokens/polygon.json +0 -116
|
@@ -310,7 +310,7 @@ export class CurveV1 extends SimpleExchange implements IDex<CurveV1Data> {
|
|
|
310
310
|
}
|
|
311
311
|
}
|
|
312
312
|
|
|
313
|
-
// Makes
|
|
313
|
+
// Makes suer all the pools from poolAddress are being tracked. If a pool in not tracked yet
|
|
314
314
|
// fetch the state and setup the pool, if they are being watched but don't have a valid state
|
|
315
315
|
// add it to the list of unavailable pools. Return the list of unavailable pools.
|
|
316
316
|
async batchCatchUpPools(
|
|
@@ -330,12 +330,7 @@ export class CurveV1 extends SimpleExchange implements IDex<CurveV1Data> {
|
|
|
330
330
|
throw new Error(
|
|
331
331
|
`Error_${this.dexKey} requested unsupported event pool with address ${poolAddress}`,
|
|
332
332
|
);
|
|
333
|
-
|
|
334
|
-
const addressesSubscribed = newPool.addressesSubscribed.map((address) => address.toLowerCase());
|
|
335
|
-
if(!addressesSubscribed.includes(poolAddress)) {
|
|
336
|
-
newPool.addressesSubscribed.push(poolAddress);
|
|
337
|
-
}
|
|
338
|
-
|
|
333
|
+
newPool.addressesSubscribed = [poolAddress];
|
|
339
334
|
await newPool.initialize(blockNumber);
|
|
340
335
|
poolsToFetch.push(newPool);
|
|
341
336
|
} else if (!pool.getState(blockNumber)) {
|
|
@@ -508,7 +503,7 @@ export class CurveV1 extends SimpleExchange implements IDex<CurveV1Data> {
|
|
|
508
503
|
|
|
509
504
|
let fromIndex = curveIndexes[0];
|
|
510
505
|
let toIndex = curveIndexes[1];
|
|
511
|
-
let isTokenSwap = curveIndexes[2]
|
|
506
|
+
let isTokenSwap = curveIndexes[2] == 1;
|
|
512
507
|
|
|
513
508
|
let pool = this.getPoolByAddress(exchange);
|
|
514
509
|
if (!pool) {
|
|
@@ -6,7 +6,7 @@ import { Address, Log } from '../../../types';
|
|
|
6
6
|
import { StatefulEventSubscriber } from '../../../stateful-event-subscriber';
|
|
7
7
|
import { DeepReadonly } from 'ts-essentials';
|
|
8
8
|
// import { getManyPoolStates } from './getstate-multicall';
|
|
9
|
-
import { BN_0,
|
|
9
|
+
import { BN_0, BN_POWS } from '../../../bignumber-constants';
|
|
10
10
|
import { IDexHelper } from '../../../dex-helper';
|
|
11
11
|
import { erc20Iface } from '../../../lib/utils-interfaces';
|
|
12
12
|
import { bigNumberify, catchParseLogError, stringify } from '../../../utils';
|
|
@@ -323,7 +323,7 @@ export abstract class CurvePool extends StatefulEventSubscriber<PoolState> {
|
|
|
323
323
|
const xp = this._xp(rates, balances);
|
|
324
324
|
const x = xp[i].plus(dx.times(this.PRECISION_MUL[i]));
|
|
325
325
|
const y = this.get_y(i, j, x, xp, A);
|
|
326
|
-
const dy = xp[j].minus(y).
|
|
326
|
+
const dy = xp[j].minus(y).idiv(this.PRECISION_MUL[j]);
|
|
327
327
|
let _fee = fee.times(dy).idiv(this.FEE_DENOMINATOR);
|
|
328
328
|
if (!usefee) _fee = BN_0;
|
|
329
329
|
return dy.minus(_fee);
|
|
@@ -360,7 +360,7 @@ export abstract class CurvePool extends StatefulEventSubscriber<PoolState> {
|
|
|
360
360
|
const xp = this._xp(rates, balances);
|
|
361
361
|
const x = xp[i].plus(dx.times(rates[i]).idiv(this.PRECISION));
|
|
362
362
|
const y = this.get_y(i, j, x, xp, A);
|
|
363
|
-
const dy = xp[j].minus(y).
|
|
363
|
+
const dy = xp[j].minus(y).times(this.PRECISION).idiv(rates[j]);
|
|
364
364
|
let _fee = fee.times(dy).idiv(this.FEE_DENOMINATOR);
|
|
365
365
|
if (!usefee) _fee = BN_0;
|
|
366
366
|
return dy.minus(_fee);
|
|
@@ -666,6 +666,16 @@ export const UniswapV2Config: DexConfigMap<DexParams> = {
|
|
|
666
666
|
feeCode: 10,
|
|
667
667
|
},
|
|
668
668
|
},
|
|
669
|
+
Verse: {
|
|
670
|
+
[Network.MAINNET]: {
|
|
671
|
+
subgraphURL:
|
|
672
|
+
'https://api.thegraph.com/subgraphs/name/arnkthr/ethv1/graphql',
|
|
673
|
+
factoryAddress: '0xee3E9E46E34a27dC755a63e2849C9913Ee1A06E2',
|
|
674
|
+
initCode:
|
|
675
|
+
'0x34768b85d02b77066b16acc7f0875ed59566bb3c32ba4fb0438750e872fddf9e',
|
|
676
|
+
feeCode: 30,
|
|
677
|
+
},
|
|
678
|
+
},
|
|
669
679
|
ZipSwap: {
|
|
670
680
|
[Network.OPTIMISM]: {
|
|
671
681
|
subgraphURL: 'https://api.thegraph.com/subgraphs/name/nonamefits/zipswap',
|
|
@@ -879,6 +879,136 @@ describe('UniswapV2 E2E Mainnet', () => {
|
|
|
879
879
|
});
|
|
880
880
|
});
|
|
881
881
|
|
|
882
|
+
describe('Verse', () => {
|
|
883
|
+
const dexKey = 'Verse';
|
|
884
|
+
|
|
885
|
+
describe('Simpleswap', () => {
|
|
886
|
+
it('TOKEN -> ETH', async () => {
|
|
887
|
+
await testE2E(
|
|
888
|
+
tokens.USDT,
|
|
889
|
+
tokens.ETH,
|
|
890
|
+
holders.USDT,
|
|
891
|
+
'2000000',
|
|
892
|
+
SwapSide.SELL,
|
|
893
|
+
dexKey,
|
|
894
|
+
ContractMethod.simpleSwap,
|
|
895
|
+
network,
|
|
896
|
+
provider,
|
|
897
|
+
);
|
|
898
|
+
});
|
|
899
|
+
it('ETH -> TOKEN', async () => {
|
|
900
|
+
await testE2E(
|
|
901
|
+
tokens.ETH,
|
|
902
|
+
tokens.USDT,
|
|
903
|
+
holders.ETH,
|
|
904
|
+
'1000000000000000',
|
|
905
|
+
SwapSide.SELL,
|
|
906
|
+
dexKey,
|
|
907
|
+
ContractMethod.simpleSwap,
|
|
908
|
+
network,
|
|
909
|
+
provider,
|
|
910
|
+
);
|
|
911
|
+
});
|
|
912
|
+
it('TOKEN -> TOKEN', async () => {
|
|
913
|
+
await testE2E(
|
|
914
|
+
tokens.WETH,
|
|
915
|
+
tokens.USDT,
|
|
916
|
+
holders.WETH,
|
|
917
|
+
'100000000000000',
|
|
918
|
+
SwapSide.SELL,
|
|
919
|
+
dexKey,
|
|
920
|
+
ContractMethod.simpleSwap,
|
|
921
|
+
network,
|
|
922
|
+
provider,
|
|
923
|
+
);
|
|
924
|
+
});
|
|
925
|
+
});
|
|
926
|
+
|
|
927
|
+
describe('Multiswap', () => {
|
|
928
|
+
it('TOKEN -> ETH', async () => {
|
|
929
|
+
await testE2E(
|
|
930
|
+
tokens.USDT,
|
|
931
|
+
tokens.ETH,
|
|
932
|
+
holders.USDT,
|
|
933
|
+
'20000000',
|
|
934
|
+
SwapSide.SELL,
|
|
935
|
+
dexKey,
|
|
936
|
+
ContractMethod.multiSwap,
|
|
937
|
+
network,
|
|
938
|
+
provider,
|
|
939
|
+
);
|
|
940
|
+
});
|
|
941
|
+
it('ETH -> TOKEN', async () => {
|
|
942
|
+
await testE2E(
|
|
943
|
+
tokens.ETH,
|
|
944
|
+
tokens.USDT,
|
|
945
|
+
holders.ETH,
|
|
946
|
+
'1000000000000',
|
|
947
|
+
SwapSide.SELL,
|
|
948
|
+
dexKey,
|
|
949
|
+
ContractMethod.multiSwap,
|
|
950
|
+
network,
|
|
951
|
+
provider,
|
|
952
|
+
);
|
|
953
|
+
});
|
|
954
|
+
it('TOKEN -> TOKEN', async () => {
|
|
955
|
+
await testE2E(
|
|
956
|
+
tokens.USDC,
|
|
957
|
+
tokens.USDT,
|
|
958
|
+
holders.USDC,
|
|
959
|
+
'50000000',
|
|
960
|
+
SwapSide.SELL,
|
|
961
|
+
dexKey,
|
|
962
|
+
ContractMethod.multiSwap,
|
|
963
|
+
network,
|
|
964
|
+
provider,
|
|
965
|
+
);
|
|
966
|
+
});
|
|
967
|
+
});
|
|
968
|
+
|
|
969
|
+
describe('Megaswap', () => {
|
|
970
|
+
it('TOKEN -> ETH', async () => {
|
|
971
|
+
await testE2E(
|
|
972
|
+
tokens.USDT,
|
|
973
|
+
tokens.ETH,
|
|
974
|
+
holders.USDT,
|
|
975
|
+
'20000000',
|
|
976
|
+
SwapSide.SELL,
|
|
977
|
+
dexKey,
|
|
978
|
+
ContractMethod.megaSwap,
|
|
979
|
+
network,
|
|
980
|
+
provider,
|
|
981
|
+
);
|
|
982
|
+
});
|
|
983
|
+
it('ETH -> TOKEN', async () => {
|
|
984
|
+
await testE2E(
|
|
985
|
+
tokens.ETH,
|
|
986
|
+
tokens.USDT,
|
|
987
|
+
holders.ETH,
|
|
988
|
+
'1000000000000',
|
|
989
|
+
SwapSide.SELL,
|
|
990
|
+
dexKey,
|
|
991
|
+
ContractMethod.megaSwap,
|
|
992
|
+
network,
|
|
993
|
+
provider,
|
|
994
|
+
);
|
|
995
|
+
});
|
|
996
|
+
it('TOKEN -> TOKEN', async () => {
|
|
997
|
+
await testE2E(
|
|
998
|
+
tokens.USDC,
|
|
999
|
+
tokens.USDT,
|
|
1000
|
+
holders.USDC,
|
|
1001
|
+
'50000000',
|
|
1002
|
+
SwapSide.SELL,
|
|
1003
|
+
dexKey,
|
|
1004
|
+
ContractMethod.megaSwap,
|
|
1005
|
+
network,
|
|
1006
|
+
provider,
|
|
1007
|
+
);
|
|
1008
|
+
});
|
|
1009
|
+
});
|
|
1010
|
+
});
|
|
1011
|
+
|
|
882
1012
|
describe('ShibaSwap', () => {
|
|
883
1013
|
const dexKey = 'ShibaSwap';
|
|
884
1014
|
|
package/.idea/aws.xml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="accountSettings">
|
|
4
|
-
<option name="activeProfile" value="profile:default" />
|
|
5
|
-
<option name="activeRegion" value="us-east-1" />
|
|
6
|
-
<option name="recentlyUsedProfiles">
|
|
7
|
-
<list>
|
|
8
|
-
<option value="profile:default" />
|
|
9
|
-
</list>
|
|
10
|
-
</option>
|
|
11
|
-
<option name="recentlyUsedRegions">
|
|
12
|
-
<list>
|
|
13
|
-
<option value="us-east-1" />
|
|
14
|
-
</list>
|
|
15
|
-
</option>
|
|
16
|
-
</component>
|
|
17
|
-
</project>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<component name="ProjectCodeStyleConfiguration">
|
|
2
|
-
<code_scheme name="Project" version="173">
|
|
3
|
-
<ScalaCodeStyleSettings>
|
|
4
|
-
<option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
|
|
5
|
-
</ScalaCodeStyleSettings>
|
|
6
|
-
<TypeScriptCodeStyleSettings version="0">
|
|
7
|
-
<option name="SPACE_WITHIN_ARRAY_INITIALIZER_BRACKETS" value="true" />
|
|
8
|
-
<option name="USE_DOUBLE_QUOTES" value="false" />
|
|
9
|
-
<option name="SPACES_WITHIN_IMPORTS" value="true" />
|
|
10
|
-
</TypeScriptCodeStyleSettings>
|
|
11
|
-
<codeStyleSettings language="TypeScript">
|
|
12
|
-
<indentOptions>
|
|
13
|
-
<option name="INDENT_SIZE" value="2" />
|
|
14
|
-
<option name="CONTINUATION_INDENT_SIZE" value="2" />
|
|
15
|
-
<option name="TAB_SIZE" value="2" />
|
|
16
|
-
</indentOptions>
|
|
17
|
-
</codeStyleSettings>
|
|
18
|
-
</code_scheme>
|
|
19
|
-
</component>
|
package/.idea/misc.xml
DELETED
package/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/paraswap-dex-lib.iml" filepath="$PROJECT_DIR$/.idea/paraswap-dex-lib.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="JAVA_MODULE" version="4">
|
|
3
|
-
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
4
|
-
<exclude-output />
|
|
5
|
-
<content url="file://$MODULE_DIR$" />
|
|
6
|
-
<orderEntry type="inheritedJdk" />
|
|
7
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
8
|
-
</component>
|
|
9
|
-
</module>
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="RunConfigurationProducerService">
|
|
4
|
-
<option name="ignoredProducers">
|
|
5
|
-
<set>
|
|
6
|
-
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
|
|
7
|
-
</set>
|
|
8
|
-
</option>
|
|
9
|
-
</component>
|
|
10
|
-
</project>
|
package/.idea/vcs.xml
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"aSymbol": "aArbDAI",
|
|
4
|
-
"aAddress": "0x82E64f49Ed5EC1bC6e43DAD4FC8Af9bb3A2312EE",
|
|
5
|
-
"address": "0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",
|
|
6
|
-
"decimals": 18
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"aSymbol": "aArbEURS",
|
|
10
|
-
"aAddress": "0x6d80113e533a2C0fe82EaBD35f1875DcEA89Ea97",
|
|
11
|
-
"address": "0xd22a58f79e9481d1a88e00c343885a588b34b68b",
|
|
12
|
-
"decimals": 2
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"aSymbol": "aArbUSDC",
|
|
16
|
-
"aAddress": "0x625E7708f30cA75bfd92586e17077590C60eb4cD",
|
|
17
|
-
"address": "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8",
|
|
18
|
-
"decimals": 6
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"aSymbol": "aArbUSDT",
|
|
22
|
-
"aAddress": "0x6ab707aca953edaefbc4fd23ba73294241490620",
|
|
23
|
-
"address": "0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9",
|
|
24
|
-
"decimals": 6
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"aSymbol": "aArbAAVE",
|
|
28
|
-
"aAddress": "0xf329e36C7bF6E5E86ce2150875a84Ce77f477375",
|
|
29
|
-
"address": "0xba5ddd1f9d7f570dc94a51479a000e3bce967196",
|
|
30
|
-
"decimals": 18
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"aSymbol": "aArbLINK",
|
|
34
|
-
"aAddress": "0x191c10Aa4AF7C30e871E70C95dB0E4eb77237530",
|
|
35
|
-
"address": "0xf97f4df75117a78c1a5a0dbb814af92458539fb4",
|
|
36
|
-
"decimals": 18
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"aSymbol": "aArbWBTC",
|
|
40
|
-
"aAddress": "0x078f358208685046a11C85e8ad32895DED33A249",
|
|
41
|
-
"address": "0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f",
|
|
42
|
-
"decimals": 8
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"aSymbol": "aArbWETH",
|
|
46
|
-
"aAddress": "0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8",
|
|
47
|
-
"address": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1",
|
|
48
|
-
"decimals": 18
|
|
49
|
-
}
|
|
50
|
-
]
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"aSymbol": "aAvaDAI",
|
|
4
|
-
"aAddress": "0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee",
|
|
5
|
-
"address": "0xd586e7f844cea2f87f50152665bcbc2c279d8d70",
|
|
6
|
-
"decimals": 18
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"aSymbol": "aAvaFRAX",
|
|
10
|
-
"aAddress": "0xc45A479877e1e9Dfe9FcD4056c699575a1045dAA",
|
|
11
|
-
"address": "0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64",
|
|
12
|
-
"decimals": 18
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"aSymbol": "aAvaMAI",
|
|
16
|
-
"aAddress": "0x8Eb270e296023E9D92081fdF967dDd7878724424",
|
|
17
|
-
"address": "0x5c49b268c9841AFF1Cc3B0a418ff5c3442eE3F3b",
|
|
18
|
-
"decimals": 18
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"aSymbol": "aAvaUSDC",
|
|
22
|
-
"aAddress": "0x625e7708f30ca75bfd92586e17077590c60eb4cd",
|
|
23
|
-
"address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
|
|
24
|
-
"decimals": 6
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"aSymbol": "aAvaUSDT",
|
|
28
|
-
"aAddress": "0x6ab707aca953edaefbc4fd23ba73294241490620",
|
|
29
|
-
"address": "0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7",
|
|
30
|
-
"decimals": 6
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"aSymbol": "aAvaAAVE",
|
|
34
|
-
"aAddress": "0xf329e36c7bf6e5e86ce2150875a84ce77f477375",
|
|
35
|
-
"address": "0x63a72806098bd3d9520cc43356dd78afe5d386d9",
|
|
36
|
-
"decimals": 18
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"aSymbol": "aAvaBTC.b",
|
|
40
|
-
"aAddress": "0x8ffDf2DE812095b1D19CB146E4c004587C0A0692",
|
|
41
|
-
"address": "0x152b9d0FdC40C096757F570A51E494bd4b943E50",
|
|
42
|
-
"decimals": 8
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"aSymbol": "aAvaLINK",
|
|
46
|
-
"aAddress": "0x191c10aa4af7c30e871e70c95db0e4eb77237530",
|
|
47
|
-
"address": "0x5947bb275c521040051d82396192181b413227a3",
|
|
48
|
-
"decimals": 18
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"aSymbol": "aAvaSAVAX",
|
|
52
|
-
"aAddress": "0x513c7E3a9c69cA3e22550eF58AC1C0088e918FFf",
|
|
53
|
-
"address": "0x2b2C81e08f1Af8835a78Bb2A90AE924ACE0eA4bE",
|
|
54
|
-
"decimals": 18
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"aSymbol": "aAvaWAVAX",
|
|
58
|
-
"aAddress": "0x6d80113e533a2C0fe82EaBD35f1875DcEA89Ea97",
|
|
59
|
-
"address": "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",
|
|
60
|
-
"decimals": 18
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"aSymbol": "aAvaWBTC",
|
|
64
|
-
"aAddress": "0x078f358208685046a11c85e8ad32895ded33a249",
|
|
65
|
-
"address": "0x50b7545627a5162f82a992c33b87adc75187b218",
|
|
66
|
-
"decimals": 8
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"aSymbol": "aAvaWETH",
|
|
70
|
-
"aAddress": "0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8",
|
|
71
|
-
"address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
|
|
72
|
-
"decimals": 18
|
|
73
|
-
}
|
|
74
|
-
]
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"aSymbol": "aFanAAVE",
|
|
4
|
-
"aAddress": "0xf329e36c7bf6e5e86ce2150875a84ce77f477375",
|
|
5
|
-
"address": "0x6a07a792ab2965c72a5b8088d3a069a7ac3a993b",
|
|
6
|
-
"decimals": 18
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"aSymbol": "aFanDAI",
|
|
10
|
-
"aAddress": "0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee",
|
|
11
|
-
"address": "0x8d11ec38a3eb5e956b052f67da8bdc9bef8abf3e",
|
|
12
|
-
"decimals": 18
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"aSymbol": "aFanUSDT",
|
|
16
|
-
"aAddress": "0x6ab707aca953edaefbc4fd23ba73294241490620",
|
|
17
|
-
"address": "0x049d68029688eabf473097a2fc38ef61633a3c7a",
|
|
18
|
-
"decimals": 6
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"aSymbol": "aFanLINK",
|
|
22
|
-
"aAddress": "0x191c10aa4af7c30e871e70c95db0e4eb77237530",
|
|
23
|
-
"address": "0xb3654dc3d10ea7645f8319668e8f54d2574fbdc8",
|
|
24
|
-
"decimals": 18
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"aSymbol": "aFanWFTM",
|
|
28
|
-
"aAddress": "0x6d80113e533a2c0fe82eabd35f1875dcea89ea97",
|
|
29
|
-
"address": "0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83",
|
|
30
|
-
"decimals": 18
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"aSymbol": "aFanUSDC",
|
|
34
|
-
"aAddress": "0x625e7708f30ca75bfd92586e17077590c60eb4cd",
|
|
35
|
-
"address": "0x04068da6c83afcfa0e13ba15a6696662335d5b75",
|
|
36
|
-
"decimals": 6
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"aSymbol": "aFanWBTC",
|
|
40
|
-
"aAddress": "0x078f358208685046a11c85e8ad32895ded33a249",
|
|
41
|
-
"address": "0x321162cd933e2be498cd2267a90534a804051b11",
|
|
42
|
-
"decimals": 8
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"aSymbol": "aFanWETH",
|
|
46
|
-
"aAddress": "0xe50fa9b3c56ffb159cb0fca61f5c9d750e8128c8",
|
|
47
|
-
"address": "0x74b23882a30290451a17c44f4f05243b6b58c76d",
|
|
48
|
-
"decimals": 18
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
"aSymbol": "aFanCRV",
|
|
52
|
-
"aAddress": "0x513c7e3a9c69ca3e22550ef58ac1c0088e918fff",
|
|
53
|
-
"address": "0x1e4f97b9f9f913c46f1632781732927b9019c68b",
|
|
54
|
-
"decimals": 18
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
"aSymbol": "aFanSUSHI",
|
|
58
|
-
"aAddress": "0xc45a479877e1e9dfe9fcd4056c699575a1045daa",
|
|
59
|
-
"address": "0xae75a438b2e0cb8bb01ec1e1e376de11d44477cc",
|
|
60
|
-
"decimals": 18
|
|
61
|
-
}
|
|
62
|
-
]
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"aSymbol": "aOptDAI",
|
|
4
|
-
"aAddress": "0x82E64f49Ed5EC1bC6e43DAD4FC8Af9bb3A2312EE",
|
|
5
|
-
"address": "0xda10009cbd5d07dd0cecc66161fc93d7c9000da1",
|
|
6
|
-
"decimals": 18
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"aSymbol": "aOptSUSD",
|
|
10
|
-
"aAddress": "0x6d80113e533a2C0fe82EaBD35f1875DcEA89Ea97",
|
|
11
|
-
"address": "0x8c6f28f2f1a3c87f0f938b96d27520d9751ec8d9",
|
|
12
|
-
"decimals": 18
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
"aSymbol": "aOptUSDC",
|
|
16
|
-
"aAddress": "0x625E7708f30cA75bfd92586e17077590C60eb4cD",
|
|
17
|
-
"address": "0x7f5c764cbc14f9669b88837ca1490cca17c31607",
|
|
18
|
-
"decimals": 6
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"aSymbol": "aOptUSDT",
|
|
22
|
-
"aAddress": "0x6ab707aca953edaefbc4fd23ba73294241490620",
|
|
23
|
-
"address": "0x94b008aa00579c1307b0ef2c499ad98a8ce58e58",
|
|
24
|
-
"decimals": 6
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"aSymbol": "aOptAAVE",
|
|
28
|
-
"aAddress": "0xf329e36C7bF6E5E86ce2150875a84Ce77f477375",
|
|
29
|
-
"address": "0x76fb31fb4af56892a25e32cfc43de717950c9278",
|
|
30
|
-
"decimals": 18
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"aSymbol": "aOptLINK",
|
|
34
|
-
"aAddress": "0x191c10Aa4AF7C30e871E70C95dB0E4eb77237530",
|
|
35
|
-
"address": "0x350a791Bfc2C21F9Ed5d10980Dad2e2638ffa7f6",
|
|
36
|
-
"decimals": 18
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"aSymbol": "aOptWBTC",
|
|
40
|
-
"aAddress": "0x078f358208685046a11C85e8ad32895DED33A249",
|
|
41
|
-
"address": "0x68f180fcce6836688e9084f035309e29bf0a2095",
|
|
42
|
-
"decimals": 8
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"aSymbol": "aOptWETH",
|
|
46
|
-
"aAddress": "0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8",
|
|
47
|
-
"address": "0x4200000000000000000000000000000000000006",
|
|
48
|
-
"decimals": 18
|
|
49
|
-
}
|
|
50
|
-
]
|