@stake-dao/reader 0.1.0 → 0.1.2
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/esm/batches/buildYearnStrats.js +39 -0
- package/dist/esm/batches/buildYearnStrats.js.map +1 -0
- package/dist/esm/batches/curveStrats.js +4 -6
- package/dist/esm/batches/curveStrats.js.map +1 -1
- package/dist/esm/batches/fetchYearnGauges.js +76 -0
- package/dist/esm/batches/fetchYearnGauges.js.map +1 -0
- package/dist/esm/batches/index.js +2 -0
- package/dist/esm/batches/index.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lockers/abis/MulticallLockers.json +591 -0
- package/dist/esm/lockers/fetch/index.js +306 -0
- package/dist/esm/lockers/fetch/index.js.map +1 -0
- package/dist/esm/lockers/utils/cakeLockerAirdrop.js +46 -0
- package/dist/esm/lockers/utils/cakeLockerAirdrop.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/depositorCalls.js +20 -0
- package/dist/esm/lockers/utils/callsForLockers/depositorCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/feeCalls.js +94 -0
- package/dist/esm/lockers/utils/callsForLockers/feeCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/gaugeCalls.js +6 -0
- package/dist/esm/lockers/utils/callsForLockers/gaugeCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/gaugeControllerCalls.js +8 -0
- package/dist/esm/lockers/utils/callsForLockers/gaugeControllerCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/index.js +29 -0
- package/dist/esm/lockers/utils/callsForLockers/index.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/pegCalls.js +38 -0
- package/dist/esm/lockers/utils/callsForLockers/pegCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/veCalls.js +26 -0
- package/dist/esm/lockers/utils/callsForLockers/veCalls.js.map +1 -0
- package/dist/esm/lockers/utils/callsForLockers/veSdtCalls.js +14 -0
- package/dist/esm/lockers/utils/callsForLockers/veSdtCalls.js.map +1 -0
- package/dist/esm/lockers/utils/endpoints.js +23 -0
- package/dist/esm/lockers/utils/endpoints.js.map +1 -0
- package/dist/esm/lockers/utils/getBribesRewardsData.js +46 -0
- package/dist/esm/lockers/utils/getBribesRewardsData.js.map +1 -0
- package/dist/esm/lockers/utils/getCherriesLeaderBoard.js +22 -0
- package/dist/esm/lockers/utils/getCherriesLeaderBoard.js.map +1 -0
- package/dist/esm/lockers/utils/getFees.js +30 -0
- package/dist/esm/lockers/utils/getFees.js.map +1 -0
- package/dist/esm/lockers/utils/getHttpCalls.js +44 -0
- package/dist/esm/lockers/utils/getHttpCalls.js.map +1 -0
- package/dist/esm/lockers/utils/getSdtInflationData.js +38 -0
- package/dist/esm/lockers/utils/getSdtInflationData.js.map +1 -0
- package/dist/esm/lockers/utils/index.js +157 -0
- package/dist/esm/lockers/utils/index.js.map +1 -0
- package/dist/esm/lockers/utils/substractFees.js +22 -0
- package/dist/esm/lockers/utils/substractFees.js.map +1 -0
- package/dist/esm/strategies/curve/build.js +10 -7
- package/dist/esm/strategies/curve/build.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/abi.js +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/abi.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/bytecode.js +3 -3
- package/dist/esm/strategies/curve/fetch/curveApiData/bytecode.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/config.js +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/getCurveApiData.js +3 -6
- package/dist/esm/strategies/curve/fetch/curveApiData/getCurveApiData.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/getGaugesWeights.js +1 -0
- package/dist/esm/strategies/curve/fetch/curveApiData/getGaugesWeights.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/getStratsWithApr.js +26 -58
- package/dist/esm/strategies/curve/fetch/getStratsWithApr.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/index.js +7 -23
- package/dist/esm/strategies/curve/fetch/index.js.map +1 -1
- package/dist/esm/strategies/curve/httpCalls.js +8 -24
- package/dist/esm/strategies/curve/httpCalls.js.map +1 -1
- package/dist/esm/strategies/utils/abis/MulticallYearnStratsAbi.json +107 -0
- package/dist/esm/strategies/{curve/fetch → utils}/getAprBreakdown.js +18 -8
- package/dist/esm/strategies/utils/getAprBreakdown.js.map +1 -0
- package/dist/esm/strategies/utils/index.js +1 -0
- package/dist/esm/strategies/utils/index.js.map +1 -1
- package/dist/esm/strategies/utils/sdt.js +17 -0
- package/dist/esm/strategies/utils/sdt.js.map +1 -1
- package/dist/esm/strategies/yearn/build.js +97 -0
- package/dist/esm/strategies/yearn/build.js.map +1 -0
- package/dist/esm/strategies/yearn/fetch/computeYearnApr.js +28 -0
- package/dist/esm/strategies/yearn/fetch/computeYearnApr.js.map +1 -0
- package/dist/esm/strategies/yearn/fetch/fetchAllYearnGauges.js +61 -0
- package/dist/esm/strategies/yearn/fetch/fetchAllYearnGauges.js.map +1 -0
- package/dist/esm/strategies/yearn/fetch/index.js +169 -0
- package/dist/esm/strategies/yearn/fetch/index.js.map +1 -0
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/utils.js +33 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist/types/batches/buildYearnStrats.d.ts +4 -0
- package/dist/types/batches/buildYearnStrats.d.ts.map +1 -0
- package/dist/types/batches/curveStrats.d.ts.map +1 -1
- package/dist/types/batches/fetchYearnGauges.d.ts +4 -0
- package/dist/types/batches/fetchYearnGauges.d.ts.map +1 -0
- package/dist/types/batches/index.d.ts +2 -0
- package/dist/types/batches/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lockers/fetch/index.d.ts +11 -0
- package/dist/types/lockers/fetch/index.d.ts.map +1 -0
- package/dist/types/lockers/utils/cakeLockerAirdrop.d.ts +8 -0
- package/dist/types/lockers/utils/cakeLockerAirdrop.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/depositorCalls.d.ts +3 -0
- package/dist/types/lockers/utils/callsForLockers/depositorCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/feeCalls.d.ts +11 -0
- package/dist/types/lockers/utils/callsForLockers/feeCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/gaugeCalls.d.ts +6 -0
- package/dist/types/lockers/utils/callsForLockers/gaugeCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/gaugeControllerCalls.d.ts +11 -0
- package/dist/types/lockers/utils/callsForLockers/gaugeControllerCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/index.d.ts +3 -0
- package/dist/types/lockers/utils/callsForLockers/index.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/pegCalls.d.ts +15 -0
- package/dist/types/lockers/utils/callsForLockers/pegCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/veCalls.d.ts +3 -0
- package/dist/types/lockers/utils/callsForLockers/veCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/callsForLockers/veSdtCalls.d.ts +11 -0
- package/dist/types/lockers/utils/callsForLockers/veSdtCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/endpoints.d.ts +3 -0
- package/dist/types/lockers/utils/endpoints.d.ts.map +1 -0
- package/dist/types/lockers/utils/getBribesRewardsData.d.ts +18 -0
- package/dist/types/lockers/utils/getBribesRewardsData.d.ts.map +1 -0
- package/dist/types/lockers/utils/getCherriesLeaderBoard.d.ts +2 -0
- package/dist/types/lockers/utils/getCherriesLeaderBoard.d.ts.map +1 -0
- package/dist/types/lockers/utils/getFees.d.ts +4 -0
- package/dist/types/lockers/utils/getFees.d.ts.map +1 -0
- package/dist/types/lockers/utils/getHttpCalls.d.ts +11 -0
- package/dist/types/lockers/utils/getHttpCalls.d.ts.map +1 -0
- package/dist/types/lockers/utils/getSdtInflationData.d.ts +8 -0
- package/dist/types/lockers/utils/getSdtInflationData.d.ts.map +1 -0
- package/dist/types/lockers/utils/index.d.ts +30 -0
- package/dist/types/lockers/utils/index.d.ts.map +1 -0
- package/dist/types/lockers/utils/substractFees.d.ts +3 -0
- package/dist/types/lockers/utils/substractFees.d.ts.map +1 -0
- package/dist/types/strategies/curve/build.d.ts +2 -31
- package/dist/types/strategies/curve/build.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/abi.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/bytecode.d.ts +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/bytecode.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/config.d.ts +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/getCurveApiData.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/curveApiData/getGaugesWeights.d.ts +1 -0
- package/dist/types/strategies/curve/fetch/curveApiData/getGaugesWeights.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/getStratsWithApr.d.ts +0 -4
- package/dist/types/strategies/curve/fetch/getStratsWithApr.d.ts.map +1 -1
- package/dist/types/strategies/curve/fetch/index.d.ts +2 -7
- package/dist/types/strategies/curve/fetch/index.d.ts.map +1 -1
- package/dist/types/strategies/curve/httpCalls.d.ts +3 -6
- package/dist/types/strategies/curve/httpCalls.d.ts.map +1 -1
- package/dist/types/strategies/types.d.ts +49 -6
- package/dist/types/strategies/types.d.ts.map +1 -1
- package/dist/types/strategies/utils/getAprBreakdown.d.ts +15 -0
- package/dist/types/strategies/utils/getAprBreakdown.d.ts.map +1 -0
- package/dist/types/strategies/utils/index.d.ts +1 -0
- package/dist/types/strategies/utils/index.d.ts.map +1 -1
- package/dist/types/strategies/utils/sdt.d.ts +1 -0
- package/dist/types/strategies/utils/sdt.d.ts.map +1 -1
- package/dist/types/strategies/yearn/build.d.ts +8 -0
- package/dist/types/strategies/yearn/build.d.ts.map +1 -0
- package/dist/types/strategies/yearn/fetch/computeYearnApr.d.ts +9 -0
- package/dist/types/strategies/yearn/fetch/computeYearnApr.d.ts.map +1 -0
- package/dist/types/strategies/yearn/fetch/fetchAllYearnGauges.d.ts +2 -0
- package/dist/types/strategies/yearn/fetch/fetchAllYearnGauges.d.ts.map +1 -0
- package/dist/types/strategies/yearn/fetch/index.d.ts +5 -0
- package/dist/types/strategies/yearn/fetch/index.d.ts.map +1 -0
- package/dist/types/utils.d.ts +5 -0
- package/dist/types/utils.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/batches/buildYearnStrats.ts +41 -0
- package/src/batches/curveStrats.ts +4 -6
- package/src/batches/fetchYearnGauges.ts +78 -0
- package/src/batches/index.ts +2 -0
- package/src/index.ts +2 -0
- package/src/lockers/fetch/index.ts +407 -0
- package/src/lockers/utils/cakeLockerAirdrop.ts +73 -0
- package/src/lockers/utils/callsForLockers/depositorCalls.ts +25 -0
- package/src/lockers/utils/callsForLockers/feeCalls.ts +118 -0
- package/src/lockers/utils/callsForLockers/gaugeCalls.ts +6 -0
- package/src/lockers/utils/callsForLockers/gaugeControllerCalls.ts +8 -0
- package/src/lockers/utils/callsForLockers/index.ts +44 -0
- package/src/lockers/utils/callsForLockers/pegCalls.ts +40 -0
- package/src/lockers/utils/callsForLockers/veCalls.ts +31 -0
- package/src/lockers/utils/callsForLockers/veSdtCalls.ts +15 -0
- package/src/lockers/utils/endpoints.ts +24 -0
- package/src/lockers/utils/getBribesRewardsData.ts +64 -0
- package/src/lockers/utils/getCherriesLeaderBoard.ts +34 -0
- package/src/lockers/utils/getFees.ts +34 -0
- package/src/lockers/utils/getHttpCalls.ts +55 -0
- package/src/lockers/utils/getSdtInflationData.ts +54 -0
- package/src/lockers/utils/index.ts +200 -0
- package/src/lockers/utils/substractFees.ts +26 -0
- package/src/strategies/curve/build.ts +49 -44
- package/src/strategies/curve/fetch/curveApiData/abi.ts +1 -1
- package/src/strategies/curve/fetch/curveApiData/bytecode.ts +3 -3
- package/src/strategies/curve/fetch/curveApiData/config.ts +1 -1
- package/src/strategies/curve/fetch/curveApiData/getCurveApiData.ts +2 -2
- package/src/strategies/curve/fetch/curveApiData/getGaugesWeights.ts +2 -0
- package/src/strategies/curve/fetch/getStratsWithApr.ts +27 -81
- package/src/strategies/curve/fetch/index.ts +10 -29
- package/src/strategies/curve/httpCalls.ts +8 -24
- package/src/strategies/types.ts +52 -6
- package/src/strategies/{curve/fetch → utils}/getAprBreakdown.ts +26 -9
- package/src/strategies/utils/index.ts +1 -0
- package/src/strategies/utils/sdt.ts +24 -0
- package/src/strategies/yearn/build.ts +156 -0
- package/src/strategies/yearn/fetch/computeYearnApr.ts +47 -0
- package/src/strategies/yearn/fetch/fetchAllYearnGauges.ts +78 -0
- package/src/strategies/yearn/fetch/index.ts +225 -0
- package/src/utils.ts +43 -1
- package/dist/esm/strategies/curve/fetch/getAprBreakdown.js.map +0 -1
- package/dist/esm/strategies/curve/fetch/types.js +0 -2
- package/dist/esm/strategies/curve/fetch/types.js.map +0 -1
- package/dist/types/strategies/curve/fetch/getAprBreakdown.d.ts +0 -17
- package/dist/types/strategies/curve/fetch/getAprBreakdown.d.ts.map +0 -1
- package/dist/types/strategies/curve/fetch/types.d.ts +0 -11
- package/dist/types/strategies/curve/fetch/types.d.ts.map +0 -1
- package/src/strategies/curve/fetch/types.ts +0 -11
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { lockerWithId } from '@stake-dao/constants';
|
|
2
|
+
import { lockedAmountCall } from '../index.js';
|
|
3
|
+
const veCalls = (lockerId, votingEscrow, locker, token) => {
|
|
4
|
+
const calls = [];
|
|
5
|
+
calls.push(lockedAmountCall(lockerId, votingEscrow, locker));
|
|
6
|
+
calls.push({ address: votingEscrow, name: 'balanceOf', params: [locker] });
|
|
7
|
+
if ([
|
|
8
|
+
lockerWithId('pendle').extensions.locker,
|
|
9
|
+
lockerWithId('mav').extensions.locker,
|
|
10
|
+
lockerWithId('cake', 56).extensions.locker,
|
|
11
|
+
].includes(locker)) {
|
|
12
|
+
calls.push({ address: token, name: 'balanceOf', params: [votingEscrow] });
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
calls.push({ address: votingEscrow, name: 'supply' });
|
|
16
|
+
}
|
|
17
|
+
if (locker === lockerWithId('pendle').extensions.locker) {
|
|
18
|
+
calls.push({ address: votingEscrow, name: 'totalSupplyStored' });
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
calls.push({ address: votingEscrow, name: 'totalSupply' });
|
|
22
|
+
}
|
|
23
|
+
return calls;
|
|
24
|
+
};
|
|
25
|
+
export default veCalls;
|
|
26
|
+
//# sourceMappingURL=veCalls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"veCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,YAAoB,EAAE,MAAc,EAAE,KAAa,EAAE,EAAE;IACxF,MAAM,KAAK,GAAU,EAAE,CAAA;IACvB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAA;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAE1E,IACE;QACE,YAAY,CAAC,QAAQ,CAAE,CAAC,UAAU,CAAC,MAAM;QACzC,YAAY,CAAC,KAAK,CAAE,CAAC,UAAU,CAAC,MAAM;QACtC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAE,CAAC,UAAU,CAAC,MAAM;KAC5C,CAAC,QAAQ,CAAC,MAAM,CAAC,EAClB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;IAC3E,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,CAAC,QAAQ,CAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAClE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { contracts, tokenWithId } from '@stake-dao/constants';
|
|
2
|
+
const veSdtCalls = (voteBooster, token, sdToken, sdTokenGauge) => [
|
|
3
|
+
{ address: tokenWithId('vesdt').address, name: 'totalSupply' },
|
|
4
|
+
...(voteBooster
|
|
5
|
+
? [
|
|
6
|
+
{ address: token, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
|
|
7
|
+
{ address: sdToken, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
|
|
8
|
+
{ address: sdTokenGauge, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
|
|
9
|
+
{ address: sdTokenGauge, name: 'working_balances', params: [contracts.voteBoosterStrategy[1]] },
|
|
10
|
+
]
|
|
11
|
+
: []),
|
|
12
|
+
];
|
|
13
|
+
export default veSdtCalls;
|
|
14
|
+
//# sourceMappingURL=veSdtCalls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"veSdtCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veSdtCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAE7D,MAAM,UAAU,GAAG,CAAC,WAAgB,EAAE,KAAa,EAAE,OAAe,EAAE,YAAoB,EAAE,EAAE,CAAC;IAC7F,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAE,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE;IAC/D,GAAG,CAAC,WAAW;QACb,CAAC,CAAC;YACE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YACpF,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YACzF,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;SACjG;QACH,CAAC,CAAC,EAAE,CAAC;CACR,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { gql } from 'graphql-request';
|
|
2
|
+
export const SDCAKE_AIRDROP_GRAPH_URL = 'https://api.thegraph.com/subgraphs/name/lucasramadour/sdcake-airdrop';
|
|
3
|
+
export const SDCAKE_AIRDROP_GLOBAL_QUERY = gql `
|
|
4
|
+
query Global {
|
|
5
|
+
globals(first: 1) {
|
|
6
|
+
timestamp
|
|
7
|
+
points
|
|
8
|
+
rate
|
|
9
|
+
threeMTimestamp
|
|
10
|
+
tenMTimestamp
|
|
11
|
+
twentyFiveMTimestamp
|
|
12
|
+
fiftyMTimestamp
|
|
13
|
+
currentMultiplier
|
|
14
|
+
}
|
|
15
|
+
users(first: 1000) {
|
|
16
|
+
address
|
|
17
|
+
timestamp
|
|
18
|
+
points
|
|
19
|
+
rate
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
`;
|
|
23
|
+
//# sourceMappingURL=endpoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../src/lockers/utils/endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAErC,MAAM,CAAC,MAAM,wBAAwB,GAAG,sEAAsE,CAAA;AAE9G,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;CAmB7C,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { parseUnits } from 'viem';
|
|
2
|
+
import { delegationWithId } from '@stake-dao/constants';
|
|
3
|
+
import { One, Zero } from '../../index.js';
|
|
4
|
+
import { calculateAllData } from './index.js';
|
|
5
|
+
const getBribesRewardsData = (locker, bribesData, veSdtTotalSupply, totalSupplyStaked, veBalanceOfLocker, gaugeWorkingSupply) => {
|
|
6
|
+
const bribesAverageApr = [
|
|
7
|
+
{ id: 'crv', value: bribesData?.[delegationWithId('crv')] / 100 || 0 },
|
|
8
|
+
{ id: 'bal', value: bribesData?.[delegationWithId('bal')] / 100 || 0 },
|
|
9
|
+
{ id: 'fxs', value: bribesData?.[delegationWithId('fxs')] / 100 || 0 }, // 1 FXS = 4 veFXS
|
|
10
|
+
{ id: 'angle', value: bribesData?.[delegationWithId('angle')] / 100 || 0 },
|
|
11
|
+
{ id: 'pendle', value: bribesData?.[delegationWithId('pendle')] / 100 || 0 },
|
|
12
|
+
{ id: 'fxn', value: bribesData?.[delegationWithId('fxn')] / 100 || 0 },
|
|
13
|
+
];
|
|
14
|
+
// Vote incentives APR
|
|
15
|
+
const votingPower = calculateAllData(locker.id, {
|
|
16
|
+
veSDTSupply: veSdtTotalSupply,
|
|
17
|
+
userVeSDTBalance: Zero,
|
|
18
|
+
gaugeSupply: parseUnits(totalSupplyStaked, locker.token.decimals),
|
|
19
|
+
userSdTokenGaugeBalance: Zero,
|
|
20
|
+
llVotingPower: parseUnits(veBalanceOfLocker, locker.token.decimals),
|
|
21
|
+
gaugeWorkingSupply: parseUnits(gaugeWorkingSupply, locker.token.decimals),
|
|
22
|
+
delegatedVeSDTBalance: Zero,
|
|
23
|
+
receivedVeSDTBalance: Zero,
|
|
24
|
+
}, One, Zero);
|
|
25
|
+
const bribesAverage = bribesAverageApr.find((b) => b.id === locker.id);
|
|
26
|
+
const bribeMinApr = (bribesAverage ? bribesAverage.value * (Number(votingPower.min) / 1000) : 0) * 100;
|
|
27
|
+
const bribeMaxApr = (bribesAverage ? bribesAverage.value * (Number(votingPower.max) / 1000) : 0) * 100;
|
|
28
|
+
const bribeRewards = bribesAverage
|
|
29
|
+
? {
|
|
30
|
+
bribeMinApr,
|
|
31
|
+
bribeMaxApr,
|
|
32
|
+
bribeAverageApr: bribesAverage.value * 100,
|
|
33
|
+
average: bribesAverageApr,
|
|
34
|
+
minBoost: (Number(votingPower.min) / 1000).toFixed(2),
|
|
35
|
+
maxBoost: (Number(votingPower.max) / 1000).toFixed(2),
|
|
36
|
+
token: `sd${bribesAverage.id}`,
|
|
37
|
+
}
|
|
38
|
+
: undefined;
|
|
39
|
+
return {
|
|
40
|
+
bribeMinApr,
|
|
41
|
+
bribeMaxApr,
|
|
42
|
+
bribeRewards,
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
export default getBribesRewardsData;
|
|
46
|
+
//# sourceMappingURL=getBribesRewardsData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBribesRewardsData.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getBribesRewardsData.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { formatEther } from 'viem';
|
|
2
|
+
import { graphql } from '../../utils.js';
|
|
3
|
+
import { SDCAKE_AIRDROP_GLOBAL_QUERY, SDCAKE_AIRDROP_GRAPH_URL } from './endpoints.js';
|
|
4
|
+
import { computeRatePoints } from './cakeLockerAirdrop.js';
|
|
5
|
+
export const getCherriesLeaderBoard = async () => {
|
|
6
|
+
const subgraphData = await graphql(SDCAKE_AIRDROP_GRAPH_URL, SDCAKE_AIRDROP_GLOBAL_QUERY, {});
|
|
7
|
+
const airdropGraph = subgraphData?.globals ? subgraphData.globals[0] : undefined;
|
|
8
|
+
const now = Math.floor(Date.now() / 1000);
|
|
9
|
+
const leaderBoard = subgraphData?.globals &&
|
|
10
|
+
subgraphData.users.map((user) => {
|
|
11
|
+
const currentPoints = computeRatePoints(BigInt(user.rate), BigInt(user.timestamp), BigInt(now), airdropGraph, BigInt(user.points));
|
|
12
|
+
return {
|
|
13
|
+
...user,
|
|
14
|
+
currentPoints: Number(formatEther(currentPoints)),
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
return {
|
|
18
|
+
...airdropGraph,
|
|
19
|
+
leaderBoard: leaderBoard?.sort((a, b) => b.currentPoints - a.currentPoints),
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=getCherriesLeaderBoard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCherriesLeaderBoard.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getCherriesLeaderBoard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,2BAA2B,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAEtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;IAC/C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,wBAAwB,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAA;IAC7F,MAAM,YAAY,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEhF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;IAEzC,MAAM,WAAW,GACf,YAAY,EAAE,OAAO;QACrB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9B,MAAM,aAAa,GAAG,iBAAiB,CACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EACtB,MAAM,CAAC,GAAG,CAAC,EACX,YAAY,EACZ,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CACpB,CAAA;YACD,OAAO;gBACL,GAAG,IAAI;gBACP,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;aAClD,CAAA;QACH,CAAC,CAAC,CAAA;IAEJ,OAAO;QACL,GAAG,YAAY;QACf,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC;KAC5E,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {} from './callsForLockers/feeCalls.js';
|
|
2
|
+
const getFees = (locker, lockerFee) => {
|
|
3
|
+
const fees = [];
|
|
4
|
+
for (const fee of locker.fees) {
|
|
5
|
+
let value = fee.value;
|
|
6
|
+
if (!fee.static) {
|
|
7
|
+
switch (fee.key) {
|
|
8
|
+
case 'voteFee':
|
|
9
|
+
value = Number(lockerFee?.bountyFee || 0) / 100;
|
|
10
|
+
break;
|
|
11
|
+
case 'claimerFee':
|
|
12
|
+
case 'liquidityFee':
|
|
13
|
+
case 'daoFee':
|
|
14
|
+
case 'lockerFee':
|
|
15
|
+
value = Number(lockerFee?.[fee.key] || 0) / 100;
|
|
16
|
+
break;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
if (value > 0) {
|
|
20
|
+
fees.push({
|
|
21
|
+
label: fee.label,
|
|
22
|
+
value,
|
|
23
|
+
key: fee.key,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return fees;
|
|
28
|
+
};
|
|
29
|
+
export default getFees;
|
|
30
|
+
//# sourceMappingURL=getFees.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFees.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getFees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,MAAM,+BAA+B,CAAA;AAE/D,MAAM,OAAO,GAAG,CAAC,MAAW,EAAE,SAAwC,EAAE,EAAE;IACxE,MAAM,IAAI,GAAU,EAAE,CAAA;IAEtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,KAAK,GAAW,GAAG,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC;gBAChB,KAAK,SAAS;oBACZ,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,SAAS,IAAI,CAAC,CAAC,GAAG,GAAG,CAAA;oBAC/C,MAAK;gBACP,KAAK,YAAY,CAAC;gBAClB,KAAK,cAAc,CAAC;gBACpB,KAAK,QAAQ,CAAC;gBACd,KAAK,WAAW;oBACd,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAA;oBAC/C,MAAK;YACT,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,KAAK;gBACL,GAAG,EAAE,GAAG,CAAC,GAAG;aACb,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { bsc, mainnet } from 'viem/chains';
|
|
2
|
+
const getHttpCalls = async (chainId) => {
|
|
3
|
+
switch (chainId) {
|
|
4
|
+
case mainnet.id: {
|
|
5
|
+
const httpCalls = [
|
|
6
|
+
(await fetch('https://raw.githubusercontent.com/stake-dao/bounties-report/main/delegationsAPRs.json')).json(),
|
|
7
|
+
fetch('https://api.frax.finance/v1/vefpisdata/1-day')
|
|
8
|
+
.then((result) => result.json())
|
|
9
|
+
.catch((error) => {
|
|
10
|
+
console.error(error);
|
|
11
|
+
return undefined;
|
|
12
|
+
}),
|
|
13
|
+
fetch('https://api.cvg.finance//stake-dao/aprs')
|
|
14
|
+
.then((result) => result.json())
|
|
15
|
+
.catch((error) => {
|
|
16
|
+
console.error(error);
|
|
17
|
+
return undefined;
|
|
18
|
+
}),
|
|
19
|
+
];
|
|
20
|
+
const httpResponses = (await Promise.allSettled(httpCalls)).map((result) => result.status === 'fulfilled' ? result.value : undefined);
|
|
21
|
+
const bribesData = httpResponses[0];
|
|
22
|
+
const fpisBribesData = httpResponses[1];
|
|
23
|
+
const cvgAprs = httpResponses[2]?.aprProjecteds;
|
|
24
|
+
return {
|
|
25
|
+
bribesData,
|
|
26
|
+
fpisBribesData,
|
|
27
|
+
cvgAprs,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
case bsc.id: {
|
|
31
|
+
const delegationsAPRsCall = [
|
|
32
|
+
(await fetch('https://raw.githubusercontent.com/stake-dao/bounties-report/main/delegationsAPRs.json')).json(),
|
|
33
|
+
];
|
|
34
|
+
const delegationsAPRsResponse = (await Promise.allSettled(delegationsAPRsCall)).map((result) => result.status === 'fulfilled' ? result.value : undefined);
|
|
35
|
+
const delegationsAPRsData = delegationsAPRsResponse[0];
|
|
36
|
+
return {
|
|
37
|
+
bribesData: delegationsAPRsData,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
};
|
|
43
|
+
export default getHttpCalls;
|
|
44
|
+
//# sourceMappingURL=getHttpCalls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getHttpCalls.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getHttpCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,YAAY,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC7C,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAChB,MAAM,SAAS,GAAG;gBAChB,CAAC,MAAM,KAAK,CAAC,uFAAuF,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC7G,KAAK,CAAC,8CAA8C,CAAC;qBAClD,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;qBAC/B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBACpB,OAAO,SAAS,CAAA;gBAClB,CAAC,CAAC;gBACJ,KAAK,CAAC,yCAAyC,CAAC;qBAC7C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;qBAC/B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBACpB,OAAO,SAAS,CAAA;gBAClB,CAAC,CAAC;aACL,CAAA;YAED,MAAM,aAAa,GAAG,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACzE,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACzD,CAAA;YAED,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;YACnC,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,CAAA;YAE/C,OAAO;gBACL,UAAU;gBACV,cAAc;gBACd,OAAO;aACR,CAAA;QACH,CAAC;QACD,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACZ,MAAM,mBAAmB,GAAG;gBAC1B,CAAC,MAAM,KAAK,CAAC,uFAAuF,CAAC,CAAC,CAAC,IAAI,EAAE;aAC9G,CAAA;YAED,MAAM,uBAAuB,GAAG,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC7F,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACzD,CAAA;YAED,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAA;YAEtD,OAAO;gBACL,UAAU,EAAE,mBAAmB;aAChC,CAAA;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { mainnet } from 'viem/chains';
|
|
2
|
+
import { ETH_SECONDS_PER_BLOCK, LOCKERS_MASTERCHEF_PID, STRATEGIES_MASTERCHEF_PID, contracts, } from '@stake-dao/constants';
|
|
3
|
+
import { parseAbi } from 'viem';
|
|
4
|
+
import { multicall } from '../../utils.js';
|
|
5
|
+
const getSdtInflationData = async (provider) => {
|
|
6
|
+
const chainId = await provider.getChainId();
|
|
7
|
+
if (chainId === mainnet.id) {
|
|
8
|
+
const rawSdtMasterchefData = await multicall(provider, [
|
|
9
|
+
{ address: contracts.sdtMasterchef[1], name: 'sdtPerBlock' },
|
|
10
|
+
{ address: contracts.sdtMasterchef[1], name: 'totalAllocPoint' },
|
|
11
|
+
{ address: contracts.sdtMasterchef[1], name: 'poolInfo', params: [LOCKERS_MASTERCHEF_PID] },
|
|
12
|
+
{ address: contracts.sdtMasterchef[1], name: 'poolInfo', params: [STRATEGIES_MASTERCHEF_PID] },
|
|
13
|
+
], parseAbi([
|
|
14
|
+
'function sdtPerBlock() external view returns (uint256)',
|
|
15
|
+
'function totalAllocPoint() external view returns (uint256)',
|
|
16
|
+
'function poolInfo(uint256) external view returns (address,uint256,uint256)',
|
|
17
|
+
]));
|
|
18
|
+
const sdtPerBlock = rawSdtMasterchefData[0].result;
|
|
19
|
+
const totalAllocPoint = rawSdtMasterchefData[1].result;
|
|
20
|
+
const lockerPoolInfo = rawSdtMasterchefData[2].result;
|
|
21
|
+
const stratPoolInfo = rawSdtMasterchefData[3].result;
|
|
22
|
+
const lockersAllocPoint = lockerPoolInfo[1];
|
|
23
|
+
const stratsAllocPoint = stratPoolInfo[1];
|
|
24
|
+
const lockersSdtPerBlock = (lockersAllocPoint * sdtPerBlock) / totalAllocPoint;
|
|
25
|
+
const lockersSdtPerSecond = BigInt(lockersSdtPerBlock) / BigInt(ETH_SECONDS_PER_BLOCK);
|
|
26
|
+
const stratsSdtPerBlock = (stratsAllocPoint * sdtPerBlock) / totalAllocPoint;
|
|
27
|
+
const stratsSdtPerSecond = BigInt(stratsSdtPerBlock) / BigInt(ETH_SECONDS_PER_BLOCK);
|
|
28
|
+
return {
|
|
29
|
+
lockersSdtPerBlock,
|
|
30
|
+
lockersSdtPerSecond,
|
|
31
|
+
stratsSdtPerBlock,
|
|
32
|
+
stratsSdtPerSecond,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return undefined;
|
|
36
|
+
};
|
|
37
|
+
export default getSdtInflationData;
|
|
38
|
+
//# sourceMappingURL=getSdtInflationData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSdtInflationData.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getSdtInflationData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,SAAS,GACV,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,MAAM,mBAAmB,GAAG,KAAK,EAAE,QAAa,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAA;IAC3C,IAAI,OAAO,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,oBAAoB,GAAG,MAAM,SAAS,CAC1C,QAAQ,EACR;YACE,EAAE,OAAO,EAAE,SAAS,CAAC,aAAc,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,aAAa,EAAE;YAC9D,EAAE,OAAO,EAAE,SAAS,CAAC,aAAc,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAClE,EAAE,OAAO,EAAE,SAAS,CAAC,aAAc,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,sBAAsB,CAAC,EAAE;YAC7F,EAAE,OAAO,EAAE,SAAS,CAAC,aAAc,CAAC,CAAC,CAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,yBAAyB,CAAC,EAAE;SACjG,EACD,QAAQ,CAAC;YACP,wDAAwD;YACxD,4DAA4D;YAC5D,4EAA4E;SAC7E,CAAC,CACH,CAAA;QAED,MAAM,WAAW,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAA2B,CAAA;QACvE,MAAM,eAAe,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAA2B,CAAA;QAC3E,MAAM,cAAc,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAA2B,CAAA;QAC1E,MAAM,aAAa,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAA2B,CAAA;QAEzE,MAAM,iBAAiB,GAAG,cAAc,CAAC,CAAC,CAAsB,CAAA;QAChE,MAAM,gBAAgB,GAAG,aAAa,CAAC,CAAC,CAAsB,CAAA;QAE9D,MAAM,kBAAkB,GAAG,CAAC,iBAAiB,GAAG,WAAW,CAAC,GAAG,eAAe,CAAA;QAC9E,MAAM,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAEtF,MAAM,iBAAiB,GAAG,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,eAAe,CAAA;QAC5E,MAAM,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAEpF,OAAO;YACL,kBAAkB;YAClB,mBAAmB;YACnB,iBAAiB;YACjB,kBAAkB;SACnB,CAAA;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { formatUnits, parseUnits } from 'viem';
|
|
2
|
+
import { Zero } from '../../index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Get the amount of veSDT to have more to have max boost
|
|
5
|
+
*/
|
|
6
|
+
const getVeSDTAmountMaxBoostCalculator = (toAdd, data) => {
|
|
7
|
+
const newSdTokenGaugeToAdd = parseUnits(formatUnits(toAdd, 0), 18);
|
|
8
|
+
const w0 = data.veSDTSupply;
|
|
9
|
+
const wu0 = data.userVeSDTBalance + data.receivedVeSDTBalance - data.delegatedVeSDTBalance;
|
|
10
|
+
const bs = data.gaugeSupply + newSdTokenGaugeToAdd;
|
|
11
|
+
const bu = data.userSdTokenGaugeBalance + newSdTokenGaugeToAdd;
|
|
12
|
+
const a = w0 * bu;
|
|
13
|
+
const b = wu0 * bs;
|
|
14
|
+
const c = a - b;
|
|
15
|
+
const d = bs - bu;
|
|
16
|
+
if (d === Zero) {
|
|
17
|
+
return Zero;
|
|
18
|
+
}
|
|
19
|
+
// x1000 to keep 3 decimals
|
|
20
|
+
const res = (c * BigInt(1000)) / d;
|
|
21
|
+
if (res < 0) {
|
|
22
|
+
return Zero;
|
|
23
|
+
}
|
|
24
|
+
return res;
|
|
25
|
+
};
|
|
26
|
+
const getBetaU = (data, toAdd, additionalVeSDT) => {
|
|
27
|
+
const sdTokenGaugeToAdd = parseUnits(formatUnits(toAdd, 0), 18);
|
|
28
|
+
const dvu = additionalVeSDT === Zero ? additionalVeSDT : getVeSDTAmountMaxBoostCalculator(toAdd, data) / BigInt(1000);
|
|
29
|
+
const newUserSdTokenGaugeBalance = data.userSdTokenGaugeBalance + sdTokenGaugeToAdd;
|
|
30
|
+
const newUserVeSDTBalance = dvu + data.userVeSDTBalance + data.receivedVeSDTBalance - data.delegatedVeSDTBalance;
|
|
31
|
+
const newVeSDTSupply = data.veSDTSupply + data.userVeSDTBalance + dvu;
|
|
32
|
+
const newGaugeSupply = data.gaugeSupply + sdTokenGaugeToAdd;
|
|
33
|
+
const a = (newUserSdTokenGaugeBalance * BigInt(4)) / BigInt(10);
|
|
34
|
+
const b = (((newGaugeSupply * newUserVeSDTBalance) / newVeSDTSupply) * BigInt(6)) / BigInt(10);
|
|
35
|
+
const c = a + b;
|
|
36
|
+
if (c > newUserSdTokenGaugeBalance) {
|
|
37
|
+
return newUserSdTokenGaugeBalance;
|
|
38
|
+
}
|
|
39
|
+
return c;
|
|
40
|
+
};
|
|
41
|
+
const getBetaU0 = (data) => {
|
|
42
|
+
const a = (data.userSdTokenGaugeBalance * BigInt(4)) / BigInt(10);
|
|
43
|
+
const b = (((data.gaugeSupply * (data.userVeSDTBalance + data.receivedVeSDTBalance - data.delegatedVeSDTBalance)) /
|
|
44
|
+
data.veSDTSupply) *
|
|
45
|
+
BigInt(6)) /
|
|
46
|
+
BigInt(10);
|
|
47
|
+
const c = a + b;
|
|
48
|
+
if (c > data.userSdTokenGaugeBalance) {
|
|
49
|
+
return data.userSdTokenGaugeBalance;
|
|
50
|
+
}
|
|
51
|
+
return c;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Get the possible max boost for the user
|
|
55
|
+
*/
|
|
56
|
+
const getMaxVotingPower = (toAdd, data, additionalVeSDT) => {
|
|
57
|
+
const sdTokenGaugeToAdd = parseUnits(formatUnits(toAdd, 0), 18);
|
|
58
|
+
const totalVotingPower = data.llVotingPower + sdTokenGaugeToAdd;
|
|
59
|
+
const betaU = getBetaU(data, toAdd, additionalVeSDT);
|
|
60
|
+
const betaU0 = getBetaU0(data);
|
|
61
|
+
const ws = data.gaugeWorkingSupply + betaU - betaU0;
|
|
62
|
+
if (ws === Zero) {
|
|
63
|
+
return Zero;
|
|
64
|
+
}
|
|
65
|
+
const vu = (totalVotingPower * betaU) / ws;
|
|
66
|
+
// x1000 to keep 3 decimals
|
|
67
|
+
const newSdUserTokenGauge = sdTokenGaugeToAdd + data.userSdTokenGaugeBalance;
|
|
68
|
+
if (newSdUserTokenGauge === Zero) {
|
|
69
|
+
return Zero;
|
|
70
|
+
}
|
|
71
|
+
return (vu * BigInt(1000)) / newSdUserTokenGauge;
|
|
72
|
+
};
|
|
73
|
+
const getRewardBoost = (toAdd, data, additionalVeSDT) => {
|
|
74
|
+
const newSdTokenGaugeToAdd = parseUnits(formatUnits(toAdd, 0), 18);
|
|
75
|
+
const bu = data.userSdTokenGaugeBalance + newSdTokenGaugeToAdd;
|
|
76
|
+
const betaUMax = getBetaU(data, toAdd, additionalVeSDT);
|
|
77
|
+
const betaUMin = getBetaU(data, toAdd, additionalVeSDT);
|
|
78
|
+
const betaU0 = getBetaU0(data);
|
|
79
|
+
const ws = data.gaugeWorkingSupply + betaUMin - betaU0;
|
|
80
|
+
const wsMin = data.gaugeWorkingSupply + (bu * BigInt(4)) / BigInt(10) - betaU0;
|
|
81
|
+
const wsMinNumber = Number.parseFloat(wsMin.toString());
|
|
82
|
+
const betaUMaxNumber = Number.parseFloat(betaUMax.toString());
|
|
83
|
+
const wsNumber = Number.parseFloat(ws.toString());
|
|
84
|
+
const ru_min = (Number.parseFloat(bu.toString()) * 0.4) / wsMinNumber;
|
|
85
|
+
const ru = betaUMaxNumber / wsNumber;
|
|
86
|
+
const res = ru / ru_min;
|
|
87
|
+
return Number.isNaN(res) ? 0 : res;
|
|
88
|
+
};
|
|
89
|
+
export const calculateAllData = (lockerId, data, toAdd, additionalVeSDT = Zero) => {
|
|
90
|
+
additionalVeSDT = parseUnits(formatUnits(additionalVeSDT, 0), 18);
|
|
91
|
+
const veSDTAmountToMaxBoost = getVeSDTAmountMaxBoostCalculator(toAdd, data);
|
|
92
|
+
const maxVotingPower = getMaxVotingPower(toAdd, data);
|
|
93
|
+
const rewardBoost = getRewardBoost(toAdd, data);
|
|
94
|
+
const newMaxVotingPower = getMaxVotingPower(toAdd, data, additionalVeSDT);
|
|
95
|
+
const newRewardBoost = getRewardBoost(toAdd, data, additionalVeSDT);
|
|
96
|
+
return {
|
|
97
|
+
veSDTAmountToMaxBoost,
|
|
98
|
+
max: lockerId === 'fxs' ? maxVotingPower / BigInt(4) : maxVotingPower,
|
|
99
|
+
rewardBoost,
|
|
100
|
+
min: lockerId === 'fxs' ? newMaxVotingPower / BigInt(4) : newMaxVotingPower,
|
|
101
|
+
newRewardBoost,
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
export const lockedAmountCall = (lockerId, votingEscrow, locker) => {
|
|
105
|
+
switch (lockerId) {
|
|
106
|
+
case 'pendle':
|
|
107
|
+
return {
|
|
108
|
+
address: votingEscrow,
|
|
109
|
+
name: 'positionData',
|
|
110
|
+
params: [locker],
|
|
111
|
+
};
|
|
112
|
+
case 'mav':
|
|
113
|
+
return {
|
|
114
|
+
address: votingEscrow,
|
|
115
|
+
name: 'lockups',
|
|
116
|
+
params: [locker, 0],
|
|
117
|
+
};
|
|
118
|
+
case 'cake':
|
|
119
|
+
return {
|
|
120
|
+
address: votingEscrow,
|
|
121
|
+
name: 'locks',
|
|
122
|
+
params: [locker],
|
|
123
|
+
};
|
|
124
|
+
default:
|
|
125
|
+
return {
|
|
126
|
+
address: votingEscrow,
|
|
127
|
+
name: 'locked',
|
|
128
|
+
params: [locker],
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
export const lockedAmountCallSideChain = (lockerId, votingEscrow, locker, chainId) => {
|
|
133
|
+
switch (lockerId) {
|
|
134
|
+
case 'mav':
|
|
135
|
+
return {
|
|
136
|
+
address: votingEscrow,
|
|
137
|
+
name: 'lockups',
|
|
138
|
+
params: [locker, 0],
|
|
139
|
+
chainId,
|
|
140
|
+
};
|
|
141
|
+
case 'fxs':
|
|
142
|
+
return {
|
|
143
|
+
address: votingEscrow,
|
|
144
|
+
name: 'balanceOfLockedFxs',
|
|
145
|
+
params: [locker],
|
|
146
|
+
chainId,
|
|
147
|
+
};
|
|
148
|
+
default:
|
|
149
|
+
return {
|
|
150
|
+
address: votingEscrow,
|
|
151
|
+
name: 'locked',
|
|
152
|
+
params: [locker],
|
|
153
|
+
chainId,
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lockers/utils/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const substractFees = (lockerId, maxApr, lockerFee) => {
|
|
2
|
+
switch (lockerId) {
|
|
3
|
+
case 'yfi':
|
|
4
|
+
case 'bpt':
|
|
5
|
+
case 'apw': {
|
|
6
|
+
const totalFee = lockerFee
|
|
7
|
+
? Object.keys(lockerFee).reduce((total, key) => (key !== 'lockerId' ? total + Number(lockerFee[key]) / 100 : total), 0)
|
|
8
|
+
: 0;
|
|
9
|
+
return (maxApr * (100 - totalFee)) / 100;
|
|
10
|
+
}
|
|
11
|
+
case 'mav': {
|
|
12
|
+
// 10% airdrop fees
|
|
13
|
+
return (maxApr * (100 - 10)) / 100;
|
|
14
|
+
}
|
|
15
|
+
default: {
|
|
16
|
+
// Streaming from gauges, fees are already substracted
|
|
17
|
+
return maxApr;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
export default substractFees;
|
|
22
|
+
//# sourceMappingURL=substractFees.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"substractFees.js","sourceRoot":"","sources":["../../../../src/lockers/utils/substractFees.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,MAAc,EAAE,SAAc,EAAU,EAAE;IACjF,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,QAAQ,GAAG,SAAS;gBACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAC3B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EACnF,CAAC,CACF;gBACH,CAAC,CAAC,CAAC,CAAA;YAEL,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAA;QAC1C,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,mBAAmB;YACnB,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAA;QACpC,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACR,sDAAsD;YACtD,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -6,7 +6,8 @@ import { equalTlc, getTokenInfo } from '../../utils.js';
|
|
|
6
6
|
export const buildCurveStrategies = async (provider, stratsList, chainId, externalApisResult) => {
|
|
7
7
|
const tokensToFetch = [];
|
|
8
8
|
const gaugesToFetch = [];
|
|
9
|
-
const strats = stratsList
|
|
9
|
+
const strats = stratsList
|
|
10
|
+
.map((data, index) => {
|
|
10
11
|
const lpToken = data.lpToken;
|
|
11
12
|
const curveApiData = externalApisResult.find((el) => equalTlc(el.lp, lpToken));
|
|
12
13
|
if (curveApiData) {
|
|
@@ -38,18 +39,20 @@ export const buildCurveStrategies = async (provider, stratsList, chainId, extern
|
|
|
38
39
|
underlyingCoins,
|
|
39
40
|
};
|
|
40
41
|
}
|
|
42
|
+
console.error(`-- Error building curve strat at index ${index}: Not found in API data`);
|
|
43
|
+
console.error(` Vault: ${data.vault}`);
|
|
44
|
+
console.error(` LP Token: ${data.lpToken}`);
|
|
41
45
|
return {
|
|
42
|
-
type:
|
|
43
|
-
key:
|
|
44
|
-
isMetapool: undefined,
|
|
45
|
-
isLending: undefined,
|
|
46
|
+
type: 'error',
|
|
47
|
+
key: 'error',
|
|
46
48
|
coins: [],
|
|
47
49
|
vault: data.vault,
|
|
48
50
|
lpToken,
|
|
49
|
-
gaugeAddress:
|
|
51
|
+
gaugeAddress: 'error',
|
|
50
52
|
underlyingCoins: [],
|
|
51
53
|
};
|
|
52
|
-
})
|
|
54
|
+
})
|
|
55
|
+
.filter((s) => s.type !== 'error');
|
|
53
56
|
// Fetch tokens infos
|
|
54
57
|
const inputArgsChunks = chunk(remove(uniq(tokensToFetch), (t) => !tokens.find((token) => token.address === t)), 40);
|
|
55
58
|
const decodedPromise = await Promise.allSettled(inputArgsChunks.map(async (inputArgs) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../src/strategies/curve/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AAE7F,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC7E,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../src/strategies/curve/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ export const getCurveDataGaugesWeightsOutputTypeAbi = [
|
|
|
40
40
|
name: 'returnData',
|
|
41
41
|
components: [
|
|
42
42
|
{ type: 'address', name: 'gauge' },
|
|
43
|
+
{ type: 'uint256', name: 'inflationRate' },
|
|
43
44
|
{ type: 'uint256', name: 'relativeWeight' },
|
|
44
45
|
{ type: 'uint256', name: 'futureRelativeWeight' },
|
|
45
46
|
],
|
|
@@ -53,7 +54,6 @@ export const getCurveDataGaugesOutputTypeAbi = [
|
|
|
53
54
|
{ type: 'address', name: 'gauge' },
|
|
54
55
|
{ type: 'address', name: 'lpToken' },
|
|
55
56
|
{ type: 'bool', name: 'isKilled' },
|
|
56
|
-
{ type: 'uint256', name: 'inflationRate' },
|
|
57
57
|
{ type: 'uint256', name: 'workingSupply' },
|
|
58
58
|
{
|
|
59
59
|
type: 'tuple[]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../../../../src/strategies/curve/fetch/curveApiData/abi.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,SAAkB,EAAE,EAAE,CAAC;IACpE;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE;YAC/B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE;YAC/B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;YACjC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE;YACxC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE;YACpC;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE;oBACxC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;oBACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;iBACrC;aACF;YACD,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC9C,GAAG,CAAC,SAAS;gBACX,CAAC,CAAC;oBACE;wBACE,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,KAAK;wBACX,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE;4BAC1C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;yBACrC;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;KACF;CACF,CAAA;AAED,MAAM,CAAC,MAAM,sCAAsC,GAAG;IACpD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE;YAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,sBAAsB,EAAE;SAClD;KACF;CACF,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE;YAC1C
|
|
1
|
+
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../../../../src/strategies/curve/fetch/curveApiData/abi.ts"],"names":[],"mappings":"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"}
|