@evaafi/sdk 0.7.0 → 0.9.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.
- package/dist/api/feeds.d.ts +30 -0
- package/dist/api/feeds.js +73 -0
- package/dist/api/liquidation.js +1 -1
- package/dist/api/math.js +1 -1
- package/dist/api/parser.d.ts +4 -2
- package/dist/api/parser.js +39 -18
- package/dist/api/parsers/AbstractOracleParser.d.ts +11 -0
- package/dist/api/parsers/AbstractOracleParser.js +9 -0
- package/dist/api/parsers/ClassicOracleParser.d.ts +10 -0
- package/dist/api/parsers/ClassicOracleParser.js +16 -0
- package/dist/api/parsers/PythOracleParser.d.ts +17 -0
- package/dist/api/parsers/PythOracleParser.js +22 -0
- package/dist/api/parsers/index.d.ts +3 -0
- package/dist/api/parsers/index.js +19 -0
- package/dist/api/prices.d.ts +6 -6
- package/dist/api/prices.js +37 -46
- package/dist/api/pyth.d.ts +16 -0
- package/dist/api/pyth.js +35 -0
- package/dist/constants/assets/assetId.d.ts +22 -0
- package/dist/constants/assets/assetId.js +29 -0
- package/dist/constants/assets/index.d.ts +3 -0
- package/dist/constants/assets/index.js +19 -0
- package/dist/constants/assets/mainnet.d.ts +19 -0
- package/dist/constants/assets/mainnet.js +114 -0
- package/dist/constants/assets/testnet.d.ts +14 -0
- package/dist/constants/assets/testnet.js +54 -0
- package/dist/constants/general/index.d.ts +65 -0
- package/dist/constants/general/index.js +93 -0
- package/dist/constants/general/mainnet.d.ts +24 -0
- package/dist/constants/general/mainnet.js +53 -0
- package/dist/constants/general/testnet.d.ts +12 -0
- package/dist/constants/general/testnet.js +15 -0
- package/dist/constants/general.d.ts +2 -2
- package/dist/constants/general.js +4 -4
- package/dist/constants/index.d.ts +3 -0
- package/dist/constants/index.js +19 -0
- package/dist/constants/pools/index.d.ts +2 -0
- package/dist/constants/pools/index.js +18 -0
- package/dist/constants/pools/mainnet.d.ts +14 -0
- package/dist/constants/pools/mainnet.js +145 -0
- package/dist/constants/pools/testnet.d.ts +9 -0
- package/dist/constants/pools/testnet.js +57 -0
- package/dist/constants/pools.js +7 -7
- package/dist/contracts/AbstractMaster.d.ts +185 -0
- package/dist/contracts/AbstractMaster.js +179 -0
- package/dist/contracts/ClassicMaster.d.ts +34 -0
- package/dist/contracts/ClassicMaster.js +87 -0
- package/dist/contracts/PythMaster.d.ts +61 -0
- package/dist/contracts/PythMaster.js +179 -0
- package/dist/contracts/UserContract.d.ts +1 -7
- package/dist/contracts/UserContract.js +1 -19
- package/dist/contracts/index.d.ts +5 -0
- package/dist/contracts/index.js +21 -0
- package/dist/index.d.ts +14 -14
- package/dist/index.js +20 -60
- package/dist/prices/Oracle.interface.d.ts +9 -0
- package/dist/prices/Oracle.interface.js +2 -0
- package/dist/prices/Prices.d.ts +5 -3
- package/dist/prices/Prices.js +13 -3
- package/dist/prices/PricesCollector.d.ts +17 -7
- package/dist/prices/PricesCollector.js +67 -51
- package/dist/prices/PythCollector.d.ts +22 -0
- package/dist/prices/PythCollector.js +217 -0
- package/dist/prices/Types.d.ts +17 -1
- package/dist/prices/Types.js +8 -1
- package/dist/prices/index.d.ts +4 -3
- package/dist/prices/index.js +4 -3
- package/dist/prices/sources/Backend.d.ts +5 -4
- package/dist/prices/sources/Backend.js +16 -13
- package/dist/prices/sources/Icp.d.ts +2 -1
- package/dist/prices/sources/Icp.js +12 -9
- package/dist/prices/sources/PriceSource.d.ts +7 -6
- package/dist/prices/utils.d.ts +10 -8
- package/dist/prices/utils.js +32 -46
- package/dist/types/Master.d.ts +10 -30
- package/dist/types/Master.js +3 -0
- package/dist/utils/userJettonWallet.js +0 -8
- package/dist/utils/utils.d.ts +8 -1
- package/dist/utils/utils.js +31 -2
- package/package.json +3 -2
- package/src/api/feeds.ts +90 -0
- package/src/api/liquidation.ts +1 -1
- package/src/api/math.ts +1 -1
- package/src/api/parser.ts +100 -38
- package/src/api/parsers/AbstractOracleParser.ts +16 -0
- package/src/api/parsers/ClassicOracleParser.ts +20 -0
- package/src/api/parsers/PythOracleParser.ts +34 -0
- package/src/api/parsers/index.ts +3 -0
- package/src/api/prices.ts +32 -41
- package/src/constants/assets/assetId.ts +30 -0
- package/src/constants/assets/index.ts +3 -0
- package/src/constants/{assets.ts → assets/mainnet.ts} +3 -96
- package/src/constants/assets/testnet.ts +74 -0
- package/src/constants/general/index.ts +91 -0
- package/src/constants/{general.ts → general/mainnet.ts} +48 -72
- package/src/constants/general/testnet.ts +25 -0
- package/src/constants/index.ts +3 -0
- package/src/constants/pools/index.ts +2 -0
- package/src/constants/pools/mainnet.ts +218 -0
- package/src/constants/pools/testnet.ts +75 -0
- package/src/contracts/AbstractMaster.ts +450 -0
- package/src/contracts/ClassicMaster.ts +149 -0
- package/src/contracts/PythMaster.ts +313 -0
- package/src/contracts/UserContract.ts +7 -28
- package/src/contracts/index.ts +7 -0
- package/src/index.ts +18 -85
- package/src/prices/Oracle.interface.ts +18 -0
- package/src/prices/Prices.ts +17 -4
- package/src/prices/PricesCollector.ts +91 -68
- package/src/prices/PythCollector.ts +294 -0
- package/src/prices/Types.ts +28 -6
- package/src/prices/index.ts +4 -3
- package/src/prices/sources/Backend.ts +21 -19
- package/src/prices/sources/Icp.ts +13 -10
- package/src/prices/sources/PriceSource.ts +6 -5
- package/src/prices/utils.ts +65 -68
- package/src/types/Master.ts +29 -52
- package/src/types/User.ts +15 -7
- package/src/utils/userJettonWallet.ts +0 -8
- package/src/utils/utils.ts +41 -2
- package/src/constants/pools.ts +0 -177
- package/src/contracts/MasterContract.ts +0 -410
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Address, Cell } from '@ton/core';
|
|
2
|
+
import { PoolAssetConfig } from '../../types/Master';
|
|
3
|
+
import { ASSET_ID } from '../assets';
|
|
4
|
+
import { JETTON_WALLET_STANDART_CODE_TESTNET, NULL_ADDRESS } from '../general';
|
|
5
|
+
|
|
6
|
+
export const TON_TESTNET: PoolAssetConfig = {
|
|
7
|
+
name: 'TON',
|
|
8
|
+
assetId: ASSET_ID.TON,
|
|
9
|
+
jettonMasterAddress: NULL_ADDRESS, // fake
|
|
10
|
+
jettonWalletCode: Cell.EMPTY,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const JUSDT_TESTNET: PoolAssetConfig = {
|
|
14
|
+
name: 'jUSDT',
|
|
15
|
+
assetId: ASSET_ID.jUSDT,
|
|
16
|
+
jettonMasterAddress: Address.parse('kQBe4gtSQMxM5RpMYLr4ydNY72F8JkY-icZXG1NJcsju8XM7'),
|
|
17
|
+
jettonWalletCode: JETTON_WALLET_STANDART_CODE_TESTNET,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const JUSDC_TESTNET: PoolAssetConfig = {
|
|
21
|
+
name: 'jUSDC',
|
|
22
|
+
assetId: ASSET_ID.jUSDC,
|
|
23
|
+
jettonMasterAddress: Address.parse('kQDaY5yUatYnHei73HBqRX_Ox9LK2XnR7XuCY9MFC2INbfYI'),
|
|
24
|
+
jettonWalletCode: JETTON_WALLET_STANDART_CODE_TESTNET,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const STTON_TESTNET: PoolAssetConfig = {
|
|
28
|
+
name: 'stTON',
|
|
29
|
+
assetId: ASSET_ID.stTON,
|
|
30
|
+
jettonMasterAddress: Address.parse('kQC3Duw3dg8k98xf5S7Bm7YOWVJ5QW8hm3iLqFfJfa_g9h07'),
|
|
31
|
+
jettonWalletCode: Cell.fromBoc(
|
|
32
|
+
Buffer.from(
|
|
33
|
+
'b5ee9c7201021201000362000114ff00f4a413f4bcf2c80b0102016202030202cc0405001ba0f605da89a1f401f481f481a8610201d40607020120090a01cf0831c02497c138007434c0c05c6c2544d7c0fc03383e903e900c7e800c5c75c87e800c7e800c1cea6d0000b4c7c8608403e29fa96ea54c4d167c027808608405e351466ea58c511100fc02b80860841657c1ef2ea54c4d167c02f80517c1300138c08c2103fcbc200800113e910c30003cb85360007ced44d0fa00fa40fa40d43010235f03018208989680a16d801072226eb32091719170e203c8cb055006cf165004fa02cb6a039358cc019130e201c901fb000201200b0c0081d40106b90f6a2687d007d207d206a1802698f90c1080bc6a28cdd0141083deecbef5d0958f97064699f98fd001809d02811e428027d012c678b00e78b6664f6aa401f1503d33ffa00fa4021f001ed44d0fa00fa40fa40d4305136a1522ac705f2e2c128c2fff2e2c254344270542013541403c85004fa0258cf1601cf16ccc922c8cb0112f400f400cb00c920f9007074c8cb02ca07cbffc9d004fa40f40431fa0020d749c200f2e2c4778018c8cb055008cf1670fa0217cb6b13cc80d0201200e0f009e8210178d4519c8cb1f19cb3f5007fa0222cf165006cf1625fa025003cf16c95005cc2391729171e25008a813a0820a625a00a014bcf2e2c504c98040fb001023c85004fa0258cf1601cf16ccc9ed5402f73b51343e803e903e90350c0234cffe80145468017e903e9014d6f1c1551cdb5c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c0327e401c1d3232c0b281f2fff274140371c1472c7cb8b0c2be80146a2860822625a019ad8228608239387028062849e5c412440e0dd7c138c34975c2c060101100c90c3b51343e803e903e90350c01b4cffe800c145128548df1c17cb8b04970bffcb8b0812082e4e1c02fbcb8b160841ef765f7b232c7c532cfd63e808873c5b25c60063232c14933c59c3e80b2dab33260103ec01004f214013e809633c58073c5b3327b552000705279a018a182107362d09cc8cb1f5230cb3f58fa025007cf165007cf16c9718010c8cb0524cf165006fa0215cb6a14ccc971fb0010241023007cc30023c200b08e218210d53276db708010c8cb055008cf165004fa0216cb6a12cb1f12cb3fc972fb0093356c21e203c85004fa0258cf1601cf16ccc9ed54',
|
|
34
|
+
'hex',
|
|
35
|
+
),
|
|
36
|
+
)[0],
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const TGBTC_TESTNET: PoolAssetConfig = {
|
|
40
|
+
name: 'tgBTC',
|
|
41
|
+
assetId: ASSET_ID.tgBTC,
|
|
42
|
+
jettonMasterAddress: Address.parse('kQDoy1cUAbGq253vwfoPcqSloODVAWkDBniR12PJFUHnK6Yf'),
|
|
43
|
+
jettonWalletCode: Cell.fromBoc(
|
|
44
|
+
Buffer.from(
|
|
45
|
+
'b5ee9c72010210010003ac000114ff00f4a413f4bcf2c80b01020162020302f8d001d0d3030171b08e48135f038020d721ed44d0d303fa00fa40fa40d104d31f01840f218210178d4519ba0282107bdd97deba12b1f2f48040d721fa003012a0401303c8cb0358fa0201cf1601cf16c9ed54e0fa40fa4031fa0031f401fa0031fa00013170f83a02d31f012082100f8a7ea5ba8e85303459db3ce03304050201200e0f01f603d33f0101fa00fa4021fa4430c000f2e14ded44d0d303fa00fa40fa40d1521ac705f2e0495115a120c2fff2aff82a54259070546004131503c8cb0358fa0201cf1601cf16c921c8cb0113f40012f400cb00c920f9007074c8cb02ca07cbffc9d004fa40f401fa002020d70b009ad74bc00101c001b0f2b19130e206025c228210178d4519ba8e84325adb3ce034218210595f07bcba8e843101db3ce0135f038210d372158cbadc840ff2f008090174c88210178d451901cb1f500a01cb3f5008fa0223cf1601cf1626fa025007cf16c9c8801801cb055004cf1670fa024063775003cb6bccccc945370700bc2191729171e2f839206e938123289120e2216e94318127109101e2f82f5005a05023a812a0738103a370f83ca00170f836a00170f836a07381040982100966018070f837a0bcf2b0048050fb005803c8cb0358fa0201cf1601cf16c9ed5403e6ed44d0d303fa00fa40fa40d107d33f0101fa005141a004fa40fa4053bac705f82a5464e070546004131503c8cb0358fa0201cf1601cf16c921c8cb0113f40012f400cb00c9f9007074c8cb02ca07cbffc9d0500cc7051bb1f2e04a09fa0021925f04e30d26d70b01c000b393306c33e30d55020a0b0c01d2ed44d0d303fa00fa40fa40d106d33f0101fa00fa40f404d120206ef271d0d74bc000018100f8beb0f2b15152a15249c705f2e04927c2fff2afc882107bdd97de01cb1f500301cb3f01fa0222cf1601cf1612f400c9c8801801cb0526cf1670fa02017158cb6accc9030d0060c882107362d09c01cb1f2501cb3f5004fa0258cf1658cf16c9c8801001cb0524cf1658fa02017158cb6accc98011fb00007a5054a1f82fa07381040982100966018070f837b60972fb02c8801001cb055005cf1670fa027001cb6a8210d53276db01cb1f5801cb3fc9810082fb0059002003c8cb0358fa0201cf1601cf16c9ed54006cf839206e9430811770de728106f170f8380170f836a0811b5870f836a0bcf2b0028050fb000303c8cb0358fa0201cf1601cf16c9ed540027bfd8176a2686981fd007d207d206899fc15209840021bc508f6a2686981fd007d207d2068af81c',
|
|
46
|
+
'hex',
|
|
47
|
+
),
|
|
48
|
+
)[0],
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @description faucet t.me/evaabuidl
|
|
53
|
+
*/
|
|
54
|
+
export const EUSDT_TESTNET: PoolAssetConfig = {
|
|
55
|
+
name: 'EUSDT',
|
|
56
|
+
assetId: ASSET_ID.EUSDT,
|
|
57
|
+
jettonMasterAddress: Address.parse('kQBe4gtSQMxM5RpMYLr4ydNY72F8JkY-icZXG1NJcsju8XM7'),
|
|
58
|
+
jettonWalletCode: Cell.fromBoc(
|
|
59
|
+
Buffer.from(
|
|
60
|
+
'b5ee9c7201021101000323000114ff00f4a413f4bcf2c80b0102016202030202cc0405001ba0f605da89a1f401f481f481a8610201d40607020120080900c30831c02497c138007434c0c05c6c2544d7c0fc03383e903e900c7e800c5c75c87e800c7e800c1cea6d0000b4c7e08403e29fa954882ea54c4d167c0278208405e3514654882ea58c511100fc02b80d60841657c1ef2ea4d67c02f817c12103fcbc2000113e910c1c2ebcb853600201200a0b0083d40106b90f6a2687d007d207d206a1802698fc1080bc6a28ca9105d41083deecbef09dd0958f97162e99f98fd001809d02811e428027d012c678b00e78b6664f6aa401f1503d33ffa00fa4021f001ed44d0fa00fa40fa40d4305136a1522ac705f2e2c128c2fff2e2c254344270542013541403c85004fa0258cf1601cf16ccc922c8cb0112f400f400cb00c920f9007074c8cb02ca07cbffc9d004fa40f40431fa0020d749c200f2e2c4778018c8cb055008cf1670fa0217cb6b13cc80c0201200d0e009e8210178d4519c8cb1f19cb3f5007fa0222cf165006cf1625fa025003cf16c95005cc2391729171e25008a813a08209c9c380a014bcf2e2c504c98040fb001023c85004fa0258cf1601cf16ccc9ed5402f73b51343e803e903e90350c0234cffe80145468017e903e9014d6f1c1551cdb5c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c0327e401c1d3232c0b281f2fff274140371c1472c7cb8b0c2be80146a2860822625a019ad822860822625a028062849e5c412440e0dd7c138c34975c2c0600f1000d73b51343e803e903e90350c01f4cffe803e900c145468549271c17cb8b049f0bffcb8b08160824c4b402805af3cb8b0e0841ef765f7b232c7c572cfd400fe8088b3c58073c5b25c60063232c14933c59c3e80b2dab33260103ec01004f214013e809633c58073c5b3327b552000705279a018a182107362d09cc8cb1f5230cb3f58fa025007cf165007cf16c9718010c8cb0524cf165006fa0215cb6a14ccc971fb0010241023007cc30023c200b08e218210d53276db708010c8cb055008cf165004fa0216cb6a12cb1f12cb3fc972fb0093356c21e203c85004fa0258cf1601cf16ccc9ed54',
|
|
61
|
+
'hex',
|
|
62
|
+
),
|
|
63
|
+
)[0],
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* @description faucet t.me/evaabuidl
|
|
68
|
+
*/
|
|
69
|
+
export const EUSDC_TESTNET: PoolAssetConfig = {
|
|
70
|
+
name: 'EUSDC',
|
|
71
|
+
assetId: ASSET_ID.EUSDC,
|
|
72
|
+
jettonMasterAddress: Address.parse('kQDaY5yUatYnHei73HBqRX_Ox9LK2XnR7XuCY9MFC2INbfYI'),
|
|
73
|
+
jettonWalletCode: JETTON_WALLET_STANDART_CODE_TESTNET,
|
|
74
|
+
};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { Address, toNano } from '@ton/core';
|
|
2
|
+
|
|
3
|
+
export * from './mainnet';
|
|
4
|
+
export * from './testnet';
|
|
5
|
+
|
|
6
|
+
export const NULL_ADDRESS = Address.parse('UQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKZ');
|
|
7
|
+
|
|
8
|
+
export const ASSET_PRICE_SCALE = BigInt(1e9);
|
|
9
|
+
|
|
10
|
+
export const MASTER_CONSTANTS = {
|
|
11
|
+
FACTOR_SCALE: BigInt(1e12),
|
|
12
|
+
ASSET_COEFFICIENT_SCALE: 10000n,
|
|
13
|
+
ASSET_PRICE_SCALE,
|
|
14
|
+
ASSET_RESERVE_FACTOR_SCALE: 10000n,
|
|
15
|
+
ASSET_LIQUIDATION_RESERVE_FACTOR_SCALE: 10000n,
|
|
16
|
+
ASSET_ORIGINATION_FEE_SCALE: BigInt(1e9),
|
|
17
|
+
ASSET_LIQUIDATION_THRESHOLD_SCALE: 10_000n,
|
|
18
|
+
ASSET_LIQUIDATION_BONUS_SCALE: 10_000n,
|
|
19
|
+
ASSET_SRATE_SCALE: BigInt(1e12),
|
|
20
|
+
ASSET_BRATE_SCALE: BigInt(1e12),
|
|
21
|
+
COLLATERAL_WORTH_THRESHOLD: 100n * ASSET_PRICE_SCALE, // literally 100$
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export const OPCODES = {
|
|
25
|
+
// General
|
|
26
|
+
ONCHAIN_GETTER: 0x9998,
|
|
27
|
+
|
|
28
|
+
// Supply
|
|
29
|
+
SUPPLY_MASTER: 0x1,
|
|
30
|
+
SUPPLY_USER: 0x11,
|
|
31
|
+
SUPPLY_SUCCESS: 0x11a,
|
|
32
|
+
SUPPLY_FAIL: 0x11f,
|
|
33
|
+
SUPPLY_EXCESS: 0x11ae,
|
|
34
|
+
SUPPLY_SUCCESS_AND_REPAY_REMAININGS: 0x11ab,
|
|
35
|
+
SUPPLY_FAIL_EXCESS: 0x11ae1,
|
|
36
|
+
SUPPLY_FAIL_REVERT: 0x11ae2,
|
|
37
|
+
|
|
38
|
+
// Liquidate
|
|
39
|
+
LIQUIDATE_MASTER: 0x3,
|
|
40
|
+
LIQUIDATE_MASTER_JETTON_PROCESS: 0x32,
|
|
41
|
+
LIQUIDATE_USER: 0x31,
|
|
42
|
+
LIQUIDATE_UNSATISFIED: 0x31f,
|
|
43
|
+
LIQUIDATE_SATISFIED: 0x311,
|
|
44
|
+
LIQUIDATE_SUCCESS: 0x311a,
|
|
45
|
+
LIQUIDATE_SUCCESS_REPORT: 0x311d,
|
|
46
|
+
LIQUIDATE_FAIL: 0x311f,
|
|
47
|
+
LIQUIDATE_FAIL_REVERT: 0x211fe91,
|
|
48
|
+
|
|
49
|
+
// Supply & Withdraw
|
|
50
|
+
SUPPLY_WITHDRAW_MASTER: 0x4,
|
|
51
|
+
SUPPLY_WITHDRAW_MASTER_WITHOUT_PRICES: 0x401,
|
|
52
|
+
SUPPLY_WITHDRAW_MASTER_JETTON: 0x42,
|
|
53
|
+
SUPPLY_WITHDRAW_USER: 0x41,
|
|
54
|
+
SUPPLY_WITHDRAW_SATISFIED: 0x411,
|
|
55
|
+
SUPPLY_WITHDRAW_SATISFIED_AND_REPAY_REMAININGS: 0x411b,
|
|
56
|
+
SUPPLY_WITHDRAW_UNSATISFIED: 0x41f,
|
|
57
|
+
SUPPLY_WITHDRAW_FAIL: 0x411f,
|
|
58
|
+
SUPPLY_WITHDRAW_SUCCESS: 0x411a,
|
|
59
|
+
|
|
60
|
+
// Reward
|
|
61
|
+
REWARD_CLAIM: 0x2,
|
|
62
|
+
REWARD_TON_TOP_UP: 0x7362d09c,
|
|
63
|
+
REWARD_JETTON_MINT: 0x178d4519,
|
|
64
|
+
REWARD_JETTON_TRANSFER: 0x0f8a7ea5,
|
|
65
|
+
|
|
66
|
+
// TEP's
|
|
67
|
+
JETTON_TRANSFER: 0xf8a7ea5,
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export const FEES = {
|
|
71
|
+
// General
|
|
72
|
+
JETTON_FWD: toNano('0.05'),
|
|
73
|
+
|
|
74
|
+
// Supply
|
|
75
|
+
SUPPLY: toNano('0.25'),
|
|
76
|
+
|
|
77
|
+
// Supply & Withdraw
|
|
78
|
+
SUPPLY_WITHDRAW: toNano('0.45'),
|
|
79
|
+
|
|
80
|
+
// Liquidation
|
|
81
|
+
LIQUIDATION: toNano('0.8'),
|
|
82
|
+
LIQUIDATION_JETTON: toNano('1'),
|
|
83
|
+
LIQUIDATION_JETTON_FWD: toNano('0.8'),
|
|
84
|
+
|
|
85
|
+
// Reward
|
|
86
|
+
REWARD_MASTER_TON_TOP_UP: toNano('0.03'),
|
|
87
|
+
REWARD_MASTER_DEPLOY: toNano('0.05'),
|
|
88
|
+
REWARD_MASTER_WITHDRAW: toNano('0.1'),
|
|
89
|
+
REWARD_USER_DEPLOY: toNano('0.05'),
|
|
90
|
+
REWARD_USER_CLAIM: toNano('0.1'),
|
|
91
|
+
};
|
|
@@ -1,53 +1,60 @@
|
|
|
1
|
-
import { Address, Cell
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
const ASSET_PRICE_SCALE = BigInt(1e9);
|
|
5
|
-
|
|
6
|
-
export const MASTER_CONSTANTS = {
|
|
7
|
-
FACTOR_SCALE: BigInt(1e12),
|
|
8
|
-
ASSET_COEFFICIENT_SCALE: 10000n,
|
|
9
|
-
ASSET_PRICE_SCALE,
|
|
10
|
-
ASSET_RESERVE_FACTOR_SCALE: 10000n,
|
|
11
|
-
ASSET_LIQUIDATION_RESERVE_FACTOR_SCALE: 10000n,
|
|
12
|
-
ASSET_ORIGINATION_FEE_SCALE: BigInt(1e9),
|
|
13
|
-
ASSET_LIQUIDATION_THRESHOLD_SCALE: 10_000n,
|
|
14
|
-
ASSET_LIQUIDATION_BONUS_SCALE: 10_000n,
|
|
15
|
-
ASSET_SRATE_SCALE: BigInt(1e12),
|
|
16
|
-
ASSET_BRATE_SCALE: BigInt(1e12),
|
|
17
|
-
COLLATERAL_WORTH_THRESHOLD: 100n * ASSET_PRICE_SCALE, // literally 100$
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export const NULL_ADDRESS = Address.parse('UQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKZ');
|
|
1
|
+
import { Address, Cell } from '@ton/core';
|
|
2
|
+
import { ExtendedEvaaOracle } from '../../types/Master';
|
|
21
3
|
|
|
4
|
+
/* MAIN POOL */
|
|
22
5
|
export const EVAA_MASTER_MAINNET = Address.parse('EQC8rUZqR_pWV1BylWUlPNBzyiTYVoBEmQkMIQDZXICfnuRr');
|
|
23
|
-
export const MAINNET_VERSION =
|
|
24
|
-
|
|
25
|
-
|
|
6
|
+
export const MAINNET_VERSION = 9;
|
|
7
|
+
|
|
8
|
+
/* LP POOL */
|
|
26
9
|
export const EVAA_LP_MAINNET = Address.parse('EQBIlZX2URWkXCSg3QF2MJZU-wC5XkBoLww-hdWk2G37Jc6N');
|
|
27
|
-
export const EVAA_LP_MAINNET_VERSION =
|
|
10
|
+
export const EVAA_LP_MAINNET_VERSION = 5;
|
|
11
|
+
|
|
12
|
+
/* ALTS POOL */
|
|
28
13
|
export const EVAA_ALTS_MAINNET = Address.parse('EQANURVS3fhBO9bivig34iyJQi97FhMbpivo1aUEAS2GYSu-');
|
|
29
|
-
export const EVAA_ALTS_MAINNET_VERSION =
|
|
14
|
+
export const EVAA_ALTS_MAINNET_VERSION = 3;
|
|
15
|
+
|
|
16
|
+
/* STABLE POOL */
|
|
30
17
|
export const EVAA_STABLE_MAINNET = Address.parse('EQCdIdXf1kA_2Hd9mbGzSFDEPA-Px-et8qTWHEXgRGo0K3zd');
|
|
31
|
-
export const STABLE_VERSION =
|
|
18
|
+
export const STABLE_VERSION = 1;
|
|
19
|
+
|
|
20
|
+
/* EVAA V8 Trail of Bits Audited Pool */
|
|
21
|
+
export const EVAA_TOB_MAINNET = Address.parse('EQDrSGBBunrWNmIdHgdaA7Weu4yUr8Ckw3C9wNWobq7osn3H');
|
|
22
|
+
export const EVAA_TOB_VERSION = 0;
|
|
32
23
|
|
|
33
|
-
|
|
34
|
-
export const
|
|
24
|
+
/* EVAA V8 PYTH Trail of Bits Audited Pool */
|
|
25
|
+
export const EVAA_PYTH_TOB_MAINNET = Address.parse('EQCsOdQPDO1Xndzutn9dDcloolWo1wHKICMz2jHL6UP8smcV');
|
|
26
|
+
export const EVAA_PYTH_TOB_VERSION = 0;
|
|
35
27
|
|
|
36
|
-
export const EVAA_REWARDS_MASTER_TESTNET = Address.parse('EQCnp0iRGcfDJAvnKhAEN9sB-nPYSPuc83Ff4y75s8AtoSW1');
|
|
37
28
|
export const EVAA_USDT_REWARDS_MASTER_MAINNET = Address.parse('EQD22Fhylp1tX-xoVX81aMTSJNPV8j9klwApTLgjGmofISVD');
|
|
38
29
|
export const EVAA_TON_REWARDS_MASTER_MAINNET = Address.parse('EQDM_gdrntBg4fy5Rg9DgDF0AUu3FYoqxHEOsHNIC4_DTDuC');
|
|
39
30
|
|
|
40
|
-
export const ORACLES_MAINNET:
|
|
41
|
-
{
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
31
|
+
export const ORACLES_MAINNET: ExtendedEvaaOracle[] = [
|
|
32
|
+
{
|
|
33
|
+
id: 0,
|
|
34
|
+
address: '0xd3a8c0b9fd44fd25a49289c631e3ac45689281f2f8cf0744400b4c65bed38e5d',
|
|
35
|
+
pubkey: Buffer.from('b404f4a2ebb62f2623b370c89189748a0276c071965b1646b996407f10d72eb9', 'hex'),
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
id: 1,
|
|
39
|
+
address: '0x2c21cabdaa89739de16bde7bc44e86401fac334a3c7e55305fe5e7563043e191',
|
|
40
|
+
pubkey: Buffer.from('9ad115087520d91b6b45d6a8521eb4616ee6914af07fabdc2e9d1826dbb17078', 'hex'),
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
id: 2,
|
|
44
|
+
address: '0x2eb258ce7b5d02466ab8a178ad8b0ba6ffa7b58ef21de3dc3b6dd359a1e16af0',
|
|
45
|
+
pubkey: Buffer.from('e503e02e8a9226b34e7c9deb463cbf7f19bce589362eb448a69a8ee7b2fca631', 'hex'),
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
id: 3,
|
|
49
|
+
address: '0xf9a0769954b4430bca95149fb3d876deb7799d8f74852e0ad4ccc5778ce68b52',
|
|
50
|
+
pubkey: Buffer.from('9cbf8374cf1f2cf17110134871d580198416e101683f4a61f54cf2a3e4e32070', 'hex'),
|
|
51
|
+
},
|
|
45
52
|
];
|
|
46
53
|
|
|
47
|
-
export const
|
|
54
|
+
export const PYTH_ORACLE_MAINNET: Address = Address.parse('EQBU6k8HH6yX4Jf3d18swWbnYr31D3PJI7PgjXT-flsKHqql');
|
|
48
55
|
|
|
49
|
-
export const ORACLES_LP:
|
|
50
|
-
export const ORACLES_ALTS:
|
|
56
|
+
export const ORACLES_LP: ExtendedEvaaOracle[] = ORACLES_MAINNET;
|
|
57
|
+
export const ORACLES_ALTS: ExtendedEvaaOracle[] = ORACLES_MAINNET;
|
|
51
58
|
|
|
52
59
|
export const LENDING_CODE = Cell.fromBoc(
|
|
53
60
|
Buffer.from(
|
|
@@ -57,50 +64,19 @@ export const LENDING_CODE = Cell.fromBoc(
|
|
|
57
64
|
)[0];
|
|
58
65
|
|
|
59
66
|
export const JETTON_WALLET_STANDART_CODE = Cell.fromBase64(
|
|
60
|
-
'te6cckECEwEAA4UAART/APSkE/S88sgLAQIBYgIDAgLLBAUAG6D2BdqJofQB9IH0gamjAgHOBgcCAVgKCwL3CDHAJJfBOAB0NMDAXGwlRNfA/Ad4PpA+kAx+gAxcdch+gAx+gAwc6m0AALTHwHbPFsyNDQ0JIIQD4p+pbqaMGwiNl4xECPwGuAkghAXjUUZupswbCJeMhAkQwDwG+A3WzaCEFlfB7y6nwJxsPLSwFAjuvLixgHwHOBfBYAgJABE+kQwwADy4U2AAXIBP+DMgbpUwgLH4M94gbvLSmtDTBzHT/9P/9ATTB9Qw0PoA+gD6APoA+gD6ADAACIQP8vACAVgMDQIBSBESAfcBdM/AQH6APpAIfAB7UTQ+gD6QPpA1NFRNqFSLMcF8uLBKsL/8uLCVDRCcFQgE1QUA8hQBPoCWM8WAc8WzMkiyMsBEvQA9ADLAMkgcAH5AHTIywISygfL/8nQBPpA9AQx+gAg10nCAPLixMiAGAHLBVAHzxZw+gJ3ActrgDgLzO1E0PoA+kD6QNTRCtM/AQH6AFFRoAX6QPpAU13HBVRzb3BUIBNUFAPIUAT6AljPFgHPFszJIsjLARL0APQAywDJcAH5AHTIywISygfL/8nQUA/HBR6x8uLDDPoAUcqhKbYIGaFQB6AYoSaSbFXjDSXXCwHDACHCALCAPEACqE8zIghAXjUUZWAoCyx/LP1AH+gIizxZQBs8WJfoCUAPPFslQBcwjkXKRceJQB6gToAiqAFAEoBegFLzy4sUByYBA+wBDAMhQBPoCWM8WAc8WzMntVAByUmmgGKHIghBzYtCcKQLLH8s/UAf6AlAEzxZQB88WyciAEAHLBSfPFlAE+gJxActqE8zJcfsAUEITAHSOI8iAEAHLBVAGzxZQBfoCcAHLaoIQ1TJ221gFAssfyz/JcvsAklsz4kADyFAE+gJYzxYBzxbMye1UAOs7UTQ+gD6QPpA1NEF0z8BAfoAIcIA8uLC+kD0BAHQ05/RAdFRYqFSWMcF8uLBJsL/8uLCyIIQe92X3lgEAssfyz8B+gIjzxYBzxYTy5/JyIAYAcsFI88WcPoCcQHLaszJgED7AEATyFAE+gJYzxYBzxbMye1UgAIcgCDXIe1E0PoA+kD6QNTRBNMfAYQPIYIQF41FGboCghB73ZfeuhKx8vTTPwEw+gAwE6BQI8hQBPoCWM8WAc8WzMntVINjFu1o='
|
|
61
|
-
|
|
62
|
-
export const JETTON_WALLET_STANDART_CODE_TESTNET = Cell.fromBase64(
|
|
63
|
-
'te6cckECEQEAAyMAART/APSkE/S88sgLAQIBYgIDAgLMBAUAG6D2BdqJofQB9IH0gahhAgHUBgcCASAICQDDCDHAJJfBOAB0NMDAXGwlRNfA/AM4PpA+kAx+gAxcdch+gAx+gAwc6m0AALTH4IQD4p+pVIgupUxNFnwCeCCEBeNRRlSILqWMUREA/AK4DWCEFlfB7y6k1nwC+BfBIQP8vCAAET6RDBwuvLhTYAIBIAoLAIPUAQa5D2omh9AH0gfSBqGAJpj8EIC8aijKkQXUEIPe7L7wndCVj5cWLpn5j9ABgJ0CgR5CgCfQEsZ4sA54tmZPaqQB8VA9M/+gD6QCHwAe1E0PoA+kD6QNQwUTahUirHBfLiwSjC//LiwlQ0QnBUIBNUFAPIUAT6AljPFgHPFszJIsjLARL0APQAywDJIPkAcHTIywLKB8v/ydAE+kD0BDH6ACDXScIA8uLEd4AYyMsFUAjPFnD6AhfLaxPMgMAgEgDQ4AnoIQF41FGcjLHxnLP1AH+gIizxZQBs8WJfoCUAPPFslQBcwjkXKRceJQCKgToIIJycOAoBS88uLFBMmAQPsAECPIUAT6AljPFgHPFszJ7VQC9ztRND6APpA+kDUMAjTP/oAUVGgBfpA+kBTW8cFVHNtcFQgE1QUA8hQBPoCWM8WAc8WzMkiyMsBEvQA9ADLAMn5AHB0yMsCygfL/8nQUA3HBRyx8uLDCvoAUaihggiYloBmtgihggiYloCgGKEnlxBJEDg3XwTjDSXXCwGAPEADXO1E0PoA+kD6QNQwB9M/+gD6QDBRUaFSSccF8uLBJ8L/8uLCBYIJMS0AoBa88uLDghB73ZfeyMsfFcs/UAP6AiLPFgHPFslxgBjIywUkzxZw+gLLaszJgED7AEATyFAE+gJYzxYBzxbMye1UgAHBSeaAYoYIQc2LQnMjLH1Iwyz9Y+gJQB88WUAfPFslxgBDIywUkzxZQBvoCFctqFMzJcfsAECQQIwB8wwAjwgCwjiGCENUydttwgBDIywVQCM8WUAT6AhbLahLLHxLLP8ly+wCTNWwh4gPIUAT6AljPFgHPFszJ7VSV6u3X');
|
|
67
|
+
'te6cckECEwEAA4UAART/APSkE/S88sgLAQIBYgIDAgLLBAUAG6D2BdqJofQB9IH0gamjAgHOBgcCAVgKCwL3CDHAJJfBOAB0NMDAXGwlRNfA/Ad4PpA+kAx+gAxcdch+gAx+gAwc6m0AALTHwHbPFsyNDQ0JIIQD4p+pbqaMGwiNl4xECPwGuAkghAXjUUZupswbCJeMhAkQwDwG+A3WzaCEFlfB7y6nwJxsPLSwFAjuvLixgHwHOBfBYAgJABE+kQwwADy4U2AAXIBP+DMgbpUwgLH4M94gbvLSmtDTBzHT/9P/9ATTB9Qw0PoA+gD6APoA+gD6ADAACIQP8vACAVgMDQIBSBESAfcBdM/AQH6APpAIfAB7UTQ+gD6QPpA1NFRNqFSLMcF8uLBKsL/8uLCVDRCcFQgE1QUA8hQBPoCWM8WAc8WzMkiyMsBEvQA9ADLAMkgcAH5AHTIywISygfL/8nQBPpA9AQx+gAg10nCAPLixMiAGAHLBVAHzxZw+gJ3ActrgDgLzO1E0PoA+kD6QNTRCtM/AQH6AFFRoAX6QPpAU13HBVRzb3BUIBNUFAPIUAT6AljPFgHPFszJIsjLARL0APQAywDJcAH5AHTIywISygfL/8nQUA/HBR6x8uLDDPoAUcqhKbYIGaFQB6AYoSaSbFXjDSXXCwHDACHCALCAPEACqE8zIghAXjUUZWAoCyx/LP1AH+gIizxZQBs8WJfoCUAPPFslQBcwjkXKRceJQB6gToAiqAFAEoBegFLzy4sUByYBA+wBDAMhQBPoCWM8WAc8WzMntVAByUmmgGKHIghBzYtCcKQLLH8s/UAf6AlAEzxZQB88WyciAEAHLBSfPFlAE+gJxActqE8zJcfsAUEITAHSOI8iAEAHLBVAGzxZQBfoCcAHLaoIQ1TJ221gFAssfyz/JcvsAklsz4kADyFAE+gJYzxYBzxbMye1UAOs7UTQ+gD6QPpA1NEF0z8BAfoAIcIA8uLC+kD0BAHQ05/RAdFRYqFSWMcF8uLBJsL/8uLCyIIQe92X3lgEAssfyz8B+gIjzxYBzxYTy5/JyIAYAcsFI88WcPoCcQHLaszJgED7AEATyFAE+gJYzxYBzxbMye1UgAIcgCDXIe1E0PoA+kD6QNTRBNMfAYQPIYIQF41FGboCghB73ZfeuhKx8vTTPwEw+gAwE6BQI8hQBPoCWM8WAc8WzMntVINjFu1o=',
|
|
68
|
+
);
|
|
64
69
|
|
|
65
|
-
export const
|
|
70
|
+
export const EVAA_REWARDS_MASTER_CODE_MAINNET = Cell.fromBoc(
|
|
66
71
|
Buffer.from(
|
|
67
72
|
'b5ee9c7241020e01000386000114ff00f4a413f4bcf2c80b01020162020b046ad03322c700925f03e0d0d3030171b0925f03e0fa403002d31fd33f715230bae302725230bae30282107362d09c5230bae3027413ba0304070800c46c21ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd11034102307fa40308103e8820afaf0801abe19f2f48103ea5196c70519f2f48103ee8b0212c705f2f41036453304c85004cf16cbff12cbffc9c85005cf165003fa0258cf16ccccc9ed5402fe6c22ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd11034102307fa40fa003021ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd11034102335355bc8f828cf1613cbffcbffc9c85003cf1670fa0212ccc97020c8cb0113f400f400cb00c9f9007074c8cb02ca07cbffc9d08103ea51c1c7051cf2f45306bce302050600466c810173c8cb1fcb3f01fa02c9718018c8cb055003cf1670fa0212cb6accc98040fb0001d23a8b3544f4e8f9025220ba8e16385288708018c8cb0558cf1658fa02cb6ac98040fb008e3b22544a030a702082100f8a7ea5c8cb1f13cb3f5004fa0222cf1658cf16cb0021fa02cb1fc9718018c8cb055003cf1670fa0212cb6accc98040fb00e25037a110365e40010a00ec6c21ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd1103410238103e8820afaf08052a0bef2f48b3544f4e8f9025220ba993738068209c9c380a18e11388103ea5192c70519f2f405fa00301056e213a010364515503304c85004cf16cbff12cbffc9c85005cf165003fa0258cf16ccccc9ed5402ea8f6ced44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd11034102308fa40fa00308103e8821005f5e1001cbe1bf2f48103ea51b7c7051bf2f48103ed5395bbf2f48b3544f4e8f9025210ba8e16365279708018c8cb0558cf1658fa02cb6ac98040fb00e30e5026a14615503304e05f04840ff2f0090a00745468281b702082100f8a7ea5c8cb1f13cb3f5004fa0222cf1658cf16cb0021fa02cb1fc9718018c8cb055003cf1670fa0212cb6accc98040fb000038c85004cf16cbff12cbffc9c85005cf165003fa0258cf16ccccc9ed540201580c0d0039bbc24ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd1103410238009fb87b6ed44d0fa40fa00fa40d4d401d001d1fa40d3ffd3ffd11034102335355bc8f828cf1613cbffcbffc9c85003cf1670fa0212ccc97020c8cb0113f400f400cb00c9f9007074c8cb02ca07cbffc9d0872ac1c8c',
|
|
68
73
|
'hex',
|
|
69
74
|
),
|
|
70
75
|
)[0];
|
|
71
|
-
export const EVAA_REWARDS_MASTER_CODE_MAINNET = EVAA_REWARDS_MASTER_CODE_TESTNET;
|
|
72
76
|
|
|
73
|
-
export const
|
|
77
|
+
export const EVAA_REWARDS_USER_CODE_MAINNET = Cell.fromBoc(
|
|
74
78
|
Buffer.from(
|
|
75
79
|
'b5ee9c724102060100014e000114ff00f4a413f4bcf2c80b01020162020502f8d03322c700925f03e0d0d3030171b0925f03e0fa403002d31fd33f725230ba8ed63233ed44d0fa40fa00d401d001d1fa40d3ffd3ffd1058308d718d430d08103e8821005f5e10019be18f2f48103e927f901541027f910f2f405fa40fa00308103eaf82813c70512f2f48103ec5313bcf2f45203a15006e0313273ba030400b8ed44d0fa40fa00d401d001d1fa40d3ffd3ffd110235f0372c8cb1f13cb3f01cf1658fa02c9718018c8cb055003cf1670fa0212cb6accc9820a625a0070fb02810080fb005521c85003cf16cbffcbffc9c85003cf1601fa02ccc9ed5400888e3ced44d0fa40fa00d401d001d1fa40d3ffd3ffd105fa00308103ea5173c70517f2f45025a14143c85003cf16cbffcbffc9c85003cf1601fa02ccc9ed54e05b840ff2f0002ba17849da89a1f481f401a803a003a3f481a7ffa7ffa333f41908',
|
|
76
80
|
'hex',
|
|
77
81
|
),
|
|
78
82
|
)[0];
|
|
79
|
-
export const EVAA_REWARDS_USER_CODE_MAINNET = EVAA_REWARDS_USER_CODE_TESTNET;
|
|
80
|
-
|
|
81
|
-
export const OPCODES = {
|
|
82
|
-
SUPPLY: 0x1,
|
|
83
|
-
WITHDRAW: 0x2,
|
|
84
|
-
LIQUIDATE: 0x3,
|
|
85
|
-
JETTON_TRANSFER: 0xf8a7ea5,
|
|
86
|
-
ONCHAIN_GETTER: 0x9998,
|
|
87
|
-
REWARD_CLAIM: 0x2,
|
|
88
|
-
REWARD_TON_TOP_UP: 0x7362d09c,
|
|
89
|
-
REWARD_JETTON_MINT: 0x178d4519,
|
|
90
|
-
REWARD_JETTON_TRANSFER: 0x0f8a7ea5,
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
export const FEES = {
|
|
94
|
-
SUPPLY: toNano('0.3'),
|
|
95
|
-
WITHDRAW: toNano('0.35'),
|
|
96
|
-
SUPPLY_JETTON: toNano('0.35'),
|
|
97
|
-
SUPPLY_JETTON_FWD: toNano('0.3'),
|
|
98
|
-
LIQUIDATION: toNano('0.8'),
|
|
99
|
-
LIQUIDATION_JETTON: toNano('1'),
|
|
100
|
-
LIQUIDATION_JETTON_FWD: toNano('0.8'),
|
|
101
|
-
REWARD_MASTER_TON_TOP_UP: toNano('0.03'),
|
|
102
|
-
REWARD_MASTER_DEPLOY: toNano('0.05'),
|
|
103
|
-
REWARD_MASTER_WITHDRAW: toNano('0.1'),
|
|
104
|
-
REWARD_USER_DEPLOY: toNano('0.05'),
|
|
105
|
-
REWARD_USER_CLAIM: toNano('0.1'),
|
|
106
|
-
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Address, Cell } from '@ton/core';
|
|
2
|
+
import { ExtendedEvaaOracle } from '../../types/Master';
|
|
3
|
+
import { EVAA_REWARDS_MASTER_CODE_MAINNET, EVAA_REWARDS_USER_CODE_MAINNET, ORACLES_MAINNET } from './mainnet';
|
|
4
|
+
|
|
5
|
+
export const EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED = Address.parse('kQBNhBq8D5F1Red9JX64M32PpFrIPRvLvioAgauCDOpfMipw');
|
|
6
|
+
export const TESTNET_PYTH_VERSION_TOB_AUDITED = 0;
|
|
7
|
+
|
|
8
|
+
export const EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED = Address.parse(
|
|
9
|
+
'kQBTmXNOP6TUEQ-v85mlefDnVUor6tX_ZYFvQnaoxkM7LFVl',
|
|
10
|
+
);
|
|
11
|
+
export const TESTNET_CLASSIC_TOB_AUDITED = 0;
|
|
12
|
+
|
|
13
|
+
export const PYTH_ORACLE_TESTNET: Address = Address.parse('EQB4ZnrI5qsP_IUJgVJNwEGKLzZWsQOFhiaqDbD7pTt_f9oU');
|
|
14
|
+
|
|
15
|
+
export const ORACLES_TESTNET: ExtendedEvaaOracle[] = ORACLES_MAINNET;
|
|
16
|
+
|
|
17
|
+
export const EVAA_REWARDS_MASTER_TESTNET = Address.parse('EQCnp0iRGcfDJAvnKhAEN9sB-nPYSPuc83Ff4y75s8AtoSW1');
|
|
18
|
+
|
|
19
|
+
export const JETTON_WALLET_STANDART_CODE_TESTNET = Cell.fromBase64(
|
|
20
|
+
'te6cckECEQEAAyMAART/APSkE/S88sgLAQIBYgIDAgLMBAUAG6D2BdqJofQB9IH0gahhAgHUBgcCASAICQDDCDHAJJfBOAB0NMDAXGwlRNfA/AM4PpA+kAx+gAxcdch+gAx+gAwc6m0AALTH4IQD4p+pVIgupUxNFnwCeCCEBeNRRlSILqWMUREA/AK4DWCEFlfB7y6k1nwC+BfBIQP8vCAAET6RDBwuvLhTYAIBIAoLAIPUAQa5D2omh9AH0gfSBqGAJpj8EIC8aijKkQXUEIPe7L7wndCVj5cWLpn5j9ABgJ0CgR5CgCfQEsZ4sA54tmZPaqQB8VA9M/+gD6QCHwAe1E0PoA+kD6QNQwUTahUirHBfLiwSjC//LiwlQ0QnBUIBNUFAPIUAT6AljPFgHPFszJIsjLARL0APQAywDJIPkAcHTIywLKB8v/ydAE+kD0BDH6ACDXScIA8uLEd4AYyMsFUAjPFnD6AhfLaxPMgMAgEgDQ4AnoIQF41FGcjLHxnLP1AH+gIizxZQBs8WJfoCUAPPFslQBcwjkXKRceJQCKgToIIJycOAoBS88uLFBMmAQPsAECPIUAT6AljPFgHPFszJ7VQC9ztRND6APpA+kDUMAjTP/oAUVGgBfpA+kBTW8cFVHNtcFQgE1QUA8hQBPoCWM8WAc8WzMkiyMsBEvQA9ADLAMn5AHB0yMsCygfL/8nQUA3HBRyx8uLDCvoAUaihggiYloBmtgihggiYloCgGKEnlxBJEDg3XwTjDSXXCwGAPEADXO1E0PoA+kD6QNQwB9M/+gD6QDBRUaFSSccF8uLBJ8L/8uLCBYIJMS0AoBa88uLDghB73ZfeyMsfFcs/UAP6AiLPFgHPFslxgBjIywUkzxZw+gLLaszJgED7AEATyFAE+gJYzxYBzxbMye1UgAHBSeaAYoYIQc2LQnMjLH1Iwyz9Y+gJQB88WUAfPFslxgBDIywUkzxZQBvoCFctqFMzJcfsAECQQIwB8wwAjwgCwjiGCENUydttwgBDIywVQCM8WUAT6AhbLahLLHxLLP8ly+wCTNWwh4gPIUAT6AljPFgHPFszJ7VSV6u3X',
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
export const EVAA_REWARDS_MASTER_CODE_TESTNET = EVAA_REWARDS_MASTER_CODE_MAINNET;
|
|
24
|
+
|
|
25
|
+
export const EVAA_REWARDS_USER_CODE_TESTNET = EVAA_REWARDS_USER_CODE_MAINNET;
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { Address, Dictionary } from '@ton/core';
|
|
2
|
+
import {
|
|
3
|
+
EVAA_JUSDT_PRICE_FEED_ID,
|
|
4
|
+
EVAA_TSTON_PRICE_FEED_ID,
|
|
5
|
+
EVAA_TSUSDE_PRICE_FEED_ID,
|
|
6
|
+
packConnectedFeeds,
|
|
7
|
+
PYTH_TON_PRICE_FEED_ID,
|
|
8
|
+
PYTH_TSTON_PRICE_FEED_ID,
|
|
9
|
+
PYTH_TSUSDE_PRICE_FEED_ID,
|
|
10
|
+
PYTH_USDT_PRICE_FEED_ID,
|
|
11
|
+
} from '../../api/feeds';
|
|
12
|
+
import { DefaultPythPriceSourcesConfig, PricesCollector, PythCollector } from '../../prices';
|
|
13
|
+
import { PoolConfig } from '../../types/Master';
|
|
14
|
+
import { EvaaRewardsConfig } from '../../types/MasterRewards';
|
|
15
|
+
import {
|
|
16
|
+
ASSET_ID,
|
|
17
|
+
CATI_MAINNET,
|
|
18
|
+
DOGS_MAINNET,
|
|
19
|
+
JUSDC_MAINNET,
|
|
20
|
+
JUSDT_MAINNET,
|
|
21
|
+
NOT_MAINNET,
|
|
22
|
+
PT_tsUSDe_01Sep2025_MAINNET,
|
|
23
|
+
STTON_MAINNET,
|
|
24
|
+
TON_MAINNET,
|
|
25
|
+
TON_STORM_MAINNET,
|
|
26
|
+
TONUSDT_DEDUST_MAINNET,
|
|
27
|
+
TONUSDT_STONFI_MAINNET,
|
|
28
|
+
TSTON_MAINNET,
|
|
29
|
+
TSUSDE_MAINNET,
|
|
30
|
+
USDE_MAINNET,
|
|
31
|
+
USDT_MAINNET,
|
|
32
|
+
USDT_STORM_MAINNET,
|
|
33
|
+
} from '../assets';
|
|
34
|
+
import {
|
|
35
|
+
EVAA_ALTS_MAINNET,
|
|
36
|
+
EVAA_ALTS_MAINNET_VERSION,
|
|
37
|
+
EVAA_LP_MAINNET,
|
|
38
|
+
EVAA_LP_MAINNET_VERSION,
|
|
39
|
+
EVAA_MASTER_MAINNET,
|
|
40
|
+
EVAA_PYTH_TOB_MAINNET,
|
|
41
|
+
EVAA_PYTH_TOB_VERSION,
|
|
42
|
+
EVAA_REWARDS_MASTER_CODE_MAINNET,
|
|
43
|
+
EVAA_REWARDS_USER_CODE_MAINNET,
|
|
44
|
+
EVAA_STABLE_MAINNET,
|
|
45
|
+
EVAA_TOB_MAINNET,
|
|
46
|
+
EVAA_TOB_VERSION,
|
|
47
|
+
EVAA_TON_REWARDS_MASTER_MAINNET,
|
|
48
|
+
EVAA_USDT_REWARDS_MASTER_MAINNET,
|
|
49
|
+
LENDING_CODE,
|
|
50
|
+
MAINNET_VERSION,
|
|
51
|
+
MASTER_CONSTANTS,
|
|
52
|
+
ORACLES_ALTS,
|
|
53
|
+
ORACLES_LP,
|
|
54
|
+
ORACLES_MAINNET,
|
|
55
|
+
PYTH_ORACLE_MAINNET,
|
|
56
|
+
STABLE_VERSION,
|
|
57
|
+
} from '../general';
|
|
58
|
+
|
|
59
|
+
// Pool assets configs
|
|
60
|
+
export const MAINNET_POOL_ASSETS_CONFIG = [
|
|
61
|
+
TON_MAINNET,
|
|
62
|
+
JUSDT_MAINNET,
|
|
63
|
+
JUSDC_MAINNET,
|
|
64
|
+
STTON_MAINNET,
|
|
65
|
+
TSTON_MAINNET,
|
|
66
|
+
USDT_MAINNET,
|
|
67
|
+
USDE_MAINNET,
|
|
68
|
+
TSUSDE_MAINNET,
|
|
69
|
+
];
|
|
70
|
+
|
|
71
|
+
const MAINNET_STABLE_POOL_ASSETS_CONFIG = [USDT_MAINNET, USDE_MAINNET, TSUSDE_MAINNET, PT_tsUSDe_01Sep2025_MAINNET];
|
|
72
|
+
|
|
73
|
+
const MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
74
|
+
TON_MAINNET,
|
|
75
|
+
USDT_MAINNET,
|
|
76
|
+
TONUSDT_DEDUST_MAINNET,
|
|
77
|
+
TON_STORM_MAINNET,
|
|
78
|
+
USDT_STORM_MAINNET,
|
|
79
|
+
TONUSDT_STONFI_MAINNET,
|
|
80
|
+
];
|
|
81
|
+
|
|
82
|
+
const MAINNET_ALTS_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, CATI_MAINNET, NOT_MAINNET, DOGS_MAINNET];
|
|
83
|
+
|
|
84
|
+
export const MAINNET_POOL_CONFIG: PoolConfig = {
|
|
85
|
+
masterAddress: EVAA_MASTER_MAINNET,
|
|
86
|
+
masterVersion: MAINNET_VERSION,
|
|
87
|
+
masterConstants: MASTER_CONSTANTS,
|
|
88
|
+
oracles: new PythCollector({
|
|
89
|
+
pythConfig: DefaultPythPriceSourcesConfig,
|
|
90
|
+
poolAssetsConfig: MAINNET_POOL_ASSETS_CONFIG,
|
|
91
|
+
pythOracle: {
|
|
92
|
+
feedsMap: Dictionary.empty<bigint, Buffer>()
|
|
93
|
+
.set(BigInt(PYTH_TON_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.TON, 0n))
|
|
94
|
+
.set(BigInt(PYTH_USDT_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.USDT, 0n))
|
|
95
|
+
.set(
|
|
96
|
+
BigInt(PYTH_TSTON_PRICE_FEED_ID),
|
|
97
|
+
packConnectedFeeds(EVAA_TSTON_PRICE_FEED_ID, BigInt(PYTH_TON_PRICE_FEED_ID)),
|
|
98
|
+
)
|
|
99
|
+
.set(
|
|
100
|
+
BigInt(PYTH_TSUSDE_PRICE_FEED_ID),
|
|
101
|
+
packConnectedFeeds(EVAA_TSUSDE_PRICE_FEED_ID, BigInt(PYTH_USDT_PRICE_FEED_ID)),
|
|
102
|
+
),
|
|
103
|
+
pythAddress: PYTH_ORACLE_MAINNET,
|
|
104
|
+
allowedRefTokens: Dictionary.empty<bigint, bigint>()
|
|
105
|
+
.set(ASSET_ID.jUSDT, ASSET_ID.USDT)
|
|
106
|
+
.set(ASSET_ID.jUSDC, ASSET_ID.USDT)
|
|
107
|
+
.set(ASSET_ID.USDe, ASSET_ID.USDT)
|
|
108
|
+
.set(ASSET_ID.stTON, ASSET_ID.tsTON),
|
|
109
|
+
},
|
|
110
|
+
}),
|
|
111
|
+
poolAssetsConfig: MAINNET_POOL_ASSETS_CONFIG,
|
|
112
|
+
lendingCode: LENDING_CODE,
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
export const MAINNET_STABLE_POOL_CONFIG: PoolConfig = {
|
|
116
|
+
masterAddress: EVAA_STABLE_MAINNET,
|
|
117
|
+
masterVersion: STABLE_VERSION,
|
|
118
|
+
masterConstants: MASTER_CONSTANTS,
|
|
119
|
+
oracles: new PricesCollector({
|
|
120
|
+
poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
121
|
+
minimalOracles: 3,
|
|
122
|
+
evaaOracles: ORACLES_MAINNET,
|
|
123
|
+
}),
|
|
124
|
+
poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
125
|
+
lendingCode: LENDING_CODE,
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
export const MAINNET_LP_POOL_CONFIG: PoolConfig = {
|
|
129
|
+
masterAddress: EVAA_LP_MAINNET,
|
|
130
|
+
masterVersion: EVAA_LP_MAINNET_VERSION,
|
|
131
|
+
masterConstants: MASTER_CONSTANTS,
|
|
132
|
+
oracles: new PricesCollector({
|
|
133
|
+
poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
134
|
+
minimalOracles: 3,
|
|
135
|
+
evaaOracles: ORACLES_LP,
|
|
136
|
+
}),
|
|
137
|
+
poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
138
|
+
lendingCode: LENDING_CODE,
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
export const MAINNET_ALTS_POOL_CONFIG: PoolConfig = {
|
|
142
|
+
masterAddress: EVAA_ALTS_MAINNET,
|
|
143
|
+
masterVersion: EVAA_ALTS_MAINNET_VERSION,
|
|
144
|
+
masterConstants: MASTER_CONSTANTS,
|
|
145
|
+
oracles: new PricesCollector({
|
|
146
|
+
poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
147
|
+
minimalOracles: 3,
|
|
148
|
+
evaaOracles: ORACLES_ALTS,
|
|
149
|
+
}),
|
|
150
|
+
poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
151
|
+
lendingCode: LENDING_CODE,
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
export const MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, JUSDT_MAINNET];
|
|
155
|
+
|
|
156
|
+
export const MAINNET_PYTH_V8_TOB_POOL_CONFIG: PoolConfig = {
|
|
157
|
+
masterAddress: EVAA_PYTH_TOB_MAINNET,
|
|
158
|
+
masterVersion: EVAA_PYTH_TOB_VERSION,
|
|
159
|
+
masterConstants: MASTER_CONSTANTS,
|
|
160
|
+
oracles: new PythCollector({
|
|
161
|
+
pythConfig: DefaultPythPriceSourcesConfig,
|
|
162
|
+
poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
|
|
163
|
+
pythOracle: {
|
|
164
|
+
feedsMap: Dictionary.empty<bigint, Buffer>()
|
|
165
|
+
.set(BigInt(PYTH_TON_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.TON, 0n))
|
|
166
|
+
.set(BigInt(PYTH_USDT_PRICE_FEED_ID), packConnectedFeeds(ASSET_ID.USDT, 0n)),
|
|
167
|
+
pythAddress: PYTH_ORACLE_MAINNET,
|
|
168
|
+
allowedRefTokens: Dictionary.empty<bigint, bigint>().set(
|
|
169
|
+
BigInt(EVAA_JUSDT_PRICE_FEED_ID),
|
|
170
|
+
BigInt(ASSET_ID.USDT),
|
|
171
|
+
),
|
|
172
|
+
},
|
|
173
|
+
}),
|
|
174
|
+
poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
|
|
175
|
+
lendingCode: LENDING_CODE,
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
export const MAINNET_V8_TOB_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET];
|
|
179
|
+
|
|
180
|
+
export const MAINNET_V8_TOB_POOL_CONFIG: PoolConfig = {
|
|
181
|
+
masterAddress: EVAA_TOB_MAINNET,
|
|
182
|
+
masterVersion: EVAA_TOB_VERSION,
|
|
183
|
+
masterConstants: MASTER_CONSTANTS,
|
|
184
|
+
oracles: new PricesCollector({
|
|
185
|
+
poolAssetsConfig: MAINNET_V8_TOB_POOL_ASSETS_CONFIG,
|
|
186
|
+
minimalOracles: 3,
|
|
187
|
+
evaaOracles: ORACLES_MAINNET,
|
|
188
|
+
}),
|
|
189
|
+
poolAssetsConfig: MAINNET_V8_TOB_POOL_ASSETS_CONFIG,
|
|
190
|
+
lendingCode: LENDING_CODE,
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
export const MAINNET_MASTER_TON_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
194
|
+
adminAddress: EVAA_TON_REWARDS_MASTER_MAINNET,
|
|
195
|
+
evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
|
|
196
|
+
rewardMasterCode: EVAA_REWARDS_MASTER_CODE_MAINNET,
|
|
197
|
+
rewardUserCode: EVAA_REWARDS_USER_CODE_MAINNET,
|
|
198
|
+
asset: TON_MAINNET,
|
|
199
|
+
availableReward: 0,
|
|
200
|
+
publicKey: Buffer.from('bfe9a30221db4dff4c17e55d985e0b13a8f597bbb28002f311dc4429dad1ca95', 'hex'), // adminAddress publicKey
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
export const MAINNET_MASTER_USDT_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
204
|
+
adminAddress: EVAA_USDT_REWARDS_MASTER_MAINNET,
|
|
205
|
+
evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
|
|
206
|
+
rewardMasterCode: EVAA_REWARDS_MASTER_CODE_MAINNET,
|
|
207
|
+
rewardUserCode: EVAA_REWARDS_USER_CODE_MAINNET,
|
|
208
|
+
asset: USDT_MAINNET,
|
|
209
|
+
availableReward: 0,
|
|
210
|
+
publicKey: Buffer.from('9813725d6cead1c9bbc0e24b21d4fc62a7fa8ac4bb01b6758df30169a71dba67', 'hex'), // adminAddress publicKey
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
export const ALL_MAINNET_POOLS: PoolConfig[] = [
|
|
214
|
+
MAINNET_POOL_CONFIG,
|
|
215
|
+
MAINNET_LP_POOL_CONFIG,
|
|
216
|
+
MAINNET_ALTS_POOL_CONFIG,
|
|
217
|
+
MAINNET_STABLE_POOL_CONFIG,
|
|
218
|
+
];
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Address } from '@ton/core';
|
|
2
|
+
import { TESTNET_ALLOWED_REF_TOKENS, TESTNET_FEEDS_MAP } from '../../api/feeds';
|
|
3
|
+
import { DefaultPythPriceSourcesConfig, PricesCollector, PythCollector } from '../../prices';
|
|
4
|
+
import { PoolConfig } from '../../types/Master';
|
|
5
|
+
import { EvaaRewardsConfig } from '../../types/MasterRewards';
|
|
6
|
+
import { EUSDT_TESTNET, JUSDC_TESTNET, TON_TESTNET } from '../assets';
|
|
7
|
+
import {
|
|
8
|
+
EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
|
|
9
|
+
EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
|
|
10
|
+
EVAA_REWARDS_MASTER_CODE_TESTNET,
|
|
11
|
+
EVAA_REWARDS_MASTER_TESTNET,
|
|
12
|
+
EVAA_REWARDS_USER_CODE_TESTNET,
|
|
13
|
+
LENDING_CODE,
|
|
14
|
+
MASTER_CONSTANTS,
|
|
15
|
+
ORACLES_TESTNET,
|
|
16
|
+
PYTH_ORACLE_TESTNET,
|
|
17
|
+
TESTNET_CLASSIC_TOB_AUDITED,
|
|
18
|
+
TESTNET_PYTH_VERSION_TOB_AUDITED,
|
|
19
|
+
} from '../general';
|
|
20
|
+
|
|
21
|
+
export const TESTNET_POOL_ASSETS_CONFIG = [TON_TESTNET, JUSDC_TESTNET];
|
|
22
|
+
|
|
23
|
+
export const TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED = [TON_TESTNET, JUSDC_TESTNET];
|
|
24
|
+
|
|
25
|
+
export const TESTNET_PYTH_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
|
|
26
|
+
masterAddress: EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
|
|
27
|
+
masterVersion: TESTNET_PYTH_VERSION_TOB_AUDITED,
|
|
28
|
+
masterConstants: MASTER_CONSTANTS,
|
|
29
|
+
oracles: new PythCollector({
|
|
30
|
+
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED,
|
|
31
|
+
pythOracle: {
|
|
32
|
+
feedsMap: TESTNET_FEEDS_MAP,
|
|
33
|
+
pythAddress: PYTH_ORACLE_TESTNET,
|
|
34
|
+
allowedRefTokens: TESTNET_ALLOWED_REF_TOKENS,
|
|
35
|
+
},
|
|
36
|
+
pythConfig: DefaultPythPriceSourcesConfig,
|
|
37
|
+
}),
|
|
38
|
+
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED,
|
|
39
|
+
lendingCode: LENDING_CODE,
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export const TESTNET_CLASSIC_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
|
|
43
|
+
masterAddress: EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
|
|
44
|
+
masterVersion: TESTNET_CLASSIC_TOB_AUDITED,
|
|
45
|
+
masterConstants: MASTER_CONSTANTS,
|
|
46
|
+
oracles: new PricesCollector({
|
|
47
|
+
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG,
|
|
48
|
+
minimalOracles: 3,
|
|
49
|
+
evaaOracles: ORACLES_TESTNET,
|
|
50
|
+
}),
|
|
51
|
+
lendingCode: LENDING_CODE,
|
|
52
|
+
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG,
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export const TESTNET_MASTER_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
56
|
+
adminAddress: EVAA_REWARDS_MASTER_TESTNET,
|
|
57
|
+
evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
|
|
58
|
+
rewardMasterCode: EVAA_REWARDS_MASTER_CODE_TESTNET,
|
|
59
|
+
rewardUserCode: EVAA_REWARDS_USER_CODE_TESTNET,
|
|
60
|
+
asset: TON_TESTNET,
|
|
61
|
+
availableReward: 0,
|
|
62
|
+
publicKey: Buffer.from('c38be45e033419b49cd22c97fbd23610fbc851a931208f8b4a1817dd11cb63ac', 'hex'), // adminAddress publicKey
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export const TESTNET_MASTER_EUSDT_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
66
|
+
adminAddress: EVAA_REWARDS_MASTER_TESTNET,
|
|
67
|
+
evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
|
|
68
|
+
rewardMasterCode: EVAA_REWARDS_MASTER_CODE_TESTNET,
|
|
69
|
+
rewardUserCode: EVAA_REWARDS_USER_CODE_TESTNET,
|
|
70
|
+
asset: EUSDT_TESTNET,
|
|
71
|
+
availableReward: 0,
|
|
72
|
+
publicKey: Buffer.from('c38be45e033419b49cd22c97fbd23610fbc851a931208f8b4a1817dd11cb63ac', 'hex'), // adminAddress publicKey
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export const ALL_TESTNET_POOLS: PoolConfig[] = [];
|