@meterio/sumer-js 0.2.132 → 0.2.134

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.
Files changed (146) hide show
  1. package/dist/browser/sumer.min.js +10 -10
  2. package/dist/nodejs/abi.d.ts +226 -0
  3. package/dist/nodejs/abi.js +5260 -45
  4. package/dist/nodejs/abi.js.map +1 -1
  5. package/dist/nodejs/constants/arbitrum.js +0 -11
  6. package/dist/nodejs/constants/arbitrum.js.map +1 -1
  7. package/dist/nodejs/constants/b2main.js +0 -11
  8. package/dist/nodejs/constants/b2main.js.map +1 -1
  9. package/dist/nodejs/constants/basemain.js +0 -11
  10. package/dist/nodejs/constants/basemain.js.map +1 -1
  11. package/dist/nodejs/constants/basetest.js +0 -11
  12. package/dist/nodejs/constants/basetest.js.map +1 -1
  13. package/dist/nodejs/constants/berabartio.js +0 -11
  14. package/dist/nodejs/constants/berabartio.js.map +1 -1
  15. package/dist/nodejs/constants/beramain.js +0 -11
  16. package/dist/nodejs/constants/beramain.js.map +1 -1
  17. package/dist/nodejs/constants/bsc.js +0 -11
  18. package/dist/nodejs/constants/bsc.js.map +1 -1
  19. package/dist/nodejs/constants/core.js +0 -11
  20. package/dist/nodejs/constants/core.js.map +1 -1
  21. package/dist/nodejs/constants/ethereum.js +0 -11
  22. package/dist/nodejs/constants/ethereum.js.map +1 -1
  23. package/dist/nodejs/constants/hemi.js +0 -11
  24. package/dist/nodejs/constants/hemi.js.map +1 -1
  25. package/dist/nodejs/constants/metertest.js +0 -11
  26. package/dist/nodejs/constants/metertest.js.map +1 -1
  27. package/dist/nodejs/constants/monadtest.js +0 -11
  28. package/dist/nodejs/constants/monadtest.js.map +1 -1
  29. package/dist/nodejs/constants/sepolia.d.ts +18 -2
  30. package/dist/nodejs/constants/sepolia.js +48 -30
  31. package/dist/nodejs/constants/sepolia.js.map +1 -1
  32. package/dist/nodejs/constants/zklink.js +0 -11
  33. package/dist/nodejs/constants/zklink.js.map +1 -1
  34. package/dist/nodejs/errorABIs.js +1044 -0
  35. package/dist/nodejs/errorABIs.js.map +1 -1
  36. package/dist/nodejs/index.d.ts +226 -0
  37. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/CAToken.d.ts +1002 -0
  38. package/dist/nodejs/typechain/contracts/{Oracle/dualCoreAdapter.sol/ICoreVault.js → CToken/CAToken.sol/CAToken.js} +1 -1
  39. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/CAToken.js.map +1 -0
  40. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAToken.d.ts +29 -0
  41. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAToken.js +3 -0
  42. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAToken.js.map +1 -0
  43. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAaveV3Pool.d.ts +133 -0
  44. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAaveV3Pool.js +3 -0
  45. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/IAaveV3Pool.js.map +1 -0
  46. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/index.d.ts +3 -0
  47. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/index.js +3 -0
  48. package/dist/nodejs/typechain/contracts/CToken/CAToken.sol/index.js.map +1 -0
  49. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAToken.d.ts +37 -0
  50. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAToken.js +3 -0
  51. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAToken.js.map +1 -0
  52. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAaveV3Pool.d.ts +133 -0
  53. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAaveV3Pool.js +3 -0
  54. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/IAaveV3Pool.js.map +1 -0
  55. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/index.d.ts +3 -0
  56. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/index.js +3 -0
  57. package/dist/nodejs/typechain/contracts/CToken/CAavePool.sol/index.js.map +1 -0
  58. package/dist/nodejs/typechain/contracts/CToken/CErc20.d.ts +17 -1
  59. package/dist/nodejs/typechain/contracts/CToken/CEther.d.ts +17 -1
  60. package/dist/nodejs/typechain/contracts/CToken/CToken.d.ts +17 -1
  61. package/dist/nodejs/typechain/contracts/CToken/CTokenStorage.d.ts +5 -1
  62. package/dist/nodejs/typechain/contracts/CToken/SuErc20.d.ts +17 -1
  63. package/dist/nodejs/typechain/contracts/CToken/index.d.ts +4 -0
  64. package/dist/nodejs/typechain/contracts/Infrared/CInfraredVault.sol/CInfraredVault.d.ts +17 -1
  65. package/dist/nodejs/typechain/contracts/InterestRateModel/index.d.ts +2 -0
  66. package/dist/nodejs/typechain/contracts/Oracle/{dualCoreAdapter.sol/ICoreVault.d.ts → aprMONAdapter.sol/AprMONAdapter.d.ts} +10 -10
  67. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/AprMONAdapter.js +3 -0
  68. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/AprMONAdapter.js.map +1 -0
  69. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/IAprMon.d.ts +37 -0
  70. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/IAprMon.js +3 -0
  71. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/IAprMon.js.map +1 -0
  72. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/index.d.ts +2 -0
  73. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/index.js +3 -0
  74. package/dist/nodejs/typechain/contracts/Oracle/aprMONAdapter.sol/index.js.map +1 -0
  75. package/dist/nodejs/typechain/contracts/Oracle/dualCoreAdapter.sol/index.d.ts +0 -1
  76. package/dist/nodejs/typechain/contracts/Oracle/index.d.ts +2 -0
  77. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/CAToken__factory.d.ts +1673 -0
  78. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/CAToken__factory.js +2148 -0
  79. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/CAToken__factory.js.map +1 -0
  80. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/IAToken__factory.d.ts +31 -0
  81. package/dist/nodejs/typechain/factories/contracts/{Oracle/dualCoreAdapter.sol/ICoreVault__factory.js → CToken/CAToken.sol/IAToken__factory.js} +19 -6
  82. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/IAToken__factory.js.map +1 -0
  83. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/IAaveV3Pool__factory.d.ts +145 -0
  84. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/IAaveV3Pool__factory.js +199 -0
  85. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/IAaveV3Pool__factory.js.map +1 -0
  86. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/index.d.ts +3 -0
  87. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/index.js +13 -0
  88. package/dist/nodejs/typechain/factories/contracts/CToken/CAToken.sol/index.js.map +1 -0
  89. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/CAavePool__factory.d.ts +1 -1
  90. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/CAavePool__factory.js +1 -1
  91. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAToken__factory.d.ts +55 -0
  92. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAToken__factory.js +84 -0
  93. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAToken__factory.js.map +1 -0
  94. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAaveV3Pool__factory.d.ts +145 -0
  95. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAaveV3Pool__factory.js +199 -0
  96. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/IAaveV3Pool__factory.js.map +1 -0
  97. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/index.d.ts +3 -0
  98. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/index.js +13 -0
  99. package/dist/nodejs/typechain/factories/contracts/CToken/CAavePool.sol/index.js.map +1 -0
  100. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.d.ts +35 -1
  101. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js +46 -1
  102. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js.map +1 -1
  103. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.d.ts +35 -1
  104. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js +46 -1
  105. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js.map +1 -1
  106. package/dist/nodejs/typechain/factories/contracts/CToken/CTokenStorage__factory.d.ts +14 -0
  107. package/dist/nodejs/typechain/factories/contracts/CToken/CTokenStorage__factory.js +19 -0
  108. package/dist/nodejs/typechain/factories/contracts/CToken/CTokenStorage__factory.js.map +1 -1
  109. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.d.ts +34 -0
  110. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.js +45 -0
  111. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.js.map +1 -1
  112. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.d.ts +35 -1
  113. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js +46 -1
  114. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js.map +1 -1
  115. package/dist/nodejs/typechain/factories/contracts/CToken/index.d.ts +2 -0
  116. package/dist/nodejs/typechain/factories/contracts/CToken/index.js +26 -1
  117. package/dist/nodejs/typechain/factories/contracts/CToken/index.js.map +1 -1
  118. package/dist/nodejs/typechain/factories/contracts/Infrared/CInfraredVault.sol/CInfraredVault__factory.d.ts +35 -1
  119. package/dist/nodejs/typechain/factories/contracts/Infrared/CInfraredVault.sol/CInfraredVault__factory.js +46 -1
  120. package/dist/nodejs/typechain/factories/contracts/Infrared/CInfraredVault.sol/CInfraredVault__factory.js.map +1 -1
  121. package/dist/nodejs/typechain/factories/contracts/InterestRateModel/index.d.ts +1 -0
  122. package/dist/nodejs/typechain/factories/contracts/InterestRateModel/index.js +25 -1
  123. package/dist/nodejs/typechain/factories/contracts/InterestRateModel/index.js.map +1 -1
  124. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/AprMONAdapter__factory.d.ts +44 -0
  125. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/AprMONAdapter__factory.js +69 -0
  126. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/AprMONAdapter__factory.js.map +1 -0
  127. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/IAprMon__factory.d.ts +35 -0
  128. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/IAprMon__factory.js +58 -0
  129. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/IAprMon__factory.js.map +1 -0
  130. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/index.d.ts +2 -0
  131. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/index.js +11 -0
  132. package/dist/nodejs/typechain/factories/contracts/Oracle/aprMONAdapter.sol/index.js.map +1 -0
  133. package/dist/nodejs/typechain/factories/contracts/Oracle/dualCoreAdapter.sol/index.d.ts +0 -1
  134. package/dist/nodejs/typechain/factories/contracts/Oracle/dualCoreAdapter.sol/index.js +1 -3
  135. package/dist/nodejs/typechain/factories/contracts/Oracle/dualCoreAdapter.sol/index.js.map +1 -1
  136. package/dist/nodejs/typechain/factories/contracts/Oracle/index.d.ts +1 -0
  137. package/dist/nodejs/typechain/factories/contracts/Oracle/index.js +2 -1
  138. package/dist/nodejs/typechain/factories/contracts/Oracle/index.js.map +1 -1
  139. package/dist/nodejs/typechain/hardhat.d.ts +178 -16
  140. package/dist/nodejs/typechain/index.d.ts +14 -2
  141. package/dist/nodejs/typechain/index.js +16 -4
  142. package/dist/nodejs/typechain/index.js.map +1 -1
  143. package/package.json +1 -1
  144. package/dist/nodejs/typechain/contracts/Oracle/dualCoreAdapter.sol/ICoreVault.js.map +0 -1
  145. package/dist/nodejs/typechain/factories/contracts/Oracle/dualCoreAdapter.sol/ICoreVault__factory.d.ts +0 -21
  146. package/dist/nodejs/typechain/factories/contracts/Oracle/dualCoreAdapter.sol/ICoreVault__factory.js.map +0 -1
