@xccy/ts-sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +25 -0
- package/src/addresses.ts +14 -0
- package/src/index.ts +6 -0
- package/src/typechain/CollateralEngine.ts +1753 -0
- package/src/typechain/VAMMManager.ts +796 -0
- package/src/typechain/common.ts +131 -0
- package/src/typechain/factories/CollateralEngine__factory.ts +2590 -0
- package/src/typechain/factories/VAMMManager__factory.ts +1080 -0
- package/src/typechain/factories/index.ts +5 -0
- package/src/typechain/index.ts +8 -0
|
@@ -0,0 +1,2590 @@
|
|
|
1
|
+
/* Autogenerated file. Do not edit manually. */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
import {
|
|
5
|
+
Contract,
|
|
6
|
+
ContractFactory,
|
|
7
|
+
ContractTransactionResponse,
|
|
8
|
+
Interface,
|
|
9
|
+
} from "ethers";
|
|
10
|
+
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
|
|
11
|
+
import type { NonPayableOverrides } from "../common";
|
|
12
|
+
import type {
|
|
13
|
+
CollateralEngine,
|
|
14
|
+
CollateralEngineInterface,
|
|
15
|
+
} from "../CollateralEngine";
|
|
16
|
+
|
|
17
|
+
const _abi = [
|
|
18
|
+
{
|
|
19
|
+
type: "constructor",
|
|
20
|
+
inputs: [],
|
|
21
|
+
stateMutability: "nonpayable",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
type: "function",
|
|
25
|
+
name: "acceptOwnership",
|
|
26
|
+
inputs: [],
|
|
27
|
+
outputs: [],
|
|
28
|
+
stateMutability: "nonpayable",
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
type: "function",
|
|
32
|
+
name: "aprOracle",
|
|
33
|
+
inputs: [],
|
|
34
|
+
outputs: [
|
|
35
|
+
{
|
|
36
|
+
name: "",
|
|
37
|
+
type: "address",
|
|
38
|
+
internalType: "contract IAprOracle",
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
stateMutability: "view",
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
type: "function",
|
|
45
|
+
name: "calculateAccountObligation",
|
|
46
|
+
inputs: [
|
|
47
|
+
{
|
|
48
|
+
name: "account",
|
|
49
|
+
type: "tuple",
|
|
50
|
+
internalType: "struct Account.AccountId",
|
|
51
|
+
components: [
|
|
52
|
+
{
|
|
53
|
+
name: "owner",
|
|
54
|
+
type: "address",
|
|
55
|
+
internalType: "address",
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "id",
|
|
59
|
+
type: "uint96",
|
|
60
|
+
internalType: "uint96",
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: "isolatedMarginToken",
|
|
64
|
+
type: "address",
|
|
65
|
+
internalType: "address",
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: "includePositionsGrowth",
|
|
71
|
+
type: "bool",
|
|
72
|
+
internalType: "bool",
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
outputs: [
|
|
76
|
+
{
|
|
77
|
+
name: "usdObligations",
|
|
78
|
+
type: "uint256",
|
|
79
|
+
internalType: "uint256",
|
|
80
|
+
},
|
|
81
|
+
],
|
|
82
|
+
stateMutability: "view",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: "function",
|
|
86
|
+
name: "calculateAccountObligation",
|
|
87
|
+
inputs: [
|
|
88
|
+
{
|
|
89
|
+
name: "account",
|
|
90
|
+
type: "tuple",
|
|
91
|
+
internalType: "struct Account.AccountId",
|
|
92
|
+
components: [
|
|
93
|
+
{
|
|
94
|
+
name: "owner",
|
|
95
|
+
type: "address",
|
|
96
|
+
internalType: "address",
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: "id",
|
|
100
|
+
type: "uint96",
|
|
101
|
+
internalType: "uint96",
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
name: "isolatedMarginToken",
|
|
105
|
+
type: "address",
|
|
106
|
+
internalType: "address",
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
outputs: [
|
|
112
|
+
{
|
|
113
|
+
name: "usdObligations",
|
|
114
|
+
type: "uint256",
|
|
115
|
+
internalType: "uint256",
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
stateMutability: "view",
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: "function",
|
|
122
|
+
name: "calculateLiquidationAmounts",
|
|
123
|
+
inputs: [
|
|
124
|
+
{
|
|
125
|
+
name: "poolKey",
|
|
126
|
+
type: "tuple",
|
|
127
|
+
internalType: "struct PoolKey.Key",
|
|
128
|
+
components: [
|
|
129
|
+
{
|
|
130
|
+
name: "underlyingAsset",
|
|
131
|
+
type: "address",
|
|
132
|
+
internalType: "address",
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: "compoundToken",
|
|
136
|
+
type: "address",
|
|
137
|
+
internalType: "address",
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
name: "termStartTimestampWad",
|
|
141
|
+
type: "uint256",
|
|
142
|
+
internalType: "uint256",
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
name: "termEndTimestampWad",
|
|
146
|
+
type: "uint256",
|
|
147
|
+
internalType: "uint256",
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: "feeWad",
|
|
151
|
+
type: "uint256",
|
|
152
|
+
internalType: "uint256",
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
name: "tickSpacing",
|
|
156
|
+
type: "int24",
|
|
157
|
+
internalType: "int24",
|
|
158
|
+
},
|
|
159
|
+
],
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
name: "fixedBalance",
|
|
163
|
+
type: "int256",
|
|
164
|
+
internalType: "int256",
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
name: "collateralAssetToTake",
|
|
168
|
+
type: "address",
|
|
169
|
+
internalType: "address",
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
name: "debtToCover",
|
|
173
|
+
type: "uint256",
|
|
174
|
+
internalType: "uint256",
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
name: "collateralUserBalance",
|
|
178
|
+
type: "uint256",
|
|
179
|
+
internalType: "uint256",
|
|
180
|
+
},
|
|
181
|
+
],
|
|
182
|
+
outputs: [
|
|
183
|
+
{
|
|
184
|
+
name: "collateralToSeize",
|
|
185
|
+
type: "uint256",
|
|
186
|
+
internalType: "uint256",
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
name: "effectiveDebt",
|
|
190
|
+
type: "uint256",
|
|
191
|
+
internalType: "uint256",
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
name: "fixedCovered",
|
|
195
|
+
type: "uint256",
|
|
196
|
+
internalType: "uint256",
|
|
197
|
+
},
|
|
198
|
+
],
|
|
199
|
+
stateMutability: "view",
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: "function",
|
|
203
|
+
name: "checkMarginRequirement",
|
|
204
|
+
inputs: [
|
|
205
|
+
{
|
|
206
|
+
name: "account",
|
|
207
|
+
type: "tuple",
|
|
208
|
+
internalType: "struct Account.AccountId",
|
|
209
|
+
components: [
|
|
210
|
+
{
|
|
211
|
+
name: "owner",
|
|
212
|
+
type: "address",
|
|
213
|
+
internalType: "address",
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
name: "id",
|
|
217
|
+
type: "uint96",
|
|
218
|
+
internalType: "uint96",
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
name: "isolatedMarginToken",
|
|
222
|
+
type: "address",
|
|
223
|
+
internalType: "address",
|
|
224
|
+
},
|
|
225
|
+
],
|
|
226
|
+
},
|
|
227
|
+
],
|
|
228
|
+
outputs: [
|
|
229
|
+
{
|
|
230
|
+
name: "positionMarginRequirement",
|
|
231
|
+
type: "uint256",
|
|
232
|
+
internalType: "uint256",
|
|
233
|
+
},
|
|
234
|
+
],
|
|
235
|
+
stateMutability: "nonpayable",
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
type: "function",
|
|
239
|
+
name: "dustThresholdWad",
|
|
240
|
+
inputs: [],
|
|
241
|
+
outputs: [
|
|
242
|
+
{
|
|
243
|
+
name: "",
|
|
244
|
+
type: "uint256",
|
|
245
|
+
internalType: "uint256",
|
|
246
|
+
},
|
|
247
|
+
],
|
|
248
|
+
stateMutability: "view",
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
type: "function",
|
|
252
|
+
name: "eliminateDeficit",
|
|
253
|
+
inputs: [
|
|
254
|
+
{
|
|
255
|
+
name: "token",
|
|
256
|
+
type: "address",
|
|
257
|
+
internalType: "address",
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
name: "amount",
|
|
261
|
+
type: "uint256",
|
|
262
|
+
internalType: "uint256",
|
|
263
|
+
},
|
|
264
|
+
],
|
|
265
|
+
outputs: [],
|
|
266
|
+
stateMutability: "nonpayable",
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
type: "function",
|
|
270
|
+
name: "esm",
|
|
271
|
+
inputs: [],
|
|
272
|
+
outputs: [
|
|
273
|
+
{
|
|
274
|
+
name: "",
|
|
275
|
+
type: "address",
|
|
276
|
+
internalType: "address",
|
|
277
|
+
},
|
|
278
|
+
],
|
|
279
|
+
stateMutability: "view",
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
type: "function",
|
|
283
|
+
name: "executeEarlySettlement",
|
|
284
|
+
inputs: [
|
|
285
|
+
{
|
|
286
|
+
name: "account",
|
|
287
|
+
type: "tuple",
|
|
288
|
+
internalType: "struct Account.AccountId",
|
|
289
|
+
components: [
|
|
290
|
+
{
|
|
291
|
+
name: "owner",
|
|
292
|
+
type: "address",
|
|
293
|
+
internalType: "address",
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
name: "id",
|
|
297
|
+
type: "uint96",
|
|
298
|
+
internalType: "uint96",
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: "isolatedMarginToken",
|
|
302
|
+
type: "address",
|
|
303
|
+
internalType: "address",
|
|
304
|
+
},
|
|
305
|
+
],
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
name: "poolId",
|
|
309
|
+
type: "bytes32",
|
|
310
|
+
internalType: "bytes32",
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
name: "tickLower",
|
|
314
|
+
type: "int24",
|
|
315
|
+
internalType: "int24",
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
name: "tickUpper",
|
|
319
|
+
type: "int24",
|
|
320
|
+
internalType: "int24",
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
name: "amountDelta",
|
|
324
|
+
type: "int256",
|
|
325
|
+
internalType: "int256",
|
|
326
|
+
},
|
|
327
|
+
],
|
|
328
|
+
outputs: [],
|
|
329
|
+
stateMutability: "nonpayable",
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
type: "function",
|
|
333
|
+
name: "getAccountBalance",
|
|
334
|
+
inputs: [
|
|
335
|
+
{
|
|
336
|
+
name: "account",
|
|
337
|
+
type: "tuple",
|
|
338
|
+
internalType: "struct Account.AccountId",
|
|
339
|
+
components: [
|
|
340
|
+
{
|
|
341
|
+
name: "owner",
|
|
342
|
+
type: "address",
|
|
343
|
+
internalType: "address",
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
name: "id",
|
|
347
|
+
type: "uint96",
|
|
348
|
+
internalType: "uint96",
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
name: "isolatedMarginToken",
|
|
352
|
+
type: "address",
|
|
353
|
+
internalType: "address",
|
|
354
|
+
},
|
|
355
|
+
],
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
name: "token",
|
|
359
|
+
type: "address",
|
|
360
|
+
internalType: "address",
|
|
361
|
+
},
|
|
362
|
+
],
|
|
363
|
+
outputs: [
|
|
364
|
+
{
|
|
365
|
+
name: "balance",
|
|
366
|
+
type: "uint256",
|
|
367
|
+
internalType: "uint256",
|
|
368
|
+
},
|
|
369
|
+
],
|
|
370
|
+
stateMutability: "view",
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
type: "function",
|
|
374
|
+
name: "getAccountMarginValues",
|
|
375
|
+
inputs: [
|
|
376
|
+
{
|
|
377
|
+
name: "account",
|
|
378
|
+
type: "tuple",
|
|
379
|
+
internalType: "struct Account.AccountId",
|
|
380
|
+
components: [
|
|
381
|
+
{
|
|
382
|
+
name: "owner",
|
|
383
|
+
type: "address",
|
|
384
|
+
internalType: "address",
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
name: "id",
|
|
388
|
+
type: "uint96",
|
|
389
|
+
internalType: "uint96",
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
name: "isolatedMarginToken",
|
|
393
|
+
type: "address",
|
|
394
|
+
internalType: "address",
|
|
395
|
+
},
|
|
396
|
+
],
|
|
397
|
+
},
|
|
398
|
+
],
|
|
399
|
+
outputs: [
|
|
400
|
+
{
|
|
401
|
+
name: "avgLtv",
|
|
402
|
+
type: "uint256",
|
|
403
|
+
internalType: "uint256",
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
name: "avgLiquidationThreshold",
|
|
407
|
+
type: "uint256",
|
|
408
|
+
internalType: "uint256",
|
|
409
|
+
},
|
|
410
|
+
{
|
|
411
|
+
name: "totalRawValueWad",
|
|
412
|
+
type: "uint256",
|
|
413
|
+
internalType: "uint256",
|
|
414
|
+
},
|
|
415
|
+
],
|
|
416
|
+
stateMutability: "view",
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
type: "function",
|
|
420
|
+
name: "getMarginAssetConfig",
|
|
421
|
+
inputs: [
|
|
422
|
+
{
|
|
423
|
+
name: "token",
|
|
424
|
+
type: "address",
|
|
425
|
+
internalType: "address",
|
|
426
|
+
},
|
|
427
|
+
],
|
|
428
|
+
outputs: [
|
|
429
|
+
{
|
|
430
|
+
name: "config",
|
|
431
|
+
type: "tuple",
|
|
432
|
+
internalType: "struct CollateralEngineStorage.AssetConfig",
|
|
433
|
+
components: [
|
|
434
|
+
{
|
|
435
|
+
name: "ltvWad",
|
|
436
|
+
type: "uint256",
|
|
437
|
+
internalType: "uint256",
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
name: "liquidationThresholdWad",
|
|
441
|
+
type: "uint256",
|
|
442
|
+
internalType: "uint256",
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
name: "autoExchangeBonusWad",
|
|
446
|
+
type: "uint256",
|
|
447
|
+
internalType: "uint256",
|
|
448
|
+
},
|
|
449
|
+
],
|
|
450
|
+
},
|
|
451
|
+
],
|
|
452
|
+
stateMutability: "view",
|
|
453
|
+
},
|
|
454
|
+
{
|
|
455
|
+
type: "function",
|
|
456
|
+
name: "getPoolKey",
|
|
457
|
+
inputs: [
|
|
458
|
+
{
|
|
459
|
+
name: "poolId",
|
|
460
|
+
type: "bytes32",
|
|
461
|
+
internalType: "bytes32",
|
|
462
|
+
},
|
|
463
|
+
],
|
|
464
|
+
outputs: [
|
|
465
|
+
{
|
|
466
|
+
name: "poolKey",
|
|
467
|
+
type: "tuple",
|
|
468
|
+
internalType: "struct PoolKey.Key",
|
|
469
|
+
components: [
|
|
470
|
+
{
|
|
471
|
+
name: "underlyingAsset",
|
|
472
|
+
type: "address",
|
|
473
|
+
internalType: "address",
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
name: "compoundToken",
|
|
477
|
+
type: "address",
|
|
478
|
+
internalType: "address",
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
name: "termStartTimestampWad",
|
|
482
|
+
type: "uint256",
|
|
483
|
+
internalType: "uint256",
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
name: "termEndTimestampWad",
|
|
487
|
+
type: "uint256",
|
|
488
|
+
internalType: "uint256",
|
|
489
|
+
},
|
|
490
|
+
{
|
|
491
|
+
name: "feeWad",
|
|
492
|
+
type: "uint256",
|
|
493
|
+
internalType: "uint256",
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
name: "tickSpacing",
|
|
497
|
+
type: "int24",
|
|
498
|
+
internalType: "int24",
|
|
499
|
+
},
|
|
500
|
+
],
|
|
501
|
+
},
|
|
502
|
+
],
|
|
503
|
+
stateMutability: "view",
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
type: "function",
|
|
507
|
+
name: "getPositionInfo",
|
|
508
|
+
inputs: [
|
|
509
|
+
{
|
|
510
|
+
name: "account",
|
|
511
|
+
type: "tuple",
|
|
512
|
+
internalType: "struct Account.AccountId",
|
|
513
|
+
components: [
|
|
514
|
+
{
|
|
515
|
+
name: "owner",
|
|
516
|
+
type: "address",
|
|
517
|
+
internalType: "address",
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
name: "id",
|
|
521
|
+
type: "uint96",
|
|
522
|
+
internalType: "uint96",
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
name: "isolatedMarginToken",
|
|
526
|
+
type: "address",
|
|
527
|
+
internalType: "address",
|
|
528
|
+
},
|
|
529
|
+
],
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
name: "poolId",
|
|
533
|
+
type: "bytes32",
|
|
534
|
+
internalType: "bytes32",
|
|
535
|
+
},
|
|
536
|
+
{
|
|
537
|
+
name: "tickLower",
|
|
538
|
+
type: "int24",
|
|
539
|
+
internalType: "int24",
|
|
540
|
+
},
|
|
541
|
+
{
|
|
542
|
+
name: "tickUpper",
|
|
543
|
+
type: "int24",
|
|
544
|
+
internalType: "int24",
|
|
545
|
+
},
|
|
546
|
+
],
|
|
547
|
+
outputs: [
|
|
548
|
+
{
|
|
549
|
+
name: "position",
|
|
550
|
+
type: "tuple",
|
|
551
|
+
internalType: "struct Position.Info",
|
|
552
|
+
components: [
|
|
553
|
+
{
|
|
554
|
+
name: "_liquidity",
|
|
555
|
+
type: "uint128",
|
|
556
|
+
internalType: "uint128",
|
|
557
|
+
},
|
|
558
|
+
{
|
|
559
|
+
name: "fixedTokenGrowthInsideLastX128",
|
|
560
|
+
type: "int256",
|
|
561
|
+
internalType: "int256",
|
|
562
|
+
},
|
|
563
|
+
{
|
|
564
|
+
name: "variableTokenGrowthInsideLastX128",
|
|
565
|
+
type: "int256",
|
|
566
|
+
internalType: "int256",
|
|
567
|
+
},
|
|
568
|
+
{
|
|
569
|
+
name: "fixedTokenBalance",
|
|
570
|
+
type: "int256",
|
|
571
|
+
internalType: "int256",
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
name: "variableTokenBalance",
|
|
575
|
+
type: "int256",
|
|
576
|
+
internalType: "int256",
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
name: "tradedNotional",
|
|
580
|
+
type: "int256",
|
|
581
|
+
internalType: "int256",
|
|
582
|
+
},
|
|
583
|
+
{
|
|
584
|
+
name: "lpLockedUnwindFee",
|
|
585
|
+
type: "int256",
|
|
586
|
+
internalType: "int256",
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
name: "accumulatedFees",
|
|
590
|
+
type: "uint256",
|
|
591
|
+
internalType: "uint256",
|
|
592
|
+
},
|
|
593
|
+
],
|
|
594
|
+
},
|
|
595
|
+
],
|
|
596
|
+
stateMutability: "view",
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
type: "function",
|
|
600
|
+
name: "getTokenDeficit",
|
|
601
|
+
inputs: [
|
|
602
|
+
{
|
|
603
|
+
name: "token",
|
|
604
|
+
type: "address",
|
|
605
|
+
internalType: "address",
|
|
606
|
+
},
|
|
607
|
+
],
|
|
608
|
+
outputs: [
|
|
609
|
+
{
|
|
610
|
+
name: "deficit",
|
|
611
|
+
type: "uint256",
|
|
612
|
+
internalType: "uint256",
|
|
613
|
+
},
|
|
614
|
+
],
|
|
615
|
+
stateMutability: "view",
|
|
616
|
+
},
|
|
617
|
+
{
|
|
618
|
+
type: "function",
|
|
619
|
+
name: "initialize",
|
|
620
|
+
inputs: [
|
|
621
|
+
{
|
|
622
|
+
name: "__oracleHub",
|
|
623
|
+
type: "address",
|
|
624
|
+
internalType: "contract IOracleHub",
|
|
625
|
+
},
|
|
626
|
+
{
|
|
627
|
+
name: "__aprOracle",
|
|
628
|
+
type: "address",
|
|
629
|
+
internalType: "contract IAprOracle",
|
|
630
|
+
},
|
|
631
|
+
],
|
|
632
|
+
outputs: [],
|
|
633
|
+
stateMutability: "nonpayable",
|
|
634
|
+
},
|
|
635
|
+
{
|
|
636
|
+
type: "function",
|
|
637
|
+
name: "isAccountOperator",
|
|
638
|
+
inputs: [
|
|
639
|
+
{
|
|
640
|
+
name: "accountOwner",
|
|
641
|
+
type: "address",
|
|
642
|
+
internalType: "address",
|
|
643
|
+
},
|
|
644
|
+
{
|
|
645
|
+
name: "operator",
|
|
646
|
+
type: "address",
|
|
647
|
+
internalType: "address",
|
|
648
|
+
},
|
|
649
|
+
],
|
|
650
|
+
outputs: [
|
|
651
|
+
{
|
|
652
|
+
name: "",
|
|
653
|
+
type: "bool",
|
|
654
|
+
internalType: "bool",
|
|
655
|
+
},
|
|
656
|
+
],
|
|
657
|
+
stateMutability: "view",
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
type: "function",
|
|
661
|
+
name: "liquidatePosition",
|
|
662
|
+
inputs: [
|
|
663
|
+
{
|
|
664
|
+
name: "account",
|
|
665
|
+
type: "tuple",
|
|
666
|
+
internalType: "struct Account.AccountId",
|
|
667
|
+
components: [
|
|
668
|
+
{
|
|
669
|
+
name: "owner",
|
|
670
|
+
type: "address",
|
|
671
|
+
internalType: "address",
|
|
672
|
+
},
|
|
673
|
+
{
|
|
674
|
+
name: "id",
|
|
675
|
+
type: "uint96",
|
|
676
|
+
internalType: "uint96",
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
name: "isolatedMarginToken",
|
|
680
|
+
type: "address",
|
|
681
|
+
internalType: "address",
|
|
682
|
+
},
|
|
683
|
+
],
|
|
684
|
+
},
|
|
685
|
+
{
|
|
686
|
+
name: "poolId",
|
|
687
|
+
type: "bytes32",
|
|
688
|
+
internalType: "bytes32",
|
|
689
|
+
},
|
|
690
|
+
{
|
|
691
|
+
name: "tickLower",
|
|
692
|
+
type: "int24",
|
|
693
|
+
internalType: "int24",
|
|
694
|
+
},
|
|
695
|
+
{
|
|
696
|
+
name: "tickUpper",
|
|
697
|
+
type: "int24",
|
|
698
|
+
internalType: "int24",
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
name: "collateralAssetToTake",
|
|
702
|
+
type: "address",
|
|
703
|
+
internalType: "address",
|
|
704
|
+
},
|
|
705
|
+
{
|
|
706
|
+
name: "debtToCover",
|
|
707
|
+
type: "uint256",
|
|
708
|
+
internalType: "uint256",
|
|
709
|
+
},
|
|
710
|
+
],
|
|
711
|
+
outputs: [
|
|
712
|
+
{
|
|
713
|
+
name: "collateralSeized",
|
|
714
|
+
type: "uint256",
|
|
715
|
+
internalType: "uint256",
|
|
716
|
+
},
|
|
717
|
+
{
|
|
718
|
+
name: "effectiveDebtCovered",
|
|
719
|
+
type: "uint256",
|
|
720
|
+
internalType: "uint256",
|
|
721
|
+
},
|
|
722
|
+
{
|
|
723
|
+
name: "fixedCovered",
|
|
724
|
+
type: "uint256",
|
|
725
|
+
internalType: "uint256",
|
|
726
|
+
},
|
|
727
|
+
],
|
|
728
|
+
stateMutability: "nonpayable",
|
|
729
|
+
},
|
|
730
|
+
{
|
|
731
|
+
type: "function",
|
|
732
|
+
name: "oracleHub",
|
|
733
|
+
inputs: [],
|
|
734
|
+
outputs: [
|
|
735
|
+
{
|
|
736
|
+
name: "",
|
|
737
|
+
type: "address",
|
|
738
|
+
internalType: "contract IOracleHub",
|
|
739
|
+
},
|
|
740
|
+
],
|
|
741
|
+
stateMutability: "view",
|
|
742
|
+
},
|
|
743
|
+
{
|
|
744
|
+
type: "function",
|
|
745
|
+
name: "owner",
|
|
746
|
+
inputs: [],
|
|
747
|
+
outputs: [
|
|
748
|
+
{
|
|
749
|
+
name: "",
|
|
750
|
+
type: "address",
|
|
751
|
+
internalType: "address",
|
|
752
|
+
},
|
|
753
|
+
],
|
|
754
|
+
stateMutability: "view",
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
type: "function",
|
|
758
|
+
name: "pendingOwner",
|
|
759
|
+
inputs: [],
|
|
760
|
+
outputs: [
|
|
761
|
+
{
|
|
762
|
+
name: "",
|
|
763
|
+
type: "address",
|
|
764
|
+
internalType: "address",
|
|
765
|
+
},
|
|
766
|
+
],
|
|
767
|
+
stateMutability: "view",
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
type: "function",
|
|
771
|
+
name: "previewPositionBalances",
|
|
772
|
+
inputs: [
|
|
773
|
+
{
|
|
774
|
+
name: "account",
|
|
775
|
+
type: "tuple",
|
|
776
|
+
internalType: "struct Account.AccountId",
|
|
777
|
+
components: [
|
|
778
|
+
{
|
|
779
|
+
name: "owner",
|
|
780
|
+
type: "address",
|
|
781
|
+
internalType: "address",
|
|
782
|
+
},
|
|
783
|
+
{
|
|
784
|
+
name: "id",
|
|
785
|
+
type: "uint96",
|
|
786
|
+
internalType: "uint96",
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
name: "isolatedMarginToken",
|
|
790
|
+
type: "address",
|
|
791
|
+
internalType: "address",
|
|
792
|
+
},
|
|
793
|
+
],
|
|
794
|
+
},
|
|
795
|
+
{
|
|
796
|
+
name: "poolId",
|
|
797
|
+
type: "bytes32",
|
|
798
|
+
internalType: "bytes32",
|
|
799
|
+
},
|
|
800
|
+
{
|
|
801
|
+
name: "tickLower",
|
|
802
|
+
type: "int24",
|
|
803
|
+
internalType: "int24",
|
|
804
|
+
},
|
|
805
|
+
{
|
|
806
|
+
name: "tickUpper",
|
|
807
|
+
type: "int24",
|
|
808
|
+
internalType: "int24",
|
|
809
|
+
},
|
|
810
|
+
],
|
|
811
|
+
outputs: [
|
|
812
|
+
{
|
|
813
|
+
name: "fixedTokenBalance",
|
|
814
|
+
type: "int256",
|
|
815
|
+
internalType: "int256",
|
|
816
|
+
},
|
|
817
|
+
{
|
|
818
|
+
name: "variableTokenBalance",
|
|
819
|
+
type: "int256",
|
|
820
|
+
internalType: "int256",
|
|
821
|
+
},
|
|
822
|
+
],
|
|
823
|
+
stateMutability: "view",
|
|
824
|
+
},
|
|
825
|
+
{
|
|
826
|
+
type: "function",
|
|
827
|
+
name: "renounceOwnership",
|
|
828
|
+
inputs: [],
|
|
829
|
+
outputs: [],
|
|
830
|
+
stateMutability: "nonpayable",
|
|
831
|
+
},
|
|
832
|
+
{
|
|
833
|
+
type: "function",
|
|
834
|
+
name: "setAccountOperator",
|
|
835
|
+
inputs: [
|
|
836
|
+
{
|
|
837
|
+
name: "owner",
|
|
838
|
+
type: "address",
|
|
839
|
+
internalType: "address",
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
name: "operator",
|
|
843
|
+
type: "address",
|
|
844
|
+
internalType: "address",
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
name: "approved",
|
|
848
|
+
type: "bool",
|
|
849
|
+
internalType: "bool",
|
|
850
|
+
},
|
|
851
|
+
],
|
|
852
|
+
outputs: [],
|
|
853
|
+
stateMutability: "nonpayable",
|
|
854
|
+
},
|
|
855
|
+
{
|
|
856
|
+
type: "function",
|
|
857
|
+
name: "setAprOracle",
|
|
858
|
+
inputs: [
|
|
859
|
+
{
|
|
860
|
+
name: "__aprOracle",
|
|
861
|
+
type: "address",
|
|
862
|
+
internalType: "contract IAprOracle",
|
|
863
|
+
},
|
|
864
|
+
],
|
|
865
|
+
outputs: [],
|
|
866
|
+
stateMutability: "nonpayable",
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
type: "function",
|
|
870
|
+
name: "setDustThreshold",
|
|
871
|
+
inputs: [
|
|
872
|
+
{
|
|
873
|
+
name: "_dustThresholdWad",
|
|
874
|
+
type: "uint256",
|
|
875
|
+
internalType: "uint256",
|
|
876
|
+
},
|
|
877
|
+
],
|
|
878
|
+
outputs: [],
|
|
879
|
+
stateMutability: "nonpayable",
|
|
880
|
+
},
|
|
881
|
+
{
|
|
882
|
+
type: "function",
|
|
883
|
+
name: "setESM",
|
|
884
|
+
inputs: [
|
|
885
|
+
{
|
|
886
|
+
name: "_esm",
|
|
887
|
+
type: "address",
|
|
888
|
+
internalType: "address",
|
|
889
|
+
},
|
|
890
|
+
],
|
|
891
|
+
outputs: [],
|
|
892
|
+
stateMutability: "nonpayable",
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
type: "function",
|
|
896
|
+
name: "setMarginAssetConfig",
|
|
897
|
+
inputs: [
|
|
898
|
+
{
|
|
899
|
+
name: "token",
|
|
900
|
+
type: "address",
|
|
901
|
+
internalType: "address",
|
|
902
|
+
},
|
|
903
|
+
{
|
|
904
|
+
name: "ltvWad",
|
|
905
|
+
type: "uint256",
|
|
906
|
+
internalType: "uint256",
|
|
907
|
+
},
|
|
908
|
+
{
|
|
909
|
+
name: "liquidationThresholdWad",
|
|
910
|
+
type: "uint256",
|
|
911
|
+
internalType: "uint256",
|
|
912
|
+
},
|
|
913
|
+
{
|
|
914
|
+
name: "autoExchangeBonusWad",
|
|
915
|
+
type: "uint256",
|
|
916
|
+
internalType: "uint256",
|
|
917
|
+
},
|
|
918
|
+
],
|
|
919
|
+
outputs: [],
|
|
920
|
+
stateMutability: "nonpayable",
|
|
921
|
+
},
|
|
922
|
+
{
|
|
923
|
+
type: "function",
|
|
924
|
+
name: "setOracleHub",
|
|
925
|
+
inputs: [
|
|
926
|
+
{
|
|
927
|
+
name: "__oracleHub",
|
|
928
|
+
type: "address",
|
|
929
|
+
internalType: "contract IOracleHub",
|
|
930
|
+
},
|
|
931
|
+
],
|
|
932
|
+
outputs: [],
|
|
933
|
+
stateMutability: "nonpayable",
|
|
934
|
+
},
|
|
935
|
+
{
|
|
936
|
+
type: "function",
|
|
937
|
+
name: "setVAMMManager",
|
|
938
|
+
inputs: [
|
|
939
|
+
{
|
|
940
|
+
name: "_vammManager",
|
|
941
|
+
type: "address",
|
|
942
|
+
internalType: "contract IVAMMManager",
|
|
943
|
+
},
|
|
944
|
+
],
|
|
945
|
+
outputs: [],
|
|
946
|
+
stateMutability: "nonpayable",
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
type: "function",
|
|
950
|
+
name: "setWorstCaseVariableFactor",
|
|
951
|
+
inputs: [
|
|
952
|
+
{
|
|
953
|
+
name: "poolId",
|
|
954
|
+
type: "bytes32",
|
|
955
|
+
internalType: "bytes32",
|
|
956
|
+
},
|
|
957
|
+
{
|
|
958
|
+
name: "worstCaseVariableFactorPositiveWad",
|
|
959
|
+
type: "uint256",
|
|
960
|
+
internalType: "uint256",
|
|
961
|
+
},
|
|
962
|
+
{
|
|
963
|
+
name: "worstCaseVariableFactorNegativeWad",
|
|
964
|
+
type: "uint256",
|
|
965
|
+
internalType: "uint256",
|
|
966
|
+
},
|
|
967
|
+
],
|
|
968
|
+
outputs: [],
|
|
969
|
+
stateMutability: "nonpayable",
|
|
970
|
+
},
|
|
971
|
+
{
|
|
972
|
+
type: "function",
|
|
973
|
+
name: "settlePosition",
|
|
974
|
+
inputs: [
|
|
975
|
+
{
|
|
976
|
+
name: "account",
|
|
977
|
+
type: "tuple",
|
|
978
|
+
internalType: "struct Account.AccountId",
|
|
979
|
+
components: [
|
|
980
|
+
{
|
|
981
|
+
name: "owner",
|
|
982
|
+
type: "address",
|
|
983
|
+
internalType: "address",
|
|
984
|
+
},
|
|
985
|
+
{
|
|
986
|
+
name: "id",
|
|
987
|
+
type: "uint96",
|
|
988
|
+
internalType: "uint96",
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
name: "isolatedMarginToken",
|
|
992
|
+
type: "address",
|
|
993
|
+
internalType: "address",
|
|
994
|
+
},
|
|
995
|
+
],
|
|
996
|
+
},
|
|
997
|
+
{
|
|
998
|
+
name: "poolKey",
|
|
999
|
+
type: "tuple",
|
|
1000
|
+
internalType: "struct PoolKey.Key",
|
|
1001
|
+
components: [
|
|
1002
|
+
{
|
|
1003
|
+
name: "underlyingAsset",
|
|
1004
|
+
type: "address",
|
|
1005
|
+
internalType: "address",
|
|
1006
|
+
},
|
|
1007
|
+
{
|
|
1008
|
+
name: "compoundToken",
|
|
1009
|
+
type: "address",
|
|
1010
|
+
internalType: "address",
|
|
1011
|
+
},
|
|
1012
|
+
{
|
|
1013
|
+
name: "termStartTimestampWad",
|
|
1014
|
+
type: "uint256",
|
|
1015
|
+
internalType: "uint256",
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
name: "termEndTimestampWad",
|
|
1019
|
+
type: "uint256",
|
|
1020
|
+
internalType: "uint256",
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
name: "feeWad",
|
|
1024
|
+
type: "uint256",
|
|
1025
|
+
internalType: "uint256",
|
|
1026
|
+
},
|
|
1027
|
+
{
|
|
1028
|
+
name: "tickSpacing",
|
|
1029
|
+
type: "int24",
|
|
1030
|
+
internalType: "int24",
|
|
1031
|
+
},
|
|
1032
|
+
],
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
name: "settlerAssetOrder",
|
|
1036
|
+
type: "address[]",
|
|
1037
|
+
internalType: "address[]",
|
|
1038
|
+
},
|
|
1039
|
+
],
|
|
1040
|
+
outputs: [],
|
|
1041
|
+
stateMutability: "nonpayable",
|
|
1042
|
+
},
|
|
1043
|
+
{
|
|
1044
|
+
type: "function",
|
|
1045
|
+
name: "transferOwnership",
|
|
1046
|
+
inputs: [
|
|
1047
|
+
{
|
|
1048
|
+
name: "newOwner",
|
|
1049
|
+
type: "address",
|
|
1050
|
+
internalType: "address",
|
|
1051
|
+
},
|
|
1052
|
+
],
|
|
1053
|
+
outputs: [],
|
|
1054
|
+
stateMutability: "nonpayable",
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
type: "function",
|
|
1058
|
+
name: "updateAccountMargin",
|
|
1059
|
+
inputs: [
|
|
1060
|
+
{
|
|
1061
|
+
name: "account",
|
|
1062
|
+
type: "tuple",
|
|
1063
|
+
internalType: "struct Account.AccountId",
|
|
1064
|
+
components: [
|
|
1065
|
+
{
|
|
1066
|
+
name: "owner",
|
|
1067
|
+
type: "address",
|
|
1068
|
+
internalType: "address",
|
|
1069
|
+
},
|
|
1070
|
+
{
|
|
1071
|
+
name: "id",
|
|
1072
|
+
type: "uint96",
|
|
1073
|
+
internalType: "uint96",
|
|
1074
|
+
},
|
|
1075
|
+
{
|
|
1076
|
+
name: "isolatedMarginToken",
|
|
1077
|
+
type: "address",
|
|
1078
|
+
internalType: "address",
|
|
1079
|
+
},
|
|
1080
|
+
],
|
|
1081
|
+
},
|
|
1082
|
+
{
|
|
1083
|
+
name: "token",
|
|
1084
|
+
type: "address",
|
|
1085
|
+
internalType: "address",
|
|
1086
|
+
},
|
|
1087
|
+
{
|
|
1088
|
+
name: "marginDelta",
|
|
1089
|
+
type: "int256",
|
|
1090
|
+
internalType: "int256",
|
|
1091
|
+
},
|
|
1092
|
+
],
|
|
1093
|
+
outputs: [],
|
|
1094
|
+
stateMutability: "nonpayable",
|
|
1095
|
+
},
|
|
1096
|
+
{
|
|
1097
|
+
type: "function",
|
|
1098
|
+
name: "updatePositionPostVAMMAction",
|
|
1099
|
+
inputs: [
|
|
1100
|
+
{
|
|
1101
|
+
name: "params",
|
|
1102
|
+
type: "tuple",
|
|
1103
|
+
internalType: "struct ICollateralEngine.UpdatePositionParams",
|
|
1104
|
+
components: [
|
|
1105
|
+
{
|
|
1106
|
+
name: "poolKey",
|
|
1107
|
+
type: "tuple",
|
|
1108
|
+
internalType: "struct PoolKey.Key",
|
|
1109
|
+
components: [
|
|
1110
|
+
{
|
|
1111
|
+
name: "underlyingAsset",
|
|
1112
|
+
type: "address",
|
|
1113
|
+
internalType: "address",
|
|
1114
|
+
},
|
|
1115
|
+
{
|
|
1116
|
+
name: "compoundToken",
|
|
1117
|
+
type: "address",
|
|
1118
|
+
internalType: "address",
|
|
1119
|
+
},
|
|
1120
|
+
{
|
|
1121
|
+
name: "termStartTimestampWad",
|
|
1122
|
+
type: "uint256",
|
|
1123
|
+
internalType: "uint256",
|
|
1124
|
+
},
|
|
1125
|
+
{
|
|
1126
|
+
name: "termEndTimestampWad",
|
|
1127
|
+
type: "uint256",
|
|
1128
|
+
internalType: "uint256",
|
|
1129
|
+
},
|
|
1130
|
+
{
|
|
1131
|
+
name: "feeWad",
|
|
1132
|
+
type: "uint256",
|
|
1133
|
+
internalType: "uint256",
|
|
1134
|
+
},
|
|
1135
|
+
{
|
|
1136
|
+
name: "tickSpacing",
|
|
1137
|
+
type: "int24",
|
|
1138
|
+
internalType: "int24",
|
|
1139
|
+
},
|
|
1140
|
+
],
|
|
1141
|
+
},
|
|
1142
|
+
{
|
|
1143
|
+
name: "account",
|
|
1144
|
+
type: "tuple",
|
|
1145
|
+
internalType: "struct Account.AccountId",
|
|
1146
|
+
components: [
|
|
1147
|
+
{
|
|
1148
|
+
name: "owner",
|
|
1149
|
+
type: "address",
|
|
1150
|
+
internalType: "address",
|
|
1151
|
+
},
|
|
1152
|
+
{
|
|
1153
|
+
name: "id",
|
|
1154
|
+
type: "uint96",
|
|
1155
|
+
internalType: "uint96",
|
|
1156
|
+
},
|
|
1157
|
+
{
|
|
1158
|
+
name: "isolatedMarginToken",
|
|
1159
|
+
type: "address",
|
|
1160
|
+
internalType: "address",
|
|
1161
|
+
},
|
|
1162
|
+
],
|
|
1163
|
+
},
|
|
1164
|
+
{
|
|
1165
|
+
name: "tickLower",
|
|
1166
|
+
type: "int24",
|
|
1167
|
+
internalType: "int24",
|
|
1168
|
+
},
|
|
1169
|
+
{
|
|
1170
|
+
name: "tickUpper",
|
|
1171
|
+
type: "int24",
|
|
1172
|
+
internalType: "int24",
|
|
1173
|
+
},
|
|
1174
|
+
{
|
|
1175
|
+
name: "liquidityDelta",
|
|
1176
|
+
type: "int128",
|
|
1177
|
+
internalType: "int128",
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
name: "fixedTokenDelta",
|
|
1181
|
+
type: "int256",
|
|
1182
|
+
internalType: "int256",
|
|
1183
|
+
},
|
|
1184
|
+
{
|
|
1185
|
+
name: "variableTokenDelta",
|
|
1186
|
+
type: "int256",
|
|
1187
|
+
internalType: "int256",
|
|
1188
|
+
},
|
|
1189
|
+
{
|
|
1190
|
+
name: "fixedTokenGrowthInsideX128",
|
|
1191
|
+
type: "int256",
|
|
1192
|
+
internalType: "int256",
|
|
1193
|
+
},
|
|
1194
|
+
{
|
|
1195
|
+
name: "variableTokenGrowthInsideX128",
|
|
1196
|
+
type: "int256",
|
|
1197
|
+
internalType: "int256",
|
|
1198
|
+
},
|
|
1199
|
+
],
|
|
1200
|
+
},
|
|
1201
|
+
{
|
|
1202
|
+
name: "isLiquidation",
|
|
1203
|
+
type: "bool",
|
|
1204
|
+
internalType: "bool",
|
|
1205
|
+
},
|
|
1206
|
+
],
|
|
1207
|
+
outputs: [
|
|
1208
|
+
{
|
|
1209
|
+
name: "feeIncurred",
|
|
1210
|
+
type: "int256",
|
|
1211
|
+
internalType: "int256",
|
|
1212
|
+
},
|
|
1213
|
+
],
|
|
1214
|
+
stateMutability: "nonpayable",
|
|
1215
|
+
},
|
|
1216
|
+
{
|
|
1217
|
+
type: "function",
|
|
1218
|
+
name: "vammManager",
|
|
1219
|
+
inputs: [],
|
|
1220
|
+
outputs: [
|
|
1221
|
+
{
|
|
1222
|
+
name: "",
|
|
1223
|
+
type: "address",
|
|
1224
|
+
internalType: "contract IVAMMManager",
|
|
1225
|
+
},
|
|
1226
|
+
],
|
|
1227
|
+
stateMutability: "view",
|
|
1228
|
+
},
|
|
1229
|
+
{
|
|
1230
|
+
type: "event",
|
|
1231
|
+
name: "AccountOperatorUpdate",
|
|
1232
|
+
inputs: [
|
|
1233
|
+
{
|
|
1234
|
+
name: "owner",
|
|
1235
|
+
type: "address",
|
|
1236
|
+
indexed: true,
|
|
1237
|
+
internalType: "address",
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
name: "operator",
|
|
1241
|
+
type: "address",
|
|
1242
|
+
indexed: true,
|
|
1243
|
+
internalType: "address",
|
|
1244
|
+
},
|
|
1245
|
+
{
|
|
1246
|
+
name: "approved",
|
|
1247
|
+
type: "bool",
|
|
1248
|
+
indexed: false,
|
|
1249
|
+
internalType: "bool",
|
|
1250
|
+
},
|
|
1251
|
+
],
|
|
1252
|
+
anonymous: false,
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1255
|
+
type: "event",
|
|
1256
|
+
name: "AprOracleSetting",
|
|
1257
|
+
inputs: [
|
|
1258
|
+
{
|
|
1259
|
+
name: "aprOracle",
|
|
1260
|
+
type: "address",
|
|
1261
|
+
indexed: true,
|
|
1262
|
+
internalType: "contract IAprOracle",
|
|
1263
|
+
},
|
|
1264
|
+
],
|
|
1265
|
+
anonymous: false,
|
|
1266
|
+
},
|
|
1267
|
+
{
|
|
1268
|
+
type: "event",
|
|
1269
|
+
name: "AutoExchange",
|
|
1270
|
+
inputs: [
|
|
1271
|
+
{
|
|
1272
|
+
name: "owner",
|
|
1273
|
+
type: "address",
|
|
1274
|
+
indexed: true,
|
|
1275
|
+
internalType: "address",
|
|
1276
|
+
},
|
|
1277
|
+
{
|
|
1278
|
+
name: "accountId",
|
|
1279
|
+
type: "uint96",
|
|
1280
|
+
indexed: true,
|
|
1281
|
+
internalType: "uint96",
|
|
1282
|
+
},
|
|
1283
|
+
{
|
|
1284
|
+
name: "isolatedMarginToken",
|
|
1285
|
+
type: "address",
|
|
1286
|
+
indexed: false,
|
|
1287
|
+
internalType: "address",
|
|
1288
|
+
},
|
|
1289
|
+
{
|
|
1290
|
+
name: "poolId",
|
|
1291
|
+
type: "bytes32",
|
|
1292
|
+
indexed: true,
|
|
1293
|
+
internalType: "bytes32",
|
|
1294
|
+
},
|
|
1295
|
+
{
|
|
1296
|
+
name: "underlyingAsset",
|
|
1297
|
+
type: "address",
|
|
1298
|
+
indexed: false,
|
|
1299
|
+
internalType: "address",
|
|
1300
|
+
},
|
|
1301
|
+
{
|
|
1302
|
+
name: "underlyingAmount",
|
|
1303
|
+
type: "uint256",
|
|
1304
|
+
indexed: false,
|
|
1305
|
+
internalType: "uint256",
|
|
1306
|
+
},
|
|
1307
|
+
],
|
|
1308
|
+
anonymous: false,
|
|
1309
|
+
},
|
|
1310
|
+
{
|
|
1311
|
+
type: "event",
|
|
1312
|
+
name: "DustThresholdUpdate",
|
|
1313
|
+
inputs: [
|
|
1314
|
+
{
|
|
1315
|
+
name: "dustThresholdWad",
|
|
1316
|
+
type: "uint256",
|
|
1317
|
+
indexed: false,
|
|
1318
|
+
internalType: "uint256",
|
|
1319
|
+
},
|
|
1320
|
+
],
|
|
1321
|
+
anonymous: false,
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
type: "event",
|
|
1325
|
+
name: "Initialized",
|
|
1326
|
+
inputs: [
|
|
1327
|
+
{
|
|
1328
|
+
name: "version",
|
|
1329
|
+
type: "uint64",
|
|
1330
|
+
indexed: false,
|
|
1331
|
+
internalType: "uint64",
|
|
1332
|
+
},
|
|
1333
|
+
],
|
|
1334
|
+
anonymous: false,
|
|
1335
|
+
},
|
|
1336
|
+
{
|
|
1337
|
+
type: "event",
|
|
1338
|
+
name: "MarginAssetConfigUpdate",
|
|
1339
|
+
inputs: [
|
|
1340
|
+
{
|
|
1341
|
+
name: "token",
|
|
1342
|
+
type: "address",
|
|
1343
|
+
indexed: true,
|
|
1344
|
+
internalType: "address",
|
|
1345
|
+
},
|
|
1346
|
+
{
|
|
1347
|
+
name: "ltvWad",
|
|
1348
|
+
type: "uint256",
|
|
1349
|
+
indexed: false,
|
|
1350
|
+
internalType: "uint256",
|
|
1351
|
+
},
|
|
1352
|
+
{
|
|
1353
|
+
name: "liquidationThresholdWad",
|
|
1354
|
+
type: "uint256",
|
|
1355
|
+
indexed: false,
|
|
1356
|
+
internalType: "uint256",
|
|
1357
|
+
},
|
|
1358
|
+
{
|
|
1359
|
+
name: "autoExchangeBonusWad",
|
|
1360
|
+
type: "uint256",
|
|
1361
|
+
indexed: false,
|
|
1362
|
+
internalType: "uint256",
|
|
1363
|
+
},
|
|
1364
|
+
],
|
|
1365
|
+
anonymous: false,
|
|
1366
|
+
},
|
|
1367
|
+
{
|
|
1368
|
+
type: "event",
|
|
1369
|
+
name: "MarginUpdate",
|
|
1370
|
+
inputs: [
|
|
1371
|
+
{
|
|
1372
|
+
name: "owner",
|
|
1373
|
+
type: "address",
|
|
1374
|
+
indexed: true,
|
|
1375
|
+
internalType: "address",
|
|
1376
|
+
},
|
|
1377
|
+
{
|
|
1378
|
+
name: "accountId",
|
|
1379
|
+
type: "uint96",
|
|
1380
|
+
indexed: true,
|
|
1381
|
+
internalType: "uint96",
|
|
1382
|
+
},
|
|
1383
|
+
{
|
|
1384
|
+
name: "isolatedMarginToken",
|
|
1385
|
+
type: "address",
|
|
1386
|
+
indexed: false,
|
|
1387
|
+
internalType: "address",
|
|
1388
|
+
},
|
|
1389
|
+
{
|
|
1390
|
+
name: "token",
|
|
1391
|
+
type: "address",
|
|
1392
|
+
indexed: true,
|
|
1393
|
+
internalType: "address",
|
|
1394
|
+
},
|
|
1395
|
+
{
|
|
1396
|
+
name: "marginDelta",
|
|
1397
|
+
type: "int256",
|
|
1398
|
+
indexed: false,
|
|
1399
|
+
internalType: "int256",
|
|
1400
|
+
},
|
|
1401
|
+
],
|
|
1402
|
+
anonymous: false,
|
|
1403
|
+
},
|
|
1404
|
+
{
|
|
1405
|
+
type: "event",
|
|
1406
|
+
name: "OracleHubSetting",
|
|
1407
|
+
inputs: [
|
|
1408
|
+
{
|
|
1409
|
+
name: "oracleHub",
|
|
1410
|
+
type: "address",
|
|
1411
|
+
indexed: true,
|
|
1412
|
+
internalType: "contract IOracleHub",
|
|
1413
|
+
},
|
|
1414
|
+
],
|
|
1415
|
+
anonymous: false,
|
|
1416
|
+
},
|
|
1417
|
+
{
|
|
1418
|
+
type: "event",
|
|
1419
|
+
name: "OwnershipTransferStarted",
|
|
1420
|
+
inputs: [
|
|
1421
|
+
{
|
|
1422
|
+
name: "previousOwner",
|
|
1423
|
+
type: "address",
|
|
1424
|
+
indexed: true,
|
|
1425
|
+
internalType: "address",
|
|
1426
|
+
},
|
|
1427
|
+
{
|
|
1428
|
+
name: "newOwner",
|
|
1429
|
+
type: "address",
|
|
1430
|
+
indexed: true,
|
|
1431
|
+
internalType: "address",
|
|
1432
|
+
},
|
|
1433
|
+
],
|
|
1434
|
+
anonymous: false,
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
type: "event",
|
|
1438
|
+
name: "OwnershipTransferred",
|
|
1439
|
+
inputs: [
|
|
1440
|
+
{
|
|
1441
|
+
name: "previousOwner",
|
|
1442
|
+
type: "address",
|
|
1443
|
+
indexed: true,
|
|
1444
|
+
internalType: "address",
|
|
1445
|
+
},
|
|
1446
|
+
{
|
|
1447
|
+
name: "newOwner",
|
|
1448
|
+
type: "address",
|
|
1449
|
+
indexed: true,
|
|
1450
|
+
internalType: "address",
|
|
1451
|
+
},
|
|
1452
|
+
],
|
|
1453
|
+
anonymous: false,
|
|
1454
|
+
},
|
|
1455
|
+
{
|
|
1456
|
+
type: "event",
|
|
1457
|
+
name: "PositionLiquidated",
|
|
1458
|
+
inputs: [
|
|
1459
|
+
{
|
|
1460
|
+
name: "accountOwner",
|
|
1461
|
+
type: "address",
|
|
1462
|
+
indexed: true,
|
|
1463
|
+
internalType: "address",
|
|
1464
|
+
},
|
|
1465
|
+
{
|
|
1466
|
+
name: "accountId",
|
|
1467
|
+
type: "uint96",
|
|
1468
|
+
indexed: true,
|
|
1469
|
+
internalType: "uint96",
|
|
1470
|
+
},
|
|
1471
|
+
{
|
|
1472
|
+
name: "accountIsolatedMarginToken",
|
|
1473
|
+
type: "address",
|
|
1474
|
+
indexed: false,
|
|
1475
|
+
internalType: "address",
|
|
1476
|
+
},
|
|
1477
|
+
{
|
|
1478
|
+
name: "poolId",
|
|
1479
|
+
type: "bytes32",
|
|
1480
|
+
indexed: true,
|
|
1481
|
+
internalType: "bytes32",
|
|
1482
|
+
},
|
|
1483
|
+
{
|
|
1484
|
+
name: "tickLower",
|
|
1485
|
+
type: "int24",
|
|
1486
|
+
indexed: false,
|
|
1487
|
+
internalType: "int24",
|
|
1488
|
+
},
|
|
1489
|
+
{
|
|
1490
|
+
name: "tickUpper",
|
|
1491
|
+
type: "int24",
|
|
1492
|
+
indexed: false,
|
|
1493
|
+
internalType: "int24",
|
|
1494
|
+
},
|
|
1495
|
+
{
|
|
1496
|
+
name: "collateralAssetTaken",
|
|
1497
|
+
type: "address",
|
|
1498
|
+
indexed: false,
|
|
1499
|
+
internalType: "address",
|
|
1500
|
+
},
|
|
1501
|
+
{
|
|
1502
|
+
name: "liquidator",
|
|
1503
|
+
type: "address",
|
|
1504
|
+
indexed: false,
|
|
1505
|
+
internalType: "address",
|
|
1506
|
+
},
|
|
1507
|
+
{
|
|
1508
|
+
name: "collateralSeized",
|
|
1509
|
+
type: "uint256",
|
|
1510
|
+
indexed: false,
|
|
1511
|
+
internalType: "uint256",
|
|
1512
|
+
},
|
|
1513
|
+
{
|
|
1514
|
+
name: "effectiveDebtCovered",
|
|
1515
|
+
type: "uint256",
|
|
1516
|
+
indexed: false,
|
|
1517
|
+
internalType: "uint256",
|
|
1518
|
+
},
|
|
1519
|
+
{
|
|
1520
|
+
name: "fixedCovered",
|
|
1521
|
+
type: "uint256",
|
|
1522
|
+
indexed: false,
|
|
1523
|
+
internalType: "uint256",
|
|
1524
|
+
},
|
|
1525
|
+
],
|
|
1526
|
+
anonymous: false,
|
|
1527
|
+
},
|
|
1528
|
+
{
|
|
1529
|
+
type: "event",
|
|
1530
|
+
name: "PositionSettlement",
|
|
1531
|
+
inputs: [
|
|
1532
|
+
{
|
|
1533
|
+
name: "owner",
|
|
1534
|
+
type: "address",
|
|
1535
|
+
indexed: true,
|
|
1536
|
+
internalType: "address",
|
|
1537
|
+
},
|
|
1538
|
+
{
|
|
1539
|
+
name: "accountId",
|
|
1540
|
+
type: "uint96",
|
|
1541
|
+
indexed: true,
|
|
1542
|
+
internalType: "uint96",
|
|
1543
|
+
},
|
|
1544
|
+
{
|
|
1545
|
+
name: "isolatedMarginToken",
|
|
1546
|
+
type: "address",
|
|
1547
|
+
indexed: false,
|
|
1548
|
+
internalType: "address",
|
|
1549
|
+
},
|
|
1550
|
+
{
|
|
1551
|
+
name: "poolId",
|
|
1552
|
+
type: "bytes32",
|
|
1553
|
+
indexed: true,
|
|
1554
|
+
internalType: "bytes32",
|
|
1555
|
+
},
|
|
1556
|
+
{
|
|
1557
|
+
name: "settlementCashflow",
|
|
1558
|
+
type: "int256",
|
|
1559
|
+
indexed: false,
|
|
1560
|
+
internalType: "int256",
|
|
1561
|
+
},
|
|
1562
|
+
],
|
|
1563
|
+
anonymous: false,
|
|
1564
|
+
},
|
|
1565
|
+
{
|
|
1566
|
+
type: "event",
|
|
1567
|
+
name: "PositionUpdate",
|
|
1568
|
+
inputs: [
|
|
1569
|
+
{
|
|
1570
|
+
name: "owner",
|
|
1571
|
+
type: "address",
|
|
1572
|
+
indexed: true,
|
|
1573
|
+
internalType: "address",
|
|
1574
|
+
},
|
|
1575
|
+
{
|
|
1576
|
+
name: "accountId",
|
|
1577
|
+
type: "uint96",
|
|
1578
|
+
indexed: true,
|
|
1579
|
+
internalType: "uint96",
|
|
1580
|
+
},
|
|
1581
|
+
{
|
|
1582
|
+
name: "isolatedMarginToken",
|
|
1583
|
+
type: "address",
|
|
1584
|
+
indexed: false,
|
|
1585
|
+
internalType: "address",
|
|
1586
|
+
},
|
|
1587
|
+
{
|
|
1588
|
+
name: "poolId",
|
|
1589
|
+
type: "bytes32",
|
|
1590
|
+
indexed: true,
|
|
1591
|
+
internalType: "bytes32",
|
|
1592
|
+
},
|
|
1593
|
+
{
|
|
1594
|
+
name: "tickLower",
|
|
1595
|
+
type: "int24",
|
|
1596
|
+
indexed: false,
|
|
1597
|
+
internalType: "int24",
|
|
1598
|
+
},
|
|
1599
|
+
{
|
|
1600
|
+
name: "tickUpper",
|
|
1601
|
+
type: "int24",
|
|
1602
|
+
indexed: false,
|
|
1603
|
+
internalType: "int24",
|
|
1604
|
+
},
|
|
1605
|
+
{
|
|
1606
|
+
name: "_liquidity",
|
|
1607
|
+
type: "uint128",
|
|
1608
|
+
indexed: false,
|
|
1609
|
+
internalType: "uint128",
|
|
1610
|
+
},
|
|
1611
|
+
{
|
|
1612
|
+
name: "fixedTokenBalance",
|
|
1613
|
+
type: "int256",
|
|
1614
|
+
indexed: false,
|
|
1615
|
+
internalType: "int256",
|
|
1616
|
+
},
|
|
1617
|
+
{
|
|
1618
|
+
name: "variableTokenBalance",
|
|
1619
|
+
type: "int256",
|
|
1620
|
+
indexed: false,
|
|
1621
|
+
internalType: "int256",
|
|
1622
|
+
},
|
|
1623
|
+
{
|
|
1624
|
+
name: "accumulatedFees",
|
|
1625
|
+
type: "uint256",
|
|
1626
|
+
indexed: false,
|
|
1627
|
+
internalType: "uint256",
|
|
1628
|
+
},
|
|
1629
|
+
],
|
|
1630
|
+
anonymous: false,
|
|
1631
|
+
},
|
|
1632
|
+
{
|
|
1633
|
+
type: "event",
|
|
1634
|
+
name: "ProtocolDeficitEliminated",
|
|
1635
|
+
inputs: [
|
|
1636
|
+
{
|
|
1637
|
+
name: "token",
|
|
1638
|
+
type: "address",
|
|
1639
|
+
indexed: true,
|
|
1640
|
+
internalType: "address",
|
|
1641
|
+
},
|
|
1642
|
+
{
|
|
1643
|
+
name: "amount",
|
|
1644
|
+
type: "uint256",
|
|
1645
|
+
indexed: false,
|
|
1646
|
+
internalType: "uint256",
|
|
1647
|
+
},
|
|
1648
|
+
{
|
|
1649
|
+
name: "remainingDeficit",
|
|
1650
|
+
type: "uint256",
|
|
1651
|
+
indexed: false,
|
|
1652
|
+
internalType: "uint256",
|
|
1653
|
+
},
|
|
1654
|
+
],
|
|
1655
|
+
anonymous: false,
|
|
1656
|
+
},
|
|
1657
|
+
{
|
|
1658
|
+
type: "event",
|
|
1659
|
+
name: "ProtocolDeficitIncreased",
|
|
1660
|
+
inputs: [
|
|
1661
|
+
{
|
|
1662
|
+
name: "token",
|
|
1663
|
+
type: "address",
|
|
1664
|
+
indexed: true,
|
|
1665
|
+
internalType: "address",
|
|
1666
|
+
},
|
|
1667
|
+
{
|
|
1668
|
+
name: "amount",
|
|
1669
|
+
type: "uint256",
|
|
1670
|
+
indexed: false,
|
|
1671
|
+
internalType: "uint256",
|
|
1672
|
+
},
|
|
1673
|
+
{
|
|
1674
|
+
name: "totalDeficit",
|
|
1675
|
+
type: "uint256",
|
|
1676
|
+
indexed: false,
|
|
1677
|
+
internalType: "uint256",
|
|
1678
|
+
},
|
|
1679
|
+
],
|
|
1680
|
+
anonymous: false,
|
|
1681
|
+
},
|
|
1682
|
+
{
|
|
1683
|
+
type: "event",
|
|
1684
|
+
name: "VAMMSetting",
|
|
1685
|
+
inputs: [
|
|
1686
|
+
{
|
|
1687
|
+
name: "vamm",
|
|
1688
|
+
type: "address",
|
|
1689
|
+
indexed: true,
|
|
1690
|
+
internalType: "contract IVAMM",
|
|
1691
|
+
},
|
|
1692
|
+
],
|
|
1693
|
+
anonymous: false,
|
|
1694
|
+
},
|
|
1695
|
+
{
|
|
1696
|
+
type: "event",
|
|
1697
|
+
name: "WorstCaseVariableFactorConfigSet",
|
|
1698
|
+
inputs: [
|
|
1699
|
+
{
|
|
1700
|
+
name: "poolId",
|
|
1701
|
+
type: "bytes32",
|
|
1702
|
+
indexed: true,
|
|
1703
|
+
internalType: "bytes32",
|
|
1704
|
+
},
|
|
1705
|
+
{
|
|
1706
|
+
name: "worstCaseVariableFactorPositiveWad",
|
|
1707
|
+
type: "uint256",
|
|
1708
|
+
indexed: false,
|
|
1709
|
+
internalType: "uint256",
|
|
1710
|
+
},
|
|
1711
|
+
{
|
|
1712
|
+
name: "worstCaseVariableFactorNegativeWad",
|
|
1713
|
+
type: "uint256",
|
|
1714
|
+
indexed: false,
|
|
1715
|
+
internalType: "uint256",
|
|
1716
|
+
},
|
|
1717
|
+
{
|
|
1718
|
+
name: "worstCaseVariableFactorPositiveTick",
|
|
1719
|
+
type: "int24",
|
|
1720
|
+
indexed: false,
|
|
1721
|
+
internalType: "int24",
|
|
1722
|
+
},
|
|
1723
|
+
{
|
|
1724
|
+
name: "worstCaseVariableFactorNegativeTick",
|
|
1725
|
+
type: "int24",
|
|
1726
|
+
indexed: false,
|
|
1727
|
+
internalType: "int24",
|
|
1728
|
+
},
|
|
1729
|
+
],
|
|
1730
|
+
anonymous: false,
|
|
1731
|
+
},
|
|
1732
|
+
{
|
|
1733
|
+
type: "error",
|
|
1734
|
+
name: "AavePoolGetReserveNormalizedIncomeReturnedZero",
|
|
1735
|
+
inputs: [],
|
|
1736
|
+
},
|
|
1737
|
+
{
|
|
1738
|
+
type: "error",
|
|
1739
|
+
name: "AavePoolGetReserveNormalizedVariableDebtReturnedZero",
|
|
1740
|
+
inputs: [],
|
|
1741
|
+
},
|
|
1742
|
+
{
|
|
1743
|
+
type: "error",
|
|
1744
|
+
name: "AaveV3PoolGetReserveNormalizedIncomeReturnedZero",
|
|
1745
|
+
inputs: [],
|
|
1746
|
+
},
|
|
1747
|
+
{
|
|
1748
|
+
type: "error",
|
|
1749
|
+
name: "AaveV3PoolGetReserveNormalizedVariableDebtReturnedZero",
|
|
1750
|
+
inputs: [],
|
|
1751
|
+
},
|
|
1752
|
+
{
|
|
1753
|
+
type: "error",
|
|
1754
|
+
name: "AddressEmptyCode",
|
|
1755
|
+
inputs: [
|
|
1756
|
+
{
|
|
1757
|
+
name: "target",
|
|
1758
|
+
type: "address",
|
|
1759
|
+
internalType: "address",
|
|
1760
|
+
},
|
|
1761
|
+
],
|
|
1762
|
+
},
|
|
1763
|
+
{
|
|
1764
|
+
type: "error",
|
|
1765
|
+
name: "AddressInsufficientBalance",
|
|
1766
|
+
inputs: [
|
|
1767
|
+
{
|
|
1768
|
+
name: "account",
|
|
1769
|
+
type: "address",
|
|
1770
|
+
internalType: "address",
|
|
1771
|
+
},
|
|
1772
|
+
],
|
|
1773
|
+
},
|
|
1774
|
+
{
|
|
1775
|
+
type: "error",
|
|
1776
|
+
name: "AprOracleZero",
|
|
1777
|
+
inputs: [],
|
|
1778
|
+
},
|
|
1779
|
+
{
|
|
1780
|
+
type: "error",
|
|
1781
|
+
name: "ArrayLengthMismatch",
|
|
1782
|
+
inputs: [],
|
|
1783
|
+
},
|
|
1784
|
+
{
|
|
1785
|
+
type: "error",
|
|
1786
|
+
name: "AssetNotConfigured",
|
|
1787
|
+
inputs: [
|
|
1788
|
+
{
|
|
1789
|
+
name: "asset",
|
|
1790
|
+
type: "address",
|
|
1791
|
+
internalType: "address",
|
|
1792
|
+
},
|
|
1793
|
+
],
|
|
1794
|
+
},
|
|
1795
|
+
{
|
|
1796
|
+
type: "error",
|
|
1797
|
+
name: "CTokenExchangeRateReturnedZero",
|
|
1798
|
+
inputs: [],
|
|
1799
|
+
},
|
|
1800
|
+
{
|
|
1801
|
+
type: "error",
|
|
1802
|
+
name: "CanOnlyTradeIfUnlocked",
|
|
1803
|
+
inputs: [
|
|
1804
|
+
{
|
|
1805
|
+
name: "unlocked",
|
|
1806
|
+
type: "bool",
|
|
1807
|
+
internalType: "bool",
|
|
1808
|
+
},
|
|
1809
|
+
],
|
|
1810
|
+
},
|
|
1811
|
+
{
|
|
1812
|
+
type: "error",
|
|
1813
|
+
name: "CannotLiquidate",
|
|
1814
|
+
inputs: [],
|
|
1815
|
+
},
|
|
1816
|
+
{
|
|
1817
|
+
type: "error",
|
|
1818
|
+
name: "CannotSettleBeforeMaturity",
|
|
1819
|
+
inputs: [],
|
|
1820
|
+
},
|
|
1821
|
+
{
|
|
1822
|
+
type: "error",
|
|
1823
|
+
name: "CollateralEngineZero",
|
|
1824
|
+
inputs: [],
|
|
1825
|
+
},
|
|
1826
|
+
{
|
|
1827
|
+
type: "error",
|
|
1828
|
+
name: "CompoundTokenZero",
|
|
1829
|
+
inputs: [],
|
|
1830
|
+
},
|
|
1831
|
+
{
|
|
1832
|
+
type: "error",
|
|
1833
|
+
name: "DebugError",
|
|
1834
|
+
inputs: [
|
|
1835
|
+
{
|
|
1836
|
+
name: "x",
|
|
1837
|
+
type: "uint256",
|
|
1838
|
+
internalType: "uint256",
|
|
1839
|
+
},
|
|
1840
|
+
{
|
|
1841
|
+
name: "y",
|
|
1842
|
+
type: "uint256",
|
|
1843
|
+
internalType: "uint256",
|
|
1844
|
+
},
|
|
1845
|
+
],
|
|
1846
|
+
},
|
|
1847
|
+
{
|
|
1848
|
+
type: "error",
|
|
1849
|
+
name: "DustResidue",
|
|
1850
|
+
inputs: [],
|
|
1851
|
+
},
|
|
1852
|
+
{
|
|
1853
|
+
type: "error",
|
|
1854
|
+
name: "ESMZero",
|
|
1855
|
+
inputs: [],
|
|
1856
|
+
},
|
|
1857
|
+
{
|
|
1858
|
+
type: "error",
|
|
1859
|
+
name: "ExpectedOppositeSigns",
|
|
1860
|
+
inputs: [
|
|
1861
|
+
{
|
|
1862
|
+
name: "amount0",
|
|
1863
|
+
type: "int256",
|
|
1864
|
+
internalType: "int256",
|
|
1865
|
+
},
|
|
1866
|
+
{
|
|
1867
|
+
name: "amount1",
|
|
1868
|
+
type: "int256",
|
|
1869
|
+
internalType: "int256",
|
|
1870
|
+
},
|
|
1871
|
+
],
|
|
1872
|
+
},
|
|
1873
|
+
{
|
|
1874
|
+
type: "error",
|
|
1875
|
+
name: "ExpectedSqrtPriceZeroBeforeInit",
|
|
1876
|
+
inputs: [
|
|
1877
|
+
{
|
|
1878
|
+
name: "sqrtPriceX96",
|
|
1879
|
+
type: "uint160",
|
|
1880
|
+
internalType: "uint160",
|
|
1881
|
+
},
|
|
1882
|
+
],
|
|
1883
|
+
},
|
|
1884
|
+
{
|
|
1885
|
+
type: "error",
|
|
1886
|
+
name: "FailedInnerCall",
|
|
1887
|
+
inputs: [],
|
|
1888
|
+
},
|
|
1889
|
+
{
|
|
1890
|
+
type: "error",
|
|
1891
|
+
name: "FeeRangeInvalid",
|
|
1892
|
+
inputs: [
|
|
1893
|
+
{
|
|
1894
|
+
name: "feeWad",
|
|
1895
|
+
type: "uint256",
|
|
1896
|
+
internalType: "uint256",
|
|
1897
|
+
},
|
|
1898
|
+
],
|
|
1899
|
+
},
|
|
1900
|
+
{
|
|
1901
|
+
type: "error",
|
|
1902
|
+
name: "GlpRewardTrackerUnorderedRate",
|
|
1903
|
+
inputs: [],
|
|
1904
|
+
},
|
|
1905
|
+
{
|
|
1906
|
+
type: "error",
|
|
1907
|
+
name: "IRSNotionalAmountSpecifiedMustBeNonZero",
|
|
1908
|
+
inputs: [],
|
|
1909
|
+
},
|
|
1910
|
+
{
|
|
1911
|
+
type: "error",
|
|
1912
|
+
name: "InsufficientESMBalance",
|
|
1913
|
+
inputs: [
|
|
1914
|
+
{
|
|
1915
|
+
name: "poolId",
|
|
1916
|
+
type: "bytes32",
|
|
1917
|
+
internalType: "bytes32",
|
|
1918
|
+
},
|
|
1919
|
+
{
|
|
1920
|
+
name: "requested",
|
|
1921
|
+
type: "int256",
|
|
1922
|
+
internalType: "int256",
|
|
1923
|
+
},
|
|
1924
|
+
{
|
|
1925
|
+
name: "available",
|
|
1926
|
+
type: "int256",
|
|
1927
|
+
internalType: "int256",
|
|
1928
|
+
},
|
|
1929
|
+
],
|
|
1930
|
+
},
|
|
1931
|
+
{
|
|
1932
|
+
type: "error",
|
|
1933
|
+
name: "InvalidAprRate",
|
|
1934
|
+
inputs: [
|
|
1935
|
+
{
|
|
1936
|
+
name: "compoundToken",
|
|
1937
|
+
type: "address",
|
|
1938
|
+
internalType: "address",
|
|
1939
|
+
},
|
|
1940
|
+
{
|
|
1941
|
+
name: "fromTimestamp",
|
|
1942
|
+
type: "uint48",
|
|
1943
|
+
internalType: "uint48",
|
|
1944
|
+
},
|
|
1945
|
+
{
|
|
1946
|
+
name: "toTimestamp",
|
|
1947
|
+
type: "uint48",
|
|
1948
|
+
internalType: "uint48",
|
|
1949
|
+
},
|
|
1950
|
+
],
|
|
1951
|
+
},
|
|
1952
|
+
{
|
|
1953
|
+
type: "error",
|
|
1954
|
+
name: "InvalidDiscountRate",
|
|
1955
|
+
inputs: [
|
|
1956
|
+
{
|
|
1957
|
+
name: "rate",
|
|
1958
|
+
type: "uint256",
|
|
1959
|
+
internalType: "uint256",
|
|
1960
|
+
},
|
|
1961
|
+
],
|
|
1962
|
+
},
|
|
1963
|
+
{
|
|
1964
|
+
type: "error",
|
|
1965
|
+
name: "InvalidInitialization",
|
|
1966
|
+
inputs: [],
|
|
1967
|
+
},
|
|
1968
|
+
{
|
|
1969
|
+
type: "error",
|
|
1970
|
+
name: "InvalidMarginDelta",
|
|
1971
|
+
inputs: [],
|
|
1972
|
+
},
|
|
1973
|
+
{
|
|
1974
|
+
type: "error",
|
|
1975
|
+
name: "InvalidPrice",
|
|
1976
|
+
inputs: [
|
|
1977
|
+
{
|
|
1978
|
+
name: "asset",
|
|
1979
|
+
type: "address",
|
|
1980
|
+
internalType: "address",
|
|
1981
|
+
},
|
|
1982
|
+
],
|
|
1983
|
+
},
|
|
1984
|
+
{
|
|
1985
|
+
type: "error",
|
|
1986
|
+
name: "InvalidTermTimestamps",
|
|
1987
|
+
inputs: [
|
|
1988
|
+
{
|
|
1989
|
+
name: "termStart",
|
|
1990
|
+
type: "uint256",
|
|
1991
|
+
internalType: "uint256",
|
|
1992
|
+
},
|
|
1993
|
+
{
|
|
1994
|
+
name: "termEnd",
|
|
1995
|
+
type: "uint256",
|
|
1996
|
+
internalType: "uint256",
|
|
1997
|
+
},
|
|
1998
|
+
],
|
|
1999
|
+
},
|
|
2000
|
+
{
|
|
2001
|
+
type: "error",
|
|
2002
|
+
name: "IsolatedMarginModeViolation",
|
|
2003
|
+
inputs: [
|
|
2004
|
+
{
|
|
2005
|
+
name: "accountIsolatedToken",
|
|
2006
|
+
type: "address",
|
|
2007
|
+
internalType: "address",
|
|
2008
|
+
},
|
|
2009
|
+
{
|
|
2010
|
+
name: "poolUnderlyingAsset",
|
|
2011
|
+
type: "address",
|
|
2012
|
+
internalType: "address",
|
|
2013
|
+
},
|
|
2014
|
+
],
|
|
2015
|
+
},
|
|
2016
|
+
{
|
|
2017
|
+
type: "error",
|
|
2018
|
+
name: "LidoGetPooledEthBySharesReturnedZero",
|
|
2019
|
+
inputs: [],
|
|
2020
|
+
},
|
|
2021
|
+
{
|
|
2022
|
+
type: "error",
|
|
2023
|
+
name: "LiquidityDeltaMustBePositiveInBurn",
|
|
2024
|
+
inputs: [
|
|
2025
|
+
{
|
|
2026
|
+
name: "amount",
|
|
2027
|
+
type: "uint128",
|
|
2028
|
+
internalType: "uint128",
|
|
2029
|
+
},
|
|
2030
|
+
],
|
|
2031
|
+
},
|
|
2032
|
+
{
|
|
2033
|
+
type: "error",
|
|
2034
|
+
name: "LiquidityDeltaMustBePositiveInMint",
|
|
2035
|
+
inputs: [
|
|
2036
|
+
{
|
|
2037
|
+
name: "amount",
|
|
2038
|
+
type: "uint128",
|
|
2039
|
+
internalType: "uint128",
|
|
2040
|
+
},
|
|
2041
|
+
],
|
|
2042
|
+
},
|
|
2043
|
+
{
|
|
2044
|
+
type: "error",
|
|
2045
|
+
name: "MarginLessThanMinimum",
|
|
2046
|
+
inputs: [
|
|
2047
|
+
{
|
|
2048
|
+
name: "marginRequirement",
|
|
2049
|
+
type: "int256",
|
|
2050
|
+
internalType: "int256",
|
|
2051
|
+
},
|
|
2052
|
+
],
|
|
2053
|
+
},
|
|
2054
|
+
{
|
|
2055
|
+
type: "error",
|
|
2056
|
+
name: "MarginRequirementNotMet",
|
|
2057
|
+
inputs: [
|
|
2058
|
+
{
|
|
2059
|
+
name: "marginRequirement",
|
|
2060
|
+
type: "uint256",
|
|
2061
|
+
internalType: "uint256",
|
|
2062
|
+
},
|
|
2063
|
+
{
|
|
2064
|
+
name: "totalMarginValue",
|
|
2065
|
+
type: "uint256",
|
|
2066
|
+
internalType: "uint256",
|
|
2067
|
+
},
|
|
2068
|
+
],
|
|
2069
|
+
},
|
|
2070
|
+
{
|
|
2071
|
+
type: "error",
|
|
2072
|
+
name: "MarginRequirementNotMetFCM",
|
|
2073
|
+
inputs: [
|
|
2074
|
+
{
|
|
2075
|
+
name: "marginRequirement",
|
|
2076
|
+
type: "int256",
|
|
2077
|
+
internalType: "int256",
|
|
2078
|
+
},
|
|
2079
|
+
],
|
|
2080
|
+
},
|
|
2081
|
+
{
|
|
2082
|
+
type: "error",
|
|
2083
|
+
name: "MessageSenderNotAuthorized",
|
|
2084
|
+
inputs: [
|
|
2085
|
+
{
|
|
2086
|
+
name: "sender",
|
|
2087
|
+
type: "address",
|
|
2088
|
+
internalType: "address",
|
|
2089
|
+
},
|
|
2090
|
+
{
|
|
2091
|
+
name: "recipient",
|
|
2092
|
+
type: "address",
|
|
2093
|
+
internalType: "address",
|
|
2094
|
+
},
|
|
2095
|
+
],
|
|
2096
|
+
},
|
|
2097
|
+
{
|
|
2098
|
+
type: "error",
|
|
2099
|
+
name: "NoPositionsInPool",
|
|
2100
|
+
inputs: [
|
|
2101
|
+
{
|
|
2102
|
+
name: "poolId",
|
|
2103
|
+
type: "bytes32",
|
|
2104
|
+
internalType: "bytes32",
|
|
2105
|
+
},
|
|
2106
|
+
],
|
|
2107
|
+
},
|
|
2108
|
+
{
|
|
2109
|
+
type: "error",
|
|
2110
|
+
name: "NotEnoughFunds",
|
|
2111
|
+
inputs: [
|
|
2112
|
+
{
|
|
2113
|
+
name: "requested",
|
|
2114
|
+
type: "uint256",
|
|
2115
|
+
internalType: "uint256",
|
|
2116
|
+
},
|
|
2117
|
+
{
|
|
2118
|
+
name: "available",
|
|
2119
|
+
type: "uint256",
|
|
2120
|
+
internalType: "uint256",
|
|
2121
|
+
},
|
|
2122
|
+
],
|
|
2123
|
+
},
|
|
2124
|
+
{
|
|
2125
|
+
type: "error",
|
|
2126
|
+
name: "NotEnoughFundsForFee",
|
|
2127
|
+
inputs: [
|
|
2128
|
+
{
|
|
2129
|
+
name: "balance",
|
|
2130
|
+
type: "uint256",
|
|
2131
|
+
internalType: "uint256",
|
|
2132
|
+
},
|
|
2133
|
+
{
|
|
2134
|
+
name: "fee",
|
|
2135
|
+
type: "int256",
|
|
2136
|
+
internalType: "int256",
|
|
2137
|
+
},
|
|
2138
|
+
],
|
|
2139
|
+
},
|
|
2140
|
+
{
|
|
2141
|
+
type: "error",
|
|
2142
|
+
name: "NotInitializing",
|
|
2143
|
+
inputs: [],
|
|
2144
|
+
},
|
|
2145
|
+
{
|
|
2146
|
+
type: "error",
|
|
2147
|
+
name: "OOO",
|
|
2148
|
+
inputs: [],
|
|
2149
|
+
},
|
|
2150
|
+
{
|
|
2151
|
+
type: "error",
|
|
2152
|
+
name: "OnlyCollateralEngine",
|
|
2153
|
+
inputs: [],
|
|
2154
|
+
},
|
|
2155
|
+
{
|
|
2156
|
+
type: "error",
|
|
2157
|
+
name: "OnlyFCM",
|
|
2158
|
+
inputs: [],
|
|
2159
|
+
},
|
|
2160
|
+
{
|
|
2161
|
+
type: "error",
|
|
2162
|
+
name: "OnlyOwnerCanUpdatePosition",
|
|
2163
|
+
inputs: [],
|
|
2164
|
+
},
|
|
2165
|
+
{
|
|
2166
|
+
type: "error",
|
|
2167
|
+
name: "OnlyVAMM",
|
|
2168
|
+
inputs: [],
|
|
2169
|
+
},
|
|
2170
|
+
{
|
|
2171
|
+
type: "error",
|
|
2172
|
+
name: "OnlyVAMMCaller",
|
|
2173
|
+
inputs: [
|
|
2174
|
+
{
|
|
2175
|
+
name: "sender",
|
|
2176
|
+
type: "address",
|
|
2177
|
+
internalType: "address",
|
|
2178
|
+
},
|
|
2179
|
+
{
|
|
2180
|
+
name: "vamm",
|
|
2181
|
+
type: "address",
|
|
2182
|
+
internalType: "address",
|
|
2183
|
+
},
|
|
2184
|
+
],
|
|
2185
|
+
},
|
|
2186
|
+
{
|
|
2187
|
+
type: "error",
|
|
2188
|
+
name: "OracleHubZero",
|
|
2189
|
+
inputs: [],
|
|
2190
|
+
},
|
|
2191
|
+
{
|
|
2192
|
+
type: "error",
|
|
2193
|
+
name: "OwnableInvalidOwner",
|
|
2194
|
+
inputs: [
|
|
2195
|
+
{
|
|
2196
|
+
name: "owner",
|
|
2197
|
+
type: "address",
|
|
2198
|
+
internalType: "address",
|
|
2199
|
+
},
|
|
2200
|
+
],
|
|
2201
|
+
},
|
|
2202
|
+
{
|
|
2203
|
+
type: "error",
|
|
2204
|
+
name: "OwnableUnauthorizedAccount",
|
|
2205
|
+
inputs: [
|
|
2206
|
+
{
|
|
2207
|
+
name: "account",
|
|
2208
|
+
type: "address",
|
|
2209
|
+
internalType: "address",
|
|
2210
|
+
},
|
|
2211
|
+
],
|
|
2212
|
+
},
|
|
2213
|
+
{
|
|
2214
|
+
type: "error",
|
|
2215
|
+
name: "PRBMathSD59x18__DivInputTooSmall",
|
|
2216
|
+
inputs: [],
|
|
2217
|
+
},
|
|
2218
|
+
{
|
|
2219
|
+
type: "error",
|
|
2220
|
+
name: "PRBMathSD59x18__DivOverflow",
|
|
2221
|
+
inputs: [
|
|
2222
|
+
{
|
|
2223
|
+
name: "rAbs",
|
|
2224
|
+
type: "uint256",
|
|
2225
|
+
internalType: "uint256",
|
|
2226
|
+
},
|
|
2227
|
+
],
|
|
2228
|
+
},
|
|
2229
|
+
{
|
|
2230
|
+
type: "error",
|
|
2231
|
+
name: "PRBMathSD59x18__FromIntOverflow",
|
|
2232
|
+
inputs: [
|
|
2233
|
+
{
|
|
2234
|
+
name: "x",
|
|
2235
|
+
type: "int256",
|
|
2236
|
+
internalType: "int256",
|
|
2237
|
+
},
|
|
2238
|
+
],
|
|
2239
|
+
},
|
|
2240
|
+
{
|
|
2241
|
+
type: "error",
|
|
2242
|
+
name: "PRBMathSD59x18__FromIntUnderflow",
|
|
2243
|
+
inputs: [
|
|
2244
|
+
{
|
|
2245
|
+
name: "x",
|
|
2246
|
+
type: "int256",
|
|
2247
|
+
internalType: "int256",
|
|
2248
|
+
},
|
|
2249
|
+
],
|
|
2250
|
+
},
|
|
2251
|
+
{
|
|
2252
|
+
type: "error",
|
|
2253
|
+
name: "PRBMathSD59x18__MulInputTooSmall",
|
|
2254
|
+
inputs: [],
|
|
2255
|
+
},
|
|
2256
|
+
{
|
|
2257
|
+
type: "error",
|
|
2258
|
+
name: "PRBMathSD59x18__MulOverflow",
|
|
2259
|
+
inputs: [
|
|
2260
|
+
{
|
|
2261
|
+
name: "rAbs",
|
|
2262
|
+
type: "uint256",
|
|
2263
|
+
internalType: "uint256",
|
|
2264
|
+
},
|
|
2265
|
+
],
|
|
2266
|
+
},
|
|
2267
|
+
{
|
|
2268
|
+
type: "error",
|
|
2269
|
+
name: "PRBMathUD60x18__FromUintOverflow",
|
|
2270
|
+
inputs: [
|
|
2271
|
+
{
|
|
2272
|
+
name: "x",
|
|
2273
|
+
type: "uint256",
|
|
2274
|
+
internalType: "uint256",
|
|
2275
|
+
},
|
|
2276
|
+
],
|
|
2277
|
+
},
|
|
2278
|
+
{
|
|
2279
|
+
type: "error",
|
|
2280
|
+
name: "PRBMath__MulDivFixedPointOverflow",
|
|
2281
|
+
inputs: [
|
|
2282
|
+
{
|
|
2283
|
+
name: "prod1",
|
|
2284
|
+
type: "uint256",
|
|
2285
|
+
internalType: "uint256",
|
|
2286
|
+
},
|
|
2287
|
+
],
|
|
2288
|
+
},
|
|
2289
|
+
{
|
|
2290
|
+
type: "error",
|
|
2291
|
+
name: "PRBMath__MulDivOverflow",
|
|
2292
|
+
inputs: [
|
|
2293
|
+
{
|
|
2294
|
+
name: "prod1",
|
|
2295
|
+
type: "uint256",
|
|
2296
|
+
internalType: "uint256",
|
|
2297
|
+
},
|
|
2298
|
+
{
|
|
2299
|
+
name: "denominator",
|
|
2300
|
+
type: "uint256",
|
|
2301
|
+
internalType: "uint256",
|
|
2302
|
+
},
|
|
2303
|
+
],
|
|
2304
|
+
},
|
|
2305
|
+
{
|
|
2306
|
+
type: "error",
|
|
2307
|
+
name: "PoolExpired",
|
|
2308
|
+
inputs: [],
|
|
2309
|
+
},
|
|
2310
|
+
{
|
|
2311
|
+
type: "error",
|
|
2312
|
+
name: "PoolNotInitialized",
|
|
2313
|
+
inputs: [],
|
|
2314
|
+
},
|
|
2315
|
+
{
|
|
2316
|
+
type: "error",
|
|
2317
|
+
name: "PoolNotMatured",
|
|
2318
|
+
inputs: [
|
|
2319
|
+
{
|
|
2320
|
+
name: "currentTimestamp",
|
|
2321
|
+
type: "uint256",
|
|
2322
|
+
internalType: "uint256",
|
|
2323
|
+
},
|
|
2324
|
+
{
|
|
2325
|
+
name: "termEndTimestamp",
|
|
2326
|
+
type: "uint256",
|
|
2327
|
+
internalType: "uint256",
|
|
2328
|
+
},
|
|
2329
|
+
],
|
|
2330
|
+
},
|
|
2331
|
+
{
|
|
2332
|
+
type: "error",
|
|
2333
|
+
name: "PositionNetZero",
|
|
2334
|
+
inputs: [],
|
|
2335
|
+
},
|
|
2336
|
+
{
|
|
2337
|
+
type: "error",
|
|
2338
|
+
name: "PositionNotInDebt",
|
|
2339
|
+
inputs: [],
|
|
2340
|
+
},
|
|
2341
|
+
{
|
|
2342
|
+
type: "error",
|
|
2343
|
+
name: "PositionNotSettled",
|
|
2344
|
+
inputs: [],
|
|
2345
|
+
},
|
|
2346
|
+
{
|
|
2347
|
+
type: "error",
|
|
2348
|
+
name: "ProtocolFeeRangeInvalid",
|
|
2349
|
+
inputs: [
|
|
2350
|
+
{
|
|
2351
|
+
name: "feeProtocol",
|
|
2352
|
+
type: "uint8",
|
|
2353
|
+
internalType: "uint8",
|
|
2354
|
+
},
|
|
2355
|
+
],
|
|
2356
|
+
},
|
|
2357
|
+
{
|
|
2358
|
+
type: "error",
|
|
2359
|
+
name: "RateOracleZero",
|
|
2360
|
+
inputs: [],
|
|
2361
|
+
},
|
|
2362
|
+
{
|
|
2363
|
+
type: "error",
|
|
2364
|
+
name: "RedstoneLatestRoundDataReturnedNegativeOrZero",
|
|
2365
|
+
inputs: [],
|
|
2366
|
+
},
|
|
2367
|
+
{
|
|
2368
|
+
type: "error",
|
|
2369
|
+
name: "ReentrancyGuardReentrantCall",
|
|
2370
|
+
inputs: [],
|
|
2371
|
+
},
|
|
2372
|
+
{
|
|
2373
|
+
type: "error",
|
|
2374
|
+
name: "RocketPoolGetEthValueReturnedZero",
|
|
2375
|
+
inputs: [],
|
|
2376
|
+
},
|
|
2377
|
+
{
|
|
2378
|
+
type: "error",
|
|
2379
|
+
name: "SafeERC20FailedOperation",
|
|
2380
|
+
inputs: [
|
|
2381
|
+
{
|
|
2382
|
+
name: "token",
|
|
2383
|
+
type: "address",
|
|
2384
|
+
internalType: "address",
|
|
2385
|
+
},
|
|
2386
|
+
],
|
|
2387
|
+
},
|
|
2388
|
+
{
|
|
2389
|
+
type: "error",
|
|
2390
|
+
name: "SqrtPriceLimitInvalid",
|
|
2391
|
+
inputs: [
|
|
2392
|
+
{
|
|
2393
|
+
name: "isFT",
|
|
2394
|
+
type: "bool",
|
|
2395
|
+
internalType: "bool",
|
|
2396
|
+
},
|
|
2397
|
+
{
|
|
2398
|
+
name: "sqrtPriceLimitX96",
|
|
2399
|
+
type: "uint160",
|
|
2400
|
+
internalType: "uint160",
|
|
2401
|
+
},
|
|
2402
|
+
{
|
|
2403
|
+
name: "currentSqrtPriceX96",
|
|
2404
|
+
type: "uint160",
|
|
2405
|
+
internalType: "uint160",
|
|
2406
|
+
},
|
|
2407
|
+
],
|
|
2408
|
+
},
|
|
2409
|
+
{
|
|
2410
|
+
type: "error",
|
|
2411
|
+
name: "SqrtPriceRatioOutOfBounds",
|
|
2412
|
+
inputs: [
|
|
2413
|
+
{
|
|
2414
|
+
name: "sqrtPriceX96",
|
|
2415
|
+
type: "uint160",
|
|
2416
|
+
internalType: "uint160",
|
|
2417
|
+
},
|
|
2418
|
+
],
|
|
2419
|
+
},
|
|
2420
|
+
{
|
|
2421
|
+
type: "error",
|
|
2422
|
+
name: "TickSpacingOutOfBounds",
|
|
2423
|
+
inputs: [
|
|
2424
|
+
{
|
|
2425
|
+
name: "tickSpacing",
|
|
2426
|
+
type: "int24",
|
|
2427
|
+
internalType: "int24",
|
|
2428
|
+
},
|
|
2429
|
+
],
|
|
2430
|
+
},
|
|
2431
|
+
{
|
|
2432
|
+
type: "error",
|
|
2433
|
+
name: "TokenNotWhitelisted",
|
|
2434
|
+
inputs: [
|
|
2435
|
+
{
|
|
2436
|
+
name: "token",
|
|
2437
|
+
type: "address",
|
|
2438
|
+
internalType: "address",
|
|
2439
|
+
},
|
|
2440
|
+
],
|
|
2441
|
+
},
|
|
2442
|
+
{
|
|
2443
|
+
type: "error",
|
|
2444
|
+
name: "Unauthorized",
|
|
2445
|
+
inputs: [
|
|
2446
|
+
{
|
|
2447
|
+
name: "caller",
|
|
2448
|
+
type: "address",
|
|
2449
|
+
internalType: "address",
|
|
2450
|
+
},
|
|
2451
|
+
{
|
|
2452
|
+
name: "expected",
|
|
2453
|
+
type: "address",
|
|
2454
|
+
internalType: "address",
|
|
2455
|
+
},
|
|
2456
|
+
],
|
|
2457
|
+
},
|
|
2458
|
+
{
|
|
2459
|
+
type: "error",
|
|
2460
|
+
name: "UnderlyingAssetZero",
|
|
2461
|
+
inputs: [],
|
|
2462
|
+
},
|
|
2463
|
+
{
|
|
2464
|
+
type: "error",
|
|
2465
|
+
name: "UnderlyingTokenZero",
|
|
2466
|
+
inputs: [],
|
|
2467
|
+
},
|
|
2468
|
+
{
|
|
2469
|
+
type: "error",
|
|
2470
|
+
name: "VAMMLocked",
|
|
2471
|
+
inputs: [],
|
|
2472
|
+
},
|
|
2473
|
+
{
|
|
2474
|
+
type: "error",
|
|
2475
|
+
name: "VAMMManagerZero",
|
|
2476
|
+
inputs: [],
|
|
2477
|
+
},
|
|
2478
|
+
{
|
|
2479
|
+
type: "error",
|
|
2480
|
+
name: "VAMMNotInitialized",
|
|
2481
|
+
inputs: [],
|
|
2482
|
+
},
|
|
2483
|
+
{
|
|
2484
|
+
type: "error",
|
|
2485
|
+
name: "VariableTokensNotFullyLiquidated",
|
|
2486
|
+
inputs: [],
|
|
2487
|
+
},
|
|
2488
|
+
{
|
|
2489
|
+
type: "error",
|
|
2490
|
+
name: "WithdrawalExceedsCurrentMargin",
|
|
2491
|
+
inputs: [
|
|
2492
|
+
{
|
|
2493
|
+
name: "currentMargin",
|
|
2494
|
+
type: "uint256",
|
|
2495
|
+
internalType: "uint256",
|
|
2496
|
+
},
|
|
2497
|
+
],
|
|
2498
|
+
},
|
|
2499
|
+
{
|
|
2500
|
+
type: "error",
|
|
2501
|
+
name: "ZeroInputPrice",
|
|
2502
|
+
inputs: [],
|
|
2503
|
+
},
|
|
2504
|
+
{
|
|
2505
|
+
type: "error",
|
|
2506
|
+
name: "closeToOrBeyondMaturity",
|
|
2507
|
+
inputs: [],
|
|
2508
|
+
},
|
|
2509
|
+
] as const;
|
|
2510
|
+
|
|
2511
|
+
const _bytecode =
|
|
2512
|
+
"0x6080806040523460aa575f5160206158d75f395f51905f525460ff8160401c16609b576002600160401b03196001600160401b038216016049575b60405161582890816100af8239f35b6001600160401b0319166001600160401b039081175f5160206158d75f395f51905f525581527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a15f80603a565b63f92ee8a960e01b5f5260045ffd5b5f80fdfe60a06040526004361015610011575f80fd5b5f5f3560e01c806304e6f011146136c35780630ea97a4f1461366557806318fefc7d1461363f5780631a2dd39314612ec7578063258e9ddd14612dbd5780632a9530c91461295b5780633346f01f146128cb578063365161ac146128a6578063380c45f31461280d5780633b33e9ee146126615780633ee841b4146124d0578063485cc955146122bd5780634a718f4c1461225a57806355e281e514611c475780635f4d9513146113ed57806362315c421461137c578063715018a6146112fd57806373d62b46146112d857806379ba5097146112885780637c70b586146111d6578063837953fe14610ff4578063866c13cd14610fb25780638da5cb5b14610f7d5780638f3d768514610d1d57806394990bd814610cf85780639f5c462a14610c33578063a0c44833146108c2578063a6b9db78146107d9578063ad7e55ba14610782578063af41b24814610752578063c3b2bf0c146105fa578063d64455341461058f578063dbb37abf14610558578063e30c397814610523578063e55982931461043a578063efae012d146102395763f2fde38b146101b1575f80fd5b34610236576020366003190112610236576101ca613732565b6101d2613c40565b5f5160206157d35f395f51905f5280546001600160a01b0319166001600160a01b039283169081179091555f5160206157735f395f51905f52549091167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227008380a380f35b80fd5b503461023657608036600319011261023657610253613732565b6024359060443560643591610266613c40565b6001600160a01b031692831561042657670de0b6b3a764000083116103e95780610317575b6103117f116d415a3c3ff5692b2e60068e9d456e839f06b2069dd15523651610d7815d9c936102b8613c73565b6002604051916102c783613810565b85835260208301878152600a60408501928684528b5f520160205260405f209351845551600184015551910155604051938493846040919493926060820195825260208201520152565b0390a280f35b670de0b6b3a764000081116103ba5780821061037557670de0b6b3a764000082111561028b5760405162461bcd60e51b815260206004820152601060248201526f6c69715468726573686f6c64203e203160801b6044820152606490fd5b60405162461bcd60e51b815260206004820152601b60248201527f6c69715468726573686f6c64206d757374206265203e3d206c747600000000006044820152606490fd5b60405162461bcd60e51b81526020600482015260076024820152666c7476203e203160c81b6044820152606490fd5b60405162461bcd60e51b81526020600482015260156024820152746175746f45786368616e6765426f6e7573203e203160581b6044820152606490fd5b63751dff9760e11b85526004849052602485fd5b50346102365760203660031901126102365760408160c09260a0835161045f8161382c565b828152826020820152828582015282606082015282608082015201526006610485613c73565b0160043582526020522060405161049b8161382c565b60018060a01b038254169182825260018060a01b03600182015416602083019081526002820154604084019081526003830154916060850192835260a0600560048601549560808801968752015460020b950194855260405195865260018060a01b0390511660208601525160408501525160608401525160808301525160020b60a0820152f35b50346102365780600319360112610236575f5160206157d35f395f51905f52546040516001600160a01b039091168152602090f35b5034610236576040366003190112610236576020610585610577613732565b61057f613748565b90614473565b6040519015158152f35b5034610236576020366003190112610236576105a9613732565b6105b1613c40565b6001600160a01b038116156105eb5760096105ca613c73565b0180546001600160a01b0319166001600160a01b0390921691909117905580f35b631c7d7e9160e11b8252600482fd5b5034610236576040610100916106a6610612366137a8565b929390918560e0885161062481613848565b828152826020820152828a8201528260608201528260808201528260a08201528260c0820152015261069861066a61066561065d613c73565b97369061394a565b613cb7565b948851948593602085019788929091604694928452602084015260e81b604083015260e81b60438201520190565b03601f198101835282613865565b5190208252602052206040516106bb81613848565b6001600160801b03825416918282526001810154602083019081526002820154604084019081526003830154606085019081526004840154916080860192835260058501549360a0870194855260e0600760068801549760c08a01988952015497019687526040519788525160208801525160408701525160608601525160808501525160a08401525160c08301525160e0820152f35b503461023657806003193601126102365760206001600160a01b036009610777613c73565b015416604051908152f35b5034610236576020366003190112610236577fc0b0a9a0bbe220839e3c4767b7ba9bb38bbe78037c1ab27f08c618896cba166560206004356107c2613c40565b80600c6107cd613c73565b0155604051908152a180f35b5034610236576060366003190112610236576107f436613887565b906107fd613c73565b60408051635873500560e11b8152600481019290925283516001600160a01b0390811660248401526020808601516001600160601b03166044850152949091015116606482015260016084820152918260a48173__$134b6c58d0b200b9f69932d007736bd671$__5af49081156108b6579061087f575b604051908152602090f35b506020813d6020116108ae575b8161089960209383613865565b810103126108aa5760209051610874565b5f80fd5b3d915061088c565b604051903d90823e3d90fd5b50346102365736600319016101008112610c2f5760601361023657606435906108e9613788565b906108f2613798565b60c4356001600160a01b0381169490859003610c2b57610910613d1a565b610918613c73565b9473__$134b6c58d0b200b9f69932d007736bd671$__95863b15610c27576040516339ef2e6360e21b81526004810182905261095660248201613ae3565b85816084818b5af48015610c0757908691610c12575b50506040516324bfaff960e11b81526004810182905261098e60248201613ae3565b85608482015260208160a4818b5af4908115610c07578691610bcd575b5015610bbe576109bd61066536613887565b85526001810160205260056040862001838652602052610a19604086206040516020810190610a02816106988a8d86909160069260e81b825260e81b60038201520190565b519020906001915f520160205260405f2054151590565b15610bbe576060906101246040518098819363b7c3179160e01b83526004830152610a4660248301613ae3565b86608483015260020b968760a483015260020b998a60c48301528560e483015260e4356101048301525af4928315610bb3578480968195610b44575b50507fe46f55ec7ba2ce6eccac55ca8735c68a508da98b1030585f3feb36fd036525c66101006001600160601b03610b40979899610abe613b2f565b95610ac7613b5b565b91610ad0613b45565b966040519760018060a01b031688526020880152604087015260608601523360808601528960a08601528a60c08601528760e0860152169360018060a01b031692a460015f5160206157935f395f51905f5255604051938493846040919493926060820195825260208201520152565b0390f35b955096935094506060843d606011610bab575b81610b6460609383613865565b81010312610ba7578351602085015160409095015193965093947fe46f55ec7ba2ce6eccac55ca8735c68a508da98b1030585f3feb36fd036525c6610100610a82565b8580fd5b3d9150610b57565b6040513d86823e3d90fd5b63bf87c7d560e01b8552600485fd5b90506020813d602011610bff575b81610be860209383613865565b81010312610ba757610bf990613c33565b5f6109ab565b3d9150610bdb565b6040513d88823e3d90fd5b81610c1c91613865565b610c2757845f61096c565b8480fd5b8280fd5b5080fd5b503461023657606036600319011261023657610c4d613732565b610c55613748565b60443591821515809303610cf4576001600160a01b03169033829003610cdc5760207f835300f4efc6baa8eaca41203496168e2692363fadd528ad4957405e5898b453916008610ca3613c73565b5f8681529101835260408082206001600160a01b039390931680835292845290819020805460ff191660ff88161790555194855293a380f35b63295a81c160e01b8452336004526024829052604484fd5b8380fd5b503461023657806003193601126102365760206001600160a01b036004610777613c73565b503461023657606036600319011261023657610d37613c73565b610d4036613887565b908291838092610d508382613d70565b91905060018060a01b036003820154166001830193845494600a60408398019401905b868810610d9357604080518b8152602081018d90529081018a9052606090f35b909192939495989699610da68b836144e8565b60018060a01b0391549060031b1c169860018060a01b038a165f528360205260405f209889604051610dd781613810565b60406002600184549485855201549d8e602085015201549101528015610f6f5788516001600160a01b03168015159081610f65575b5015610f5e5750899a5b60018060a01b0381165f528960205260405f205460405191630390dc8160e51b83528060048401526060836024818d5afa8015610f0b5789938a91610f28575b5015610f165760206004916040519283809263313ce56760e01b82525afa908115610f0b5790610e8d918a91610edd575b50614197565b90610e97926148ad565b9182610ea291613fed565b99610ead90836149f3565b610eb691613fed565b99610ec0916149f3565b610ec991613fed565b996001905b01969798959493929190610d73565b610efe915060203d8111610f04575b610ef68183613865565b810190614124565b5f610e87565b503d610eec565b6040513d8b823e3d90fd5b636690a80360e11b8952600452602488fd5b9050610f4c91935060603d8111610f57575b610f448183613865565b81019061413d565b93919050925f610e56565b503d610f3a565b999a610e16565b90508c145f610e0c565b509950975099600190610ece565b50346102365780600319360112610236575f5160206157735f395f51905f52546040516001600160a01b039091168152602090f35b503461023657602036600319011261023657610fcc613732565b600b610fd6613c73565b019060018060a01b03165f52602052602060405f2054604051908152f35b503461023657366003190160a08112610c2f576060136102365761101661375e565b608435611021613d1a565b6110296141f3565b611031613c73565b61105961104661104036613887565b83613d70565b9050838561105336613887565b92613ffa565b83821290816110f0575b50156110c457906110766110b092613a84565b906040519163a9059cbb60e01b60208401523360248401526044830152604482526110a2606483613865565b6001600160a01b03166148e5565b60015f5160206157935f395f51905f525580f35b8281136110d3575b50506110b0565b6110e991309033906001600160a01b03166141a8565b5f806110cc565b73__$134b6c58d0b200b9f69932d007736bd671$__90813b15610ba757856040516339ef2e6360e21b815282600482015261112d60248201613ae3565b8181608481875af480156111cb576111b6575b505060209060a460405180948193630c03818f60e41b8352600483015261116960248301613ae3565b8960848301525af480156111ab57156110635761119d9060203d6020116111a4575b6111958183613865565b810190613b71565b505f611063565b503d61118b565b6040513d87823e3d90fd5b816111c091613865565b610ba757855f611140565b6040513d84823e3d90fd5b5034610236576080366003190112610236576111f136613887565b90606435801515809103610c2f57611207613c73565b9260405193635873500560e11b8552600485015260018060a01b0381511660248501526001600160601b036020820151166044850152604060018060a01b03910151166064840152608483015260208260a48173__$134b6c58d0b200b9f69932d007736bd671$__5af49081156108b6579061087f57604051908152602090f35b50346102365780600319360112610236575f5160206157d35f395f51905f5254336001600160a01b03909116036112c5576112c233614408565b80f35b63118cdaa760e01b815233600452602490fd5b503461023657806003193601126102365760206001600160a01b036003610777613c73565b5034610236578060031936011261023657611316613c40565b5f5160206157d35f395f51905f5280546001600160a01b03199081169091555f5160206157735f395f51905f528054918216905581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b503461023657602036600319011261023657611396613732565b61139e613c40565b60036113a8613c73565b0180546001600160a01b0319166001600160a01b039290921691821790557fc0a26580656383a599bfdfc236d194c87033aca972b1ea9518244e8d192705d18280a280f35b50346102365736600319016102208112610c2f576102001361023657610204358015158103610c2f576001600160a01b036002611428613c73565b015416803303611c31575061143b613c73565b9161144536613a11565b9261144f84613d8c565b60805261147861145d613c11565b611465613c22565b90608051611472366138e8565b85613df1565b936101e4356101c43561148a366138e8565b5086546001600160801b031615611c22576114ee876114e76114e16114db6114cf6114cf6114d460018701546001600160801b0360028901549854169384918b613bb4565b614997565b9589613bb4565b92613ba3565b91613ba3565b9089613f12565b600187015560028601555b611501613c11565b9361150a613c22565b906101643580600f0b808203611c1e578487611525366138e8565b998b6005810154976006820154966115406101a4358b613ac8565b96611c0e575b506115608960046001600160801b03855416940154613bb4565b90848212611bff5781925b8394816119e5575b50505050506115d5670de0b6b3a7640000936115d56116136116086116036115db9761161b9a6115e18b6115db6115ac6115c79c6144a9565b6115d5608060608d019e8f516115c1426144a9565b90613b80565b9c019b6115d58d5191614c1d565b906149f3565b04614a8e565b9e82808212156119b0578183121561199957506115fe9250613bb4565b614ad2565b6144a9565b94516115c1426144a9565b915191614c1d565b91611986579061162e6116349284613bb4565b90613ac8565b945b61163f81613cb7565b6001850193818752846020526040872091886118e0575b5050505061166b6101a4356101843588613f12565b61167c6101a4356005880154613ac8565b6005870155600686015561168e613c11565b6106986116be61169c613c22565b604051928391602083019586909160069260e81b825260e81b60038201520190565b519020906116ce610665366138e8565b8452602052600660408420926116e78360805186614339565b6117506116f2613c11565b6116fa613c22565b60405191611707836137e0565b600290810b83520b60208083019182528689526005850190526040882091518254915160181b65ffffff0000001662ffffff90911665ffffffffffff1990921691909117179055565b01608051845280602052600560408520015460020b15611841575b5061177585614361565b61182e575b505060c4356001600160a01b03811690818103610c2b575060e435906001600160601b03821691828103610cf4575061010435926001600160a01b038416840361023657507f5f9e78c48a93da9ab345a772b8703b28d30bb4c9dcdcc2d4b0fa62ccde7545656020956117eb613c11565b6118236117f6613c22565b926001600160801b0381541690600381015460076004830154920154926040519687966080519c88613bcc565b0390a4604051908152f35b60805161183a92614394565b5f8061177a565b6080518452602052604083206001600160a01b0361185d613b2f565b82546001600160a01b03191691161781556024356001600160a01b0381168103610c2757600182019060018060a01b03166001600160601b0360a01b82541617905560443560028201556064356003820155608435600482015560a435908160020b8203610c27576005019062ffffff198254169062ffffff161790555f61176b565b878912908115611951575b885260208681526040808a2084516001600160a01b03165f9081529252902054901561193a5750516119319291906001600160a01b031661192b89613a84565b91613ffa565b5f808080611656565b6327915cf960e01b88526004526024889052604487fd5b80895260208781526040808b2085516001600160a01b03165f908152925290205490915061197e8a614ad2565b1115906118eb565b906119919250613bb4565b938390611636565b905081136119a8575b50614ad2565b90505f6119a2565b81839293135f146119c657506115fe9250613bb4565b90809250126119d55750614ad2565b6119df9150613a84565b5f6119a2565b60028e0154604051639589619560e01b8152608051600482015296985094965092949193909290606090839060249082906001600160a01b03165afa918215611bf257918c979593918f9795938892611b6e575b508761161b9a6115e1670de0b6b3a76400006115db6115ac6115c79c839f9b9c6115db9f9d6115d59e6115d59d8f6116139e8e6116089f9e6116039f60020b8160020b81139889611b0d575b508560020b13611aaa575b5050509b50505050509c50505050509a5097509750611573565b611ad397611acb965015611b055750925b6060604084015193015193614d9d565b919050613ac8565b878112611af7575b818111611aef575b8088818f818080611a90565b90505f611ae3565b611b0090613a84565b611adb565b905092611abb565b8660020b82125f14611b6257611b3b611b33855b6040890151888760608c015193614d9d565b90508a613ac8565b888112611b5357905b811115611a855799505f611a85565b611b5c90613a84565b90611b44565b611b3b611b3388611b21565b929496985092949650506060813d606011611bea575b81611b9160609383613865565b81010312611be2578051908160020b8203611be65760208101516001600160a01b03811603611be657604001516001600160a01b03811603611be2578b968e96909590949093909290919087611a39565b8d80fd5b8e80fd5b3d9150611b84565b8e604051903d90823e3d90fd5b611c0882613a84565b9261156b565b611c189083613f40565b5f611546565b8680fd5b600187015560028601556114f9565b631d77f97b60e01b835233600452602452604482fd5b503461023657366003190160e08112610c2f5760601361023657611c69613788565b611c71613798565b60c43591611c7d613d1a565b611c856141f3565b611c8d613c73565b6009810180546001600160a01b031692909190831561224b57606435875260068201602052604087209360405194611cc48661382c565b80546001600160a01b03908116875260018201541660208701526002808201546040880152600382015460608801818152600484015460808a015260059093015490910b60a08801521561223c57670de0b6b3a764000090510442101561222d579060446020899594936040519283809263199ac1b760e21b825260643560048301528c60248301525afa9081156111ab5785916121f4575b50611d6b611d7091896142b4565b613a84565b9573__$134b6c58d0b200b9f69932d007736bd671$__93843b15610ba7576040516339ef2e6360e21b815260048101859052611dae60248201613ae3565b8681608481895af49081156121e95787916121d4575b5050611ddd8284606435611dd736613887565b88613df1565b90611de88a83613ee5565b5460405194906001600160a01b0316611e0086613810565b855260208501978789526040860199888b52611e6f604062010dec9a8b610698611e5f611e2c8d613cb7565b8551602081019182526064356040820152623fbc8560ea1b606082015260e89490941b6063850152929182906066820190565b519020815285602052209c613a84565b8d81128015906121be575b8d6003611e8684613a84565b91015491156121a2575050928d92611f67898f60a495611eaa8f929960209a613ee5565b611eb383613cb7565b885260018601895260408820916040518a810190623fbc8560ea1b825261437b60ea1b602382015260068152611eea602682613865565b519020611efa8160643586614339565b6005880191818b52828c5260408b205460181c60020b15612148575b505050611f2561066536613887565b8852600186018952604088208551909561192b91611f57906001600160a01b031684611f5036613887565b918a613ffa565b516001600160a01b031691613a84565b611f7086614361565b61210c575b506040519889938492630c03818f60e41b84526004840152611f9960248401613ae3565b60848301525af48015612101576120c9575b6001600160601b0394507f5f9e78c48a93da9ab345a772b8703b28d30bb4c9dcdcc2d4b0fa62ccde754565611fde613b2f565b92611fe7613b5b565b9461202c611ff3613b45565b946001600160801b0381541690600381015460076004830154920154926040519687968e6064359d169b60018060a01b03169a88613bcc565b0390a460018060a01b039051169251169260018060a01b03905116936001600160801b03815416600382015490600760048401549301549360405197885262010deb19602089015260408801526060870152608086015260a085015260c08401527f5f9e78c48a93da9ab345a772b8703b28d30bb4c9dcdcc2d4b0fa62ccde75456560e060643594a460015f5160206157935f395f51905f525580f35b6020853d6020116120f9575b816120e260209383613865565b810103126108aa576001600160601b039450611fab565b3d91506120d5565b6040513d8c823e3d90fd5b60405160e889811b8783019081529089901b600382015261214292916121358160068401610698565b5190209060643590614394565b5f611f75565b61219a9260405192612159846137e0565b62010deb1984528d84019283528c528c5260408b2091518254915160181b65ffffff0000001662ffffff90911665ffffffffffff1990921691909117179055565b5f8f80611f16565b8f82606492634bc8001f60e01b83528335600452602452604452fd5b5060038d01546121cd82613a84565b1315611e7a565b816121de91613865565b610ba757855f611dc4565b6040513d89823e3d90fd5b9450506020843d602011612225575b8161221060209383613865565b810103126108aa579251879390611d6b611d5d565b3d9150612203565b63398b36db60e01b8852600488fd5b63486aa30760e01b8952600489fd5b631c7d7e9160e11b8752600487fd5b5034610236576020366003190112610236576004356001600160a01b03811690819003610c2f57612289613c40565b80156122ae576002612299613c73565b0180546001600160a01b031916909117905580f35b6325a20b7f60e21b8252600482fd5b5034610236576040366003190112610236576122d7613732565b6122df613748565b5f5160206157b35f395f51905f52549160ff8360401c16159267ffffffffffffffff8116801590816124c8575b60011490816124be575b1590816124b5575b506124a65767ffffffffffffffff1981166001175f5160206157b35f395f51905f52558361247a575b506001600160a01b0381161561246b576001600160a01b0382161561245c57600490612371613c73565b6003810180546001600160a01b03199081166001600160a01b03948516179091559201805490921692169190911790556123a96149c8565b6123b16149c8565b3315612448576123c033614408565b6123c86149c8565b6123d06149c8565b6123d86149c8565b60015f5160206157935f395f51905f52556123f05780f35b68ff0000000000000000195f5160206157b35f395f51905f5254165f5160206157b35f395f51905f52557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b631e4fbdf760e01b82526004829052602482fd5b63325eed6960e21b8452600484fd5b63cf1af63f60e01b8452600484fd5b68ffffffffffffffffff191668010000000000000001175f5160206157b35f395f51905f52555f612347565b63f92ee8a960e01b8552600485fd5b9050155f61231e565b303b159150612316565b85915061230c565b5034610236576124df366137a8565b9091926124f86106656124f0613c73565b92369061394a565b604080516020810192835290810186905260e885811b606083015284901b60638201526125288160668101610698565b51902085528060205260408520916003830154946004840154946001600160801b038554169384612564575b6040888882519182526020820152f35b60029081015460408051631073d22360e11b8152600481019590955292820b602485015293900b60448301529395909493909291859060649082906001600160a01b03165afa938415610c0757956040968195612608575b509161162e6125f1836114cf61162e966125eb6125f7976114cf8d60026125fd9e9f6001015491015494613bb4565b9a613bb4565b96613ba3565b93613ba3565b5f8080808080612554565b6125fd955061162e9391506125f1836114cf6114cf6125eb6125f79761264761162e978f3d60401161265a575b61263f8183613865565b810190613b8d565b9c509799509397506125bc945050505050565b503d612635565b50346102365760403660031901126102365761267b613732565b60243590612687613d1a565b6001600160a01b03169081156127c857801561278357600b6126a7613c73565b0190825f528160205260405f2054801561273e577f79b50fa26f1d8d6cb49d64e7795d631c6b7bc3f776d89888dbeeec853be1008c926040928281111561273357506126f38280613b80565b855f5281602052835f205561270a823033886141a8565b845f52602052815f205482519182526020820152a260015f5160206157935f395f51905f525580f35b6126f3908093613b80565b60405162461bcd60e51b815260206004820152601c60248201527f656c696d696e617465446566696369743a206e6f2064656669636974000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601d60248201527f656c696d696e617465446566696369743a207a65726f20616d6f756e740000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f656c696d696e617465446566696369743a207a65726f20746f6b656e000000006044820152606490fd5b5034610236576060366003190112610236576004357ffc504ecc1f145377aa21a7e2aed4e5cce1be36711b474d789dbab0ec787c4b166080602435604435612853613c40565b600761285d613c73565b018587526020526002604087208381558260018201550162ffffff19815416815565ffffff0000001981541690556040519182526020820152846040820152846060820152a280f35b503461023657806003193601126102365760206001600160a01b036002610777613c73565b5034610236576020366003190112610236576128e5613732565b90604080516128f381613810565b8281528260208201520152600a612908613c73565b019060018060a01b03165f52602052606060405f2060405161292981613810565b815491828252604060026001830154926020850193845201549201918252604051928352516020830152516040820152f35b50346102365736600319016101408112610c2f5760c0136102365760e4356001600160a01b0381169060c43590828103610cf457926002936101043561012435916129a4613c73565b926129ae36613a11565b9060018060a01b0360038601541691885f52600a860160205260405f20604080519b8c926129db84613810565b80548094528d6020600183015491015201549b019a8b5215612da957805160405163313ce56760e01b81529a906020908c9060049082906001600160a01b03165afa948515612d335760049b8996612d88575b5060405163313ce56760e01b81529b6020908d90818e5afa9b8c15610f0b57899c612d67575b506040519a630390dc8160e51b8c5260048c015260608b602481885afa8015610f0b57899b8a91612d3e575b5090612a8b9161416f565b606060018060a01b03835116602460405180978193630390dc8160e51b835260048301525afa8015612d335788948991612d0c575b508251612ad8916001600160a01b039091169061416f565b51670de0b6b3a764000003670de0b6b3a76400008111612cf857612afc908a6149f3565b98604082019586519260600192835190612b158c6144fd565b91612b1f916145a1565b612b28916142b4565b612b318a61423a565b612b3a91613ac8565b670de0b6b3a76400009005612b4e90613ba3565b612b5790613a84565b80821015612cf057509a5b8a858d612b6e89614197565b612b7791614714565b90612b81916149f3565b90612b8b91614b69565b612b9482614197565b612b9d916147ed565b9a848c11612ca8575b50612bd28b612bcc612bc58f612bbf8c518951906145a1565b90614b69565b809d613ac8565b95613b80565b9089851280612c9f575b612bfa575b604080518d8152602081018f90529081018c9052606090f35b670de0b6b3a7640000612c56612c4d8c612c47600c9b99612c629b99612c40612c36612c309b612c5c9b612c30611d6b9c614197565b916148ad565b9f519151926144fd565b93506145a1565b906142b4565b61162e8d61423a565b05613ba3565b92614197565b920154809110159182612c94575b505015612c8557808080808080808080612be1565b632cab962160e21b8152600490fd5b101590505f80612c70565b50811515612bdc565b9a50849b50839b8c9b612cba83614197565b612cc49087614714565b90612cce916149f3565b90612cd891614b69565b612ce187614197565b612cea916147ed565b9b612ba6565b90509a612b62565b634e487b7160e01b88526011600452602488fd5b612ad89550612d2a915060603d606011610f5757610f448183613865565b91959050612ac0565b6040513d8a823e3d90fd5b612a8b929c50612d5d915060603d606011610f5757610f448183613865565b919c929050612a80565b612d81919c5060203d602011610f0457610ef68183613865565b9a5f612a54565b612da291965060203d602011610f0457610ef68183613865565b945f612a2e565b630f10d83760e11b87526004899052602487fd5b503461023657606036600319011261023657612dd7613c73565b9073__$134b6c58d0b200b9f69932d007736bd671$__91823b15610c2f576040516339ef2e6360e21b815260048101829052612e1560248201613ae3565b8281608481875af48015612ebc57908391612ea7575b505060209060a460405180958193630c03818f60e41b83526004830152612e5460248301613ae3565b8560848301525af49081156108b65790612e74575b602090604051908152f35b506020813d602011612e9f575b81612e8e60209383613865565b810103126108aa5760209051612e69565b3d9150612e81565b81612eb191613865565b610c2f57815f612e2b565b6040513d85823e3d90fd5b50346108aa57366003190161014081126108aa576060136108aa5760c03660631901126108aa57610124359067ffffffffffffffff82116108aa57366023830112156108aa5781600401359067ffffffffffffffff82116108aa573660248360051b850101116108aa57612f39613d1a565b612f42426144a9565b9160c43592670de0b6b3a7640000810484670de0b6b3a76400008104921061362a575050612f6e613c73565b90612f7b61104036613887565b919050612f8f612f8a3661399d565b613d8c565b946003830196612fad87896001915f520160205260405f2054151590565b1561361757612fbb3661399d565b50612fc861066536613887565b5f526001850160205260405f2092600560018060a01b03600288015416940193885f528460205260405f2054905f958a60058a01975b8481106134d85750505050506130133661399d565b60048701546001600160a01b0316969061302c426144a9565b602065ffffffffffff670de0b6b3a76400008181604087015195606088015190818110155f146134d05750955b04169304169201604060018060a01b0382511660648251809d819363301a02cb60e21b835260048301528660248301528760448301525afa801561330f575f9a5f91613490575b501561346e575050508894969960058701809b875f528160205260405f2054905f9a5f9360a4359a5b848610613348575050505050505b895f528a60205260405f20541561312e57895f528a60205260405f2080541561311a575f5261311460205f20548b5f528c60205260405f20614602565b506130d7565b634e487b7160e01b5f52603260045260245ffd5b8961313b919a999a614602565b505f8713156131f457505060643593925050506001600160a01b0382168203610c275761316d91839061105336613887565b613175613b2f565b907fcb3f339bcd0cf2afa37b415250da29a74d92778a01cdf318f33163f1fe09c5146001600160601b036131a7613b5b565b6131dd6131b2613b45565b604080516001600160a01b039283168152602081019790975292909316959290921693918291820190565b0390a460015f5160206157935f395f51905f525580f35b9091929394505f861261320c575b505050505061316d565b61321586613a84565b9073__$134b6c58d0b200b9f69932d007736bd671$__94853b156108aa5760405196631a4a7b9b60e21b8852610184880192600489015261325860248901613ae3565b6001600160a01b0361326861375e565b16608489015260843560018060a01b0381168091036108aa5760a489015260c488015260e487015260e43561010487015261010435918260020b8093036108aa5790839291879594926101248701526101448601526101806101648601525260246101a484019201905f5b81811061331a575050509181805f9403915af4801561330f576132fa575b80808080613202565b6133079193505f90613865565b5f91836132f1565b6040513d5f823e3d90fd5b9193509160019060209081906001600160a01b0361333788613774565b1681520194019101918593926132d3565b5f9d929394959d526020528b60405f2090613362916144e8565b90549060031b1c5f52816020528d60405f2060405190613381826137e0565b548060020b9081835260181c60020b602081930152366133a090613887565b926133ab938a613df1565b60038101546004820154858c8e6133c1856144fd565b906133cb856144fd565b926133d5916145a1565b6133de916142b4565b916133e8916142b4565b6133f191613ac8565b670de0b6b3a7640000900561340590613ba3565b9161340f90613a84565b9061341990613a84565b6134239184613f12565b81546001600160801b0316928315159361344693600195613452575b5050613ac8565b9b019291908e8e6130c9565b61346161346792600f0b613aa8565b90613f40565b5f8061343f565b60018060a01b039051166372f8e42960e11b5f5260045260245260445260645ffd5b9a505060408a3d6040116134c8575b816134ac60409383613865565b810103126108aa576134c260208b519b01613c33565b5f6130a0565b3d915061349f565b905095613059565b815f52826020526134ec8160405f206144e8565b90549060031b1c5f528860205260405f2060408c61353782519361350f856137e0565b548060020b9081865260181c60020b9087602087019483865261353136613887565b90613df1565b925190518251631073d22360e11b81526004810196909652600291820b6024870152900b604485015283606481885afa90811561330f576001935f905f936135f3575b509060029161358836613887565b5081546001600160801b0316156135e8576135d9868301546135d26114e16114db6114cf6114cf6135cb8a8a0154966001600160801b038b54169384918b613bb4565b958b613bb4565b9084613f12565b8582015501555b018b90612ffe565b8582015501556135e0565b6002929350613610915060403d811161265a5761263f8183613865565b929161357a565b8663f43ec4ff60e01b5f5260045260245ffd5b6304b983a960e51b5f5260045260245260445ffd5b346108aa575f3660031901126108aa576020600c61365b613c73565b0154604051908152f35b346108aa573660031901608081126108aa576060136108aa5761368661375e565b6001613690613c73565b61369c61066536613887565b5f520160205260405f209060018060a01b03165f52602052602060405f2054604051908152f35b346108aa5760203660031901126108aa576136dc613732565b6136e4613c40565b60046136ee613c73565b0180546001600160a01b0319166001600160a01b039290921691821790557f9c5f1a6af1400bf6c1cc281b341f880f8a258a24edd36a0945b010b9c84551ca5f80a2005b600435906001600160a01b03821682036108aa57565b602435906001600160a01b03821682036108aa57565b606435906001600160a01b03821682036108aa57565b35906001600160a01b03821682036108aa57565b608435908160020b82036108aa57565b60a435908160020b82036108aa57565b6003190160c081126108aa576060136108aa57600490606435906084358060020b81036108aa579060a4358060020b81036108aa5790565b6040810190811067ffffffffffffffff8211176137fc57604052565b634e487b7160e01b5f52604160045260245ffd5b6060810190811067ffffffffffffffff8211176137fc57604052565b60c0810190811067ffffffffffffffff8211176137fc57604052565b610100810190811067ffffffffffffffff8211176137fc57604052565b90601f8019910116810190811067ffffffffffffffff8211176137fc57604052565b60609060031901126108aa57604051906138a082613810565b816004356001600160a01b03811681036108aa5781526024356001600160601b03811681036108aa576020820152604435906001600160a01b03821682036108aa5760400152565b60609060c31901126108aa576040519061390182613810565b8160c4356001600160a01b03811681036108aa57815260e4356001600160601b03811681036108aa57602082015261010435906001600160a01b03821682036108aa5760400152565b91908260609103126108aa5760405161396281613810565b809261396d81613774565b82526020810135906001600160601b03821682036108aa576040613998918193602086015201613774565b910152565b60c09060631901126108aa57604051906139b68261382c565b816064356001600160a01b03811681036108aa5781526084356001600160a01b03811681036108aa57602082015260a435604082015260c435606082015260e435608082015261010435908160020b82036108aa5760a00152565b60c09060031901126108aa5760405190613a2a8261382c565b816004356001600160a01b03811681036108aa5781526024356001600160a01b03811681036108aa57602082015260443560408201526064356060820152608435608082015260a435908160020b82036108aa5760a00152565b600160ff1b8114613a94575f0390565b634e487b7160e01b5f52601160045260245ffd5b600f0b6f7fffffffffffffffffffffffffffffff198114613a94575f0390565b9190915f8382019384129112908015821691151617613a9457565b6004356001600160a01b038116908190036108aa5781526024356001600160601b0381168091036108aa5760208201526044356001600160a01b03811691908290036108aa5760400152565b6004356001600160a01b03811681036108aa5790565b6044356001600160a01b03811681036108aa5790565b6024356001600160601b03811681036108aa5790565b908160209103126108aa575190565b91908203918211613a9457565b91908260409103126108aa576020825192015190565b905f198201918213600116613a9457565b81810392915f138015828513169184121617613a9457565b936001600160801b03919897969360c0969360e087019a60018060a01b0316875260020b602087015260020b6040860152166060840152608083015260a08201520152565b610124358060020b81036108aa5790565b610144358060020b81036108aa5790565b519081151582036108aa57565b5f5160206157735f395f51905f52546001600160a01b03163303613c6057565b63118cdaa760e01b5f523360045260245ffd5b604051602081017f5c14919fa1ff7a70caf814db195b219a963dff10be41f2819c764dc9a605e1b8815260208252613cac604083613865565b9051902060ff191690565b805190604060208201519101516040519160208301936001600160601b03199060601b1684526001600160601b0360a01b9060a01b1660348301526001600160601b03199060601b16604082015260348152613d14605482613865565b51902090565b60025f5160206157935f395f51905f525414613d435760025f5160206157935f395f51905f5255565b633ee5aeb560e01b5f5260045ffd5b8115613d5c570490565b634e487b7160e01b5f52601260045260245ffd5b9190613d7d600191613cb7565b92835f520160205260405f2090565b60018060a01b038151169060018060a01b0360208201511690604081015190606081015160a0608083015192015160020b92604051946020860196875260408601526060850152608084015260a083015260c082015260c08152613d1460e082613865565b9392918360020b8360020b81811215613eba5762010deb1913613e8f5762010dec12613e6457610698613e26613e5593613cb7565b94604051948593602085019788929091604694928452602084015260e81b604083015260e81b60438201520190565b5190205f5260205260405f2090565b60405162461bcd60e51b815260206004820152600360248201526254554d60e81b6044820152606490fd5b60405162461bcd60e51b8152602060048201526003602482015262544c4d60e81b6044820152606490fd5b60405162461bcd60e51b8152602060048201526003602482015262544c5560e81b6044820152606490fd5b81613eee575050565b600491613f0060038301918254613ac8565b905501613f0e5f8254613ac8565b9055565b90828117613f1f57505050565b81600491613f356003613f0e9501918254613ac8565b905501918254613ac8565b9080600f0b80155f14613f8a575050546001600160801b031615613f6057565b60405162461bcd60e51b815260206004820152600260248201526104e560f41b6044820152606490fd5b6001600160801b038354925f82851693125f14613fcf575f031690036001600160801b038111613a94576001600160801b03905b16906001600160801b031916179055565b16016001600160801b038111613a94576001600160801b0390613fbe565b91908201809211613a9457565b6001600160a01b0382165f9081526020829052604081205492949392908312156141145761403061402a84613a84565b82613b80565b905b6001600160a01b0386165f90815260208490526040902082905515808061410b575b156140d05750614072916001600160a01b0386169150600101614b11565b505b815160208084015160409485015185516001600160a01b03918216815292830194909452948316946001600160601b03169392909116917f7f22f03f333104bc32e14a8de3813ebf57e5a83d174e429a1a38945fa2ff6d6591a4565b159081614102575b506140e4575b50614074565b6140fb906001600160a01b03851690600101614602565b505f6140de565b9050155f6140d8565b50811515614054565b61411e8382613fed565b90614032565b908160209103126108aa575160ff811681036108aa5790565b908160609103126108aa57805191602082015165ffffffffffff811681036108aa57604061416c919301613c33565b90565b156141775750565b636690a80360e11b5f9081526001600160a01b0391909116600452602490fd5b60ff16604d8111613a9457600a0a90565b6040516323b872dd60e01b60208201526001600160a01b0392831660248201529290911660448301526064808301939093529181526141f1916141ec608483613865565b6148e5565b565b6004356001600160a01b038116918282036108aa57823314614235576142193383614473565b61423557505063295a81c160e01b5f523360045260245260445ffd5b915050565b600160ff1b811480156142ad575b61429e575f811215614294576142605f8281036149f3565b906001600160ff1b038211614281575f191260019081180361416c575f0390565b5063bf79e8d960e01b5f5260045260245ffd5b6142605f826149f3565b630d01a11b60e21b5f5260045ffd5b505f614248565b600160ff1b8114801561432c575b61429e575f811215614323576142e6815f035b5f84121561431c57835f03906149f3565b916001600160ff1b038311614309575f1991821291121860010361416c575f0390565b8263bf79e8d960e01b5f5260045260245ffd5b83906149f3565b6142e6816142d5565b50600160ff1b82146142c2565b60059061435e939261434e8160038401614b11565b505f520160205260405f20614b11565b50565b6001600160801b03815416159081614387575b8161437d575090565b6004915001541590565b6003810154159150614374565b916005830190825f52816020526143bc8160405f206001915f520160205260405f2054151590565b6143c7575b50505050565b6143db90835f528260205260405f20614602565b50815f5260205260405f2054156143f4575b80806143c1565b60036144009201614602565b505f806143ed565b5f5160206157d35f395f51905f5280546001600160a01b03199081169091555f5160206157735f395f51905f5280549182166001600160a01b0393841690811790915591167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b600861447d613c73565b019060018060a01b03165f5260205260405f209060018060a01b03165f5260205260ff60405f20541690565b7812725dd1d243aba0e75fe645cc4873f9e65afe688c928e1f2181116144d657670de0b6b3a76400000290565b633492ffd960e01b5f5260045260245ffd5b805482101561311a575f5260205f2001905f90565b7809392ee8e921d5d073aff322e62439fcf32d7f344649470f8f19811261455d577809392ee8e921d5d073aff322e62439fcf32d7f344649470f90811361454b57670de0b6b3a76400000290565b6371f72a3160e01b5f5260045260245ffd5b63e608e18b60e01b5f5260045260245ffd5b1561457657565b606460405162461bcd60e51b8152602060048201526004602482015263453c3d5360e01b6044820152fd5b6145ac81831161456f565b806145b6426144a9565b106145d5576145cb6145d09161416c93613b80565b614c1d565b614ce1565b60405162461bcd60e51b8152602060048201526005602482015264422e543c5360d81b6044820152606490fd5b906001820191815f528260205260405f20548015155f146146d5575f198101818111613a945782545f19810191908211613a945781810361468a575b50505080548015614676575f19019061465782826144e8565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6146c061469a6146aa93866144e8565b90549060031b1c928392866144e8565b819391549060031b91821b915f19901b19161790565b90555f528360205260405f20555f808061463e565b505050505f90565b156146e457565b60405162461bcd60e51b81526020600482015260086024820152676f766572666c6f7760c01b6044820152606490fd5b5f19670de0b6b3a7640000820991670de0b6b3a76400008202918280851094039380850394146147a857670de0b6b3a764000082916147548684116146dd565b09816001811901168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b50809250156147b5570490565b60405162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b6044820152606490fd5b5f1982820982820291828083109203918083039214614851577faccb18165bd6fe31ae1cf318dc5b51eee0e1ba569b88cd74c1773b91fac1066993670de0b6b3a76400009161483d8484116146dd565b0990828211900360ee1b910360121c170290565b5050670de0b6b3a764000091500490565b5f1982820990828102928380841093039280840393146148a45761488b600160601b84106146dd565b600160601b910990828211900360a01b910360601c1790565b50505060601c90565b90915f1983830992808302928380861095039480860395146148d7579082916147548684116146dd565b5050809250156147b5570490565b81516001600160a01b03909116915f91829160200182855af13d1561498b573d67ffffffffffffffff81116137fc5761494091604051916149306020601f19601f8401160184613865565b82523d5f602084013e5b83615714565b8051908115159182614968575b50506149565750565b635274afe760e01b5f5260045260245ffd5b81925090602091810103126108aa5760206149839101613c33565b155f8061494d565b6149409060609061493a565b5f81126149ad5761416c91600160801b916148ad565b611d6b9061416c926149c3600160801b92613a84565b6148ad565b60ff5f5160206157b35f395f51905f525460401c16156149e457565b631afcd79f60e31b5f5260045ffd5b5f19828209828202908180821091039381850393670de0b6b3a7640000851015614a7b5790670de0b6b3a76400009109906706f05b59d3b1ffff82119414614a6a577faccb18165bd6fe31ae1cf318dc5b51eee0e1ba569b88cd74c1773b91fac1066992828211900360ee1b910360121c17020190565b50670de0b6b3a76400009150040190565b8463698d9a0160e11b5f5260045260245ffd5b600160ff1b811015614a9d5790565b60405162461bcd60e51b815260206004820152600d60248201526c746f496e74323536206f666c6f60981b6044820152606490fd5b5f8112614adc5790565b60405162461bcd60e51b815260206004820152600d60248201526c0746f55696e74323536203c203609c1b6044820152606490fd5b5f828152600182016020526040902054614b6357805490680100000000000000008210156137fc5782614b4e6146aa8460018096018555846144e8565b90558054925f520160205260405f2055600190565b50505f90565b5f19670de0b6b3a7640000820991670de0b6b3a7640000820291828085109403938085039414614c115781841015614bfa57670de0b6b3a7640000829109600182190182168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b5082631dcf306360e21b5f5260045260245260445ffd5b509061416c9250613d52565b5f905f19670de0b6b3a7640000820990670de0b6b3a7640000810292838084109303928084039314614ccd576a1a1601fc4ea7109e000000831015614caa5750906a1a1601fc4ea7109e000000670de0b6b3a76400007f26af219e38cbb5fd03085f3343fbe09a551ce8a61639642d1af598ebf6968eaf94930990828211900360e71b910360191c170290565b631dcf306360e21b815260048390526a1a1601fc4ea7109e000000602452604490fd5b5050506a1a1601fc4ea7109e000000900490565b5f905f19670de0b6b3a7640000820990670de0b6b3a7640000810292838084109303928084039314614d8b5768056bc75e2d63100000831015614d6a57509068056bc75e2d63100000670de0b6b3a76400007f2fdf29ec6a12d6f7bf48d6861d4b553283e011b18b576460d489e3a9addec2d194930990828211900360ec1b910360141c170290565b631dcf306360e21b8152600483905268056bc75e2d63100000602452604490fd5b50505068056bc75e2d63100000900490565b94939194929092614dad81615093565b90614db785615093565b9460020b9060020b1295865f1461508157614ddd6001600160801b038216600f0b613aa8565b5f81600f0b125f14614fd357614df290613aa8565b6001600160801b031682866001600160a01b0380821690831611614fc9575b6001600160a01b039182169082168181039390929091908411613a94578015614f8f57614e6c93611d6b93614e6793614e62926001600160a01b03169060601b600160601b600160e01b03166148ad565b613d52565b614a8e565b965b15614f74576001600160801b0316600f0b935b5f85600f0b125f14614ef057611d6b614e675f936001600160801b03614eda94614ead614ee19a613aa8565b82169281816001600160a01b0380831690821611614ee5575b505090036001600160a01b03169116614862565b80966155ac565b9190565b925090505f80614ec6565b6001600160801b039181816001600160a01b0380831690821611614f69575b505090036001600160a01b03169316614f2d600160601b85836148ad565b93600160601b9109614f49575b5f614eda84614ee19550614a8e565b614f555f1984106146dd565b5f198314613a945760019290920191614f3a565b925090505f80614f0f565b6001600160801b03614f899116600f0b613aa8565b93614e81565b60405162461bcd60e51b8152602060048201526012602482015271073717274526174696f4158393620213e20360741b6044820152606490fd5b5050828690614e11565b859083906001600160a01b0380841690831611615076575b60601b600160601b600160e01b0316916001600160a01b039182169190811690828203908111613a94576001600160a01b03168215614f8f5761502f8282866148ad565b938215613d5c5709615054575b908161504e9282061515910401614a8e565b96614e6e565b6150605f1983106146dd565b5f198214613a9457600161504e9201915061503c565b849250879150614feb565b6001600160801b038116600f0b614ddd565b60020b5f8112156155a6576150a781613a84565b905b62010dec821161557d57600182161561556b576001600160881b036ffffcb933bd6fad37aa2d162d1a5940015b169160028116615530575b600481166154f5575b600881166154ba575b6010811661547f575b60208116615444575b60408116615409575b608081166153ce575b6101008116615393575b6102008116615358575b610400811661531d575b61080081166152e2575b61100081166152a7575b612000811661526c575b6140008116615231575b61800081166151f6575b62010000166151bb575b5f126151ad575b63ffffffff81166151a25761519e5f915b6001600160a01b039260ff169060201c613fed565b1690565b61519e600191615189565b8015613d5c575f1904615178565b906f09aa508b5b7a84e1c677de54f3e99bc98102908082046f09aa508b5b7a84e1c677de54f3e99bc91490151715613a945760801c90615171565b916f31be135f97d08fd981231505542fcfa68102908082046f31be135f97d08fd981231505542fcfa61490151715613a945760801c91615167565b916f70d869a156d2a1b890bb3df62baf32f78102908082046f70d869a156d2a1b890bb3df62baf32f71490151715613a945760801c9161515d565b916fa9f746462d870fdf8a65dc1f90e061e58102908082046fa9f746462d870fdf8a65dc1f90e061e51490151715613a945760801c91615153565b916fd097f3bdfd2022b8845ad8f792aa58258102908082046fd097f3bdfd2022b8845ad8f792aa58251490151715613a945760801c91615149565b916fe7159475a2c29b7443b29c7fa6e889d98102908082046fe7159475a2c29b7443b29c7fa6e889d91490151715613a945760801c9161513f565b916ff3392b0822b70005940c7a398e4b70f38102908082046ff3392b0822b70005940c7a398e4b70f31490151715613a945760801c91615135565b916ff987a7253ac413176f2b074cf7815e548102908082046ff987a7253ac413176f2b074cf7815e541490151715613a945760801c9161512b565b916ffcbe86c7900a88aedcffc83b479aa3a48102908082046ffcbe86c7900a88aedcffc83b479aa3a41490151715613a945760801c91615121565b916ffe5dee046a99a2a811c461f1969c30538102908082046ffe5dee046a99a2a811c461f1969c30531490151715613a945760801c91615117565b916fff2ea16466c96a3843ec78b326b528618102908082046fff2ea16466c96a3843ec78b326b528611490151715613a945760801c9161510e565b916fff973b41fa98c081472e6896dfb254c08102908082046fff973b41fa98c081472e6896dfb254c01490151715613a945760801c91615105565b916fffcb9843d60f6159c9db58835c9266448102908082046fffcb9843d60f6159c9db58835c9266441490151715613a945760801c916150fc565b916fffe5caca7e10e4e61c3624eaa0941cd08102908082046fffe5caca7e10e4e61c3624eaa0941cd01490151715613a945760801c916150f3565b916ffff2e50f5f656932ef12357cf3c7fdcc8102908082046ffff2e50f5f656932ef12357cf3c7fdcc1490151715613a945760801c916150ea565b916ffff97272373d413259a46990580e213a8102908082046ffff97272373d413259a46990580e213a1490151715613a945760801c916150e1565b6001600160881b03600160801b6150d6565b60405162461bcd60e51b81526020600482015260016024820152601560fa1b6044820152606490fd5b806150a9565b92939093808211936155bd8561456f565b80158061570c575b615702576155d56155db916144fd565b956144fd565b926155e58561456f565b6155ee426144a9565b908282106145d55761563a946156359261562f9261162e9186908881106156ef57506156236145d06145cb615629938b613b80565b8b6142b4565b926142b4565b9461456f565b6145a1565b90600160ff1b811480156156e2575b6156d3575f8112156156ca5761566d815f035b5f8412156156c357835f0390614b69565b916001600160ff1b0383116156b057916001670de0b6b3a764000094926156ac945f1912905f191218145f146156a6576156a690613a84565b90613bb4565b0590565b82637cb4bef560e01b5f5260045260245ffd5b8390614b69565b61566d8161565c565b63b3c754a360e01b5f5260045ffd5b50600160ff1b8214615649565b6145d06145cb6156299361562393613b80565b5050505050505f90565b5085156155c5565b90615738575080511561572957805190602001fd5b630a12f52160e11b5f5260045ffd5b81511580615769575b615749575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b1561574156fe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c00a26469706673582212206c9cfb0f11974c1d3271db38e7fb5b41d28ab8f3faed3ac98d00ed8ee56ee7cc64736f6c634300081e0033f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00";
|
|
2513
|
+
|
|
2514
|
+
type CollateralEngineConstructorParams =
|
|
2515
|
+
| [linkLibraryAddresses: CollateralEngineLibraryAddresses, signer?: Signer]
|
|
2516
|
+
| ConstructorParameters<typeof ContractFactory>;
|
|
2517
|
+
|
|
2518
|
+
const isSuperArgs = (
|
|
2519
|
+
xs: CollateralEngineConstructorParams
|
|
2520
|
+
): xs is ConstructorParameters<typeof ContractFactory> => {
|
|
2521
|
+
return (
|
|
2522
|
+
typeof xs[0] === "string" ||
|
|
2523
|
+
(Array.isArray as (arg: any) => arg is readonly any[])(xs[0]) ||
|
|
2524
|
+
"_isInterface" in xs[0]
|
|
2525
|
+
);
|
|
2526
|
+
};
|
|
2527
|
+
|
|
2528
|
+
export class CollateralEngine__factory extends ContractFactory {
|
|
2529
|
+
constructor(...args: CollateralEngineConstructorParams) {
|
|
2530
|
+
if (isSuperArgs(args)) {
|
|
2531
|
+
super(...args);
|
|
2532
|
+
} else {
|
|
2533
|
+
const [linkLibraryAddresses, signer] = args;
|
|
2534
|
+
super(
|
|
2535
|
+
_abi,
|
|
2536
|
+
CollateralEngine__factory.linkBytecode(linkLibraryAddresses),
|
|
2537
|
+
signer
|
|
2538
|
+
);
|
|
2539
|
+
}
|
|
2540
|
+
}
|
|
2541
|
+
|
|
2542
|
+
static linkBytecode(
|
|
2543
|
+
linkLibraryAddresses: CollateralEngineLibraryAddresses
|
|
2544
|
+
): string {
|
|
2545
|
+
let linkedBytecode = _bytecode;
|
|
2546
|
+
|
|
2547
|
+
linkedBytecode = linkedBytecode.replace(
|
|
2548
|
+
new RegExp("__\\$134b6c58d0b200b9f69932d007736bd671\\$__", "g"),
|
|
2549
|
+
linkLibraryAddresses[
|
|
2550
|
+
"src/core_libraries/CollateralEngineLibrary.sol:CollateralEngineLibrary"
|
|
2551
|
+
]
|
|
2552
|
+
.replace(/^0x/, "")
|
|
2553
|
+
.toLowerCase()
|
|
2554
|
+
);
|
|
2555
|
+
|
|
2556
|
+
return linkedBytecode;
|
|
2557
|
+
}
|
|
2558
|
+
|
|
2559
|
+
override getDeployTransaction(
|
|
2560
|
+
overrides?: NonPayableOverrides & { from?: string }
|
|
2561
|
+
): Promise<ContractDeployTransaction> {
|
|
2562
|
+
return super.getDeployTransaction(overrides || {});
|
|
2563
|
+
}
|
|
2564
|
+
override deploy(overrides?: NonPayableOverrides & { from?: string }) {
|
|
2565
|
+
return super.deploy(overrides || {}) as Promise<
|
|
2566
|
+
CollateralEngine & {
|
|
2567
|
+
deploymentTransaction(): ContractTransactionResponse;
|
|
2568
|
+
}
|
|
2569
|
+
>;
|
|
2570
|
+
}
|
|
2571
|
+
override connect(runner: ContractRunner | null): CollateralEngine__factory {
|
|
2572
|
+
return super.connect(runner) as CollateralEngine__factory;
|
|
2573
|
+
}
|
|
2574
|
+
|
|
2575
|
+
static readonly bytecode = _bytecode;
|
|
2576
|
+
static readonly abi = _abi;
|
|
2577
|
+
static createInterface(): CollateralEngineInterface {
|
|
2578
|
+
return new Interface(_abi) as CollateralEngineInterface;
|
|
2579
|
+
}
|
|
2580
|
+
static connect(
|
|
2581
|
+
address: string,
|
|
2582
|
+
runner?: ContractRunner | null
|
|
2583
|
+
): CollateralEngine {
|
|
2584
|
+
return new Contract(address, _abi, runner) as unknown as CollateralEngine;
|
|
2585
|
+
}
|
|
2586
|
+
}
|
|
2587
|
+
|
|
2588
|
+
export interface CollateralEngineLibraryAddresses {
|
|
2589
|
+
["src/core_libraries/CollateralEngineLibrary.sol:CollateralEngineLibrary"]: string;
|
|
2590
|
+
}
|