Skip to content

Commit ed773a6

Browse files
authored
update reservoir protocol balances (DefiLlama#15182)
1 parent e1b5392 commit ed773a6

File tree

1 file changed

+44
-21
lines changed

1 file changed

+44
-21
lines changed

projects/reservoir-protocol/index.js

Lines changed: 44 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,46 @@
11
const ADDRESSES = require('../helper/coreAssets.json')
22

33
const config = {
4-
ethereum: [
5-
// https://docs.reservoir.xyz/products/proof-of-reserves
6-
'0x0c7e4342534e6e8783311dCF17828a2aa0951CC7',
7-
'0x9BB2c38F57883E5285b7c296c66B9eEA4769eF80',
8-
'0x99A95a9E38e927486fC878f41Ff8b118Eb632b10',
9-
'0xE45321525c85fcc418C88E606B96daD8cBcc047f',
10-
'0x841DB2cA7E8A8C2fb06128e8c58AA162de0CfCbC',
11-
'0x99E8903bdEFB9e44cd6A24B7f6F97dDd071549bc'
12-
// '0x31Eae643b679A84b37E3d0B4Bd4f5dA90fB04a61', - exluded RUSD because it is project's own token
13-
]
4+
ethereum: [
5+
// https://docs.reservoir.xyz/products/proof-of-reserves
6+
'0x0c7e4342534e6e8783311dCF17828a2aa0951CC7',
7+
'0x9BB2c38F57883E5285b7c296c66B9eEA4769eF80',
8+
'0x99A95a9E38e927486fC878f41Ff8b118Eb632b10',
9+
'0xE45321525c85fcc418C88E606B96daD8cBcc047f',
10+
'0x841DB2cA7E8A8C2fb06128e8c58AA162de0CfCbC',
11+
'0x99E8903bdEFB9e44cd6A24B7f6F97dDd071549bc'
12+
// '0x31Eae643b679A84b37E3d0B4Bd4f5dA90fB04a61', - exluded RUSD because it is project's own token
13+
],
14+
berachain: [],
1415
}
1516

1617
Object.keys(config).forEach(chain => {
1718
if (chain === 'berachain') {
18-
const lpToken = '0xbbB228B0D7D83F86e23a5eF3B1007D0100581613';
19-
const honeyToken = '0xFCBD14DC51f0A4d49d5E53C2E0950e0bC26d0Dce';
20-
const byusdToken = '0x688e72142674041f8f6af4c808a4045ca1d6ac82';
19+
// BYUSD-HONEY-LP
20+
const byusd_honey_lp_vault = '0xbbB228B0D7D83F86e23a5eF3B1007D0100581613';
21+
const byusd_honey_lp_token = '0xdE04c469Ad658163e2a5E860a03A86B52f6FA8C8';
22+
const byusd_honey_lp_owner = '0x0db79c0770E1C647b8Bb76D94C22420fAA7Ac181';
2123

22-
const owner = '0x0db79c0770E1C647b8Bb76D94C22420fAA7Ac181';
24+
// HONEY in rUSD-HONEY LP
25+
const rusd_honey_lp_vault = '0x1C5879B75be9E817B1607AFb6f24F632eE6F8820';
26+
const rusd_honey_lp_token = '0x7fd165B73775884a38AA8f2B384A53A3Ca7400E6';
27+
const rusd_honey_lp_owner = '0x6811742721DcCe83942739d44E40f140B5BCee37';
28+
29+
// USDT0 in rUSD-USDT0 LP
30+
const rusd_usdt0_lp_vault = '0xc6De36eceD67db9c17919708865b3eE94a7D987C';
31+
const rusd_usdt0_lp_token = '0x1fb6c1aDE4F9083b2EA42ED3fa9342e41788D4b5';
32+
const rusd_usdt0_lp_owner = '0x8Cc5a546408C6cE3C9eeB99788F9EC3b8FA6b9F3';
2333

2434
module.exports[chain] = {
2535
tvl: async (api) => {
26-
const lpBalance = await api.call({ abi: 'address:balanceOf', target: lpToken, params: owner })
27-
const honeyBalance = await api.call({ abi: 'address:balanceOf', target: honeyToken, params: owner })
28-
const byusdBalance = await api.call({ abi: 'address:balanceOf', target: byusdToken, params: owner })
36+
const lpBalance = await api.call({ abi: 'function balanceOf(address) view returns (uint256)', target: byusd_honey_lp_vault, params: byusd_honey_lp_owner })
37+
api.add(byusd_honey_lp_token, lpBalance);
38+
39+
const honeyBalance = await api.call({ abi: 'function balanceOf(address) view returns (uint256)', target: rusd_honey_lp_vault, params: rusd_honey_lp_owner })
40+
api.add(rusd_honey_lp_token, Number(honeyBalance) / 2);
2941

30-
api.add(lpToken, lpBalance);
31-
api.add(honeyToken, honeyBalance)
32-
api.add(byusdToken, byusdBalance)
42+
const usdt0Balance = await api.call({ abi: 'function balanceOf(address) view returns (uint256)', target: rusd_usdt0_lp_vault, params: rusd_usdt0_lp_owner })
43+
api.add(rusd_usdt0_lp_token, Number(usdt0Balance) / 2);
3344

3445
return api.getBalances()
3546
}
@@ -39,14 +50,26 @@ Object.keys(config).forEach(chain => {
3950
const funds = config[chain]
4051
module.exports[chain] = {
4152
tvl: async (api) => {
53+
// count assets on tvl adapters
4254
const tokens = await api.multiCall({ abi: 'address:underlying', calls: funds })
4355
const bals = await api.multiCall({ abi: 'uint256:totalValue', calls: funds })
4456
const decimals = await api.multiCall({ abi: 'uint8:decimals', calls: tokens })
4557
bals.forEach((v, i) => bals[i] = v * 10 ** (decimals[i] - 18))
4658
api.add(tokens, bals)
47-
return api.sumTokens({
59+
60+
// count USDC locked in 0x4809010926aec940b550D34a46A52739f996D75D
61+
api.sumTokens({
4862
owner: '0x4809010926aec940b550D34a46A52739f996D75D', token: ADDRESSES.ethereum.USDC
4963
})
64+
65+
// count USDC deposited in Euler eUSDC vault
66+
// vault: 0xe0a80d35bb6618cba260120b279d357978c42bce
67+
// account: 0x3063C5907FAa10c01B242181Aa689bEb23D2BD65
68+
const shareBalance = await api.call({ abi: 'function balanceOf(address) view returns (uint256)', target: '0xe0a80d35bb6618cba260120b279d357978c42bce', params: ['0x3063C5907FAa10c01B242181Aa689bEb23D2BD65'] })
69+
const assetBalance = await api.call({ abi: 'function convertToAssets(uint256) view returns (uint256)', target: '0xe0a80d35bb6618cba260120b279d357978c42bce', params: [shareBalance.toString()] })
70+
api.add(ADDRESSES.ethereum.USDC, assetBalance)
71+
72+
return api.getBalances()
5073
}
5174
}
5275
}

0 commit comments

Comments
 (0)