@@ -0,0 +1,2148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CAToken__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [],
11
+ stateMutability: "nonpayable",
12
+ type: "constructor",
13
+ },
14
+ {
15
+ inputs: [],
16
+ name: "AddReservesMarketNotFresh",
17
+ type: "error",
18
+ },
19
+ {
20
+ inputs: [],
21
+ name: "AddReservesOverflow",
22
+ type: "error",
23
+ },
24
+ {
25
+ inputs: [],
26
+ name: "BorrowAndDepositBackFailed",
27
+ type: "error",
28
+ },
29
+ {
30
+ inputs: [],
31
+ name: "BorrowCapReached",
32
+ type: "error",
33
+ },
34
+ {
35
+ inputs: [],
36
+ name: "BorrowCashNotAvailable",
37
+ type: "error",
38
+ },
39
+ {
40
+ inputs: [],
41
+ name: "BorrowMarketNotFresh",
42
+ type: "error",
43
+ },
44
+ {
45
+ inputs: [],
46
+ name: "BorrowPaused",
47
+ type: "error",
48
+ },
49
+ {
50
+ inputs: [
51
+ {
52
+ internalType: "uint256",
53
+ name: "usdThreshold",
54
+ type: "uint256",
55
+ },
56
+ ],
57
+ name: "BorrowValueMustBeLargerThanThreshold",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [],
62
+ name: "CantEnterPausedMarket",
63
+ type: "error",
64
+ },
65
+ {
66
+ inputs: [],
67
+ name: "CantExitMarketWithNonZeroBorrowBalance",
68
+ type: "error",
69
+ },
70
+ {
71
+ inputs: [],
72
+ name: "CantSweepUnderlying",
73
+ type: "error",
74
+ },
75
+ {
76
+ inputs: [],
77
+ name: "ComptrollerMismatch",
78
+ type: "error",
79
+ },
80
+ {
81
+ inputs: [],
82
+ name: "EitherAssetOrDebtMustBeZero",
83
+ type: "error",
84
+ },
85
+ {
86
+ inputs: [
87
+ {
88
+ internalType: "uint8",
89
+ name: "groupId",
90
+ type: "uint8",
91
+ },
92
+ {
93
+ internalType: "uint256",
94
+ name: "cDepositVal",
95
+ type: "uint256",
96
+ },
97
+ {
98
+ internalType: "uint256",
99
+ name: "suDepositVal",
100
+ type: "uint256",
101
+ },
102
+ {
103
+ internalType: "uint256",
104
+ name: "cBorrowVal",
105
+ type: "uint256",
106
+ },
107
+ {
108
+ internalType: "uint256",
109
+ name: "suBorrowVal",
110
+ type: "uint256",
111
+ },
112
+ ],
113
+ name: "EitherAssetOrDebtMustBeZeroInGroup",
114
+ type: "error",
115
+ },
116
+ {
117
+ inputs: [],
118
+ name: "ExpiredSignature",
119
+ type: "error",
120
+ },
121
+ {
122
+ inputs: [],
123
+ name: "InsufficientCollateral",
124
+ type: "error",
125
+ },
126
+ {
127
+ inputs: [],
128
+ name: "InsufficientShortfall",
129
+ type: "error",
130
+ },
131
+ {
132
+ inputs: [],
133
+ name: "InterMintNotAllowed",
134
+ type: "error",
135
+ },
136
+ {
137
+ inputs: [],
138
+ name: "InvalidAddress",
139
+ type: "error",
140
+ },
141
+ {
142
+ inputs: [],
143
+ name: "InvalidAmount",
144
+ type: "error",
145
+ },
146
+ {
147
+ inputs: [],
148
+ name: "InvalidBlockNumber",
149
+ type: "error",
150
+ },
151
+ {
152
+ inputs: [],
153
+ name: "InvalidCToken",
154
+ type: "error",
155
+ },
156
+ {
157
+ inputs: [],
158
+ name: "InvalidCloseFactor",
159
+ type: "error",
160
+ },
161
+ {
162
+ inputs: [],
163
+ name: "InvalidComptroller",
164
+ type: "error",
165
+ },
166
+ {
167
+ inputs: [],
168
+ name: "InvalidDiscountRate",
169
+ type: "error",
170
+ },
171
+ {
172
+ inputs: [],
173
+ name: "InvalidExchangeRate",
174
+ type: "error",
175
+ },
176
+ {
177
+ inputs: [],
178
+ name: "InvalidGroupId",
179
+ type: "error",
180
+ },
181
+ {
182
+ inputs: [],
183
+ name: "InvalidInput",
184
+ type: "error",
185
+ },
186
+ {
187
+ inputs: [],
188
+ name: "InvalidInterestRateModel",
189
+ type: "error",
190
+ },
191
+ {
192
+ inputs: [],
193
+ name: "InvalidMinSuBorrowValue",
194
+ type: "error",
195
+ },
196
+ {
197
+ inputs: [],
198
+ name: "InvalidRedeem",
199
+ type: "error",
200
+ },
201
+ {
202
+ inputs: [],
203
+ name: "InvalidReduceAmount",
204
+ type: "error",
205
+ },
206
+ {
207
+ inputs: [],
208
+ name: "InvalidReserveFactor",
209
+ type: "error",
210
+ },
211
+ {
212
+ inputs: [],
213
+ name: "InvalidSignatureForRedeemFaceValue",
214
+ type: "error",
215
+ },
216
+ {
217
+ inputs: [],
218
+ name: "InvalidSignatureLength",
219
+ type: "error",
220
+ },
221
+ {
222
+ inputs: [],
223
+ name: "InvalidSuToken",
224
+ type: "error",
225
+ },
226
+ {
227
+ inputs: [],
228
+ name: "InvalidTimestamp",
229
+ type: "error",
230
+ },
231
+ {
232
+ inputs: [],
233
+ name: "LiquidateBorrow_LiquidatorIsBorrower",
234
+ type: "error",
235
+ },
236
+ {
237
+ inputs: [],
238
+ name: "LiquidateBorrow_RepayAmountIsMax",
239
+ type: "error",
240
+ },
241
+ {
242
+ inputs: [],
243
+ name: "LiquidateBorrow_RepayAmountIsZero",
244
+ type: "error",
245
+ },
246
+ {
247
+ inputs: [],
248
+ name: "LiquidateBorrow_SeizeTooMuch",
249
+ type: "error",
250
+ },
251
+ {
252
+ inputs: [],
253
+ name: "LiquidateCollateralMarketNotFresh",
254
+ type: "error",
255
+ },
256
+ {
257
+ inputs: [],
258
+ name: "LiquidateMarketNotFresh",
259
+ type: "error",
260
+ },
261
+ {
262
+ inputs: [],
263
+ name: "MarketAlreadyListed",
264
+ type: "error",
265
+ },
266
+ {
267
+ inputs: [],
268
+ name: "MarketAlreadyUnlisted",
269
+ type: "error",
270
+ },
271
+ {
272
+ inputs: [],
273
+ name: "MarketCanOnlyInitializeOnce",
274
+ type: "error",
275
+ },
276
+ {
277
+ inputs: [],
278
+ name: "MarketNotEmpty",
279
+ type: "error",
280
+ },
281
+ {
282
+ inputs: [],
283
+ name: "MarketNotListed",
284
+ type: "error",
285
+ },
286
+ {
287
+ inputs: [],
288
+ name: "MarketPaused",
289
+ type: "error",
290
+ },
291
+ {
292
+ inputs: [],
293
+ name: "MinDelayNotReached",
294
+ type: "error",
295
+ },
296
+ {
297
+ inputs: [],
298
+ name: "MintMarketNotFresh",
299
+ type: "error",
300
+ },
301
+ {
302
+ inputs: [],
303
+ name: "MintPaused",
304
+ type: "error",
305
+ },
306
+ {
307
+ inputs: [],
308
+ name: "MintTokensCantBeZero",
309
+ type: "error",
310
+ },
311
+ {
312
+ inputs: [],
313
+ name: "NoRedemptionProvider",
314
+ type: "error",
315
+ },
316
+ {
317
+ inputs: [],
318
+ name: "NotCToken",
319
+ type: "error",
320
+ },
321
+ {
322
+ inputs: [],
323
+ name: "NotEnoughForSeize",
324
+ type: "error",
325
+ },
326
+ {
327
+ inputs: [],
328
+ name: "NotEnoughRedeemAmount",
329
+ type: "error",
330
+ },
331
+ {
332
+ inputs: [],
333
+ name: "NotEnoughRedeemTokens",
334
+ type: "error",
335
+ },
336
+ {
337
+ inputs: [],
338
+ name: "NotEnoughUnderlyingAfterRedeem",
339
+ type: "error",
340
+ },
341
+ {
342
+ inputs: [],
343
+ name: "NotEnoughUnderlyingForMint",
344
+ type: "error",
345
+ },
346
+ {
347
+ inputs: [],
348
+ name: "NotLiquidatableYet",
349
+ type: "error",
350
+ },
351
+ {
352
+ inputs: [],
353
+ name: "NotSuToken",
354
+ type: "error",
355
+ },
356
+ {
357
+ inputs: [],
358
+ name: "OnlyAdmin",
359
+ type: "error",
360
+ },
361
+ {
362
+ inputs: [],
363
+ name: "OnlyAdminOrPauser",
364
+ type: "error",
365
+ },
366
+ {
367
+ inputs: [],
368
+ name: "OnlyCToken",
369
+ type: "error",
370
+ },
371
+ {
372
+ inputs: [],
373
+ name: "OnlyListedCToken",
374
+ type: "error",
375
+ },
376
+ {
377
+ inputs: [],
378
+ name: "OnlyPausedMarketCanBeUnlisted",
379
+ type: "error",
380
+ },
381
+ {
382
+ inputs: [],
383
+ name: "OnlyPendingAdmin",
384
+ type: "error",
385
+ },
386
+ {
387
+ inputs: [],
388
+ name: "OnlyRedemptionManager",
389
+ type: "error",
390
+ },
391
+ {
392
+ inputs: [],
393
+ name: "OverThreshold",
394
+ type: "error",
395
+ },
396
+ {
397
+ inputs: [],
398
+ name: "PriceError",
399
+ type: "error",
400
+ },
401
+ {
402
+ inputs: [],
403
+ name: "ProtectedMint_OnlyAllowAssetsInTheSameGroup",
404
+ type: "error",
405
+ },
406
+ {
407
+ inputs: [],
408
+ name: "RedeemMarketNotFresh",
409
+ type: "error",
410
+ },
411
+ {
412
+ inputs: [],
413
+ name: "RedeemTransferOutNotPossible",
414
+ type: "error",
415
+ },
416
+ {
417
+ inputs: [],
418
+ name: "RedemptionSeizeTooMuch",
419
+ type: "error",
420
+ },
421
+ {
422
+ inputs: [],
423
+ name: "RedemptionSignerNotInitialized",
424
+ type: "error",
425
+ },
426
+ {
427
+ inputs: [],
428
+ name: "ReduceReservesCashNotAvailable",
429
+ type: "error",
430
+ },
431
+ {
432
+ inputs: [],
433
+ name: "ReduceReservesMarketNotFresh",
434
+ type: "error",
435
+ },
436
+ {
437
+ inputs: [],
438
+ name: "Reentered",
439
+ type: "error",
440
+ },
441
+ {
442
+ inputs: [],
443
+ name: "RepayBorrowMarketNotFresh",
444
+ type: "error",
445
+ },
446
+ {
447
+ inputs: [],
448
+ name: "RepayTokenNotListed",
449
+ type: "error",
450
+ },
451
+ {
452
+ inputs: [],
453
+ name: "SeizePaused",
454
+ type: "error",
455
+ },
456
+ {
457
+ inputs: [],
458
+ name: "SeizeTokenNotListed",
459
+ type: "error",
460
+ },
461
+ {
462
+ inputs: [],
463
+ name: "Seize_LiquidatorIsBorrower",
464
+ type: "error",
465
+ },
466
+ {
467
+ inputs: [],
468
+ name: "SenderMustBeCToken",
469
+ type: "error",
470
+ },
471
+ {
472
+ inputs: [],
473
+ name: "SetInterestRateModelMarketNotFresh",
474
+ type: "error",
475
+ },
476
+ {
477
+ inputs: [],
478
+ name: "SetReservesFactorMarketNotFresh",
479
+ type: "error",
480
+ },
481
+ {
482
+ inputs: [],
483
+ name: "SupplyCapReached",
484
+ type: "error",
485
+ },
486
+ {
487
+ inputs: [],
488
+ name: "TokenInOrAmountInMustBeZero",
489
+ type: "error",
490
+ },
491
+ {
492
+ inputs: [],
493
+ name: "TokenTransferInFailed",
494
+ type: "error",
495
+ },
496
+ {
497
+ inputs: [],
498
+ name: "TokenTransferOutFailed",
499
+ type: "error",
500
+ },
501
+ {
502
+ inputs: [],
503
+ name: "TooMuchRepay",
504
+ type: "error",
505
+ },
506
+ {
507
+ inputs: [],
508
+ name: "TotalBorrowsNotZero",
509
+ type: "error",
510
+ },
511
+ {
512
+ inputs: [],
513
+ name: "TotalSupplyNotZero",
514
+ type: "error",
515
+ },
516
+ {
517
+ inputs: [],
518
+ name: "TransferNotAllowed",
519
+ type: "error",
520
+ },
521
+ {
522
+ inputs: [],
523
+ name: "TransferPaused",
524
+ type: "error",
525
+ },
526
+ {
527
+ inputs: [],
528
+ name: "UnderlyingBalanceError",
529
+ type: "error",
530
+ },
531
+ {
532
+ inputs: [],
533
+ name: "ZeroAddressNotAllowed",
534
+ type: "error",
535
+ },
536
+ {
537
+ anonymous: false,
538
+ inputs: [
539
+ {
540
+ indexed: false,
541
+ internalType: "uint256",
542
+ name: "cashPrior",
543
+ type: "uint256",
544
+ },
545
+ {
546
+ indexed: false,
547
+ internalType: "uint256",
548
+ name: "interestAccumulated",
549
+ type: "uint256",
550
+ },
551
+ {
552
+ indexed: false,
553
+ internalType: "uint256",
554
+ name: "borrowIndex",
555
+ type: "uint256",
556
+ },
557
+ {
558
+ indexed: false,
559
+ internalType: "uint256",
560
+ name: "totalBorrows",
561
+ type: "uint256",
562
+ },
563
+ ],
564
+ name: "AccrueInterest",
565
+ type: "event",
566
+ },
567
+ {
568
+ anonymous: false,
569
+ inputs: [
570
+ {
571
+ indexed: true,
572
+ internalType: "address",
573
+ name: "owner",
574
+ type: "address",
575
+ },
576
+ {
577
+ indexed: true,
578
+ internalType: "address",
579
+ name: "spender",
580
+ type: "address",
581
+ },
582
+ {
583
+ indexed: false,
584
+ internalType: "uint256",
585
+ name: "amount",
586
+ type: "uint256",
587
+ },
588
+ ],
589
+ name: "Approval",
590
+ type: "event",
591
+ },
592
+ {
593
+ anonymous: false,
594
+ inputs: [
595
+ {
596
+ indexed: false,
597
+ internalType: "address",
598
+ name: "borrower",
599
+ type: "address",
600
+ },
601
+ {
602
+ indexed: false,
603
+ internalType: "uint256",
604
+ name: "borrowAmount",
605
+ type: "uint256",
606
+ },
607
+ {
608
+ indexed: false,
609
+ internalType: "uint256",
610
+ name: "accountBorrows",
611
+ type: "uint256",
612
+ },
613
+ {
614
+ indexed: false,
615
+ internalType: "uint256",
616
+ name: "totalBorrows",
617
+ type: "uint256",
618
+ },
619
+ ],
620
+ name: "Borrow",
621
+ type: "event",
622
+ },
623
+ {
624
+ anonymous: false,
625
+ inputs: [
626
+ {
627
+ indexed: false,
628
+ internalType: "uint8",
629
+ name: "version",
630
+ type: "uint8",
631
+ },
632
+ ],
633
+ name: "Initialized",
634
+ type: "event",
635
+ },
636
+ {
637
+ anonymous: false,
638
+ inputs: [
639
+ {
640
+ indexed: false,
641
+ internalType: "address",
642
+ name: "liquidator",
643
+ type: "address",
644
+ },
645
+ {
646
+ indexed: false,
647
+ internalType: "address",
648
+ name: "borrower",
649
+ type: "address",
650
+ },
651
+ {
652
+ indexed: false,
653
+ internalType: "uint256",
654
+ name: "repayAmount",
655
+ type: "uint256",
656
+ },
657
+ {
658
+ indexed: false,
659
+ internalType: "address",
660
+ name: "cTokenCollateral",
661
+ type: "address",
662
+ },
663
+ {
664
+ indexed: false,
665
+ internalType: "uint256",
666
+ name: "seizeTokens",
667
+ type: "uint256",
668
+ },
669
+ ],
670
+ name: "LiquidateBorrow",
671
+ type: "event",
672
+ },
673
+ {
674
+ anonymous: false,
675
+ inputs: [
676
+ {
677
+ indexed: false,
678
+ internalType: "address",
679
+ name: "minter",
680
+ type: "address",
681
+ },
682
+ {
683
+ indexed: false,
684
+ internalType: "uint256",
685
+ name: "mintAmount",
686
+ type: "uint256",
687
+ },
688
+ {
689
+ indexed: false,
690
+ internalType: "uint256",
691
+ name: "mintTokens",
692
+ type: "uint256",
693
+ },
694
+ ],
695
+ name: "Mint",
696
+ type: "event",
697
+ },
698
+ {
699
+ anonymous: false,
700
+ inputs: [
701
+ {
702
+ indexed: false,
703
+ internalType: "address",
704
+ name: "oldAdmin",
705
+ type: "address",
706
+ },
707
+ {
708
+ indexed: false,
709
+ internalType: "address",
710
+ name: "newAdmin",
711
+ type: "address",
712
+ },
713
+ ],
714
+ name: "NewAdmin",
715
+ type: "event",
716
+ },
717
+ {
718
+ anonymous: false,
719
+ inputs: [
720
+ {
721
+ indexed: false,
722
+ internalType: "address",
723
+ name: "oldComptroller",
724
+ type: "address",
725
+ },
726
+ {
727
+ indexed: false,
728
+ internalType: "address",
729
+ name: "newComptroller",
730
+ type: "address",
731
+ },
732
+ ],
733
+ name: "NewComptroller",
734
+ type: "event",
735
+ },
736
+ {
737
+ anonymous: false,
738
+ inputs: [
739
+ {
740
+ indexed: false,
741
+ internalType: "uint256",
742
+ name: "oldDiscountRateMantissa",
743
+ type: "uint256",
744
+ },
745
+ {
746
+ indexed: false,
747
+ internalType: "uint256",
748
+ name: "newDiscountRateMantissa",
749
+ type: "uint256",
750
+ },
751
+ ],
752
+ name: "NewDiscountRate",
753
+ type: "event",
754
+ },
755
+ {
756
+ anonymous: false,
757
+ inputs: [
758
+ {
759
+ indexed: false,
760
+ internalType: "address",
761
+ name: "oldInterestRateModel",
762
+ type: "address",
763
+ },
764
+ {
765
+ indexed: false,
766
+ internalType: "address",
767
+ name: "newInterestRateModel",
768
+ type: "address",
769
+ },
770
+ ],
771
+ name: "NewMarketInterestRateModel",
772
+ type: "event",
773
+ },
774
+ {
775
+ anonymous: false,
776
+ inputs: [
777
+ {
778
+ indexed: false,
779
+ internalType: "address",
780
+ name: "oldPendingAdmin",
781
+ type: "address",
782
+ },
783
+ {
784
+ indexed: false,
785
+ internalType: "address",
786
+ name: "newPendingAdmin",
787
+ type: "address",
788
+ },
789
+ ],
790
+ name: "NewPendingAdmin",
791
+ type: "event",
792
+ },
793
+ {
794
+ anonymous: false,
795
+ inputs: [
796
+ {
797
+ indexed: false,
798
+ internalType: "uint256",
799
+ name: "oldReserveFactorMantissa",
800
+ type: "uint256",
801
+ },
802
+ {
803
+ indexed: false,
804
+ internalType: "uint256",
805
+ name: "newReserveFactorMantissa",
806
+ type: "uint256",
807
+ },
808
+ ],
809
+ name: "NewReserveFactor",
810
+ type: "event",
811
+ },
812
+ {
813
+ anonymous: false,
814
+ inputs: [
815
+ {
816
+ indexed: false,
817
+ internalType: "address",
818
+ name: "redeemer",
819
+ type: "address",
820
+ },
821
+ {
822
+ indexed: false,
823
+ internalType: "uint256",
824
+ name: "redeemAmount",
825
+ type: "uint256",
826
+ },
827
+ {
828
+ indexed: false,
829
+ internalType: "uint256",
830
+ name: "redeemTokens",
831
+ type: "uint256",
832
+ },
833
+ ],
834
+ name: "Redeem",
835
+ type: "event",
836
+ },
837
+ {
838
+ anonymous: false,
839
+ inputs: [
840
+ {
841
+ indexed: true,
842
+ internalType: "address",
843
+ name: "redeemer",
844
+ type: "address",
845
+ },
846
+ {
847
+ indexed: true,
848
+ internalType: "address",
849
+ name: "provider",
850
+ type: "address",
851
+ },
852
+ {
853
+ indexed: false,
854
+ internalType: "uint256",
855
+ name: "repayAmount",
856
+ type: "uint256",
857
+ },
858
+ {
859
+ indexed: false,
860
+ internalType: "address",
861
+ name: "seizeToken",
862
+ type: "address",
863
+ },
864
+ {
865
+ indexed: false,
866
+ internalType: "uint256",
867
+ name: "seizeAmount",
868
+ type: "uint256",
869
+ },
870
+ {
871
+ indexed: false,
872
+ internalType: "uint256",
873
+ name: "redemptionRateMantissa",
874
+ type: "uint256",
875
+ },
876
+ ],
877
+ name: "RedeemFaceValue",
878
+ type: "event",
879
+ },
880
+ {
881
+ anonymous: false,
882
+ inputs: [
883
+ {
884
+ indexed: false,
885
+ internalType: "address",
886
+ name: "payer",
887
+ type: "address",
888
+ },
889
+ {
890
+ indexed: false,
891
+ internalType: "address",
892
+ name: "borrower",
893
+ type: "address",
894
+ },
895
+ {
896
+ indexed: false,
897
+ internalType: "uint256",
898
+ name: "repayAmount",
899
+ type: "uint256",
900
+ },
901
+ {
902
+ indexed: false,
903
+ internalType: "uint256",
904
+ name: "accountBorrows",
905
+ type: "uint256",
906
+ },
907
+ {
908
+ indexed: false,
909
+ internalType: "uint256",
910
+ name: "totalBorrows",
911
+ type: "uint256",
912
+ },
913
+ ],
914
+ name: "RepayBorrow",
915
+ type: "event",
916
+ },
917
+ {
918
+ anonymous: false,
919
+ inputs: [
920
+ {
921
+ indexed: false,
922
+ internalType: "address",
923
+ name: "benefactor",
924
+ type: "address",
925
+ },
926
+ {
927
+ indexed: false,
928
+ internalType: "uint256",
929
+ name: "addAmount",
930
+ type: "uint256",
931
+ },
932
+ {
933
+ indexed: false,
934
+ internalType: "uint256",
935
+ name: "newTotalReserves",
936
+ type: "uint256",
937
+ },
938
+ ],
939
+ name: "ReservesAdded",
940
+ type: "event",
941
+ },
942
+ {
943
+ anonymous: false,
944
+ inputs: [
945
+ {
946
+ indexed: false,
947
+ internalType: "address",
948
+ name: "admin",
949
+ type: "address",
950
+ },
951
+ {
952
+ indexed: false,
953
+ internalType: "uint256",
954
+ name: "reduceAmount",
955
+ type: "uint256",
956
+ },
957
+ {
958
+ indexed: false,
959
+ internalType: "uint256",
960
+ name: "newTotalReserves",
961
+ type: "uint256",
962
+ },
963
+ ],
964
+ name: "ReservesReduced",
965
+ type: "event",
966
+ },
967
+ {
968
+ anonymous: false,
969
+ inputs: [
970
+ {
971
+ indexed: true,
972
+ internalType: "address",
973
+ name: "from",
974
+ type: "address",
975
+ },
976
+ {
977
+ indexed: true,
978
+ internalType: "address",
979
+ name: "to",
980
+ type: "address",
981
+ },
982
+ {
983
+ indexed: false,
984
+ internalType: "uint256",
985
+ name: "amount",
986
+ type: "uint256",
987
+ },
988
+ ],
989
+ name: "Transfer",
990
+ type: "event",
991
+ },
992
+ {
993
+ inputs: [],
994
+ name: "_acceptAdmin",
995
+ outputs: [],
996
+ stateMutability: "nonpayable",
997
+ type: "function",
998
+ },
999
+ {
1000
+ inputs: [
1001
+ {
1002
+ internalType: "uint256",
1003
+ name: "addAmount",
1004
+ type: "uint256",
1005
+ },
1006
+ ],
1007
+ name: "_addReserves",
1008
+ outputs: [],
1009
+ stateMutability: "nonpayable",
1010
+ type: "function",
1011
+ },
1012
+ {
1013
+ inputs: [
1014
+ {
1015
+ internalType: "uint256",
1016
+ name: "reduceAmount",
1017
+ type: "uint256",
1018
+ },
1019
+ ],
1020
+ name: "_reduceReserves",
1021
+ outputs: [],
1022
+ stateMutability: "nonpayable",
1023
+ type: "function",
1024
+ },
1025
+ {
1026
+ inputs: [
1027
+ {
1028
+ internalType: "address",
1029
+ name: "newComptroller",
1030
+ type: "address",
1031
+ },
1032
+ ],
1033
+ name: "_setComptroller",
1034
+ outputs: [],
1035
+ stateMutability: "nonpayable",
1036
+ type: "function",
1037
+ },
1038
+ {
1039
+ inputs: [
1040
+ {
1041
+ internalType: "uint256",
1042
+ name: "discountRateMantissa_",
1043
+ type: "uint256",
1044
+ },
1045
+ ],
1046
+ name: "_setDiscountRate",
1047
+ outputs: [
1048
+ {
1049
+ internalType: "uint256",
1050
+ name: "",
1051
+ type: "uint256",
1052
+ },
1053
+ ],
1054
+ stateMutability: "nonpayable",
1055
+ type: "function",
1056
+ },
1057
+ {
1058
+ inputs: [
1059
+ {
1060
+ internalType: "address",
1061
+ name: "newInterestRateModel",
1062
+ type: "address",
1063
+ },
1064
+ ],
1065
+ name: "_setInterestRateModel",
1066
+ outputs: [],
1067
+ stateMutability: "nonpayable",
1068
+ type: "function",
1069
+ },
1070
+ {
1071
+ inputs: [
1072
+ {
1073
+ internalType: "address payable",
1074
+ name: "newPendingAdmin",
1075
+ type: "address",
1076
+ },
1077
+ ],
1078
+ name: "_setPendingAdmin",
1079
+ outputs: [],
1080
+ stateMutability: "nonpayable",
1081
+ type: "function",
1082
+ },
1083
+ {
1084
+ inputs: [
1085
+ {
1086
+ internalType: "uint256",
1087
+ name: "newReserveFactorMantissa",
1088
+ type: "uint256",
1089
+ },
1090
+ ],
1091
+ name: "_setReserveFactor",
1092
+ outputs: [],
1093
+ stateMutability: "nonpayable",
1094
+ type: "function",
1095
+ },
1096
+ {
1097
+ inputs: [],
1098
+ name: "_syncUnderlyingBalance",
1099
+ outputs: [],
1100
+ stateMutability: "nonpayable",
1101
+ type: "function",
1102
+ },
1103
+ {
1104
+ inputs: [],
1105
+ name: "accrualBlockTimestamp",
1106
+ outputs: [
1107
+ {
1108
+ internalType: "uint256",
1109
+ name: "",
1110
+ type: "uint256",
1111
+ },
1112
+ ],
1113
+ stateMutability: "view",
1114
+ type: "function",
1115
+ },
1116
+ {
1117
+ inputs: [],
1118
+ name: "accrueInterest",
1119
+ outputs: [],
1120
+ stateMutability: "nonpayable",
1121
+ type: "function",
1122
+ },
1123
+ {
1124
+ inputs: [],
1125
+ name: "admin",
1126
+ outputs: [
1127
+ {
1128
+ internalType: "address payable",
1129
+ name: "",
1130
+ type: "address",
1131
+ },
1132
+ ],
1133
+ stateMutability: "view",
1134
+ type: "function",
1135
+ },
1136
+ {
1137
+ inputs: [
1138
+ {
1139
+ internalType: "address",
1140
+ name: "owner",
1141
+ type: "address",
1142
+ },
1143
+ {
1144
+ internalType: "address",
1145
+ name: "spender",
1146
+ type: "address",
1147
+ },
1148
+ ],
1149
+ name: "allowance",
1150
+ outputs: [
1151
+ {
1152
+ internalType: "uint256",
1153
+ name: "",
1154
+ type: "uint256",
1155
+ },
1156
+ ],
1157
+ stateMutability: "view",
1158
+ type: "function",
1159
+ },
1160
+ {
1161
+ inputs: [
1162
+ {
1163
+ internalType: "address",
1164
+ name: "spender",
1165
+ type: "address",
1166
+ },
1167
+ {
1168
+ internalType: "uint256",
1169
+ name: "amount",
1170
+ type: "uint256",
1171
+ },
1172
+ ],
1173
+ name: "approve",
1174
+ outputs: [
1175
+ {
1176
+ internalType: "bool",
1177
+ name: "",
1178
+ type: "bool",
1179
+ },
1180
+ ],
1181
+ stateMutability: "nonpayable",
1182
+ type: "function",
1183
+ },
1184
+ {
1185
+ inputs: [
1186
+ {
1187
+ internalType: "address",
1188
+ name: "owner",
1189
+ type: "address",
1190
+ },
1191
+ ],
1192
+ name: "balanceOf",
1193
+ outputs: [
1194
+ {
1195
+ internalType: "uint256",
1196
+ name: "",
1197
+ type: "uint256",
1198
+ },
1199
+ ],
1200
+ stateMutability: "view",
1201
+ type: "function",
1202
+ },
1203
+ {
1204
+ inputs: [
1205
+ {
1206
+ internalType: "address",
1207
+ name: "owner",
1208
+ type: "address",
1209
+ },
1210
+ ],
1211
+ name: "balanceOfUnderlying",
1212
+ outputs: [
1213
+ {
1214
+ internalType: "uint256",
1215
+ name: "",
1216
+ type: "uint256",
1217
+ },
1218
+ ],
1219
+ stateMutability: "nonpayable",
1220
+ type: "function",
1221
+ },
1222
+ {
1223
+ inputs: [
1224
+ {
1225
+ internalType: "uint256",
1226
+ name: "borrowAmount",
1227
+ type: "uint256",
1228
+ },
1229
+ ],
1230
+ name: "borrow",
1231
+ outputs: [],
1232
+ stateMutability: "nonpayable",
1233
+ type: "function",
1234
+ },
1235
+ {
1236
+ inputs: [
1237
+ {
1238
+ internalType: "address",
1239
+ name: "borrower",
1240
+ type: "address",
1241
+ },
1242
+ {
1243
+ internalType: "uint256",
1244
+ name: "borrowAmount",
1245
+ type: "uint256",
1246
+ },
1247
+ ],
1248
+ name: "borrowAndDepositBack",
1249
+ outputs: [],
1250
+ stateMutability: "nonpayable",
1251
+ type: "function",
1252
+ },
1253
+ {
1254
+ inputs: [
1255
+ {
1256
+ internalType: "address",
1257
+ name: "account",
1258
+ type: "address",
1259
+ },
1260
+ ],
1261
+ name: "borrowBalanceCurrent",
1262
+ outputs: [
1263
+ {
1264
+ internalType: "uint256",
1265
+ name: "",
1266
+ type: "uint256",
1267
+ },
1268
+ ],
1269
+ stateMutability: "nonpayable",
1270
+ type: "function",
1271
+ },
1272
+ {
1273
+ inputs: [
1274
+ {
1275
+ internalType: "address",
1276
+ name: "account",
1277
+ type: "address",
1278
+ },
1279
+ ],
1280
+ name: "borrowBalanceStored",
1281
+ outputs: [
1282
+ {
1283
+ internalType: "uint256",
1284
+ name: "",
1285
+ type: "uint256",
1286
+ },
1287
+ ],
1288
+ stateMutability: "view",
1289
+ type: "function",
1290
+ },
1291
+ {
1292
+ inputs: [],
1293
+ name: "borrowIndex",
1294
+ outputs: [
1295
+ {
1296
+ internalType: "uint256",
1297
+ name: "",
1298
+ type: "uint256",
1299
+ },
1300
+ ],
1301
+ stateMutability: "view",
1302
+ type: "function",
1303
+ },
1304
+ {
1305
+ inputs: [],
1306
+ name: "borrowRatePerBlock",
1307
+ outputs: [
1308
+ {
1309
+ internalType: "uint256",
1310
+ name: "",
1311
+ type: "uint256",
1312
+ },
1313
+ ],
1314
+ stateMutability: "view",
1315
+ type: "function",
1316
+ },
1317
+ {
1318
+ inputs: [],
1319
+ name: "comptroller",
1320
+ outputs: [
1321
+ {
1322
+ internalType: "address",
1323
+ name: "",
1324
+ type: "address",
1325
+ },
1326
+ ],
1327
+ stateMutability: "view",
1328
+ type: "function",
1329
+ },
1330
+ {
1331
+ inputs: [],
1332
+ name: "decimals",
1333
+ outputs: [
1334
+ {
1335
+ internalType: "uint8",
1336
+ name: "",
1337
+ type: "uint8",
1338
+ },
1339
+ ],
1340
+ stateMutability: "view",
1341
+ type: "function",
1342
+ },
1343
+ {
1344
+ inputs: [],
1345
+ name: "discountRateMantissa",
1346
+ outputs: [
1347
+ {
1348
+ internalType: "uint256",
1349
+ name: "",
1350
+ type: "uint256",
1351
+ },
1352
+ ],
1353
+ stateMutability: "view",
1354
+ type: "function",
1355
+ },
1356
+ {
1357
+ inputs: [],
1358
+ name: "exchangeRateCurrent",
1359
+ outputs: [
1360
+ {
1361
+ internalType: "uint256",
1362
+ name: "",
1363
+ type: "uint256",
1364
+ },
1365
+ ],
1366
+ stateMutability: "nonpayable",
1367
+ type: "function",
1368
+ },
1369
+ {
1370
+ inputs: [],
1371
+ name: "exchangeRateStored",
1372
+ outputs: [
1373
+ {
1374
+ internalType: "uint256",
1375
+ name: "",
1376
+ type: "uint256",
1377
+ },
1378
+ ],
1379
+ stateMutability: "view",
1380
+ type: "function",
1381
+ },
1382
+ {
1383
+ inputs: [],
1384
+ name: "getAaveAPRs",
1385
+ outputs: [
1386
+ {
1387
+ internalType: "uint256",
1388
+ name: "depositAPR",
1389
+ type: "uint256",
1390
+ },
1391
+ {
1392
+ internalType: "uint256",
1393
+ name: "variableBorrowAPR",
1394
+ type: "uint256",
1395
+ },
1396
+ {
1397
+ internalType: "uint256",
1398
+ name: "stableBorrowAPR",
1399
+ type: "uint256",
1400
+ },
1401
+ ],
1402
+ stateMutability: "view",
1403
+ type: "function",
1404
+ },
1405
+ {
1406
+ inputs: [
1407
+ {
1408
+ internalType: "address",
1409
+ name: "account",
1410
+ type: "address",
1411
+ },
1412
+ ],
1413
+ name: "getAccountSnapshot",
1414
+ outputs: [
1415
+ {
1416
+ internalType: "uint256",
1417
+ name: "",
1418
+ type: "uint256",
1419
+ },
1420
+ {
1421
+ internalType: "uint256",
1422
+ name: "",
1423
+ type: "uint256",
1424
+ },
1425
+ {
1426
+ internalType: "uint256",
1427
+ name: "",
1428
+ type: "uint256",
1429
+ },
1430
+ {
1431
+ internalType: "uint256",
1432
+ name: "",
1433
+ type: "uint256",
1434
+ },
1435
+ ],
1436
+ stateMutability: "view",
1437
+ type: "function",
1438
+ },
1439
+ {
1440
+ inputs: [],
1441
+ name: "getCash",
1442
+ outputs: [
1443
+ {
1444
+ internalType: "uint256",
1445
+ name: "",
1446
+ type: "uint256",
1447
+ },
1448
+ ],
1449
+ stateMutability: "view",
1450
+ type: "function",
1451
+ },
1452
+ {
1453
+ inputs: [
1454
+ {
1455
+ internalType: "address",
1456
+ name: "underlying_",
1457
+ type: "address",
1458
+ },
1459
+ {
1460
+ internalType: "address",
1461
+ name: "comptroller_",
1462
+ type: "address",
1463
+ },
1464
+ {
1465
+ internalType: "address",
1466
+ name: "interestRateModel_",
1467
+ type: "address",
1468
+ },
1469
+ {
1470
+ internalType: "uint256",
1471
+ name: "initialExchangeRateMantissa_",
1472
+ type: "uint256",
1473
+ },
1474
+ {
1475
+ internalType: "string",
1476
+ name: "name_",
1477
+ type: "string",
1478
+ },
1479
+ {
1480
+ internalType: "string",
1481
+ name: "symbol_",
1482
+ type: "string",
1483
+ },
1484
+ {
1485
+ internalType: "uint8",
1486
+ name: "decimals_",
1487
+ type: "uint8",
1488
+ },
1489
+ {
1490
+ internalType: "address payable",
1491
+ name: "admin_",
1492
+ type: "address",
1493
+ },
1494
+ ],
1495
+ name: "initialize",
1496
+ outputs: [],
1497
+ stateMutability: "nonpayable",
1498
+ type: "function",
1499
+ },
1500
+ {
1501
+ inputs: [
1502
+ {
1503
+ internalType: "address",
1504
+ name: "underlying_",
1505
+ type: "address",
1506
+ },
1507
+ {
1508
+ internalType: "address",
1509
+ name: "comptroller_",
1510
+ type: "address",
1511
+ },
1512
+ {
1513
+ internalType: "address",
1514
+ name: "interestRateModel_",
1515
+ type: "address",
1516
+ },
1517
+ {
1518
+ internalType: "uint256",
1519
+ name: "initialExchangeRateMantissa_",
1520
+ type: "uint256",
1521
+ },
1522
+ {
1523
+ internalType: "string",
1524
+ name: "name_",
1525
+ type: "string",
1526
+ },
1527
+ {
1528
+ internalType: "string",
1529
+ name: "symbol_",
1530
+ type: "string",
1531
+ },
1532
+ {
1533
+ internalType: "uint8",
1534
+ name: "decimals_",
1535
+ type: "uint8",
1536
+ },
1537
+ {
1538
+ internalType: "address payable",
1539
+ name: "admin_",
1540
+ type: "address",
1541
+ },
1542
+ {
1543
+ internalType: "address",
1544
+ name: "aaveV3Pool_",
1545
+ type: "address",
1546
+ },
1547
+ ],
1548
+ name: "initialize",
1549
+ outputs: [],
1550
+ stateMutability: "nonpayable",
1551
+ type: "function",
1552
+ },
1553
+ {
1554
+ inputs: [],
1555
+ name: "interestRateModel",
1556
+ outputs: [
1557
+ {
1558
+ internalType: "address",
1559
+ name: "",
1560
+ type: "address",
1561
+ },
1562
+ ],
1563
+ stateMutability: "view",
1564
+ type: "function",
1565
+ },
1566
+ {
1567
+ inputs: [],
1568
+ name: "isCEther",
1569
+ outputs: [
1570
+ {
1571
+ internalType: "bool",
1572
+ name: "",
1573
+ type: "bool",
1574
+ },
1575
+ ],
1576
+ stateMutability: "pure",
1577
+ type: "function",
1578
+ },
1579
+ {
1580
+ inputs: [],
1581
+ name: "isCEtherDeprecated",
1582
+ outputs: [
1583
+ {
1584
+ internalType: "bool",
1585
+ name: "",
1586
+ type: "bool",
1587
+ },
1588
+ ],
1589
+ stateMutability: "view",
1590
+ type: "function",
1591
+ },
1592
+ {
1593
+ inputs: [],
1594
+ name: "isCToken",
1595
+ outputs: [
1596
+ {
1597
+ internalType: "bool",
1598
+ name: "",
1599
+ type: "bool",
1600
+ },
1601
+ ],
1602
+ stateMutability: "pure",
1603
+ type: "function",
1604
+ },
1605
+ {
1606
+ inputs: [],
1607
+ name: "isCTokenDeprecated",
1608
+ outputs: [
1609
+ {
1610
+ internalType: "bool",
1611
+ name: "",
1612
+ type: "bool",
1613
+ },
1614
+ ],
1615
+ stateMutability: "view",
1616
+ type: "function",
1617
+ },
1618
+ {
1619
+ inputs: [
1620
+ {
1621
+ internalType: "address",
1622
+ name: "borrower",
1623
+ type: "address",
1624
+ },
1625
+ {
1626
+ internalType: "uint256",
1627
+ name: "repayAmount",
1628
+ type: "uint256",
1629
+ },
1630
+ {
1631
+ internalType: "address",
1632
+ name: "cTokenCollateral",
1633
+ type: "address",
1634
+ },
1635
+ ],
1636
+ name: "liquidateBorrow",
1637
+ outputs: [],
1638
+ stateMutability: "nonpayable",
1639
+ type: "function",
1640
+ },
1641
+ {
1642
+ inputs: [
1643
+ {
1644
+ internalType: "address",
1645
+ name: "cTokenCollateral",
1646
+ type: "address",
1647
+ },
1648
+ {
1649
+ internalType: "uint256",
1650
+ name: "actualRepayAmount",
1651
+ type: "uint256",
1652
+ },
1653
+ ],
1654
+ name: "liquidateCalculateSeizeTokens",
1655
+ outputs: [
1656
+ {
1657
+ internalType: "uint256",
1658
+ name: "",
1659
+ type: "uint256",
1660
+ },
1661
+ {
1662
+ internalType: "uint256",
1663
+ name: "",
1664
+ type: "uint256",
1665
+ },
1666
+ ],
1667
+ stateMutability: "view",
1668
+ type: "function",
1669
+ },
1670
+ {
1671
+ inputs: [
1672
+ {
1673
+ internalType: "uint256",
1674
+ name: "mintAmount",
1675
+ type: "uint256",
1676
+ },
1677
+ ],
1678
+ name: "mint",
1679
+ outputs: [],
1680
+ stateMutability: "nonpayable",
1681
+ type: "function",
1682
+ },
1683
+ {
1684
+ inputs: [
1685
+ {
1686
+ internalType: "uint256",
1687
+ name: "mintAmount",
1688
+ type: "uint256",
1689
+ },
1690
+ {
1691
+ internalType: "uint256",
1692
+ name: "deadline",
1693
+ type: "uint256",
1694
+ },
1695
+ {
1696
+ internalType: "bytes",
1697
+ name: "signature",
1698
+ type: "bytes",
1699
+ },
1700
+ ],
1701
+ name: "mintWithPermit",
1702
+ outputs: [],
1703
+ stateMutability: "nonpayable",
1704
+ type: "function",
1705
+ },
1706
+ {
1707
+ inputs: [],
1708
+ name: "name",
1709
+ outputs: [
1710
+ {
1711
+ internalType: "string",
1712
+ name: "",
1713
+ type: "string",
1714
+ },
1715
+ ],
1716
+ stateMutability: "view",
1717
+ type: "function",
1718
+ },
1719
+ {
1720
+ inputs: [],
1721
+ name: "pendingAdmin",
1722
+ outputs: [
1723
+ {
1724
+ internalType: "address payable",
1725
+ name: "",
1726
+ type: "address",
1727
+ },
1728
+ ],
1729
+ stateMutability: "view",
1730
+ type: "function",
1731
+ },
1732
+ {
1733
+ inputs: [],
1734
+ name: "percentScale",
1735
+ outputs: [
1736
+ {
1737
+ internalType: "uint256",
1738
+ name: "",
1739
+ type: "uint256",
1740
+ },
1741
+ ],
1742
+ stateMutability: "view",
1743
+ type: "function",
1744
+ },
1745
+ {
1746
+ inputs: [],
1747
+ name: "protocolSeizeShareMantissa",
1748
+ outputs: [
1749
+ {
1750
+ internalType: "uint256",
1751
+ name: "",
1752
+ type: "uint256",
1753
+ },
1754
+ ],
1755
+ stateMutability: "view",
1756
+ type: "function",
1757
+ },
1758
+ {
1759
+ inputs: [
1760
+ {
1761
+ internalType: "uint256",
1762
+ name: "redeemTokens",
1763
+ type: "uint256",
1764
+ },
1765
+ ],
1766
+ name: "redeem",
1767
+ outputs: [],
1768
+ stateMutability: "nonpayable",
1769
+ type: "function",
1770
+ },
1771
+ {
1772
+ inputs: [
1773
+ {
1774
+ internalType: "uint256",
1775
+ name: "redeemAmount",
1776
+ type: "uint256",
1777
+ },
1778
+ ],
1779
+ name: "redeemUnderlying",
1780
+ outputs: [],
1781
+ stateMutability: "nonpayable",
1782
+ type: "function",
1783
+ },
1784
+ {
1785
+ inputs: [
1786
+ {
1787
+ internalType: "uint256",
1788
+ name: "repayAmount",
1789
+ type: "uint256",
1790
+ },
1791
+ ],
1792
+ name: "repayBorrow",
1793
+ outputs: [],
1794
+ stateMutability: "nonpayable",
1795
+ type: "function",
1796
+ },
1797
+ {
1798
+ inputs: [
1799
+ {
1800
+ internalType: "address",
1801
+ name: "borrower",
1802
+ type: "address",
1803
+ },
1804
+ {
1805
+ internalType: "uint256",
1806
+ name: "repayAmount",
1807
+ type: "uint256",
1808
+ },
1809
+ ],
1810
+ name: "repayBorrowBehalf",
1811
+ outputs: [],
1812
+ stateMutability: "nonpayable",
1813
+ type: "function",
1814
+ },
1815
+ {
1816
+ inputs: [
1817
+ {
1818
+ internalType: "uint256",
1819
+ name: "repayAmount",
1820
+ type: "uint256",
1821
+ },
1822
+ {
1823
+ internalType: "uint256",
1824
+ name: "deadline",
1825
+ type: "uint256",
1826
+ },
1827
+ {
1828
+ internalType: "bytes",
1829
+ name: "signature",
1830
+ type: "bytes",
1831
+ },
1832
+ ],
1833
+ name: "repayBorrowWithPermit",
1834
+ outputs: [],
1835
+ stateMutability: "nonpayable",
1836
+ type: "function",
1837
+ },
1838
+ {
1839
+ inputs: [],
1840
+ name: "reserveFactorMantissa",
1841
+ outputs: [
1842
+ {
1843
+ internalType: "uint256",
1844
+ name: "",
1845
+ type: "uint256",
1846
+ },
1847
+ ],
1848
+ stateMutability: "view",
1849
+ type: "function",
1850
+ },
1851
+ {
1852
+ inputs: [
1853
+ {
1854
+ internalType: "address",
1855
+ name: "addr",
1856
+ type: "address",
1857
+ },
1858
+ ],
1859
+ name: "revokeWhitelist",
1860
+ outputs: [],
1861
+ stateMutability: "nonpayable",
1862
+ type: "function",
1863
+ },
1864
+ {
1865
+ inputs: [
1866
+ {
1867
+ internalType: "address",
1868
+ name: "liquidator",
1869
+ type: "address",
1870
+ },
1871
+ {
1872
+ internalType: "address",
1873
+ name: "borrower",
1874
+ type: "address",
1875
+ },
1876
+ {
1877
+ internalType: "uint256",
1878
+ name: "seizeTokens",
1879
+ type: "uint256",
1880
+ },
1881
+ {
1882
+ internalType: "uint256",
1883
+ name: "seizeProfitTokens",
1884
+ type: "uint256",
1885
+ },
1886
+ {
1887
+ internalType: "bool",
1888
+ name: "isRedemption",
1889
+ type: "bool",
1890
+ },
1891
+ {
1892
+ internalType: "uint256",
1893
+ name: "redemptionRateMantissa",
1894
+ type: "uint256",
1895
+ },
1896
+ ],
1897
+ name: "seize",
1898
+ outputs: [],
1899
+ stateMutability: "nonpayable",
1900
+ type: "function",
1901
+ },
1902
+ {
1903
+ inputs: [],
1904
+ name: "supplyRatePerBlock",
1905
+ outputs: [
1906
+ {
1907
+ internalType: "uint256",
1908
+ name: "",
1909
+ type: "uint256",
1910
+ },
1911
+ ],
1912
+ stateMutability: "view",
1913
+ type: "function",
1914
+ },
1915
+ {
1916
+ inputs: [
1917
+ {
1918
+ internalType: "contract ERC20",
1919
+ name: "token",
1920
+ type: "address",
1921
+ },
1922
+ ],
1923
+ name: "sweepToken",
1924
+ outputs: [],
1925
+ stateMutability: "nonpayable",
1926
+ type: "function",
1927
+ },
1928
+ {
1929
+ inputs: [],
1930
+ name: "symbol",
1931
+ outputs: [
1932
+ {
1933
+ internalType: "string",
1934
+ name: "",
1935
+ type: "string",
1936
+ },
1937
+ ],
1938
+ stateMutability: "view",
1939
+ type: "function",
1940
+ },
1941
+ {
1942
+ inputs: [],
1943
+ name: "tokenType",
1944
+ outputs: [
1945
+ {
1946
+ internalType: "enum CToken.CTokenType",
1947
+ name: "",
1948
+ type: "uint8",
1949
+ },
1950
+ ],
1951
+ stateMutability: "pure",
1952
+ type: "function",
1953
+ },
1954
+ {
1955
+ inputs: [],
1956
+ name: "totalBorrows",
1957
+ outputs: [
1958
+ {
1959
+ internalType: "uint256",
1960
+ name: "",
1961
+ type: "uint256",
1962
+ },
1963
+ ],
1964
+ stateMutability: "view",
1965
+ type: "function",
1966
+ },
1967
+ {
1968
+ inputs: [],
1969
+ name: "totalBorrowsCurrent",
1970
+ outputs: [
1971
+ {
1972
+ internalType: "uint256",
1973
+ name: "",
1974
+ type: "uint256",
1975
+ },
1976
+ ],
1977
+ stateMutability: "nonpayable",
1978
+ type: "function",
1979
+ },
1980
+ {
1981
+ inputs: [],
1982
+ name: "totalReserves",
1983
+ outputs: [
1984
+ {
1985
+ internalType: "uint256",
1986
+ name: "",
1987
+ type: "uint256",
1988
+ },
1989
+ ],
1990
+ stateMutability: "view",
1991
+ type: "function",
1992
+ },
1993
+ {
1994
+ inputs: [],
1995
+ name: "totalSupply",
1996
+ outputs: [
1997
+ {
1998
+ internalType: "uint256",
1999
+ name: "",
2000
+ type: "uint256",
2001
+ },
2002
+ ],
2003
+ stateMutability: "view",
2004
+ type: "function",
2005
+ },
2006
+ {
2007
+ inputs: [
2008
+ {
2009
+ internalType: "address",
2010
+ name: "dst",
2011
+ type: "address",
2012
+ },
2013
+ {
2014
+ internalType: "uint256",
2015
+ name: "amount",
2016
+ type: "uint256",
2017
+ },
2018
+ ],
2019
+ name: "transfer",
2020
+ outputs: [
2021
+ {
2022
+ internalType: "bool",
2023
+ name: "",
2024
+ type: "bool",
2025
+ },
2026
+ ],
2027
+ stateMutability: "nonpayable",
2028
+ type: "function",
2029
+ },
2030
+ {
2031
+ inputs: [
2032
+ {
2033
+ internalType: "address",
2034
+ name: "src",
2035
+ type: "address",
2036
+ },
2037
+ {
2038
+ internalType: "address",
2039
+ name: "dst",
2040
+ type: "address",
2041
+ },
2042
+ {
2043
+ internalType: "uint256",
2044
+ name: "amount",
2045
+ type: "uint256",
2046
+ },
2047
+ ],
2048
+ name: "transferFrom",
2049
+ outputs: [
2050
+ {
2051
+ internalType: "bool",
2052
+ name: "",
2053
+ type: "bool",
2054
+ },
2055
+ ],
2056
+ stateMutability: "nonpayable",
2057
+ type: "function",
2058
+ },
2059
+ {
2060
+ inputs: [],
2061
+ name: "underlying",
2062
+ outputs: [
2063
+ {
2064
+ internalType: "address",
2065
+ name: "",
2066
+ type: "address",
2067
+ },
2068
+ ],
2069
+ stateMutability: "view",
2070
+ type: "function",
2071
+ },
2072
+ {
2073
+ inputs: [],
2074
+ name: "underlyingBalance",
2075
+ outputs: [
2076
+ {
2077
+ internalType: "uint256",
2078
+ name: "",
2079
+ type: "uint256",
2080
+ },
2081
+ ],
2082
+ stateMutability: "view",
2083
+ type: "function",
2084
+ },
2085
+ {
2086
+ inputs: [
2087
+ {
2088
+ internalType: "address",
2089
+ name: "addr",
2090
+ type: "address",
2091
+ },
2092
+ ],
2093
+ name: "whitelist",
2094
+ outputs: [],
2095
+ stateMutability: "nonpayable",
2096
+ type: "function",
2097
+ },
2098
+ {
2099
+ inputs: [
2100
+ {
2101
+ internalType: "address",
2102
+ name: "",
2103
+ type: "address",
2104
+ },
2105
+ ],
2106
+ name: "whitelisted",
2107
+ outputs: [
2108
+ {
2109
+ internalType: "bool",
2110
+ name: "",
2111
+ type: "bool",
2112
+ },
2113
+ ],
2114
+ stateMutability: "view",
2115
+ type: "function",
2116
+ },
2117
+ ];
2118
+ const _bytecode = "0x608060405234602f57670de0b6b3a7640000601155601a6034565b60206034565b6040516152b190816100da8239f35b600080fd5b60475460ff8160081c1660845760ff80821610604d5750565b60ff90811916176047557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a1565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fdfe6080604052600436101561001257600080fd5b6000803560e01c806306fdde031461309b5780630786f22314613076578063095ea7b314612ff95780630e75270214612fdc5780630ed7fbfa14612e5d578063134131a2146129a4578063173b99041461298657806317bfdfbc1461292e57806318160ddd14612910578063182df0f5146128f55780631be19560146126b357806323b872dd146126695780632608f8181461262357806326782247146125fa5780632826c1a11461255e5780632d7183f6146122c557806330fa738c146122a9578063313ce567146122885780633af9e669146122215780633b1d21a214611f5d5780633e941010146121635780634000fbad146120f757806341e34006146120c357806342f3251a146120a55780634576b5db14611f9957806347bd371814611f7b57806359356c5c14611f5d5780635fe3b56714611f34578063601a0bf114611e255780636752e70214611e025780636f307dc314611dd757806370a0823114611d9e57806373acee9814611d41578063852a12e314611ac35780638f840ddd14611aa557806395d89b41146119d457806395dd9193146119b05780639b19251a1461195f5780639b1a5bf41461193d5780639c7f3315146118ef5780639e2116411461186d578063a0712d6814611831578063a6afed9514611815578063a9059cbb146117b9578063aa5af0fd1461179b578063ac784ddc1461177f578063ae9d70b01461171d578063b586638214611682578063b71d1a0c146115e3578063bd6d894d146115c0578063c37f68e214611550578063c5ebeaec146111e9578063cfa99201146111cb578063d4af8de214611062578063d936547e14611023578063db006a7514610fc6578063dd62ed3e14610f71578063e31bc45414610d13578063e9c714f214610c24578063eac1fed014610c03578063f2b3abbd14610ab8578063f3fdb15a14610a8f578063f5e3c462146104e4578063f851a440146104b7578063f8f9da2814610401578063fca7820b1461031c5763fe9c44ae146102fe57600080fd5b34610319578060031936011261031957602060405160018152f35b80fd5b503461031957602036600319011261031957600435815460ff8160101c16156103f25762ff00001916825560035460081c6001600160a01b031633036103e357610364613a2e565b60145442036103d457670de0b6b3a764000081116103c55760407faaa68312e2ea9d50e16af5068410ab56e1a1fd06037b1a35664812c30f82146091600854908060085582519182526020820152a1805462ff000019166201000017815580f35b631b9bc96960e11b8252600482fd5b637b452e8160e11b8252600482fd5b634755657960e01b8252600482fd5b63b5dfd9e560e01b8352600483fd5b5034610319578060031936011261031957600654601254600b54600c546040516315f2405360e01b8152600481019390935260248301919091526044820152919060209083906001600160a01b03168180606481015b03915afa9081156104ab5790610473575b602090604051908152f35b506020813d6020116104a3575b8161048d6020938361319c565b8101031261049e5760209051610468565b600080fd5b3d9150610480565b604051903d90823e3d90fd5b503461031957806003193601126103195760035460405160089190911c6001600160a01b03168152602090f35b5034610319576060366003190112610319576104fe6131ff565b906024359161050b61322b565b90825460ff8160101c1615610a805762ff00001916835561052a613a2e565b6001600160a01b03821693843b15610a675760405163a6afed9560e01b81528481600481838a5af18015610a3857908591610a6b575b50506005546001600160a01b0316803b156108f957846040518092632fe3f38f60e11b825281806105988789338c3060048701613e42565b03915afa8015610a3857908591610a52575b50506014544203610a435760405163cfa9920160e01b8152602081600481888a5af1908115610a38578591610a06575b5042036109f7576001600160a01b038216903382146109e85780156109d95760001981146109ca5761061061061791843361434c565b8094613593565b90926040516370a0823160e01b81528360048201526020816024818b5afa9081156109bf57908591889161098a575b501061097b5730870361090c576005546001600160a01b031690813b15610908578461068e9288928360405180968195829463d02f735160e01b845233303060048701613e42565b03925af180156108fd579086916108e4575b50506106cd670de0b6b3a7640000916040516106bb8161316a565b670429d069189e0000815251906134b7565b04948583106108d557857fa91e67c5ea634cd43a12c5a482724b03de01e85ca68702a53d0c2f45cb7c1dc5610703879886613a21565b91670de0b6b3a764000061072d82610719613c77565b604051906107268261316a565b8152613f38565b510461073b81600c54613586565b9182600c5561074c81600d54613a21565b600d55868a52600e6020526107658860408c2054613a21565b878b52600e60205260408b2055338a52600e6020526107888560408c2054613586565b338b52600e60205260408b20556040518581528760008051602061523c83398151915260203393a36040519081528660008051602061523c83398151915260203093a3604080513081526020810192909252810191909152606090a185156108c6576107f4903361468c565b7f298637f684da70674f26509b10f07ec2fbc77a335ab1e7d6215a4b2484d8bb5260a0604051338152846020820152866040820152836060820152856080820152a16005546001600160a01b031690813b156108c2578560c492819560405197889687956347ef3b3b60e01b875230600488015260248701523360448701526064860152608485015260a48401525af180156108b7576108a2575b50805462ff000019166201000017815580f35b816108ac9161319c565b61031957803861088f565b6040513d84823e3d90fd5b8580fd5b6108d09033614916565b6107f4565b632c3508cb60e21b8552600485fd5b816108ee9161319c565b6108f95784386106a0565b8480fd5b6040513d88823e3d90fd5b8680fd5b50948495813b156108c257604051906316b8c1fb60e11b825233600483015283602483015284604483015260648201528560848201528560a4820152858160c48183865af19081156108fd578691610966575b50506107f4565b816109709161319c565b6108f957843861095f565b630e7a24eb60e11b8652600486fd5b9150506020813d6020116109b7575b816109a66020938361319c565b8101031261049e5784905138610646565b3d9150610999565b6040513d89823e3d90fd5b63f72ef4e160e01b8552600485fd5b63b2f72f4760e01b8552600485fd5b63039f861b60e51b8552600485fd5b633e88627b60e11b8452600484fd5b90506020813d602011610a30575b81610a216020938361319c565b8101031261049e5751386105da565b3d9150610a14565b6040513d87823e3d90fd5b63fbf3ea7960e01b8452600484fd5b81610a5c9161319c565b610a675783386105aa565b8380fd5b81610a759161319c565b610a67578338610560565b63b5dfd9e560e01b8452600484fd5b50346103195780600319360112610319576006546040516001600160a01b039091168152602090f35b503461031957602036600319011261031957610ad26131ff565b60035490919060081c6001600160a01b03163303610bf457610af2613a2e565b6014544203610be5576006546040516310c8fc9560e11b81529092906001600160a01b03841690602081600481855afa908115610bda578491610ba0575b5015610b91576001600160a01b03199093166001600160a01b0391821690811760065560408051949092168452602084015290917fedffc32e068c7c95dfd4bdfd5c4d939a084d6b11c4199eac8436ed234d72f92691819081015b0390a180f35b63ee39b72560e01b8352600483fd5b90506020813d602011610bd2575b81610bbb6020938361319c565b81010312610a6757610bcc90613500565b38610b30565b3d9150610bae565b6040513d86823e3d90fd5b637b964b3b60e01b8152600490fd5b634755657960e01b8152600490fd5b50346103195780600319360112610319576020604051655af3107a40008152f35b50346103195780600319360112610319576004546001600160a01b03811690338214801590610d0b575b610cfc5760038054610100600160a81b03600884811b91909116610100600160a81b0319831617928390556001600160a01b0319909316600455604080516001600160a01b0392851c831681529290931c1660208201527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a992907ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc908390a18151908152836020820152a180f35b63d1ec4b2360e01b8352600483fd5b503315610c4e565b50346103195761012036600319011261031957610d2e6131ff565b610d36613215565b610d3e61322b565b60843567ffffffffffffffff81116108f957610d5e9036906004016132f1565b9160a43567ffffffffffffffff81116108c257610d7f9036906004016132f1565b610d8761330c565b610d8f6132db565b61010435959092906001600160a01b0387168703610f6d57610deb946047549660ff8860081c161597888099610f60575b8015610f49575b610dd090613be8565b60ff19811660011760475588610f37575b5060643591613f52565b6001600160a01b038316928315610f285784546301000000600160b81b03191660189190911b6301000000600160b81b03161784556047805462010000600160b01b03198116601094851b62010000600160b01b0316908117928390556040516335ea6a7560e01b8152600481019690965294909390916101e09183916024918391901c6001600160a01b03165afa908115610a38578591610ef9575b5061010060018060a01b03910151166bffffffffffffffffffffffff60a01b6048541617604855610eb7578280f35b610100600160b01b03191617604755604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a138808280f35b610f1b91506101e03d8111610f21575b610f13818361319c565b810190613353565b38610e88565b503d610f09565b63e6c4247b60e01b8552600485fd5b61ffff19166101011760475538610de1565b50303b158015610dc7575060ff8116600114610dc7565b50600160ff821610610dc0565b8880fd5b5034610319576040366003190112610319576040610f8d6131ff565b91610f96613215565b9260018060a01b03168152600f602052209060018060a01b03166000526020526020604060002054604051908152f35b503461031957602036600319011261031957805460ff8160101c16156110145762ff000019168155610ff6613a2e565b6110026004353361468c565b805462ff000019166201000017815580f35b63b5dfd9e560e01b8252600482fd5b50346103195760203660031901126103195760209060ff906040906001600160a01b0361104e6131ff565b168152601584522054166040519015158152f35b5034610319576101003660031901126103195761107d6131ff565b611085613215565b9061108e61322b565b9160843567ffffffffffffffff81116108f9576110af9036906004016132f1565b9060a4359167ffffffffffffffff83116108c2576110d46111259336906004016132f1565b6110dc61330c565b916110e56132db565b936047549760ff8960081c16159889809a6111be575b80156111a7575b61110b90613be8565b60ff19811660011760475589610f37575060643591613f52565b6001600160a01b038116156111985782546301000000600160b81b03191660189190911b6301000000600160b81b031617825561115f5780f35b61ff0019604754166047557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b63e6c4247b60e01b8352600483fd5b50303b158015611102575060ff8116600114611102565b50600160ff8216106110fb565b50346103195780600319360112610319576020601454604051908152f35b503461031957602036600319011261031957600435815460ff8160101c16156103f25762ff00001916825561121c613a2e565b60055482906001600160a01b0316803b1561154c5781809160646040518094819363368f515360e21b83523060048401523360248401528860448401525af180156108b757611537575b50506014544203611528578060125410611519578061128e839261128933613ef6565b613586565b61129a82600b54613586565b3384526010602052816040852055600a543385526010602052600160408620015580600b556004602060018060a01b0360055416604051928380926334cc866d60e21b82525afa908115610a385785916114df575b50848060405160208101906379befbd160e01b82528760248201526024815261131960448261319c565b519082855af13d156114da573d61132f81613241565b9061133d604051928361319c565b81528660203d92013e5b80156114c4575b156113f557507f13ed6866d4e1ee6da46f845c46d7e54120883d75c5ea9a2dacc1c4ca8984ab80916080916113838533614b8a565b6040519133835285602084015260408301526060820152a16005546001600160a01b031690813b156113f1578291604483926040519485938492631407e28160e01b845233600485015260248401525af180156108b7576108a25750805462ff000019166201000017815580f35b5050fd5b9093506001600160a01b03169061140c8383614b8a565b604051633033674760e11b815291856114b0578260648160006020948160048401528860248401523360448401525af19081156114a45785947f13ed6866d4e1ee6da46f845c46d7e54120883d75c5ea9a2dacc1c4ca8984ab8093608093611475575b50611383565b6114969060203d60201161149d575b61148e818361319c565b81019061350d565b503861146f565b503d611484565b6040513d6000823e3d90fd5b634e487b7160e01b86526021600452602486fd5b50338552601560205260ff60408620541661134e565b611347565b90506020813d602011611511575b816114fa6020938361319c565b810103126108f95761150b9061333f565b386112ef565b3d91506114ed565b6348c2588160e01b8252600482fd5b630a42bc3960e41b8252600482fd5b816115419161319c565b61154c578138611266565b5080fd5b503461031957602036600319011261031957611589604061156f6131ff565b6001600160a01b0381168452600e60205292205491613ef6565b906115bc611595613c77565b60115490604051948594859094939260609260808301968352602083015260408201520152565b0390f35b503461031957806003193601126103195760206115db613b9b565b604051908152f35b5034610319576020366003190112610319576115fd6131ff565b60035490919060081c6001600160a01b03163303610bf4576004546001600160a01b03831692908315611198576001600160a01b03198116909317600455604080516001600160a01b03948516815293909116602084015290917fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99181908101610b8b565b503461031957806003193601126103195760035460081c6001600160a01b03163303610bf45780546040516370a0823160e01b8152306004820152906020908290602490829060181c6001600160a01b03165afa9081156108b75782916116eb575b5060125580f35b90506020813d602011611715575b816117066020938361319c565b8101031261049e5751386116e4565b3d91506116f9565b5034610319578060031936011261031957600654601254600b54600c54600854604051635c0b440b60e11b81526004810194909452602484019290925260448301526064820152919060209083906001600160a01b0316818060848101610457565b5034610319578060031936011261031957602090604051908152f35b50346103195780600319360112610319576020600a54604051908152f35b5034610319576040366003190112610319576117d36131ff565b90805460ff8160101c16156110145762ff0000191681556020916117fc90602435903380613ccc565b815462ff00001916620100001790915560405190158152f35b503461031957806003193601126103195761182e613a2e565b80f35b503461031957602036600319011261031957805460ff8160101c16156110145762ff000019168155611861613a2e565b611002600435336144ff565b5034610319578061187d36613294565b835492939260181c6001600160a01b03169190823b15610a67576118bd92849283604051809681958294639fd5a6cf60e01b84528b30336004870161351c565b03925af180156108b7576118da575b506118d682613c4b565b5080f35b816118e49161319c565b61154c5781386118cc565b5034610319576020366003190112610319576119096131ff565b60035460081c6001600160a01b031633036103e3576001600160a01b03168152601560205260408120805460ff1916905580f35b503461031957806003193601126103195760ff60209154166040519015158152f35b5034610319576020366003190112610319576119796131ff565b60035460081c6001600160a01b031633036103e3576001600160a01b03168152601560205260408120805460ff1916600117905580f35b50346103195760203660031901126103195760206115db6119cf6131ff565b613ef6565b50346103195780600319360112610319576040519080600254906119f782613130565b8085529160018116908115611a7e5750600114611a33575b6115bc84611a1f8186038261319c565b6040519182916020835260208301906131be565b6002815260008051602061521c833981519152939250905b808210611a6457509091508101602001611a1f82611a0f565b919260018160209254838588010152019101909291611a4b565b60ff191660208087019190915292151560051b85019092019250611a1f9150839050611a0f565b50346103195780600319360112610319576020600c54604051908152f35b50346103195760203660031901126103195760043590805460ff8160101c16156110145762ff000019168155611af7613a2e565b80611d3257611b04613c77565b60405190611b118261316a565b8152611b1d81846151ef565b9033600052600e6020528160406000205403611cfd575b6005549051906001600160a01b0316803b1561049e576040516317c4196b60e11b8152916000918391829084908290611b739089333060048601614662565b03925af180156114a457611ce6575b506014544203611cd7578260125410611cc857611ba181600d54613a21565b600d55338252600e602052611bba816040842054613a21565b338352600e6020526040832055338252600e6020526040822054151580611cb0575b611ca15782611bec839433615072565b604051828152309060008051602061523c83398151915260203392a360408051338152602081018390529081018390527fe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a92990606090a16005546001600160a01b031691823b15611c9c57611c7b928492836040518096819582946351dff98960e01b8452333060048601614662565b03925af180156108b7576108a25750805462ff000019166201000017815580f35b505050fd5b6330a46c4960e21b8252600482fd5b50338252600e6020526103e860408320541115611bdc565b6391240a1b60e01b8252600482fd5b63a17754ef60e01b8252600482fd5b611cf491925060009061319c565b60009038611b82565b6103e8821115611d21576103e88411611b3457632005234160e01b60005260046000fd5b63d1b61f5160e01b60005260046000fd5b63431f269d60e01b8152600490fd5b503461031957806003193601126103195780549060ff8260101c1615611d8f5760209162ff000019168155611d74613a2e565b600b54815462ff000019166201000017909155604051908152f35b63b5dfd9e560e01b8152600490fd5b5034610319576020366003190112610319576020906040906001600160a01b03611dc66131ff565b168152600e83522054604051908152f35b50346103195780600319360112610319575460405160189190911c6001600160a01b03168152602090f35b50346103195780600319360112610319576020604051670429d069189e00008152f35b50346103195760203660031901126103195760043590611e43613a2e565b60035460081c6001600160a01b031691338390036103e357815460ff8160101c16156103f25762ff0000191682556014544203611f25578060125410611f1657600c5492838211611f0757611ec882611ebe817f3bad0c59cf2f06e7314077049f48a93578cd16f5ef92329f1dab1420a99c177e9697613a21565b9283600c55614b8a565b6003546040805160089290921c6001600160a01b0316825260208201939093529182015280606081015b0390a1805462ff000019166201000017815580f35b63152125f760e21b8352600483fd5b633345e99960e01b8252600482fd5b631747e30360e21b8252600482fd5b50346103195780600319360112610319576005546040516001600160a01b039091168152602090f35b50346103195780600319360112610319576020601254604051908152f35b50346103195780600319360112610319576020600b54604051908152f35b503461031957602036600319011261031957611fb36131ff565b60035490919060081c6001600160a01b03163303610bf457600554604051623f1ee960e11b81526001600160a01b038416939190602081600481885afa908115610bda57849161206b575b501561205c576001600160a01b03198116909317600555604080516001600160a01b03948516815293909116602084015290917f7ac369dbd14fa5ea3f473ed67cc9d598964a77501540ba6751eb0b3decf5870d9181908101610b8b565b6383aebebd60e01b8352600483fd5b90506020813d60201161209d575b816120866020938361319c565b81010312610a675761209790613500565b38611ffe565b3d9150612079565b50346103195780600319360112610319576020601154604051908152f35b50346103195760403660031901126103195760406120eb6120e26131ff565b60243590613593565b82519182526020820152f35b503461031957602036600319011261031957600354600435919060081c6001600160a01b03163303610bf4576020827f68e61dbc80efc8af787740901509a321d0fc29f4e432fae6c4e175867b96144360406011548360115581519081528385820152a1604051908152f35b503461031957602036600319011261031957805460ff8160101c16156110145762ff000019168155612193613a2e565b6014544203612212576121a860043533614d0d565b600c54906121b68183613586565b91821061220357600c8290556040805133815260208101929092528101919091527fa91e67c5ea634cd43a12c5a482724b03de01e85ca68702a53d0c2f45cb7c1dc5908060608101611ef2565b6335c973c760e21b8352600483fd5b639d4e8c1b60e01b8152600490fd5b503461031957602036600319011261031957670de0b6b3a764000060209161227c61224a6131ff565b612252613b9b565b90604051916122608361316a565b82526001600160a01b03168352600e8552604083205490613f38565b90505104604051908152f35b5034610319578060031936011261031957602060ff60035416604051908152f35b5034610319578060031936011261031957602060405160058152f35b50346103195760c0366003190112610319576122df6131ff565b6122e7613215565b9060843560443581151582036108f95760a43592855460ff8160101c161561254f5762ff0000191686558315612547575b670de0b6b3a76400008411612537575b60055486906001600160a01b0316803b1561154c5760405163d02f735160e01b815290829082908183816123638a8e8b333060048701613e42565b03925af180156108b757612522575b50506001600160a01b039081169416928385146125135782156124df576123b2670de0b6b3a764000091604051906123a98261316a565b815251836134b7565b04925b8382106124d057907fa91e67c5ea634cd43a12c5a482724b03de01e85ca68702a53d0c2f45cb7c1dc5916123e98583613a21565b94670de0b6b3a76400006123ff82610719613c77565b51049161243761241184600c54613586565b9485600c5561242284600d54613a21565b600d55828b52600e60205260408b2054613a21565b818a52600e60205260408a2055878952600e60205261245a8760408b2054613586565b888a52600e60205260408a2055878160008051602061523c83398151915260206040518b8152a360405191825260008051602061523c83398151915260203093a3604080513081526020810192909252810191909152606090a1156124c2576110029161468c565b6124cb91614916565b611002565b632c3508cb60e21b8652600486fd5b50670de0b6b3a764000061250c6040516124f88161316a565b670429d069189e00008152516064356134b7565b04926123b5565b637a2d3db360e01b8652600486fd5b8161252c9161319c565b6108c2578538612372565b670de0b6b3a76400009350612328565b859350612318565b63b5dfd9e560e01b8752600487fd5b5034610319578061256e36613294565b835492939260181c6001600160a01b03169190823b15610a67576125ae92849283604051809681958294639fd5a6cf60e01b84528b30336004870161351c565b03925af180156108b7576125e5575b505460ff8160101c16156103f25762ff000019168255611002906125df613a2e565b336144ff565b816125ef9161319c565b61154c5781386125bd565b50346103195780600319360112610319576004546040516001600160a01b039091168152602090f35b50346103195760403660031901126103195761263d6131ff565b815460ff8160101c16156103f25762ff00001916825561088f9061265f613a2e565b602435903361434c565b5034610319576060366003190112610319576126836131ff565b9061268c613215565b815460ff8160101c16156103f25762ff0000191682556020926117fc916044359133613ccc565b5034610319576020366003190112610319576004356001600160a01b038116908181036128f15760035460081c6001600160a01b031690338290036128e257835460181c6001600160a01b031683146128d3576040516370a0823160e01b8152306004820152918490602084602481885afa9384156108b757829461289c575b506040516370a0823160e01b8152306004820152602081602481895afa908115612815578391612864575b5060405163a9059cbb60e01b8152600481019290925260248201526020919060449082855af19081601f3d116001875114161516612857575b5015612820576020602492604051938480926370a0823160e01b82523060048301525afa9182156128155783926127e1575b50036127d25780f35b6346edcd5360e11b8152600490fd5b9091506020813d60201161280d575b816127fd6020938361319c565b8101031261049e575190386127c9565b3d91506127f0565b6040513d85823e3d90fd5b60405162461bcd60e51b815260206004820152600f60248201526e1514905394d1915497d19052531151608a1b6044820152606490fd5b3b153d1715905038612797565b9250506020823d602011612894575b816128806020938361319c565b8101031261049e579051859190602061275e565b3d9150612873565b915092506020813d6020116128cb575b816128b96020938361319c565b8101031261049e578490519238612733565b3d91506128ac565b632f028cfb60e01b8452600484fd5b634755657960e01b8452600484fd5b8280fd5b503461031957806003193601126103195760206115db613c77565b50346103195780600319360112610319576020600d54604051908152f35b5034610319576020366003190112610319576129486131ff565b90805460ff8160101c16156110145762ff00001916815560209161296e906119cf613a2e565b815462ff000019166201000017909155604051908152f35b50346103195780600319360112610319576020600854604051908152f35b5034610319576040366003190112610319576129be6131ff565b60243590825460ff8160101c1615610a805762ff000019168355604051637f4e225760e11b8152602081600481335afa908115610bda578491612e23575b50612e1457600554604051637bca031760e11b81523360048201526001600160a01b0390911690602081602481855afa908115610a38578591612dda575b5015612dcb57602060249160405192838092637bca031760e11b82523060048301525afa908115610bda578491612d91575b5015612d82576001600160a01b031690612a84613a2e565b60055483906001600160a01b0316803b1561154c57819060646040518094819363368f515360e21b83523060048401528860248401528760448401525af18015610bda57612d6e575b506014544203612d5f578060125410612d50577f13ed6866d4e1ee6da46f845c46d7e54120883d75c5ea9a2dacc1c4ca8984ab806080612b108361128986613ef6565b612b1c84600b54613586565b8587526010602052816040882055600a548688526010602052600160408920015580600b55612b4d85601254613a21565b6012556040519186835285602084015260408301526060820152a160055483906001600160a01b0316803b1561154c57818091604460405180948193631407e28160e01b83528960048401528860248401525af180156108b757612d3b575b5050612bb6613c77565b8360405191612bc48361316a565b8083526005546001600160a01b031690813b156128f1578291608483926040519485938492635bca9add60e01b84523060048501528b60248501528a604485015260648401525af180156108b757612d26575b50504260145403612d1757612c2e82601254613586565b6012556103e8821115612d0857612c4590826151ef565b908115612cf957817f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f91612c7b82600d54613586565b600d55848652600e602052612c94826040882054613586565b858752600e6020526040872055612cca6040519283928784604091949392606082019560018060a01b0316825260208201520152565b0390a160405190815260008051602061523c83398151915260203092a3805462ff000019166201000017815580f35b634f87e6f560e01b8452600484fd5b6310deaa5960e01b8452600484fd5b633393b25760e01b8452600484fd5b81612d309161319c565b610a67578338612c17565b81612d459161319c565b6128f1578238612bac565b6348c2588160e01b8352600483fd5b630a42bc3960e41b8352600483fd5b83612d7b9194929461319c565b9138612acd565b6334b04fe360e11b8352600483fd5b90506020813d602011612dc3575b81612dac6020938361319c565b81010312610a6757612dbd90613500565b38612a6c565b3d9150612d9f565b6334b04fe360e11b8452600484fd5b90506020813d602011612e0c575b81612df56020938361319c565b810103126108f957612e0690613500565b38612a3a565b3d9150612de8565b634a8af12d60e01b8352600483fd5b90506020813d602011612e55575b81612e3e6020938361319c565b81010312610a6757612e4f90613500565b386129fc565b3d9150612e31565b503461031957806003193601126103195760475481546040516335ea6a7560e01b81526001600160a01b0360189290921c8216600482015292916101e0918491602491839160101c165afa918215612fcf578192612fae575b506001600160801b03604083015116670de0b6b3a7640000810290808204670de0b6b3a76400001490151715612f9a576001600160801b0360808401511692670de0b6b3a7640000840293808504670de0b6b3a76400001490151715612f865760a06001600160801b039101511691670de0b6b3a7640000830292808404670de0b6b3a76400001490151715612f725750604080516b033b2e3c9fd0803ce8000000928390048152938290046020850152910490820152606090f35b634e487b7160e01b81526011600452602490fd5b634e487b7160e01b83526011600452602483fd5b634e487b7160e01b82526011600452602482fd5b612fc89192506101e03d8111610f2157610f13818361319c565b9038612eb6565b50604051903d90823e3d90fd5b5034610319576020366003190112610319576118d6600435613c4b565b5034610319576040366003190112610319576040906130166131ff565b33808352600f60209081528484206001600160a01b03909316808552928152939092206024359081905560405190815290927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b503461031957806003193601126103195760ff6020915460081c166040519015158152f35b50346103195780600319360112610319576040519080600154906130be82613130565b8085529160018116908115611a7e57506001146130e5576115bc84611a1f8186038261319c565b6001815260008051602061525c833981519152939250905b80821061311657509091508101602001611a1f82611a0f565b9192600181602092548385880101520191019092916130fd565b90600182811c92168015613160575b602083101461314a57565b634e487b7160e01b600052602260045260246000fd5b91607f169161313f565b6020810190811067ffffffffffffffff82111761318657604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761318657604052565b919082519283825260005b8481106131ea575050826000602080949584010152601f8019910116010190565b806020809284010151828286010152016131c9565b600435906001600160a01b038216820361049e57565b602435906001600160a01b038216820361049e57565b604435906001600160a01b038216820361049e57565b67ffffffffffffffff811161318657601f01601f191660200190565b92919261326982613241565b91613277604051938461319c565b82948184528183011161049e578281602093846000960137010152565b606060031982011261049e5760043591602435916044359067ffffffffffffffff821161049e578060238301121561049e578160246132d89360040135910161325d565b90565b60e435906001600160a01b038216820361049e57565b9080601f8301121561049e578160206132d89335910161325d565b60c4359060ff8216820361049e57565b51906001600160801b038216820361049e57565b519061ffff8216820361049e57565b51906001600160a01b038216820361049e57565b809103906101e0821261049e576000604051926101e0840184811067ffffffffffffffff8211176134a357604052602013610319576040516133948161316a565b8251815283526133a66020830161331c565b60208401526133b76040830161331c565b60408401526133c86060830161331c565b60608401526133d96080830161331c565b60808401526133ea60a0830161331c565b60a084015260c08201519064ffffffffff82168203610319575061349a916101c09160c085015261341d60e08201613330565b60e085015261342f610100820161333f565b610100850152613442610120820161333f565b610120850152613455610140820161333f565b610140850152613468610160820161333f565b61016085015261347b610180820161331c565b61018085015261348e6101a0820161331c565b6101a08501520161331c565b6101c082015290565b634e487b7160e01b83526041600452602483fd5b818102929181159184041417156134ca57565b634e487b7160e01b600052601160045260246000fd5b81156134ea570490565b634e487b7160e01b600052601260045260246000fd5b5190811515820361049e57565b9081602091031261049e575190565b6001600160a01b039182168152911660208201526040810191909152606081019190915260a0608082018190526132d8929101906131be565b9081606091031261049e5761356981613500565b91602082015160ff8116810361049e5760406132d8919301613500565b919082018092116134ca57565b600554604051638e8f294b60e01b81523060048201526001600160a01b0390911693929091606083602481885afa9283156114a4576000906000946139fc575b50156139eb57604051638e8f294b60e01b81526001600160a01b039091166004820181905292606082602481895afa9182156114a4576000906000936139b6575b50156139a55760405163231d97a560e21b81526060816004818a5afa9081156114a457600091613915575b509061ffff825116655af3107a4000810290808204655af3107a400014901517156134ca5760ff8091941691161461384b575b506040516312bdd04160e31b815230600482015292602084602481895afa9384156114a457600094613814575b506020602496604051978880926312bdd04160e31b82528560048301525afa9586156114a4576000966137d9575b50906020600493926040519485809263182df0f560e01b82525afa9283156114a4576000936137a5575b50670de0b6b3a764000081018082116134ca5782613792670de0b6b3a7640000969361378c6137856137a0986137778b98613753613798996040519061373c8261316a565b81526040519061374b8261316a565b838252613e74565b95604051906137618261316a565b8152604051916137708361316a565b8252613e74565b9c604051906137618261316a565b8092613ead565b99613ead565b97613f38565b510494613f38565b510490565b9092506020813d6020116137d1575b816137c16020938361319c565b8101031261049e575191386136f7565b3d91506137b4565b92919095506020833d60201161380c575b816137f76020938361319c565b8101031261049e5791519490919060206136cd565b3d91506137ea565b95936020873d602011613843575b8161382f6020938361319c565b81010312610319575094519294602061369f565b3d9150613822565b604051637f4e225760e11b81529150602082600481305afa80156114a4576000906138da575b61ffff92506138a3576040015116655af3107a4000810290808204655af3107a400014901517156134ca575b38613672565b6020015116655af3107a4000810290808204655af3107a40001490151761389d57634e487b7160e01b600052601160045260246000fd5b506020823d60201161390d575b816138f46020938361319c565b8101031261049e5761390861ffff92613500565b613871565b3d91506138e7565b6060813d60601161399d575b8161392e6060938361319c565b8101031261154c5760405191606083019083821067ffffffffffffffff831117613989575061397e91604091825261396581613330565b845261397360208201613330565b602085015201613330565b60408201523861363f565b634e487b7160e01b81526041600452602490fd5b3d9150613921565b6331c5793560e01b60005260046000fd5b90506139db91925060603d6060116139e4575b6139d3818361319c565b810190613555565b50919038613614565b503d6139c9565b630172c17b60e01b60005260046000fd5b9050613a1891935060603d6060116139e4576139d3818361319c565b509290386135d3565b919082039182116134ca57565b601454428114613b9857601254600b54600c54600a546006546040516315f2405360e01b8152600481018690526024810185905260448101849052919593949390602090839060649082906001600160a01b03165afa9182156114a457600092613b5c575b5094613b24613ad9613b579493613acb7f4dec04e750ca11537cabcd8a9eab06494de08da3735bc8871cd41250e190bc049942613a21565b90604051906107268261316a565b91670de0b6b3a7640000613b1782613b1e613b0184613af88d8a613f38565b51049b8c613586565b9784613b178d600854604051906107268261316a565b5104613586565b95613f38565b904260145581600a5582600b55600c55604051948594859094939260609260808301968352602083015260408201520152565b0390a1565b929150946020833d602011613b90575b81613b796020938361319c565b8101031261049e5791519194909190613b24613a93565b3d9150613b6c565b50565b60005460ff8160101c1615613bd75762ff00001916600055613bbb613a2e565b613bc3613c77565b906201000062ff0000196000541617600055565b63b5dfd9e560e01b60005260046000fd5b15613bef57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6000549060ff8260101c1615613bd757613bc39162ff00001916600055613c70613a2e565b333361434c565b600d5480613c86575060075490565b613ca1613c98601254600b5490613586565b600c5490613a21565b90670de0b6b3a7640000820291808304670de0b6b3a764000014901517156134ca576132d8916134e0565b6005546000949293919291906001600160a01b0316803b156108c2576040516317b9b84b60e31b81523060048201526001600160a01b03868116602483015283166044820152606481018490529086908290608490829084905af180156108fd57613e2e575b506001600160a01b03908116931691828414613e1f5760008051602061523c833981519152916020916001600160a01b0381168503613df957600019905b613d7a8383613a21565b91868952600e8552613d908460408b2054613a21565b888a52600e8652613da58560408c2054613586565b90888b52600e875260408b2055888a52600e865260408a205560001903613dd3575b5050604051908152a390565b858852600f8452604088209060018060a01b031660005283526040600020553880613dc7565b848752600f835260408088206001600160a01b0383166000908152908552205490613d70565b638cd22d1960e01b8552600485fd5b85613e3b9196929661319c565b9338613d32565b6001600160a01b0391821681529181166020830152918216604082015291166060820152608081019190915260a00190565b670de0b6b3a764000091613e9a916000604051613e908161316a565b52519051906134b7565b0460405190613ea88261316a565b815290565b6000604051613ebb8161316a565b5251670de0b6b3a7640000810290808204670de0b6b3a764000014901517156134ca57613ee99151906134e0565b60405190613ea88261316a565b6001600160a01b031660009081526010602052604090208054908115613f31576001613f286132d893600a54906134b7565b910154906134e0565b5050600090565b90613ee9916000604051613f4b8161316a565b52516134b7565b60038054610100600160a81b03191660089890981b610100600160a81b031697909717909655601454929695909290919015801590614341575b61433057806007551561431f57670de0b6b3a764000060115567016345785d8a0000600855600580546001600160a01b0319166001600160a01b03929092169182179055604080516000815260208101929092527fedffc32e068c7c95dfd4bdfd5c4d939a084d6b11c4199eac8436ed234d72f926926140739290917f7ac369dbd14fa5ea3f473ed67cc9d598964a77501540ba6751eb0b3decf5870d91a142601455670de0b6b3a7640000600a55600680546001600160a01b0319166001600160a01b039290921691821790556040805160008152602081019290925290918291820190565b0390a1835167ffffffffffffffff811161318657614092600154613130565b601f81116142b2575b50602094601f821160011461424057948192939495600092614235575b50508160011b916000199060031b1c1916176001555b80519067ffffffffffffffff8211613186576140eb600254613130565b601f81116141c8575b50602090601f83116001146141515760ff93929160009183614146575b50508160011b916000199060031b1c1916176002555b1660ff1960035416176003556201000062ff0000196000541617600055565b015190503880614111565b90601f19831691600260005260008051602061521c8339815191529260005b8181106141b0575091600193918560ff97969410614197575b505050811b01600255614127565b015160001960f88460031b161c19169055388080614189565b92936020600181928786015181550195019301614170565b6002600052601f830160051c60008051602061521c83398151915201906020841061421f575b601f0160051c60008051602061521c83398151915201905b81811061421357506140f4565b60008155600101614206565b60008051602061521c83398151915291506141ee565b0151905038806140b8565b601f19821695600160005260008051602061525c8339815191529160005b88811061429a57508360019596979810614281575b505050811b016001556140ce565b015160001960f88460031b161c19169055388080614273565b9192602060018192868501518155019401920161425e565b6001600052601f820160051c60008051602061525c833981519152019060208310614309575b601f0160051c60008051602061525c83398151915201905b8181106142fd575061409b565b600081556001016142f0565b60008051602061525c83398151915291506142d8565b63a2ec3a5560e01b60005260046000fd5b634743547560e01b60005260046000fd5b50600a541515613f8c565b60055460009291906001600160a01b0316803b15610a6757604051631200453160e11b81523060048201526001600160a01b03838116602483015284166044820152606481018690529084908290608490829084905af18015610bda576144eb575b5060145442036144dc576143c182613ef6565b93848110156144cf576143d86143df915b83614d0d565b8095613a21565b7f1a2a22cb034d26d1854bdc6666a5b91fe25efbbb5dcad3b0355478d6f5c362a160a061440e87600b54613a21565b94600180831b0316938487526010602052836040882055600a5495858852601060205286600160408a20015580600b5560405191600180851b03169485835286602084015289604084015260608301526080820152a16005546001600160a01b0316803b156108f9578492918360a4926040519687958694631ededc9160e01b86523060048701526024860152604485015289606485015260848401525af180156108b7576144bc57505090565b6144c782809261319c565b610319575090565b506143df6143d8856143d2565b63c714a2d560e01b8352600483fd5b836144f89194929461319c565b91386143ae565b614507613c77565b91600091604051916145188361316a565b8483526005546001600160a01b0316803b156108f957848091608460405180948193635bca9add60e01b835230600484015260018060a01b0389169b8c602485015288604485015260648401525af18015610a385761464e575b506014544203612d17576145869082614d0d565b916103e8831115612d085761459b90836151ef565b92831561463f57907f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f92916145d285600d54613586565b600d55858152600e60205260406145ec8682842054613586565b91878152600e60205220556146208460405193849384604091949392606082019560018060a01b0316825260208201520152565b0390a160405190815260008051602061523c83398151915260203092a3565b634f87e6f560e01b8152600490fd5b8461465b9195929561319c565b9238614572565b6001600160a01b039182168152911660208201526040810191909152606081019190915260800190565b60009190811515808061490f575b614900576146a6613c77565b90604051916146b48361316a565b8252156148ec57670de0b6b3a76400006146ce8483613f38565b5104905b6001600160a01b038316808652600e60205260408620549091908590036148bb575b60018060a01b03600554169051813b156109085761472e879283926040519485809481936317c4196b60e11b83528c8c3060048601614662565b03925af180156108fd576148a7575b5060145442036148985781601254106148895761475c84600d54613a21565b600d55808552600e602052614775846040872054613a21565b818652600e6020526040862055808552600e6020526040852054151580614871575b614862576147a58282615072565b6040519084825260008051602061523c83398151915260203093a3604080516001600160a01b0384168152602081018390529081018490527fe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a92990606090a16005546001600160a01b031691823b156108f9579161483e9391858094604051968795869485936351dff98960e01b85523060048601614662565b03925af180156108b757614850575050565b61485b82809261319c565b6103195750565b6330a46c4960e21b8552600485fd5b50808552600e6020526103e860408620541115614797565b6391240a1b60e01b8552600485fd5b63a17754ef60e01b8552600485fd5b856148b49196929661319c565b933861473d565b6103e88511156148dd576103e883116146f457632005234160e01b8652600486fd5b63d1b61f5160e01b8652600486fd5b91506148f882846151ef565b9183906146d2565b63431f269d60e01b8452600484fd5b508361469a565b811515919060008380614b83575b611d3257614930613c77565b936040519461493e8661316a565b855215614b7057670de0b6b3a76400006149588486613f38565b5104905b6001600160a01b038316808252600e6020526040822054909590859003614b3f575b60018060a01b03600554169051813b156128f1576149b8839283926040519485809481936317c4196b60e11b83528c8c3060048601614662565b03925af180156108b7578290614b2f575b50506014544203614b20578160125410614b11576149e984600d54613a21565b600d55848152600e602052614a02846040832054613a21565b858252600e6020526040822055848152600e6020526040812054151580614af9575b614aea5793614a338284614b8a565b6040519084825260008051602061523c83398151915260203093a3604080516001600160a01b0384168152602081018390529081018490527fe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a92990606090a16005546001600160a01b031691823b156108f9579184939184614acd9694604051978895869485936351dff98960e01b85523060048601614662565b03925af18015612fcf57614adf575050565b614ae89161319c565b565b6330a46c4960e21b8152600490fd5b50848152600e6020526103e860408220541115614a24565b6391240a1b60e01b8152600490fd5b63a17754ef60e01b8152600490fd5b614b389161319c565b38816149c9565b6103e8851115614b61576103e8831161497e57632005234160e01b8252600482fd5b63d1b61f5160e01b8252600482fd5b9150614b7c83836151ef565b918061495c565b5080614924565b6048546040516370a0823160e01b81523060048201529290602090849060249082906001600160a01b03165afa9283156114a457600093614cd8575b5060475460008054604051631a4ca37b60e21b815260189190911c6001600160a01b0390811660048301526024820194909452938316604485015260209284926064928492909160101c165af180156114a457614ca9575b506048546040516370a0823160e01b815230600482015290602090829060249082906001600160a01b03165afa9081156114a457600091614c75575b50614c6890614c7092613a21565b601254613a21565b601255565b90506020813d602011614ca1575b81614c906020938361319c565b8101031261049e5751614c70614c5a565b3d9150614c83565b6020813d602011614cd0575b81614cc26020938361319c565b8101031261049e5751614c1e565b3d9150614cb5565b9092506020813d602011614d05575b81614cf46020938361319c565b8101031261049e5751916020614bc6565b3d9150614ce7565b600080546040516370a0823160e01b815230600482015260189190911c6001600160a01b031694939192602082602481895afa918215610bda57908491829361503a575b5060649060209394604051916323b872dd60e01b835260018060a01b03166004830152306024830152604482015282885af180601f3d11600185511416151661502e575b15614ff2576040516370a0823160e01b8152306004820152602081602481885afa90811561281557908392918391614fba575b50602091614dd591613a21565b94604460018060a01b0360475460101c16604051948593849263095ea7b360e01b845260048401528960248401525af180156108b757614f7e575b506048546040516370a0823160e01b81523060048201529190602090839060249082906001600160a01b03165afa918215612fcf578192614f4a575b50604754815460109190911c6001600160a01b03908116959160181c16853b156128f157906084839283604051988994859363617ba03760e01b8552600485015260248401523060448401528160648401525af1938415612fcf578160249495614f3a575b50506048546040516370a0823160e01b81523060048201529360209185919082906001600160a01b03165afa9081156104ab5790614f06575b614ef49250613a21565b614f0081601254613586565b60125590565b506020823d602011614f32575b81614f206020938361319c565b8101031261049e57614ef49151614eea565b3d9150614f13565b614f439161319c565b3881614eb1565b9091506020813d602011614f76575b81614f666020938361319c565b8101031261154c57519038614e4c565b3d9150614f59565b6020813d602011614fb2575b81614f976020938361319c565b8101031261154c5790614fab602492613500565b5090614e10565b3d9150614f8a565b919250506020813d602011614fea575b81614fd76020938361319c565b810103126128f157518291906020614dc8565b3d9150614fca565b60405162461bcd60e51b81526020600482015260146024820152731514905394d1915497d19493d357d1905253115160621b6044820152606490fd5b503d843b151715614d95565b915091506020813d60201161506a575b816150576020938361319c565b81010312610a6757519083906064614d51565b3d915061504a565b6005546040516334cc866d60e21b81526000939291602090829060049082906001600160a01b03165afa908115610bda5784916151b5575b50838060405160208101906379befbd160e01b8252866024820152602481526150d460448261319c565b519082855af13d156151b0573d6150ea81613241565b906150f8604051928361319c565b81528560203d92013e5b8015615191575b156151225750614ae892506001600160a01b0316614b8a565b6001600160a01b03169260209260649161513c8287614b8a565b5060006040519586948593633033674760e11b855260016004860152602485015260018060a01b031660448401525af180156114a4576151795750565b613b989060203d60201161149d5761148e818361319c565b506001600160a01b03821684526015602052604084205460ff16615109565b615102565b90506020813d6020116151e7575b816151d06020938361319c565b81010312610a67576151e19061333f565b386150aa565b3d91506151c3565b670de0b6b3a7640000810290808204670de0b6b3a764000014901517156134ca576132d89151906134e056fe405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5aceddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a264697066735822122063f2f73c60e4dc9002688c466ddfe87edea61e779761b183df921a757373e12364736f6c634300081a0033";
2119
+ const isSuperArgs = (xs) => xs.length > 1;
2120
+ class CAToken__factory extends ethers_1.ContractFactory {
2121
+ constructor(...args) {
2122
+ if (isSuperArgs(args)) {
2123
+ super(...args);
2124
+ }
2125
+ else {
2126
+ super(_abi, _bytecode, args[0]);
2127
+ }
2128
+ }
2129
+ getDeployTransaction(overrides) {
2130
+ return super.getDeployTransaction(overrides || {});
2131
+ }
2132
+ deploy(overrides) {
2133
+ return super.deploy(overrides || {});
2134
+ }
2135
+ connect(runner) {
2136
+ return super.connect(runner);
2137
+ }
2138
+ static createInterface() {
2139
+ return new ethers_1.Interface(_abi);
2140
+ }
2141
+ static connect(address, runner) {
2142
+ return new ethers_1.Contract(address, _abi, runner);
2143
+ }
2144
+ }
2145
+ exports.CAToken__factory = CAToken__factory;
2146
+ CAToken__factory.bytecode = _bytecode;
2147
+ CAToken__factory.abi = _abi;
2148
+ //# sourceMappingURL=CAToken__factory.js.map