@meterio/sumer-js 0.2.171 → 0.2.173

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