curvance 1.0.13 → 1.0.15
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/README.md +2 -0
- package/dist/abis/ProtocolReader.json +54 -10
- package/dist/abis/RedstoneCoreAdaptor.json +798 -0
- package/dist/chains/index.d.ts +0 -37
- package/dist/chains/index.d.ts.map +1 -1
- package/dist/chains/index.js +1 -2
- package/dist/chains/index.js.map +1 -1
- package/dist/chains/monad-testnet.json +65 -101
- package/dist/classes/CToken.d.ts +34 -17
- package/dist/classes/CToken.d.ts.map +1 -1
- package/dist/classes/CToken.js +86 -44
- package/dist/classes/CToken.js.map +1 -1
- package/dist/classes/ERC20.d.ts +5 -5
- package/dist/classes/ERC20.d.ts.map +1 -1
- package/dist/classes/ERC20.js +4 -4
- package/dist/classes/ERC20.js.map +1 -1
- package/dist/classes/Faucet.d.ts +4 -4
- package/dist/classes/Faucet.d.ts.map +1 -1
- package/dist/classes/Faucet.js +11 -6
- package/dist/classes/Faucet.js.map +1 -1
- package/dist/classes/Market.d.ts +47 -7
- package/dist/classes/Market.d.ts.map +1 -1
- package/dist/classes/Market.js +109 -16
- package/dist/classes/Market.js.map +1 -1
- package/dist/classes/OracleManager.d.ts +3 -3
- package/dist/classes/OracleManager.d.ts.map +1 -1
- package/dist/classes/OracleManager.js +4 -4
- package/dist/classes/OracleManager.js.map +1 -1
- package/dist/classes/ProtocolReader.d.ts +20 -10
- package/dist/classes/ProtocolReader.d.ts.map +1 -1
- package/dist/classes/ProtocolReader.js +23 -12
- package/dist/classes/ProtocolReader.js.map +1 -1
- package/dist/classes/Redstone.d.ts +14 -0
- package/dist/classes/Redstone.d.ts.map +1 -0
- package/dist/classes/Redstone.js +57 -0
- package/dist/classes/Redstone.js.map +1 -0
- package/dist/helpers.d.ts +34 -49
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +104 -18
- package/dist/helpers.js.map +1 -1
- package/dist/setup.d.ts +5 -3
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +16 -8
- package/dist/setup.js.map +1 -1
- package/dist/types.d.ts +4 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -3
package/dist/classes/CToken.js
CHANGED
|
@@ -5,24 +5,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.BorrowableCToken = exports.CToken = void 0;
|
|
7
7
|
const helpers_1 = require("../helpers");
|
|
8
|
+
const ProtocolReader_1 = require("./ProtocolReader");
|
|
8
9
|
const ERC20_1 = require("./ERC20");
|
|
9
10
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
10
11
|
const BaseCToken_json_1 = __importDefault(require("../abis/BaseCToken.json"));
|
|
11
12
|
const BorrowableCToken_json_1 = __importDefault(require("../abis/BorrowableCToken.json"));
|
|
12
13
|
const IDynamicIRM_json_1 = __importDefault(require("../abis/IDynamicIRM.json"));
|
|
13
|
-
const
|
|
14
|
+
const Redstone_1 = require("./Redstone");
|
|
14
15
|
// BaseCToken ABI
|
|
15
16
|
class CToken {
|
|
16
|
-
|
|
17
|
+
provider;
|
|
17
18
|
address;
|
|
18
19
|
contract;
|
|
19
20
|
abi;
|
|
20
21
|
cache;
|
|
21
22
|
market;
|
|
22
|
-
constructor(
|
|
23
|
-
this.
|
|
23
|
+
constructor(provider, address, cache, market) {
|
|
24
|
+
this.provider = provider;
|
|
24
25
|
this.address = address;
|
|
25
|
-
this.contract = (0, helpers_1.contractSetup)(
|
|
26
|
+
this.contract = (0, helpers_1.contractSetup)(provider, address, BaseCToken_json_1.default);
|
|
26
27
|
this.cache = cache;
|
|
27
28
|
this.market = market;
|
|
28
29
|
}
|
|
@@ -30,12 +31,16 @@ class CToken {
|
|
|
30
31
|
get borrowPaused() { return this.cache.borrowPaused; }
|
|
31
32
|
get collateralizationPaused() { return this.cache.collateralizationPaused; }
|
|
32
33
|
get mintPaused() { return this.cache.mintPaused; }
|
|
33
|
-
get collateralCap() { return this.cache.collateralCap; }
|
|
34
|
-
get debtCap() { return this.cache.debtCap; }
|
|
34
|
+
get collateralCap() { return (0, helpers_1.toDecimal)(this.cache.collateralCap, 18n); }
|
|
35
|
+
get debtCap() { return (0, helpers_1.toDecimal)(this.cache.debtCap, 18n); }
|
|
35
36
|
get marketManager() { return this.market; }
|
|
36
37
|
get decimals() { return this.cache.decimals; }
|
|
37
38
|
get symbol() { return this.cache.symbol; }
|
|
38
39
|
get name() { return this.cache.name; }
|
|
40
|
+
get collateral() { return (0, helpers_1.toDecimal)(this.cache.collateral, 18n); }
|
|
41
|
+
get debt() { return (0, helpers_1.toDecimal)(this.cache.debt, 18n); }
|
|
42
|
+
get remainingCollateral() { return this.cache.collateralCap - this.cache.collateral; }
|
|
43
|
+
get remainingDebt() { return this.cache.debtCap - this.cache.debt; }
|
|
39
44
|
get collRatio() { return this.cache.collRatio; }
|
|
40
45
|
get collReqSoft() { return this.cache.collReqSoft; }
|
|
41
46
|
get collReqHard() { return this.cache.collReqHard; }
|
|
@@ -47,12 +52,23 @@ class CToken {
|
|
|
47
52
|
get closeFactorCurve() { return this.cache.closeFactorCurve; }
|
|
48
53
|
get closeFactorMin() { return this.cache.closeFactorMin; }
|
|
49
54
|
get closeFactorMax() { return this.cache.closeFactorMax; }
|
|
50
|
-
get
|
|
51
|
-
get
|
|
55
|
+
get userShareBalance() { return this.cache.userShareBalance; }
|
|
56
|
+
get userAssetBalance() { return this.cache.userAssetBalance; }
|
|
57
|
+
get userDebt() { return this.cache.userDebt; }
|
|
58
|
+
get userCollateral() { return this.cache.userCollateral; }
|
|
52
59
|
get asset() { return this.cache.asset; }
|
|
53
60
|
get isBorrowable() { return this.cache.isBorrowable; }
|
|
61
|
+
get canZap() { return "simpleZapper" in this.market.plugins || "vaultZapper" in this.market.plugins; }
|
|
62
|
+
get canLeverage() { return "simplePositionManager" in this.market.plugins || "vaultPositionManager" in this.market.plugins; }
|
|
63
|
+
/**
|
|
64
|
+
* Grabs the collateralization ratio and converts it to a percentage.
|
|
65
|
+
* @returns percentage representation of the LTV (e.g. 0.75 for 75% LTV)
|
|
66
|
+
*/
|
|
67
|
+
ltv() {
|
|
68
|
+
return (0, decimal_js_1.default)(this.cache.collRatio).div(helpers_1.BPS);
|
|
69
|
+
}
|
|
54
70
|
getAsset(asErc20 = true) {
|
|
55
|
-
return asErc20 ? new ERC20_1.ERC20(this.
|
|
71
|
+
return asErc20 ? new ERC20_1.ERC20(this.provider, this.cache.asset.address, this.cache.asset) : this.cache.asset.address;
|
|
56
72
|
}
|
|
57
73
|
getPrice(lower = false, asset = false) {
|
|
58
74
|
let price = asset ? this.cache.assetPrice : this.cache.sharePrice;
|
|
@@ -62,8 +78,12 @@ class CToken {
|
|
|
62
78
|
// Use 1e18 always against USD
|
|
63
79
|
return (0, decimal_js_1.default)(price).div((0, decimal_js_1.default)(1e18));
|
|
64
80
|
}
|
|
81
|
+
getApy() {
|
|
82
|
+
// TODO: add underlying yield rate
|
|
83
|
+
return (0, decimal_js_1.default)(this.cache.supplyRate).div(helpers_1.BPS);
|
|
84
|
+
}
|
|
65
85
|
getTvl(inUSD = true) {
|
|
66
|
-
const tvl = this.cache.
|
|
86
|
+
const tvl = this.cache.totalSupply;
|
|
67
87
|
return inUSD ? this.convertTokensToUsd(tvl) : tvl;
|
|
68
88
|
}
|
|
69
89
|
async fetchTvl(inUSD = true) {
|
|
@@ -138,20 +158,16 @@ class CToken {
|
|
|
138
158
|
return this.contract.transfer(receiver, amount);
|
|
139
159
|
}
|
|
140
160
|
async redeemCollateral(shares, receiver, owner) {
|
|
141
|
-
|
|
142
|
-
return this.contract.redeemCollateral(shares, receiver, owner);
|
|
161
|
+
return this.oracleRoute("redeemCollateral", [shares, receiver, owner]);
|
|
143
162
|
}
|
|
144
163
|
async postCollateral(shares) {
|
|
145
|
-
|
|
146
|
-
return this.contract.postCollateral(shares);
|
|
164
|
+
return this.oracleRoute("postCollateral", [shares]);
|
|
147
165
|
}
|
|
148
166
|
async removeCollateral(shares) {
|
|
149
|
-
|
|
150
|
-
return this.contract.removeCollateral(shares);
|
|
167
|
+
return this.oracleRoute("removeCollateral", [shares]);
|
|
151
168
|
}
|
|
152
169
|
async withdrawCollateral(assets, receiver, owner) {
|
|
153
|
-
|
|
154
|
-
return this.contract.withdrawCollateral(assets, receiver, owner);
|
|
170
|
+
return this.oracleRoute("withdrawCollateral", [assets, receiver, owner]);
|
|
155
171
|
}
|
|
156
172
|
async convertToAssets(shares) {
|
|
157
173
|
return this.contract.convertToAssets(shares);
|
|
@@ -160,16 +176,22 @@ class CToken {
|
|
|
160
176
|
return this.contract.convertToShares(assets);
|
|
161
177
|
}
|
|
162
178
|
async deposit(assets, receiver) {
|
|
163
|
-
|
|
164
|
-
return this.contract.deposit(assets, receiver);
|
|
179
|
+
return this.oracleRoute("deposit", [assets, receiver]);
|
|
165
180
|
}
|
|
166
181
|
async depositAsCollateral(assets, receiver) {
|
|
167
|
-
|
|
168
|
-
|
|
182
|
+
const collateralCapError = "There is not enough collateral left in this tokens collateral cap for this deposit.";
|
|
183
|
+
if (this.remainingCollateral == 0n)
|
|
184
|
+
throw new Error(collateralCapError);
|
|
185
|
+
if (this.remainingCollateral > 0n) {
|
|
186
|
+
const shares = await this.convertToShares(assets);
|
|
187
|
+
if (shares > this.remainingCollateral) {
|
|
188
|
+
throw new Error(collateralCapError);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return this.oracleRoute("depositAsCollateral", [assets, receiver]);
|
|
169
192
|
}
|
|
170
193
|
async redeem(shares, receiver, owner) {
|
|
171
|
-
|
|
172
|
-
return this.contract.redeem(shares, receiver, owner);
|
|
194
|
+
return this.oracleRoute("redeem", [shares, receiver, owner]);
|
|
173
195
|
}
|
|
174
196
|
async collateralPosted(account) {
|
|
175
197
|
return this.contract.collateralPosted(account);
|
|
@@ -197,48 +219,69 @@ class CToken {
|
|
|
197
219
|
const tokenAmountDecimal = (0, decimal_js_1.default)(tokenAmount).div(helpers_1.WAD_DECIMAL);
|
|
198
220
|
return this.getPrice().mul(tokenAmountDecimal);
|
|
199
221
|
}
|
|
222
|
+
buildMultiCall(functionName, exec_params) {
|
|
223
|
+
const encodedFunc = this.contract.interface.encodeFunctionData(functionName, exec_params);
|
|
224
|
+
return {
|
|
225
|
+
target: this.address,
|
|
226
|
+
isPriceUpdate: false,
|
|
227
|
+
data: encodedFunc
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
async oracleRoute(functionName, exec_params) {
|
|
231
|
+
const adapter_enums = this.adapters.map(num => Number(num));
|
|
232
|
+
if (adapter_enums.includes(ProtocolReader_1.AdaptorTypes.REDSTONE_CORE)) {
|
|
233
|
+
const price_update = await Redstone_1.Redstone.buildMulticallStruct(this);
|
|
234
|
+
const token_action = await this.buildMultiCall(functionName, exec_params);
|
|
235
|
+
return this.multicall([price_update, token_action]);
|
|
236
|
+
}
|
|
237
|
+
return this.contract[functionName](...exec_params);
|
|
238
|
+
}
|
|
200
239
|
}
|
|
201
240
|
exports.CToken = CToken;
|
|
202
241
|
// BorrowableCToken
|
|
203
242
|
class BorrowableCToken extends CToken {
|
|
204
243
|
contract;
|
|
205
|
-
constructor(
|
|
206
|
-
super(
|
|
207
|
-
this.contract = (0, helpers_1.contractSetup)(
|
|
244
|
+
constructor(provider, address, cache, market) {
|
|
245
|
+
super(provider, address, cache, market);
|
|
246
|
+
this.contract = (0, helpers_1.contractSetup)(provider, address, BorrowableCToken_json_1.default);
|
|
208
247
|
}
|
|
209
248
|
get liquidity() { return this.cache.liquidity; }
|
|
210
249
|
get borrowRate() { return this.cache.borrowRate; }
|
|
211
250
|
get predictedBorrowRate() { return this.cache.predictedBorrowRate; }
|
|
212
251
|
get utilizationRate() { return this.cache.utilizationRate; }
|
|
213
252
|
get supplyRate() { return this.cache.supplyRate; }
|
|
214
|
-
getPrice(lower = true, asset = false) {
|
|
215
|
-
let price = asset ? this.cache.assetPrice : this.cache.sharePrice;
|
|
216
|
-
if (lower) {
|
|
217
|
-
price = asset ? this.cache.assetPriceLower : this.cache.sharePriceLower;
|
|
218
|
-
}
|
|
219
|
-
return (0, decimal_js_1.default)(price).div((0, decimal_js_1.default)(1e18));
|
|
220
|
-
}
|
|
221
253
|
getTotalDebt(inUSD = true) {
|
|
222
254
|
const totalDebt = this.cache.debt;
|
|
223
255
|
return inUSD ? this.convertTokensToUsd(totalDebt) : totalDebt;
|
|
224
256
|
}
|
|
257
|
+
async depositAsCollateral(assets, receiver) {
|
|
258
|
+
if (this.cache.userDebt > 0) {
|
|
259
|
+
throw new Error("Cannot deposit as collateral when there is outstanding debt");
|
|
260
|
+
}
|
|
261
|
+
return this.oracleRoute("depositAsCollateral", [assets, receiver]);
|
|
262
|
+
}
|
|
263
|
+
async postCollateral(shares) {
|
|
264
|
+
if (this.cache.userDebt > 0) {
|
|
265
|
+
throw new Error("Cannot post collateral when there is outstanding debt");
|
|
266
|
+
}
|
|
267
|
+
return this.oracleRoute("postCollateral", [shares]);
|
|
268
|
+
}
|
|
225
269
|
async fetchTotalDebt(inUSD = true) {
|
|
226
270
|
const totalDebt = await this.contract.marketOutstandingDebt();
|
|
227
271
|
return inUSD ? this.fetchConvertTokensToUsd(totalDebt) : totalDebt;
|
|
228
272
|
}
|
|
229
273
|
async borrow(amount, receiver) {
|
|
230
|
-
|
|
231
|
-
return this.contract.borrow(amount, receiver);
|
|
274
|
+
return this.oracleRoute("borrow", [amount, receiver]);
|
|
232
275
|
}
|
|
233
276
|
async dynamicIRM() {
|
|
234
277
|
const irm_addr = await this.contract.IRM();
|
|
235
|
-
return (0, helpers_1.contractSetup)(this.
|
|
278
|
+
return (0, helpers_1.contractSetup)(this.provider, irm_addr, IDynamicIRM_json_1.default);
|
|
236
279
|
}
|
|
237
280
|
async fetchBorrowRate() {
|
|
238
281
|
const irm = await this.dynamicIRM();
|
|
239
282
|
const assetsHeld = await this.totalAssets();
|
|
240
283
|
const debt = await this.contract.marketOutstandingDebt();
|
|
241
|
-
const borrowRate = (await irm.borrowRate(assetsHeld, debt)) * SECONDS_PER_YEAR;
|
|
284
|
+
const borrowRate = (await irm.borrowRate(assetsHeld, debt)) * helpers_1.SECONDS_PER_YEAR;
|
|
242
285
|
this.cache.borrowRate = borrowRate;
|
|
243
286
|
return borrowRate;
|
|
244
287
|
}
|
|
@@ -246,7 +289,7 @@ class BorrowableCToken extends CToken {
|
|
|
246
289
|
const irm = await this.dynamicIRM();
|
|
247
290
|
const assetsHeld = await this.totalAssets();
|
|
248
291
|
const debt = await this.contract.marketOutstandingDebt();
|
|
249
|
-
const predictedBorrowRate = (await irm.predictedBorrowRate(assetsHeld, debt)) * SECONDS_PER_YEAR;
|
|
292
|
+
const predictedBorrowRate = (await irm.predictedBorrowRate(assetsHeld, debt)) * helpers_1.SECONDS_PER_YEAR;
|
|
250
293
|
this.cache.predictedBorrowRate = predictedBorrowRate;
|
|
251
294
|
return predictedBorrowRate;
|
|
252
295
|
}
|
|
@@ -254,7 +297,7 @@ class BorrowableCToken extends CToken {
|
|
|
254
297
|
const irm = await this.dynamicIRM();
|
|
255
298
|
const assetsHeld = await this.totalAssets();
|
|
256
299
|
const debt = await this.contract.marketOutstandingDebt();
|
|
257
|
-
const utilizationRate = (await irm.utilizationRate(assetsHeld, debt)) * SECONDS_PER_YEAR;
|
|
300
|
+
const utilizationRate = (await irm.utilizationRate(assetsHeld, debt)) * helpers_1.SECONDS_PER_YEAR;
|
|
258
301
|
this.cache.utilizationRate = utilizationRate;
|
|
259
302
|
return utilizationRate;
|
|
260
303
|
}
|
|
@@ -263,7 +306,7 @@ class BorrowableCToken extends CToken {
|
|
|
263
306
|
const assetsHeld = await this.totalAssets();
|
|
264
307
|
const debt = await this.contract.marketOutstandingDebt();
|
|
265
308
|
const fee = await this.contract.interestFee();
|
|
266
|
-
const supplyRate = (await irm.supplyRate(assetsHeld, debt, fee)) * SECONDS_PER_YEAR;
|
|
309
|
+
const supplyRate = (await irm.supplyRate(assetsHeld, debt, fee)) * helpers_1.SECONDS_PER_YEAR;
|
|
267
310
|
this.cache.supplyRate = supplyRate;
|
|
268
311
|
return supplyRate;
|
|
269
312
|
}
|
|
@@ -275,8 +318,7 @@ class BorrowableCToken extends CToken {
|
|
|
275
318
|
return liquidity;
|
|
276
319
|
}
|
|
277
320
|
async repay(amount) {
|
|
278
|
-
|
|
279
|
-
return this.contract.repay(amount);
|
|
321
|
+
return this.oracleRoute("repay", [amount]);
|
|
280
322
|
}
|
|
281
323
|
async interestFee() {
|
|
282
324
|
return this.contract.interestFee();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":";;;;;;AACA,wCAA0F;AAC1F,qDAAwG;AACxG,mCAAgC;AAEhC,4DAAiC;AACjC,8EAAsD;AACtD,0FAAkE;AAClE,gFAA+C;AAE/C,yCAAsC;AAoEtC,iBAAiB;AACjB,MAAa,MAAM;IACf,QAAQ,CAAoB;IAC5B,OAAO,CAAU;IACjB,QAAQ,CAAqB;IAC7B,GAAG,CAAM;IACT,KAAK,CAA2D;IAChE,MAAM,CAAS;IAEf,YACI,QAA2B,EAC3B,OAAgB,EAChB,KAA+D,EAC/D,MAAc;QAEd,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAA,uBAAa,EAAU,QAAQ,EAAE,OAAO,EAAE,yBAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,IAAI,YAAY,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAA,CAAC,CAAC;IACrD,IAAI,uBAAuB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAA,CAAC,CAAC;IAC3E,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAA,CAAC,CAAC;IACjD,IAAI,aAAa,KAAK,OAAO,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;IACvE,IAAI,OAAO,KAAK,OAAO,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;IAC3D,IAAI,aAAa,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACtC,IAAI,UAAU,KAAK,OAAO,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;IACjE,IAAI,IAAI,KAAK,OAAO,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;IACrD,IAAI,mBAAmB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAA,CAAC,CAAC;IACrF,IAAI,aAAa,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA,CAAC,CAAC;IACnE,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA,CAAC,CAAC;IAC/C,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA,CAAC,CAAC;IACnD,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA,CAAC,CAAC;IACnD,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAA,CAAC,CAAC;IACjD,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA,CAAC,CAAC;IACnD,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA,CAAC,CAAC;IAC/C,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA,CAAC,CAAC;IAC/C,IAAI,eAAe,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAA,CAAC,CAAC;IAC3D,IAAI,gBAAgB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAA,CAAC,CAAC;IAC7D,IAAI,cAAc,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAA,CAAC,CAAC;IACzD,IAAI,cAAc,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1D,IAAI,gBAAgB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,IAAI,gBAAgB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,IAAI,cAAc,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1D,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA,CAAC,CAAC;IACvC,IAAI,YAAY,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,IAAI,MAAM,KAAK,OAAO,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA,CAAC,CAAC;IACrG,IAAI,WAAW,KAAK,OAAO,uBAAuB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,sBAAsB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA,CAAC,CAAC;IAG5H;;;OAGG;IACH,GAAG;QACC,OAAO,IAAA,oBAAO,EAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,aAAG,CAAe,CAAC;IAChE,CAAC;IAED,QAAQ,CAAC,OAAO,GAAG,IAAI;QACnB,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,aAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAA;IACpH,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK;QACjC,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAClE,IAAG,KAAK,EAAE,CAAC;YACP,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;QAC5E,CAAC;QAED,8BAA8B;QAC9B,OAAO,IAAA,oBAAO,EAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAA,oBAAO,EAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM;QACF,kCAAkC;QAClC,OAAO,IAAA,oBAAO,EAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,aAAG,CAAC,CAAC;IACnD,CAAC;IAID,MAAM,CAAC,KAAK,GAAG,IAAI;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QACnC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,CAAC;IAID,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3D,CAAC;IAID,kBAAkB,CAAC,KAAK,GAAG,IAAI;QAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IAC9E,CAAC;IAID,KAAK,CAAC,oBAAoB,CAAC,KAAK,GAAG,IAAI;QACnC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACrE,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACrC,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC;QACpC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,sBAAsB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,SAAS;QACX,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,EAAE,KAAK,GAAG,IAAI;QAC3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAEvF,IAAG,QAAQ,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;QAClC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,YAAY;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,sBAAsB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAgB;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAiB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAiB,EAAE,MAAc;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc,EAAE,QAAiB,EAAE,KAAc;QACpE,OAAO,IAAI,CAAC,WAAW,CACnB,kBAAkB,EAClB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAC5B,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,OAAO,IAAI,CAAC,WAAW,CACnB,gBAAgB,EAChB,CAAC,MAAM,CAAC,CACX,CAAC;IACN,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACjC,OAAO,IAAI,CAAC,WAAW,CACnB,kBAAkB,EAClB,CAAC,MAAM,CAAC,CACX,CAAC;IACN,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAAc,EAAE,QAAiB,EAAE,KAAc;QACtE,OAAO,IAAI,CAAC,WAAW,CACnB,oBAAoB,EACpB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAC5B,CAAC;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,QAAiB;QAC3C,OAAO,IAAI,CAAC,WAAW,CACnB,SAAS,EACT,CAAC,MAAM,EAAE,QAAQ,CAAC,CACrB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAc,EAAE,QAAiB;QACvD,MAAM,kBAAkB,GAAG,qFAAqF,CAAC;QACjH,IAAG,IAAI,CAAC,mBAAmB,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACvE,IAAG,IAAI,CAAC,mBAAmB,GAAG,EAAE,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAClD,IAAG,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CACnB,qBAAqB,EACrB,CAAC,MAAM,EAAE,QAAQ,CAAC,CACrB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,QAAiB,EAAE,KAAc;QAC1D,OAAO,IAAI,CAAC,WAAW,CACnB,QAAQ,EACR,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAC5B,CAAC;IACN,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAgB;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAwB;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAgB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO;YACH,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC3C,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACnD,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;SAC5C,CAAA;IACL,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,WAAmB;QAC7C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5C,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,kBAAkB,CAAC,WAAmB;QAClC,MAAM,kBAAkB,GAAG,IAAA,oBAAO,EAAC,WAAW,CAAC,CAAC,GAAG,CAAC,qBAAW,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACnD,CAAC;IAED,cAAc,CAAC,YAAoB,EAAE,WAAkB;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAC1F,OAAO;YACH,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,aAAa,EAAE,KAAK;YACpB,IAAI,EAAE,WAAW;SACD,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,WAAW,CACb,YAAe,EACf,WAAyD;QAEzD,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5D,IAAG,aAAa,CAAC,QAAQ,CAAC,6BAAY,CAAC,aAAa,CAAC,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,MAAM,mBAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC/D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAsB,EAAE,WAAW,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QACxD,CAAC;QAED,OAAQ,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAc,CAAC,GAAG,WAAW,CAAC,CAAC;IACrE,CAAC;CACJ;AAhTD,wBAgTC;AAED,mBAAmB;AACnB,MAAa,gBAAiB,SAAQ,MAAM;IAC/B,QAAQ,CAA+B;IAEhD,YACI,QAA2B,EAC3B,OAAgB,EAChB,KAA+D,EAC/D,MAAc;QAEd,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAA,uBAAa,EAAoB,QAAQ,EAAE,OAAO,EAAE,+BAAqB,CAAC,CAAC;IAC/F,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAClD,IAAI,mBAAmB,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACpE,IAAI,eAAe,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IAC5D,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAIlD,YAAY,CAAC,KAAK,GAAG,IAAI;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAClC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;IAEQ,KAAK,CAAC,mBAAmB,CAAC,MAAc,EAAE,QAAiB;QAChE,IAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CACnB,qBAAqB,EACrB,CAAC,MAAM,EAAE,QAAQ,CAAC,CACrB,CAAC;IACN,CAAC;IAEQ,KAAK,CAAC,cAAc,CAAC,MAAc;QACxC,IAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CACnB,gBAAgB,EAChB,CAAC,MAAM,CAAC,CACX,CAAC;IACN,CAAC;IAID,KAAK,CAAC,cAAc,CAAC,KAAK,GAAG,IAAI;QAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,QAAiB;QAC1C,OAAO,IAAI,CAAC,WAAW,CACnB,QAAQ,EACR,CAAC,MAAM,EAAE,QAAQ,CAAC,CACrB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAC3C,OAAO,IAAA,uBAAa,EAAc,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,0BAAO,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,eAAe;QACjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,0BAAgB,CAAC;QAC/E,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,mBAAmB,GAAG,CAAC,MAAM,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,0BAAgB,CAAC;QACjG,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QACrD,OAAO,mBAAmB,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,oBAAoB;QACtB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,eAAe,GAAG,CAAC,MAAM,GAAG,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,0BAAgB,CAAC;QACzF,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,eAAe,CAAC;QAC7C,OAAO,eAAe,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,eAAe;QACjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,0BAAgB,CAAC;QACpF,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,SAAS,GAAG,UAAU,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc;QACtB,OAAO,IAAI,CAAC,WAAW,CACnB,OAAO,EACP,CAAC,MAAM,CAAC,CACX,CAAC;IACN,CAAC;IAED,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,qBAAqB;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAgB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;CACJ;AAlID,4CAkIC"}
|
package/dist/classes/ERC20.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TransactionResponse } from "ethers";
|
|
2
2
|
import { Contract } from "ethers";
|
|
3
3
|
import { StaticMarketAsset } from "./ProtocolReader";
|
|
4
|
-
import { address,
|
|
4
|
+
import { address, curvance_provider } from "../types";
|
|
5
5
|
export interface IERC20 {
|
|
6
6
|
balanceOf(account: address): Promise<bigint>;
|
|
7
7
|
transfer(to: address, amount: bigint): Promise<TransactionResponse>;
|
|
@@ -10,14 +10,14 @@ export interface IERC20 {
|
|
|
10
10
|
symbol(): Promise<string>;
|
|
11
11
|
decimals(): Promise<bigint>;
|
|
12
12
|
totalSupply(): Promise<bigint>;
|
|
13
|
-
allowance(owner: address, spender: address): Promise<
|
|
13
|
+
allowance(owner: address, spender: address): Promise<bigint>;
|
|
14
14
|
}
|
|
15
15
|
export declare class ERC20 {
|
|
16
|
-
|
|
16
|
+
provider: curvance_provider;
|
|
17
17
|
address: address;
|
|
18
18
|
contract: Contract & IERC20;
|
|
19
19
|
cache: StaticMarketAsset | undefined;
|
|
20
|
-
constructor(
|
|
20
|
+
constructor(provider: curvance_provider, address: address, cache?: StaticMarketAsset | undefined);
|
|
21
21
|
get name(): string | undefined;
|
|
22
22
|
get symbol(): string | undefined;
|
|
23
23
|
get decimals(): bigint | undefined;
|
|
@@ -29,7 +29,7 @@ export declare class ERC20 {
|
|
|
29
29
|
fetchSymbol(): Promise<string>;
|
|
30
30
|
fetchDecimals(): Promise<bigint>;
|
|
31
31
|
fetchTotalSupply(): Promise<bigint>;
|
|
32
|
-
allowance(owner: address, spender: address): Promise<
|
|
32
|
+
allowance(owner: address, spender: address): Promise<bigint>;
|
|
33
33
|
private setCache;
|
|
34
34
|
}
|
|
35
35
|
//# sourceMappingURL=ERC20.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ERC20.d.ts","sourceRoot":"","sources":["../../src/classes/ERC20.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ERC20.d.ts","sourceRoot":"","sources":["../../src/classes/ERC20.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEtD,MAAM,WAAW,MAAM;IACnB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACpE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxE,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAChE;AAED,qBAAa,KAAK;IACd,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B,KAAK,EAAE,iBAAiB,GAAG,SAAS,CAAa;gBAG7C,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,OAAO,EAChB,KAAK,GAAE,iBAAiB,GAAG,SAAqB;IAgBpD,IAAI,IAAI,uBAA+B;IACvC,IAAI,MAAM,uBAAiC;IAC3C,IAAI,QAAQ,uBAAmC;IAC/C,IAAI,WAAW,uBAAsC;IAE/C,SAAS,CAAC,OAAO,EAAE,OAAO;IAI1B,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAIpC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAIxC,SAAS;IAMT,WAAW;IAMX,aAAa;IAMb,gBAAgB;IAMhB,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAIhD,OAAO,CAAC,QAAQ;CAMnB"}
|
package/dist/classes/ERC20.js
CHANGED
|
@@ -3,15 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ERC20 = void 0;
|
|
4
4
|
const helpers_1 = require("../helpers");
|
|
5
5
|
class ERC20 {
|
|
6
|
-
|
|
6
|
+
provider;
|
|
7
7
|
address;
|
|
8
8
|
contract;
|
|
9
9
|
cache = undefined;
|
|
10
|
-
constructor(
|
|
11
|
-
this.
|
|
10
|
+
constructor(provider, address, cache = undefined) {
|
|
11
|
+
this.provider = provider;
|
|
12
12
|
this.address = address;
|
|
13
13
|
this.cache = cache;
|
|
14
|
-
this.contract = (0, helpers_1.contractSetup)(
|
|
14
|
+
this.contract = (0, helpers_1.contractSetup)(provider, address, [
|
|
15
15
|
"function balanceOf(address owner) view returns (uint256)",
|
|
16
16
|
"function transfer(address to, uint256 amount) returns (bool)",
|
|
17
17
|
"function approve(address spender, uint256 amount) returns (bool)",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ERC20.js","sourceRoot":"","sources":["../../src/classes/ERC20.ts"],"names":[],"mappings":";;;AACA,wCAA2C;AAgB3C,MAAa,KAAK;IACd,
|
|
1
|
+
{"version":3,"file":"ERC20.js","sourceRoot":"","sources":["../../src/classes/ERC20.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/Faucet.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Contract } from "ethers";
|
|
2
2
|
import { TransactionResponse } from "ethers";
|
|
3
|
-
import { address,
|
|
3
|
+
import { address, curvance_provider } from "../types";
|
|
4
4
|
export interface IFaucet {
|
|
5
5
|
userLastClaimed(user: address, token: address): Promise<bigint>;
|
|
6
6
|
multiLastClaimed(user: address, tokens: address[]): Promise<bigint[]>;
|
|
@@ -9,16 +9,16 @@ export interface IFaucet {
|
|
|
9
9
|
multiIsAvailable(tokenAddrs: address[], amounts: bigint[]): Promise<boolean[]>;
|
|
10
10
|
}
|
|
11
11
|
export declare class Faucet {
|
|
12
|
-
|
|
12
|
+
provider: curvance_provider;
|
|
13
13
|
address: address;
|
|
14
14
|
contract: Contract & IFaucet;
|
|
15
|
-
constructor(
|
|
15
|
+
constructor(provider: curvance_provider, address: address);
|
|
16
16
|
isAvailable(tokenAddr: address, amount: bigint): Promise<boolean>;
|
|
17
17
|
multiIsAvailable(tokenAddrs: address[], amounts: bigint[]): Promise<{
|
|
18
18
|
[address: `0x${string}`]: boolean;
|
|
19
19
|
}>;
|
|
20
20
|
lastClaimed(user: address, token: address): Promise<bigint>;
|
|
21
|
-
multiLastClaimed(user: address, tokens: address[]): Promise<
|
|
21
|
+
multiLastClaimed(user: address, tokens: address[]): Promise<Date[]>;
|
|
22
22
|
multiClaim(user: address, tokens: address[], amounts: bigint[]): Promise<TransactionResponse>;
|
|
23
23
|
claim(user: address, token: address, amount: bigint): Promise<TransactionResponse>;
|
|
24
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Faucet.d.ts","sourceRoot":"","sources":["../../src/classes/Faucet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Faucet.d.ts","sourceRoot":"","sources":["../../src/classes/Faucet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEtD,MAAM,WAAW,OAAO;IACpB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtE,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9F,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnF,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CAClF;AAED,qBAAa,MAAM;IACf,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;gBAEjB,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO;IAYnD,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAM9C,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;;;IAWzD,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;IAIzC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;IAWjD,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;IAI9D,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;CAG5D"}
|
package/dist/classes/Faucet.js
CHANGED
|
@@ -4,13 +4,13 @@ exports.Faucet = void 0;
|
|
|
4
4
|
const helpers_1 = require("../helpers");
|
|
5
5
|
const ERC20_1 = require("./ERC20");
|
|
6
6
|
class Faucet {
|
|
7
|
-
|
|
7
|
+
provider;
|
|
8
8
|
address;
|
|
9
9
|
contract;
|
|
10
|
-
constructor(
|
|
11
|
-
this.
|
|
10
|
+
constructor(provider, address) {
|
|
11
|
+
this.provider = provider;
|
|
12
12
|
this.address = address;
|
|
13
|
-
this.contract = (0, helpers_1.contractSetup)(
|
|
13
|
+
this.contract = (0, helpers_1.contractSetup)(provider, this.address, [
|
|
14
14
|
"function userLastClaimed(address user, address token) view returns (uint256)",
|
|
15
15
|
"function multiLastClaimed(address user, address[] tokens) view returns (uint256[])",
|
|
16
16
|
"function multiClaim(address user, address[] tokens, uint256[] amounts) external",
|
|
@@ -19,7 +19,7 @@ class Faucet {
|
|
|
19
19
|
]);
|
|
20
20
|
}
|
|
21
21
|
async isAvailable(tokenAddr, amount) {
|
|
22
|
-
const token = new ERC20_1.ERC20(this.
|
|
22
|
+
const token = new ERC20_1.ERC20(this.provider, tokenAddr);
|
|
23
23
|
const faucetBalance = await token.balanceOf(this.address);
|
|
24
24
|
return amount <= faucetBalance;
|
|
25
25
|
}
|
|
@@ -35,7 +35,12 @@ class Faucet {
|
|
|
35
35
|
return this.contract.userLastClaimed(user, token);
|
|
36
36
|
}
|
|
37
37
|
async multiLastClaimed(user, tokens) {
|
|
38
|
-
|
|
38
|
+
const claims = await this.contract.multiLastClaimed(user, tokens);
|
|
39
|
+
let claim_dates = [];
|
|
40
|
+
for (const claim of claims) {
|
|
41
|
+
claim_dates.push(new Date(Number(claim) * 1000));
|
|
42
|
+
}
|
|
43
|
+
return claim_dates;
|
|
39
44
|
}
|
|
40
45
|
async multiClaim(user, tokens, amounts) {
|
|
41
46
|
return this.contract.multiClaim(user, tokens, amounts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Faucet.js","sourceRoot":"","sources":["../../src/classes/Faucet.ts"],"names":[],"mappings":";;;AAAA,wCAA2C;AAC3C,mCAAgC;AAahC,MAAa,MAAM;IACf,
|
|
1
|
+
{"version":3,"file":"Faucet.js","sourceRoot":"","sources":["../../src/classes/Faucet.ts"],"names":[],"mappings":";;;AAAA,wCAA2C;AAC3C,mCAAgC;AAahC,MAAa,MAAM;IACf,QAAQ,CAAoB;IAC5B,OAAO,CAAU;IACjB,QAAQ,CAAqB;IAE7B,YAAY,QAA2B,EAAE,OAAgB;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAA,uBAAa,EAAU,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE;YAC3D,8EAA8E;YAC9E,oFAAoF;YACpF,iFAAiF;YACjF,sEAAsE;YACtE,0FAA0F;SAC7F,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAkB,EAAE,MAAc;QAChD,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO,MAAM,IAAI,aAAa,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAqB,EAAE,OAAiB;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAEvE,IAAI,YAAY,GAAoC,EAAE,CAAC;QACvD,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACtD,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAa,EAAE,KAAc;QAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAa,EAAE,MAAiB;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAElE,IAAI,WAAW,GAAW,EAAE,CAAC;QAC7B,KAAI,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAa,EAAE,MAAiB,EAAE,OAAiB;QAChE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAa,EAAE,KAAc,EAAE,MAAc;QACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;CACJ;AAxDD,wBAwDC"}
|
package/dist/classes/Market.d.ts
CHANGED
|
@@ -2,13 +2,19 @@ import { Contract } from "ethers";
|
|
|
2
2
|
import { DynamicMarketData, ProtocolReader, StaticMarketData, UserMarket } from "./ProtocolReader";
|
|
3
3
|
import { BorrowableCToken, CToken } from "./CToken";
|
|
4
4
|
import { Decimal } from "decimal.js";
|
|
5
|
-
import { address,
|
|
5
|
+
import { address, curvance_provider } from "../types";
|
|
6
6
|
import { OracleManager } from "./OracleManager";
|
|
7
7
|
export interface StatusOf {
|
|
8
8
|
collateral: bigint;
|
|
9
9
|
maxDebt: bigint;
|
|
10
10
|
debt: bigint;
|
|
11
11
|
}
|
|
12
|
+
export interface DeployData {
|
|
13
|
+
name: string;
|
|
14
|
+
plugins: {
|
|
15
|
+
[key: string]: address;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
12
18
|
export interface LiquidationStatusOf {
|
|
13
19
|
lFactor: bigint;
|
|
14
20
|
collateralPrice: bigint;
|
|
@@ -25,30 +31,62 @@ export interface IMarket {
|
|
|
25
31
|
hypotheticalLiquidityOf(account: address, cTokenModified: address, redemptionShares: bigint, borrowAssets: bigint): Promise<HypotheticalLiquidityOf>;
|
|
26
32
|
statusOf(account: address): Promise<StatusOf>;
|
|
27
33
|
liquidationStatusOf(account: address, collateralToken: address, debtToken: address): Promise<LiquidationStatusOf>;
|
|
34
|
+
liquidationValuesOf(account: address): Promise<{
|
|
35
|
+
soft: bigint;
|
|
36
|
+
hard: bigint;
|
|
37
|
+
debt: bigint;
|
|
38
|
+
}>;
|
|
28
39
|
}
|
|
29
40
|
export declare class Market {
|
|
30
|
-
|
|
41
|
+
provider: curvance_provider;
|
|
31
42
|
address: address;
|
|
32
43
|
contract: Contract & IMarket;
|
|
33
|
-
abi: any;
|
|
34
|
-
adapters: bigint[];
|
|
35
|
-
cooldownLength: bigint;
|
|
36
44
|
tokens: (CToken | BorrowableCToken)[];
|
|
37
45
|
oracle_manager: OracleManager;
|
|
46
|
+
reader: ProtocolReader;
|
|
38
47
|
cache: {
|
|
39
48
|
static: StaticMarketData;
|
|
40
49
|
dynamic: DynamicMarketData;
|
|
41
50
|
user: UserMarket;
|
|
51
|
+
deploy: DeployData;
|
|
52
|
+
};
|
|
53
|
+
constructor(provider: curvance_provider, static_data: StaticMarketData, dynamic_data: DynamicMarketData, user_data: UserMarket, deploy_data: DeployData, oracle_manager: OracleManager, reader: ProtocolReader);
|
|
54
|
+
get positionHealth(): bigint;
|
|
55
|
+
get userCollateral(): Decimal;
|
|
56
|
+
get userDebt(): Decimal;
|
|
57
|
+
get userMaxDebt(): Decimal;
|
|
58
|
+
get cooldown(): Date | null;
|
|
59
|
+
get adapters(): bigint[];
|
|
60
|
+
get cooldownLength(): bigint;
|
|
61
|
+
get name(): string;
|
|
62
|
+
get plugins(): {
|
|
63
|
+
[key: string]: `0x${string}`;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Get the total user deposits in USD.
|
|
67
|
+
* @returns {Decimal} - The total user deposits in USD.
|
|
68
|
+
*/
|
|
69
|
+
get userDeposits(): Decimal;
|
|
70
|
+
get ltv(): string | {
|
|
71
|
+
min: Decimal;
|
|
72
|
+
max: Decimal;
|
|
42
73
|
};
|
|
43
|
-
constructor(signer: curvance_signer, static_data: StaticMarketData, dynamic_data: DynamicMarketData, user_data: UserMarket, oracle_manager: OracleManager);
|
|
44
74
|
get tvl(): Decimal;
|
|
45
75
|
get totalDebt(): Decimal;
|
|
46
76
|
get totalCollateral(): Decimal;
|
|
77
|
+
highestApy(): Decimal;
|
|
78
|
+
hasBorrowing(): boolean;
|
|
47
79
|
statusOf(account: address): Promise<{
|
|
48
80
|
collateral: bigint;
|
|
49
81
|
maxDebt: bigint;
|
|
50
82
|
debt: bigint;
|
|
51
83
|
}>;
|
|
84
|
+
previewAssetImpact(user: address, collateral_ctoken: address, debt_ctoken: address, deposit_amount: bigint): Promise<{
|
|
85
|
+
supply: bigint;
|
|
86
|
+
borrow: bigint;
|
|
87
|
+
earn: bigint;
|
|
88
|
+
}>;
|
|
89
|
+
previewPositionHealth(debt_change: bigint): Promise<bigint>;
|
|
52
90
|
liquidationStatusOf(account: address, collateralToken: address, debtToken: address): Promise<{
|
|
53
91
|
lFactor: bigint;
|
|
54
92
|
collateralPrice: bigint;
|
|
@@ -63,6 +101,8 @@ export declare class Market {
|
|
|
63
101
|
multiHoldExpiresAt(markets: Market[], reader: ProtocolReader): Promise<{
|
|
64
102
|
[address: `0x${string}`]: Date | null;
|
|
65
103
|
}>;
|
|
66
|
-
static getAll(
|
|
104
|
+
static getAll(provider: curvance_provider, reader: ProtocolReader, oracle_manager: OracleManager, all_deploy_data: {
|
|
105
|
+
[key: string]: any;
|
|
106
|
+
}): Promise<Market[]>;
|
|
67
107
|
}
|
|
68
108
|
//# sourceMappingURL=Market.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Market.d.ts","sourceRoot":"","sources":["../../src/classes/Market.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"Market.d.ts","sourceRoot":"","sources":["../../src/classes/Market.ts"],"names":[],"mappings":"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"}
|