@meterio/sumer-js 0.1.9 → 0.1.11

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 (91) hide show
  1. package/dist/browser/sumer.min.js +10 -10
  2. package/dist/nodejs/abi.d.ts +33 -2
  3. package/dist/nodejs/abi.js +228 -152
  4. package/dist/nodejs/abi.js.map +1 -1
  5. package/dist/nodejs/constants/index.js +4 -34
  6. package/dist/nodejs/constants/index.js.map +1 -1
  7. package/dist/nodejs/index.d.ts +33 -2
  8. package/dist/nodejs/typechain/contracts/CToken/CErc20.d.ts +33 -1
  9. package/dist/nodejs/typechain/contracts/CToken/SuErc20.d.ts +33 -15
  10. package/dist/nodejs/typechain/contracts/Comptroller/CompoundLens.d.ts +17 -1
  11. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.d.ts +9 -21
  12. package/dist/nodejs/typechain/contracts/Interfaces/IComptroller.d.ts +9 -25
  13. package/dist/nodejs/typechain/contracts/Interfaces/IEIP712.d.ts +41 -0
  14. package/dist/nodejs/typechain/contracts/{CToken/Test.sol/index.js → Interfaces/IEIP712.js} +1 -1
  15. package/dist/nodejs/typechain/contracts/Interfaces/IEIP712.js.map +1 -0
  16. package/dist/nodejs/typechain/contracts/Interfaces/index.d.ts +1 -0
  17. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.d.ts +45 -1
  18. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js +59 -1
  19. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js.map +1 -1
  20. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.d.ts +1 -1
  21. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js +1 -1
  22. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js.map +1 -1
  23. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.d.ts +45 -19
  24. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js +59 -25
  25. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js.map +1 -1
  26. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.d.ts +1 -1
  27. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.js +1 -1
  28. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.js.map +1 -1
  29. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompLogic__factory.d.ts +1 -1
  30. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompLogic__factory.js +1 -1
  31. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.d.ts +27 -1
  32. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.js +35 -1
  33. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.js.map +1 -1
  34. package/dist/nodejs/typechain/factories/contracts/Comptroller/ComptrollerStorage__factory.d.ts +1 -1
  35. package/dist/nodejs/typechain/factories/contracts/Comptroller/ComptrollerStorage__factory.js +1 -1
  36. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.d.ts +19 -49
  37. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.js +25 -65
  38. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.js.map +1 -1
  39. package/dist/nodejs/typechain/factories/contracts/Comptroller/RedemptionManager__factory.d.ts +1 -1
  40. package/dist/nodejs/typechain/factories/contracts/Comptroller/RedemptionManager__factory.js +1 -1
  41. package/dist/nodejs/typechain/factories/contracts/Comptroller/SortedBorrows__factory.d.ts +1 -1
  42. package/dist/nodejs/typechain/factories/contracts/Comptroller/SortedBorrows__factory.js +1 -1
  43. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.d.ts +14 -48
  44. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.js +19 -64
  45. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.js.map +1 -1
  46. package/dist/nodejs/typechain/factories/contracts/Interfaces/IEIP712__factory.d.ts +33 -0
  47. package/dist/nodejs/typechain/factories/contracts/Interfaces/IEIP712__factory.js +53 -0
  48. package/dist/nodejs/typechain/factories/contracts/Interfaces/IEIP712__factory.js.map +1 -0
  49. package/dist/nodejs/typechain/factories/contracts/Interfaces/index.d.ts +1 -0
  50. package/dist/nodejs/typechain/factories/contracts/Interfaces/index.js +3 -1
  51. package/dist/nodejs/typechain/factories/contracts/Interfaces/index.js.map +1 -1
  52. package/dist/nodejs/typechain/hardhat.d.ts +18 -0
  53. package/dist/nodejs/typechain/index.d.ts +2 -0
  54. package/dist/nodejs/typechain/index.js +3 -1
  55. package/dist/nodejs/typechain/index.js.map +1 -1
  56. package/package.json +1 -1
  57. package/dist/nodejs/typechain/contracts/CToken/Interfaces/index.d.ts +0 -4
  58. package/dist/nodejs/typechain/contracts/CToken/Interfaces/index.js +0 -3
  59. package/dist/nodejs/typechain/contracts/CToken/Interfaces/index.js.map +0 -1
  60. package/dist/nodejs/typechain/contracts/CToken/Test.sol/index.d.ts +0 -1
  61. package/dist/nodejs/typechain/contracts/CToken/Test.sol/index.js.map +0 -1
  62. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/Comptroller.d.ts +0 -1446
  63. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/Comptroller.js +0 -3
  64. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/Comptroller.js.map +0 -1
  65. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/index.d.ts +0 -3
  66. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/index.js +0 -3
  67. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.sol/index.js.map +0 -1
  68. package/dist/nodejs/typechain/contracts/Comptroller/Interfaces/index.d.ts +0 -6
  69. package/dist/nodejs/typechain/contracts/Comptroller/Interfaces/index.js +0 -3
  70. package/dist/nodejs/typechain/contracts/Comptroller/Interfaces/index.js.map +0 -1
  71. package/dist/nodejs/typechain/contracts/Oracle/Interfaces/index.d.ts +0 -4
  72. package/dist/nodejs/typechain/contracts/Oracle/Interfaces/index.js +0 -3
  73. package/dist/nodejs/typechain/contracts/Oracle/Interfaces/index.js.map +0 -1
  74. package/dist/nodejs/typechain/factories/contracts/CToken/Interfaces/index.d.ts +0 -4
  75. package/dist/nodejs/typechain/factories/contracts/CToken/Interfaces/index.js +0 -15
  76. package/dist/nodejs/typechain/factories/contracts/CToken/Interfaces/index.js.map +0 -1
  77. package/dist/nodejs/typechain/factories/contracts/CToken/Test.sol/index.d.ts +0 -1
  78. package/dist/nodejs/typechain/factories/contracts/CToken/Test.sol/index.js +0 -9
  79. package/dist/nodejs/typechain/factories/contracts/CToken/Test.sol/index.js.map +0 -1
  80. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/Comptroller__factory.d.ts +0 -2066
  81. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/Comptroller__factory.js +0 -2689
  82. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/Comptroller__factory.js.map +0 -1
  83. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/index.d.ts +0 -3
  84. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/index.js +0 -13
  85. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller.sol/index.js.map +0 -1
  86. package/dist/nodejs/typechain/factories/contracts/Comptroller/Interfaces/index.d.ts +0 -6
  87. package/dist/nodejs/typechain/factories/contracts/Comptroller/Interfaces/index.js +0 -19
  88. package/dist/nodejs/typechain/factories/contracts/Comptroller/Interfaces/index.js.map +0 -1
  89. package/dist/nodejs/typechain/factories/contracts/Oracle/Interfaces/index.d.ts +0 -4
  90. package/dist/nodejs/typechain/factories/contracts/Oracle/Interfaces/index.js +0 -15
  91. package/dist/nodejs/typechain/factories/contracts/Oracle/Interfaces/index.js.map +0 -1
@@ -1,2689 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Comptroller__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: "BorrowMinimumNotReached",
12
- type: "error",
13
- },
14
- {
15
- inputs: [],
16
- name: "InsufficientShortfall",
17
- type: "error",
18
- },
19
- {
20
- inputs: [],
21
- name: "InvalidMinSuBorrowValue",
22
- type: "error",
23
- },
24
- {
25
- inputs: [],
26
- name: "MarketNotListed",
27
- type: "error",
28
- },
29
- {
30
- inputs: [],
31
- name: "NoRedemptionProvider",
32
- type: "error",
33
- },
34
- {
35
- inputs: [],
36
- name: "OneOfRedeemTokensAndRedeemAmountMustBeZero",
37
- type: "error",
38
- },
39
- {
40
- inputs: [],
41
- name: "TooMuchRepay",
42
- type: "error",
43
- },
44
- {
45
- anonymous: false,
46
- inputs: [
47
- {
48
- indexed: false,
49
- internalType: "address",
50
- name: "cToken",
51
- type: "address",
52
- },
53
- {
54
- indexed: false,
55
- internalType: "string",
56
- name: "action",
57
- type: "string",
58
- },
59
- {
60
- indexed: false,
61
- internalType: "bool",
62
- name: "pauseState",
63
- type: "bool",
64
- },
65
- ],
66
- name: "ActionPaused",
67
- type: "event",
68
- },
69
- {
70
- anonymous: false,
71
- inputs: [
72
- {
73
- indexed: false,
74
- internalType: "uint8",
75
- name: "version",
76
- type: "uint8",
77
- },
78
- ],
79
- name: "Initialized",
80
- type: "event",
81
- },
82
- {
83
- anonymous: false,
84
- inputs: [
85
- {
86
- indexed: false,
87
- internalType: "address",
88
- name: "cToken",
89
- type: "address",
90
- },
91
- {
92
- indexed: false,
93
- internalType: "address",
94
- name: "account",
95
- type: "address",
96
- },
97
- ],
98
- name: "MarketEntered",
99
- type: "event",
100
- },
101
- {
102
- anonymous: false,
103
- inputs: [
104
- {
105
- indexed: false,
106
- internalType: "address",
107
- name: "cToken",
108
- type: "address",
109
- },
110
- {
111
- indexed: false,
112
- internalType: "address",
113
- name: "account",
114
- type: "address",
115
- },
116
- ],
117
- name: "MarketExited",
118
- type: "event",
119
- },
120
- {
121
- anonymous: false,
122
- inputs: [
123
- {
124
- indexed: false,
125
- internalType: "address",
126
- name: "cToken",
127
- type: "address",
128
- },
129
- ],
130
- name: "MarketListed",
131
- type: "event",
132
- },
133
- {
134
- anonymous: false,
135
- inputs: [
136
- {
137
- indexed: true,
138
- internalType: "uint8",
139
- name: "groupId",
140
- type: "uint8",
141
- },
142
- {
143
- indexed: true,
144
- internalType: "string",
145
- name: "groupName",
146
- type: "string",
147
- },
148
- {
149
- indexed: false,
150
- internalType: "uint256",
151
- name: "intraCRateMantissa",
152
- type: "uint256",
153
- },
154
- {
155
- indexed: false,
156
- internalType: "uint256",
157
- name: "intraMintRateMantissa",
158
- type: "uint256",
159
- },
160
- {
161
- indexed: false,
162
- internalType: "uint256",
163
- name: "intraSuRateMantissa",
164
- type: "uint256",
165
- },
166
- {
167
- indexed: false,
168
- internalType: "uint256",
169
- name: "interCRateMantissa",
170
- type: "uint256",
171
- },
172
- {
173
- indexed: false,
174
- internalType: "uint256",
175
- name: "interSuRateMantissa",
176
- type: "uint256",
177
- },
178
- {
179
- indexed: false,
180
- internalType: "uint8",
181
- name: "assetsGroupNum",
182
- type: "uint8",
183
- },
184
- ],
185
- name: "NewAssetGroup",
186
- type: "event",
187
- },
188
- {
189
- anonymous: false,
190
- inputs: [
191
- {
192
- indexed: true,
193
- internalType: "address",
194
- name: "cToken",
195
- type: "address",
196
- },
197
- {
198
- indexed: false,
199
- internalType: "uint256",
200
- name: "newBorrowCap",
201
- type: "uint256",
202
- },
203
- ],
204
- name: "NewBorrowCap",
205
- type: "event",
206
- },
207
- {
208
- anonymous: false,
209
- inputs: [
210
- {
211
- indexed: false,
212
- internalType: "address",
213
- name: "oldBorrowCapGuardian",
214
- type: "address",
215
- },
216
- {
217
- indexed: false,
218
- internalType: "address",
219
- name: "newBorrowCapGuardian",
220
- type: "address",
221
- },
222
- ],
223
- name: "NewBorrowCapGuardian",
224
- type: "event",
225
- },
226
- {
227
- anonymous: false,
228
- inputs: [
229
- {
230
- indexed: false,
231
- internalType: "uint256",
232
- name: "oldCloseFactorMantissa",
233
- type: "uint256",
234
- },
235
- {
236
- indexed: false,
237
- internalType: "uint256",
238
- name: "newCloseFactorMantissa",
239
- type: "uint256",
240
- },
241
- ],
242
- name: "NewCloseFactor",
243
- type: "event",
244
- },
245
- {
246
- anonymous: false,
247
- inputs: [
248
- {
249
- indexed: false,
250
- internalType: "uint256",
251
- name: "oldHeteroIncentive",
252
- type: "uint256",
253
- },
254
- {
255
- indexed: false,
256
- internalType: "uint256",
257
- name: "newHeteroIncentive",
258
- type: "uint256",
259
- },
260
- {
261
- indexed: false,
262
- internalType: "uint256",
263
- name: "oldHomoIncentive",
264
- type: "uint256",
265
- },
266
- {
267
- indexed: false,
268
- internalType: "uint256",
269
- name: "newHomoIncentive",
270
- type: "uint256",
271
- },
272
- {
273
- indexed: false,
274
- internalType: "uint256",
275
- name: "oldSutokenIncentive",
276
- type: "uint256",
277
- },
278
- {
279
- indexed: false,
280
- internalType: "uint256",
281
- name: "newSutokenIncentive",
282
- type: "uint256",
283
- },
284
- ],
285
- name: "NewLiquidationIncentive",
286
- type: "event",
287
- },
288
- {
289
- anonymous: false,
290
- inputs: [
291
- {
292
- indexed: false,
293
- internalType: "address",
294
- name: "oldPauseGuardian",
295
- type: "address",
296
- },
297
- {
298
- indexed: false,
299
- internalType: "address",
300
- name: "newPauseGuardian",
301
- type: "address",
302
- },
303
- ],
304
- name: "NewPauseGuardian",
305
- type: "event",
306
- },
307
- {
308
- anonymous: false,
309
- inputs: [
310
- {
311
- indexed: false,
312
- internalType: "address",
313
- name: "oldPriceOracle",
314
- type: "address",
315
- },
316
- {
317
- indexed: false,
318
- internalType: "address",
319
- name: "newPriceOracle",
320
- type: "address",
321
- },
322
- ],
323
- name: "NewPriceOracle",
324
- type: "event",
325
- },
326
- {
327
- anonymous: false,
328
- inputs: [
329
- {
330
- indexed: false,
331
- internalType: "address",
332
- name: "redeemer",
333
- type: "address",
334
- },
335
- {
336
- indexed: false,
337
- internalType: "address",
338
- name: "provider",
339
- type: "address",
340
- },
341
- {
342
- indexed: false,
343
- internalType: "address",
344
- name: "redeemToken",
345
- type: "address",
346
- },
347
- {
348
- indexed: false,
349
- internalType: "uint256",
350
- name: "redeemAmount",
351
- type: "uint256",
352
- },
353
- {
354
- indexed: false,
355
- internalType: "address",
356
- name: "seizeToken",
357
- type: "address",
358
- },
359
- {
360
- indexed: false,
361
- internalType: "uint256",
362
- name: "seizeAmount",
363
- type: "uint256",
364
- },
365
- ],
366
- name: "Redemption",
367
- type: "event",
368
- },
369
- {
370
- anonymous: false,
371
- inputs: [
372
- {
373
- indexed: true,
374
- internalType: "uint8",
375
- name: "groupId",
376
- type: "uint8",
377
- },
378
- {
379
- indexed: false,
380
- internalType: "uint8",
381
- name: "equalAssetsGroupNum",
382
- type: "uint8",
383
- },
384
- ],
385
- name: "RemoveAssetGroup",
386
- type: "event",
387
- },
388
- {
389
- anonymous: false,
390
- inputs: [
391
- {
392
- indexed: true,
393
- internalType: "bytes32",
394
- name: "role",
395
- type: "bytes32",
396
- },
397
- {
398
- indexed: true,
399
- internalType: "bytes32",
400
- name: "previousAdminRole",
401
- type: "bytes32",
402
- },
403
- {
404
- indexed: true,
405
- internalType: "bytes32",
406
- name: "newAdminRole",
407
- type: "bytes32",
408
- },
409
- ],
410
- name: "RoleAdminChanged",
411
- type: "event",
412
- },
413
- {
414
- anonymous: false,
415
- inputs: [
416
- {
417
- indexed: true,
418
- internalType: "bytes32",
419
- name: "role",
420
- type: "bytes32",
421
- },
422
- {
423
- indexed: true,
424
- internalType: "address",
425
- name: "account",
426
- type: "address",
427
- },
428
- {
429
- indexed: true,
430
- internalType: "address",
431
- name: "sender",
432
- type: "address",
433
- },
434
- ],
435
- name: "RoleGranted",
436
- type: "event",
437
- },
438
- {
439
- anonymous: false,
440
- inputs: [
441
- {
442
- indexed: true,
443
- internalType: "bytes32",
444
- name: "role",
445
- type: "bytes32",
446
- },
447
- {
448
- indexed: true,
449
- internalType: "address",
450
- name: "account",
451
- type: "address",
452
- },
453
- {
454
- indexed: true,
455
- internalType: "address",
456
- name: "sender",
457
- type: "address",
458
- },
459
- ],
460
- name: "RoleRevoked",
461
- type: "event",
462
- },
463
- {
464
- anonymous: false,
465
- inputs: [
466
- {
467
- indexed: true,
468
- internalType: "address",
469
- name: "cToken",
470
- type: "address",
471
- },
472
- {
473
- indexed: false,
474
- internalType: "uint256",
475
- name: "amount",
476
- type: "uint256",
477
- },
478
- ],
479
- name: "SetMaxSupply",
480
- type: "event",
481
- },
482
- {
483
- inputs: [],
484
- name: "CAPPER_ROLE",
485
- outputs: [
486
- {
487
- internalType: "bytes32",
488
- name: "",
489
- type: "bytes32",
490
- },
491
- ],
492
- stateMutability: "view",
493
- type: "function",
494
- },
495
- {
496
- inputs: [],
497
- name: "COMP_LOGIC",
498
- outputs: [
499
- {
500
- internalType: "bytes32",
501
- name: "",
502
- type: "bytes32",
503
- },
504
- ],
505
- stateMutability: "view",
506
- type: "function",
507
- },
508
- {
509
- inputs: [],
510
- name: "DEFAULT_ADMIN_ROLE",
511
- outputs: [
512
- {
513
- internalType: "bytes32",
514
- name: "",
515
- type: "bytes32",
516
- },
517
- ],
518
- stateMutability: "view",
519
- type: "function",
520
- },
521
- {
522
- inputs: [],
523
- name: "PAUSER_ROLE",
524
- outputs: [
525
- {
526
- internalType: "bytes32",
527
- name: "",
528
- type: "bytes32",
529
- },
530
- ],
531
- stateMutability: "view",
532
- type: "function",
533
- },
534
- {
535
- inputs: [],
536
- name: "_borrowGuardianPaused",
537
- outputs: [
538
- {
539
- internalType: "bool",
540
- name: "",
541
- type: "bool",
542
- },
543
- ],
544
- stateMutability: "view",
545
- type: "function",
546
- },
547
- {
548
- inputs: [],
549
- name: "_getBorrowCapGuardian",
550
- outputs: [
551
- {
552
- internalType: "address",
553
- name: "",
554
- type: "address",
555
- },
556
- ],
557
- stateMutability: "view",
558
- type: "function",
559
- },
560
- {
561
- inputs: [
562
- {
563
- internalType: "address",
564
- name: "cToken",
565
- type: "address",
566
- },
567
- ],
568
- name: "_getBorrowPaused",
569
- outputs: [
570
- {
571
- internalType: "bool",
572
- name: "",
573
- type: "bool",
574
- },
575
- ],
576
- stateMutability: "view",
577
- type: "function",
578
- },
579
- {
580
- inputs: [
581
- {
582
- internalType: "address",
583
- name: "cToken",
584
- type: "address",
585
- },
586
- ],
587
- name: "_getMintPaused",
588
- outputs: [
589
- {
590
- internalType: "bool",
591
- name: "",
592
- type: "bool",
593
- },
594
- ],
595
- stateMutability: "view",
596
- type: "function",
597
- },
598
- {
599
- inputs: [],
600
- name: "_getPauseGuardian",
601
- outputs: [
602
- {
603
- internalType: "address",
604
- name: "",
605
- type: "address",
606
- },
607
- ],
608
- stateMutability: "view",
609
- type: "function",
610
- },
611
- {
612
- inputs: [],
613
- name: "_getSeizePaused",
614
- outputs: [
615
- {
616
- internalType: "bool",
617
- name: "",
618
- type: "bool",
619
- },
620
- ],
621
- stateMutability: "view",
622
- type: "function",
623
- },
624
- {
625
- inputs: [],
626
- name: "_getTransferPaused",
627
- outputs: [
628
- {
629
- internalType: "bool",
630
- name: "",
631
- type: "bool",
632
- },
633
- ],
634
- stateMutability: "view",
635
- type: "function",
636
- },
637
- {
638
- inputs: [],
639
- name: "_mintGuardianPaused",
640
- outputs: [
641
- {
642
- internalType: "bool",
643
- name: "",
644
- type: "bool",
645
- },
646
- ],
647
- stateMutability: "view",
648
- type: "function",
649
- },
650
- {
651
- inputs: [
652
- {
653
- internalType: "address",
654
- name: "newBorrowCapGuardian",
655
- type: "address",
656
- },
657
- ],
658
- name: "_setBorrowCapGuardian",
659
- outputs: [],
660
- stateMutability: "nonpayable",
661
- type: "function",
662
- },
663
- {
664
- inputs: [
665
- {
666
- internalType: "contract ICToken",
667
- name: "cToken",
668
- type: "address",
669
- },
670
- {
671
- internalType: "bool",
672
- name: "state",
673
- type: "bool",
674
- },
675
- ],
676
- name: "_setBorrowPaused",
677
- outputs: [
678
- {
679
- internalType: "bool",
680
- name: "",
681
- type: "bool",
682
- },
683
- ],
684
- stateMutability: "nonpayable",
685
- type: "function",
686
- },
687
- {
688
- inputs: [
689
- {
690
- internalType: "uint256",
691
- name: "newCloseFactorMantissa",
692
- type: "uint256",
693
- },
694
- ],
695
- name: "_setCloseFactor",
696
- outputs: [
697
- {
698
- internalType: "uint256",
699
- name: "",
700
- type: "uint256",
701
- },
702
- ],
703
- stateMutability: "nonpayable",
704
- type: "function",
705
- },
706
- {
707
- inputs: [
708
- {
709
- internalType: "uint256",
710
- name: "newHeteroLiquidationIncentiveMantissa",
711
- type: "uint256",
712
- },
713
- {
714
- internalType: "uint256",
715
- name: "newHomoLiquidationIncentiveMantissa",
716
- type: "uint256",
717
- },
718
- {
719
- internalType: "uint256",
720
- name: "newSutokenLiquidationIncentiveMantissa",
721
- type: "uint256",
722
- },
723
- ],
724
- name: "_setLiquidationIncentive",
725
- outputs: [
726
- {
727
- internalType: "uint256",
728
- name: "",
729
- type: "uint256",
730
- },
731
- ],
732
- stateMutability: "nonpayable",
733
- type: "function",
734
- },
735
- {
736
- inputs: [
737
- {
738
- internalType: "contract ICToken[]",
739
- name: "cTokens",
740
- type: "address[]",
741
- },
742
- {
743
- internalType: "uint256[]",
744
- name: "newBorrowCaps",
745
- type: "uint256[]",
746
- },
747
- ],
748
- name: "_setMarketBorrowCaps",
749
- outputs: [],
750
- stateMutability: "nonpayable",
751
- type: "function",
752
- },
753
- {
754
- inputs: [
755
- {
756
- internalType: "contract ICToken[]",
757
- name: "cTokens",
758
- type: "address[]",
759
- },
760
- {
761
- internalType: "uint256[]",
762
- name: "newMaxSupplys",
763
- type: "uint256[]",
764
- },
765
- ],
766
- name: "_setMaxSupply",
767
- outputs: [
768
- {
769
- internalType: "uint256",
770
- name: "",
771
- type: "uint256",
772
- },
773
- ],
774
- stateMutability: "nonpayable",
775
- type: "function",
776
- },
777
- {
778
- inputs: [
779
- {
780
- internalType: "contract ICToken",
781
- name: "cToken",
782
- type: "address",
783
- },
784
- {
785
- internalType: "bool",
786
- name: "state",
787
- type: "bool",
788
- },
789
- ],
790
- name: "_setMintPaused",
791
- outputs: [
792
- {
793
- internalType: "bool",
794
- name: "",
795
- type: "bool",
796
- },
797
- ],
798
- stateMutability: "nonpayable",
799
- type: "function",
800
- },
801
- {
802
- inputs: [
803
- {
804
- internalType: "address",
805
- name: "newPauseGuardian",
806
- type: "address",
807
- },
808
- ],
809
- name: "_setPauseGuardian",
810
- outputs: [
811
- {
812
- internalType: "uint256",
813
- name: "",
814
- type: "uint256",
815
- },
816
- ],
817
- stateMutability: "nonpayable",
818
- type: "function",
819
- },
820
- {
821
- inputs: [
822
- {
823
- internalType: "contract IPriceOracle",
824
- name: "newOracle",
825
- type: "address",
826
- },
827
- ],
828
- name: "_setPriceOracle",
829
- outputs: [
830
- {
831
- internalType: "uint256",
832
- name: "",
833
- type: "uint256",
834
- },
835
- ],
836
- stateMutability: "nonpayable",
837
- type: "function",
838
- },
839
- {
840
- inputs: [
841
- {
842
- internalType: "bool",
843
- name: "state",
844
- type: "bool",
845
- },
846
- ],
847
- name: "_setSeizePaused",
848
- outputs: [
849
- {
850
- internalType: "bool",
851
- name: "",
852
- type: "bool",
853
- },
854
- ],
855
- stateMutability: "nonpayable",
856
- type: "function",
857
- },
858
- {
859
- inputs: [
860
- {
861
- internalType: "bool",
862
- name: "state",
863
- type: "bool",
864
- },
865
- ],
866
- name: "_setTransferPaused",
867
- outputs: [
868
- {
869
- internalType: "bool",
870
- name: "",
871
- type: "bool",
872
- },
873
- ],
874
- stateMutability: "nonpayable",
875
- type: "function",
876
- },
877
- {
878
- inputs: [
879
- {
880
- internalType: "address",
881
- name: "cToken",
882
- type: "address",
883
- },
884
- {
885
- internalType: "uint8",
886
- name: "groupId",
887
- type: "uint8",
888
- },
889
- {
890
- internalType: "uint256",
891
- name: "borrowCap",
892
- type: "uint256",
893
- },
894
- {
895
- internalType: "uint256",
896
- name: "supplyCap",
897
- type: "uint256",
898
- },
899
- ],
900
- name: "_supportMarket",
901
- outputs: [
902
- {
903
- internalType: "uint256",
904
- name: "",
905
- type: "uint256",
906
- },
907
- ],
908
- stateMutability: "nonpayable",
909
- type: "function",
910
- },
911
- {
912
- inputs: [
913
- {
914
- internalType: "address",
915
- name: "",
916
- type: "address",
917
- },
918
- {
919
- internalType: "uint256",
920
- name: "",
921
- type: "uint256",
922
- },
923
- ],
924
- name: "accountAssets",
925
- outputs: [
926
- {
927
- internalType: "address",
928
- name: "",
929
- type: "address",
930
- },
931
- ],
932
- stateMutability: "view",
933
- type: "function",
934
- },
935
- {
936
- inputs: [],
937
- name: "accountLiquidity",
938
- outputs: [
939
- {
940
- internalType: "contract IAccountLiquidity",
941
- name: "",
942
- type: "address",
943
- },
944
- ],
945
- stateMutability: "view",
946
- type: "function",
947
- },
948
- {
949
- inputs: [
950
- {
951
- internalType: "uint256",
952
- name: "",
953
- type: "uint256",
954
- },
955
- ],
956
- name: "allMarkets",
957
- outputs: [
958
- {
959
- internalType: "address",
960
- name: "",
961
- type: "address",
962
- },
963
- ],
964
- stateMutability: "view",
965
- type: "function",
966
- },
967
- {
968
- inputs: [
969
- {
970
- internalType: "uint8",
971
- name: "",
972
- type: "uint8",
973
- },
974
- ],
975
- name: "assetGroupIdToIndex",
976
- outputs: [
977
- {
978
- internalType: "uint8",
979
- name: "",
980
- type: "uint8",
981
- },
982
- ],
983
- stateMutability: "view",
984
- type: "function",
985
- },
986
- {
987
- inputs: [
988
- {
989
- internalType: "address",
990
- name: "cToken",
991
- type: "address",
992
- },
993
- {
994
- internalType: "address",
995
- name: "borrower",
996
- type: "address",
997
- },
998
- {
999
- internalType: "uint256",
1000
- name: "borrowAmount",
1001
- type: "uint256",
1002
- },
1003
- ],
1004
- name: "borrowAllowed",
1005
- outputs: [],
1006
- stateMutability: "nonpayable",
1007
- type: "function",
1008
- },
1009
- {
1010
- inputs: [],
1011
- name: "borrowCapGuardian",
1012
- outputs: [
1013
- {
1014
- internalType: "address",
1015
- name: "",
1016
- type: "address",
1017
- },
1018
- ],
1019
- stateMutability: "view",
1020
- type: "function",
1021
- },
1022
- {
1023
- inputs: [
1024
- {
1025
- internalType: "address",
1026
- name: "",
1027
- type: "address",
1028
- },
1029
- ],
1030
- name: "borrowCaps",
1031
- outputs: [
1032
- {
1033
- internalType: "uint256",
1034
- name: "",
1035
- type: "uint256",
1036
- },
1037
- ],
1038
- stateMutability: "view",
1039
- type: "function",
1040
- },
1041
- {
1042
- inputs: [
1043
- {
1044
- internalType: "address",
1045
- name: "",
1046
- type: "address",
1047
- },
1048
- ],
1049
- name: "borrowGuardianPaused",
1050
- outputs: [
1051
- {
1052
- internalType: "bool",
1053
- name: "",
1054
- type: "bool",
1055
- },
1056
- ],
1057
- stateMutability: "view",
1058
- type: "function",
1059
- },
1060
- {
1061
- inputs: [
1062
- {
1063
- internalType: "address",
1064
- name: "cToken",
1065
- type: "address",
1066
- },
1067
- {
1068
- internalType: "address",
1069
- name: "borrower",
1070
- type: "address",
1071
- },
1072
- {
1073
- internalType: "uint256",
1074
- name: "borrowAmount",
1075
- type: "uint256",
1076
- },
1077
- ],
1078
- name: "borrowVerify",
1079
- outputs: [],
1080
- stateMutability: "nonpayable",
1081
- type: "function",
1082
- },
1083
- {
1084
- inputs: [
1085
- {
1086
- internalType: "address",
1087
- name: "account",
1088
- type: "address",
1089
- },
1090
- {
1091
- internalType: "address",
1092
- name: "cToken",
1093
- type: "address",
1094
- },
1095
- ],
1096
- name: "checkMembership",
1097
- outputs: [
1098
- {
1099
- internalType: "bool",
1100
- name: "",
1101
- type: "bool",
1102
- },
1103
- ],
1104
- stateMutability: "view",
1105
- type: "function",
1106
- },
1107
- {
1108
- inputs: [],
1109
- name: "cleanAssetGroup",
1110
- outputs: [],
1111
- stateMutability: "nonpayable",
1112
- type: "function",
1113
- },
1114
- {
1115
- inputs: [],
1116
- name: "closeFactorMantissa",
1117
- outputs: [
1118
- {
1119
- internalType: "uint256",
1120
- name: "",
1121
- type: "uint256",
1122
- },
1123
- ],
1124
- stateMutability: "view",
1125
- type: "function",
1126
- },
1127
- {
1128
- inputs: [],
1129
- name: "compLogic",
1130
- outputs: [
1131
- {
1132
- internalType: "contract ICompLogic",
1133
- name: "",
1134
- type: "address",
1135
- },
1136
- ],
1137
- stateMutability: "view",
1138
- type: "function",
1139
- },
1140
- {
1141
- inputs: [
1142
- {
1143
- internalType: "address[]",
1144
- name: "cTokens",
1145
- type: "address[]",
1146
- },
1147
- ],
1148
- name: "enterMarkets",
1149
- outputs: [
1150
- {
1151
- internalType: "uint256[]",
1152
- name: "",
1153
- type: "uint256[]",
1154
- },
1155
- ],
1156
- stateMutability: "nonpayable",
1157
- type: "function",
1158
- },
1159
- {
1160
- inputs: [
1161
- {
1162
- internalType: "address[]",
1163
- name: "accounts",
1164
- type: "address[]",
1165
- },
1166
- ],
1167
- name: "enterMarketsForAll",
1168
- outputs: [],
1169
- stateMutability: "nonpayable",
1170
- type: "function",
1171
- },
1172
- {
1173
- inputs: [
1174
- {
1175
- internalType: "uint8",
1176
- name: "groupId",
1177
- type: "uint8",
1178
- },
1179
- ],
1180
- name: "eqAssetGroup",
1181
- outputs: [
1182
- {
1183
- components: [
1184
- {
1185
- internalType: "uint8",
1186
- name: "groupId",
1187
- type: "uint8",
1188
- },
1189
- {
1190
- internalType: "string",
1191
- name: "groupName",
1192
- type: "string",
1193
- },
1194
- {
1195
- internalType: "uint256",
1196
- name: "intraCRateMantissa",
1197
- type: "uint256",
1198
- },
1199
- {
1200
- internalType: "uint256",
1201
- name: "intraMintRateMantissa",
1202
- type: "uint256",
1203
- },
1204
- {
1205
- internalType: "uint256",
1206
- name: "intraSuRateMantissa",
1207
- type: "uint256",
1208
- },
1209
- {
1210
- internalType: "uint256",
1211
- name: "interCRateMantissa",
1212
- type: "uint256",
1213
- },
1214
- {
1215
- internalType: "uint256",
1216
- name: "interSuRateMantissa",
1217
- type: "uint256",
1218
- },
1219
- {
1220
- internalType: "bool",
1221
- name: "exist",
1222
- type: "bool",
1223
- },
1224
- ],
1225
- internalType: "struct IComptroller.AssetGroup",
1226
- name: "",
1227
- type: "tuple",
1228
- },
1229
- ],
1230
- stateMutability: "view",
1231
- type: "function",
1232
- },
1233
- {
1234
- inputs: [
1235
- {
1236
- internalType: "address",
1237
- name: "cTokenAddress",
1238
- type: "address",
1239
- },
1240
- ],
1241
- name: "exitMarket",
1242
- outputs: [
1243
- {
1244
- internalType: "uint256",
1245
- name: "",
1246
- type: "uint256",
1247
- },
1248
- ],
1249
- stateMutability: "nonpayable",
1250
- type: "function",
1251
- },
1252
- {
1253
- inputs: [
1254
- {
1255
- internalType: "address",
1256
- name: "account",
1257
- type: "address",
1258
- },
1259
- ],
1260
- name: "getAccountLiquidity",
1261
- outputs: [
1262
- {
1263
- internalType: "uint256",
1264
- name: "",
1265
- type: "uint256",
1266
- },
1267
- {
1268
- internalType: "uint256",
1269
- name: "",
1270
- type: "uint256",
1271
- },
1272
- {
1273
- internalType: "uint256",
1274
- name: "",
1275
- type: "uint256",
1276
- },
1277
- ],
1278
- stateMutability: "view",
1279
- type: "function",
1280
- },
1281
- {
1282
- inputs: [
1283
- {
1284
- internalType: "address",
1285
- name: "account",
1286
- type: "address",
1287
- },
1288
- {
1289
- internalType: "address",
1290
- name: "cTokenTarget",
1291
- type: "address",
1292
- },
1293
- {
1294
- internalType: "uint256",
1295
- name: "intraSafeLimitMantissa",
1296
- type: "uint256",
1297
- },
1298
- {
1299
- internalType: "uint256",
1300
- name: "interSafeLimitMantissa",
1301
- type: "uint256",
1302
- },
1303
- ],
1304
- name: "getAccountSafeLimit",
1305
- outputs: [
1306
- {
1307
- internalType: "uint256",
1308
- name: "",
1309
- type: "uint256",
1310
- },
1311
- ],
1312
- stateMutability: "view",
1313
- type: "function",
1314
- },
1315
- {
1316
- inputs: [],
1317
- name: "getAllAssetGroup",
1318
- outputs: [
1319
- {
1320
- components: [
1321
- {
1322
- internalType: "uint8",
1323
- name: "groupId",
1324
- type: "uint8",
1325
- },
1326
- {
1327
- internalType: "string",
1328
- name: "groupName",
1329
- type: "string",
1330
- },
1331
- {
1332
- internalType: "uint256",
1333
- name: "intraCRateMantissa",
1334
- type: "uint256",
1335
- },
1336
- {
1337
- internalType: "uint256",
1338
- name: "intraMintRateMantissa",
1339
- type: "uint256",
1340
- },
1341
- {
1342
- internalType: "uint256",
1343
- name: "intraSuRateMantissa",
1344
- type: "uint256",
1345
- },
1346
- {
1347
- internalType: "uint256",
1348
- name: "interCRateMantissa",
1349
- type: "uint256",
1350
- },
1351
- {
1352
- internalType: "uint256",
1353
- name: "interSuRateMantissa",
1354
- type: "uint256",
1355
- },
1356
- {
1357
- internalType: "bool",
1358
- name: "exist",
1359
- type: "bool",
1360
- },
1361
- ],
1362
- internalType: "struct IComptroller.AssetGroup[]",
1363
- name: "",
1364
- type: "tuple[]",
1365
- },
1366
- ],
1367
- stateMutability: "view",
1368
- type: "function",
1369
- },
1370
- {
1371
- inputs: [
1372
- {
1373
- internalType: "uint8",
1374
- name: "groupIndex",
1375
- type: "uint8",
1376
- },
1377
- ],
1378
- name: "getAllAssetGroupByIndex",
1379
- outputs: [
1380
- {
1381
- components: [
1382
- {
1383
- internalType: "uint8",
1384
- name: "groupId",
1385
- type: "uint8",
1386
- },
1387
- {
1388
- internalType: "string",
1389
- name: "groupName",
1390
- type: "string",
1391
- },
1392
- {
1393
- internalType: "uint256",
1394
- name: "intraCRateMantissa",
1395
- type: "uint256",
1396
- },
1397
- {
1398
- internalType: "uint256",
1399
- name: "intraMintRateMantissa",
1400
- type: "uint256",
1401
- },
1402
- {
1403
- internalType: "uint256",
1404
- name: "intraSuRateMantissa",
1405
- type: "uint256",
1406
- },
1407
- {
1408
- internalType: "uint256",
1409
- name: "interCRateMantissa",
1410
- type: "uint256",
1411
- },
1412
- {
1413
- internalType: "uint256",
1414
- name: "interSuRateMantissa",
1415
- type: "uint256",
1416
- },
1417
- {
1418
- internalType: "bool",
1419
- name: "exist",
1420
- type: "bool",
1421
- },
1422
- ],
1423
- internalType: "struct IComptroller.AssetGroup",
1424
- name: "",
1425
- type: "tuple",
1426
- },
1427
- ],
1428
- stateMutability: "view",
1429
- type: "function",
1430
- },
1431
- {
1432
- inputs: [],
1433
- name: "getAllMarkets",
1434
- outputs: [
1435
- {
1436
- internalType: "address[]",
1437
- name: "",
1438
- type: "address[]",
1439
- },
1440
- ],
1441
- stateMutability: "view",
1442
- type: "function",
1443
- },
1444
- {
1445
- inputs: [
1446
- {
1447
- internalType: "uint8",
1448
- name: "groupId",
1449
- type: "uint8",
1450
- },
1451
- ],
1452
- name: "getAssetGroup",
1453
- outputs: [
1454
- {
1455
- components: [
1456
- {
1457
- internalType: "uint8",
1458
- name: "groupId",
1459
- type: "uint8",
1460
- },
1461
- {
1462
- internalType: "string",
1463
- name: "groupName",
1464
- type: "string",
1465
- },
1466
- {
1467
- internalType: "uint256",
1468
- name: "intraCRateMantissa",
1469
- type: "uint256",
1470
- },
1471
- {
1472
- internalType: "uint256",
1473
- name: "intraMintRateMantissa",
1474
- type: "uint256",
1475
- },
1476
- {
1477
- internalType: "uint256",
1478
- name: "intraSuRateMantissa",
1479
- type: "uint256",
1480
- },
1481
- {
1482
- internalType: "uint256",
1483
- name: "interCRateMantissa",
1484
- type: "uint256",
1485
- },
1486
- {
1487
- internalType: "uint256",
1488
- name: "interSuRateMantissa",
1489
- type: "uint256",
1490
- },
1491
- {
1492
- internalType: "bool",
1493
- name: "exist",
1494
- type: "bool",
1495
- },
1496
- ],
1497
- internalType: "struct IComptroller.AssetGroup",
1498
- name: "",
1499
- type: "tuple",
1500
- },
1501
- ],
1502
- stateMutability: "view",
1503
- type: "function",
1504
- },
1505
- {
1506
- inputs: [],
1507
- name: "getAssetGroupNum",
1508
- outputs: [
1509
- {
1510
- internalType: "uint8",
1511
- name: "",
1512
- type: "uint8",
1513
- },
1514
- ],
1515
- stateMutability: "view",
1516
- type: "function",
1517
- },
1518
- {
1519
- inputs: [
1520
- {
1521
- internalType: "address",
1522
- name: "account",
1523
- type: "address",
1524
- },
1525
- ],
1526
- name: "getAssetsIn",
1527
- outputs: [
1528
- {
1529
- internalType: "address[]",
1530
- name: "",
1531
- type: "address[]",
1532
- },
1533
- ],
1534
- stateMutability: "view",
1535
- type: "function",
1536
- },
1537
- {
1538
- inputs: [
1539
- {
1540
- internalType: "address",
1541
- name: "collateralToken",
1542
- type: "address",
1543
- },
1544
- {
1545
- internalType: "address",
1546
- name: "liabilityToken",
1547
- type: "address",
1548
- },
1549
- ],
1550
- name: "getCollateralRate",
1551
- outputs: [
1552
- {
1553
- internalType: "uint256",
1554
- name: "",
1555
- type: "uint256",
1556
- },
1557
- ],
1558
- stateMutability: "view",
1559
- type: "function",
1560
- },
1561
- {
1562
- inputs: [],
1563
- name: "getCompAddress",
1564
- outputs: [
1565
- {
1566
- internalType: "address",
1567
- name: "",
1568
- type: "address",
1569
- },
1570
- ],
1571
- stateMutability: "view",
1572
- type: "function",
1573
- },
1574
- {
1575
- inputs: [
1576
- {
1577
- internalType: "address",
1578
- name: "account",
1579
- type: "address",
1580
- },
1581
- {
1582
- internalType: "address",
1583
- name: "cTokenModify",
1584
- type: "address",
1585
- },
1586
- {
1587
- internalType: "uint256",
1588
- name: "redeemTokens",
1589
- type: "uint256",
1590
- },
1591
- {
1592
- internalType: "uint256",
1593
- name: "borrowAmount",
1594
- type: "uint256",
1595
- },
1596
- ],
1597
- name: "getHypotheticalAccountLiquidity",
1598
- outputs: [
1599
- {
1600
- internalType: "uint256",
1601
- name: "",
1602
- type: "uint256",
1603
- },
1604
- {
1605
- internalType: "uint256",
1606
- name: "",
1607
- type: "uint256",
1608
- },
1609
- {
1610
- internalType: "uint256",
1611
- name: "",
1612
- type: "uint256",
1613
- },
1614
- ],
1615
- stateMutability: "view",
1616
- type: "function",
1617
- },
1618
- {
1619
- inputs: [
1620
- {
1621
- internalType: "bytes32",
1622
- name: "role",
1623
- type: "bytes32",
1624
- },
1625
- ],
1626
- name: "getRoleAdmin",
1627
- outputs: [
1628
- {
1629
- internalType: "bytes32",
1630
- name: "",
1631
- type: "bytes32",
1632
- },
1633
- ],
1634
- stateMutability: "view",
1635
- type: "function",
1636
- },
1637
- {
1638
- inputs: [
1639
- {
1640
- internalType: "bytes32",
1641
- name: "role",
1642
- type: "bytes32",
1643
- },
1644
- {
1645
- internalType: "uint256",
1646
- name: "index",
1647
- type: "uint256",
1648
- },
1649
- ],
1650
- name: "getRoleMember",
1651
- outputs: [
1652
- {
1653
- internalType: "address",
1654
- name: "",
1655
- type: "address",
1656
- },
1657
- ],
1658
- stateMutability: "view",
1659
- type: "function",
1660
- },
1661
- {
1662
- inputs: [
1663
- {
1664
- internalType: "bytes32",
1665
- name: "role",
1666
- type: "bytes32",
1667
- },
1668
- ],
1669
- name: "getRoleMemberCount",
1670
- outputs: [
1671
- {
1672
- internalType: "uint256",
1673
- name: "",
1674
- type: "uint256",
1675
- },
1676
- ],
1677
- stateMutability: "view",
1678
- type: "function",
1679
- },
1680
- {
1681
- inputs: [],
1682
- name: "governanceToken",
1683
- outputs: [
1684
- {
1685
- internalType: "address",
1686
- name: "",
1687
- type: "address",
1688
- },
1689
- ],
1690
- stateMutability: "view",
1691
- type: "function",
1692
- },
1693
- {
1694
- inputs: [
1695
- {
1696
- internalType: "bytes32",
1697
- name: "role",
1698
- type: "bytes32",
1699
- },
1700
- {
1701
- internalType: "address",
1702
- name: "account",
1703
- type: "address",
1704
- },
1705
- ],
1706
- name: "grantRole",
1707
- outputs: [],
1708
- stateMutability: "nonpayable",
1709
- type: "function",
1710
- },
1711
- {
1712
- inputs: [
1713
- {
1714
- internalType: "bytes32",
1715
- name: "role",
1716
- type: "bytes32",
1717
- },
1718
- {
1719
- internalType: "address",
1720
- name: "account",
1721
- type: "address",
1722
- },
1723
- ],
1724
- name: "hasRole",
1725
- outputs: [
1726
- {
1727
- internalType: "bool",
1728
- name: "",
1729
- type: "bool",
1730
- },
1731
- ],
1732
- stateMutability: "view",
1733
- type: "function",
1734
- },
1735
- {
1736
- inputs: [],
1737
- name: "heteroLiquidationIncentiveMantissa",
1738
- outputs: [
1739
- {
1740
- internalType: "uint256",
1741
- name: "",
1742
- type: "uint256",
1743
- },
1744
- ],
1745
- stateMutability: "view",
1746
- type: "function",
1747
- },
1748
- {
1749
- inputs: [],
1750
- name: "homoLiquidationIncentiveMantissa",
1751
- outputs: [
1752
- {
1753
- internalType: "uint256",
1754
- name: "",
1755
- type: "uint256",
1756
- },
1757
- ],
1758
- stateMutability: "view",
1759
- type: "function",
1760
- },
1761
- {
1762
- inputs: [
1763
- {
1764
- internalType: "address",
1765
- name: "_admin",
1766
- type: "address",
1767
- },
1768
- {
1769
- internalType: "contract IPriceOracle",
1770
- name: "_oracle",
1771
- type: "address",
1772
- },
1773
- {
1774
- internalType: "address",
1775
- name: "_gov",
1776
- type: "address",
1777
- },
1778
- {
1779
- internalType: "contract ICompLogic",
1780
- name: "_compLogic",
1781
- type: "address",
1782
- },
1783
- {
1784
- internalType: "contract IAccountLiquidity",
1785
- name: "_accountLiquidity",
1786
- type: "address",
1787
- },
1788
- {
1789
- internalType: "uint256",
1790
- name: "_closeFactorMantissa",
1791
- type: "uint256",
1792
- },
1793
- {
1794
- internalType: "uint256",
1795
- name: "_heteroLiquidationIncentiveMantissa",
1796
- type: "uint256",
1797
- },
1798
- {
1799
- internalType: "uint256",
1800
- name: "_homoLiquidationIncentiveMantissa",
1801
- type: "uint256",
1802
- },
1803
- {
1804
- internalType: "uint256",
1805
- name: "_sutokenLiquidationIncentiveMantissa",
1806
- type: "uint256",
1807
- },
1808
- {
1809
- internalType: "contract IRedemptionManager",
1810
- name: "_redemptionManager",
1811
- type: "address",
1812
- },
1813
- ],
1814
- name: "initialize",
1815
- outputs: [],
1816
- stateMutability: "nonpayable",
1817
- type: "function",
1818
- },
1819
- {
1820
- inputs: [],
1821
- name: "isComptroller",
1822
- outputs: [
1823
- {
1824
- internalType: "bool",
1825
- name: "",
1826
- type: "bool",
1827
- },
1828
- ],
1829
- stateMutability: "view",
1830
- type: "function",
1831
- },
1832
- {
1833
- inputs: [
1834
- {
1835
- internalType: "address",
1836
- name: "asset",
1837
- type: "address",
1838
- },
1839
- ],
1840
- name: "isListed",
1841
- outputs: [
1842
- {
1843
- internalType: "bool",
1844
- name: "",
1845
- type: "bool",
1846
- },
1847
- ],
1848
- stateMutability: "view",
1849
- type: "function",
1850
- },
1851
- {
1852
- inputs: [
1853
- {
1854
- internalType: "address",
1855
- name: "cTokenBorrowed",
1856
- type: "address",
1857
- },
1858
- {
1859
- internalType: "address",
1860
- name: "cTokenCollateral",
1861
- type: "address",
1862
- },
1863
- {
1864
- internalType: "address",
1865
- name: "liquidator",
1866
- type: "address",
1867
- },
1868
- {
1869
- internalType: "address",
1870
- name: "borrower",
1871
- type: "address",
1872
- },
1873
- {
1874
- internalType: "uint256",
1875
- name: "repayAmount",
1876
- type: "uint256",
1877
- },
1878
- ],
1879
- name: "liquidateBorrowAllowed",
1880
- outputs: [],
1881
- stateMutability: "view",
1882
- type: "function",
1883
- },
1884
- {
1885
- inputs: [],
1886
- name: "liquidationIncentiveMantissa",
1887
- outputs: [
1888
- {
1889
- internalType: "uint256",
1890
- name: "",
1891
- type: "uint256",
1892
- },
1893
- {
1894
- internalType: "uint256",
1895
- name: "",
1896
- type: "uint256",
1897
- },
1898
- {
1899
- internalType: "uint256",
1900
- name: "",
1901
- type: "uint256",
1902
- },
1903
- ],
1904
- stateMutability: "view",
1905
- type: "function",
1906
- },
1907
- {
1908
- inputs: [
1909
- {
1910
- internalType: "address",
1911
- name: "asset",
1912
- type: "address",
1913
- },
1914
- ],
1915
- name: "marketGroupId",
1916
- outputs: [
1917
- {
1918
- internalType: "uint8",
1919
- name: "",
1920
- type: "uint8",
1921
- },
1922
- ],
1923
- stateMutability: "view",
1924
- type: "function",
1925
- },
1926
- {
1927
- inputs: [
1928
- {
1929
- internalType: "address",
1930
- name: "",
1931
- type: "address",
1932
- },
1933
- ],
1934
- name: "markets",
1935
- outputs: [
1936
- {
1937
- internalType: "bool",
1938
- name: "isListed",
1939
- type: "bool",
1940
- },
1941
- {
1942
- internalType: "uint8",
1943
- name: "assetGroupId",
1944
- type: "uint8",
1945
- },
1946
- {
1947
- internalType: "bool",
1948
- name: "isComped",
1949
- type: "bool",
1950
- },
1951
- ],
1952
- stateMutability: "view",
1953
- type: "function",
1954
- },
1955
- {
1956
- inputs: [
1957
- {
1958
- internalType: "address",
1959
- name: "",
1960
- type: "address",
1961
- },
1962
- ],
1963
- name: "maxSupply",
1964
- outputs: [
1965
- {
1966
- internalType: "uint256",
1967
- name: "",
1968
- type: "uint256",
1969
- },
1970
- ],
1971
- stateMutability: "view",
1972
- type: "function",
1973
- },
1974
- {
1975
- inputs: [],
1976
- name: "minSuBorrowValue",
1977
- outputs: [
1978
- {
1979
- internalType: "uint256",
1980
- name: "",
1981
- type: "uint256",
1982
- },
1983
- ],
1984
- stateMutability: "view",
1985
- type: "function",
1986
- },
1987
- {
1988
- inputs: [
1989
- {
1990
- internalType: "address",
1991
- name: "cToken",
1992
- type: "address",
1993
- },
1994
- {
1995
- internalType: "address",
1996
- name: "minter",
1997
- type: "address",
1998
- },
1999
- {
2000
- internalType: "uint256",
2001
- name: "mintAmount",
2002
- type: "uint256",
2003
- },
2004
- ],
2005
- name: "mintAllowed",
2006
- outputs: [],
2007
- stateMutability: "nonpayable",
2008
- type: "function",
2009
- },
2010
- {
2011
- inputs: [
2012
- {
2013
- internalType: "address",
2014
- name: "",
2015
- type: "address",
2016
- },
2017
- ],
2018
- name: "mintGuardianPaused",
2019
- outputs: [
2020
- {
2021
- internalType: "bool",
2022
- name: "",
2023
- type: "bool",
2024
- },
2025
- ],
2026
- stateMutability: "view",
2027
- type: "function",
2028
- },
2029
- {
2030
- inputs: [],
2031
- name: "oracle",
2032
- outputs: [
2033
- {
2034
- internalType: "contract IPriceOracle",
2035
- name: "",
2036
- type: "address",
2037
- },
2038
- ],
2039
- stateMutability: "view",
2040
- type: "function",
2041
- },
2042
- {
2043
- inputs: [],
2044
- name: "pauseGuardian",
2045
- outputs: [
2046
- {
2047
- internalType: "address",
2048
- name: "",
2049
- type: "address",
2050
- },
2051
- ],
2052
- stateMutability: "view",
2053
- type: "function",
2054
- },
2055
- {
2056
- inputs: [
2057
- {
2058
- internalType: "address",
2059
- name: "cToken",
2060
- type: "address",
2061
- },
2062
- {
2063
- internalType: "address",
2064
- name: "redeemer",
2065
- type: "address",
2066
- },
2067
- {
2068
- internalType: "uint256",
2069
- name: "redeemTokens",
2070
- type: "uint256",
2071
- },
2072
- ],
2073
- name: "redeemAllowed",
2074
- outputs: [],
2075
- stateMutability: "nonpayable",
2076
- type: "function",
2077
- },
2078
- {
2079
- inputs: [
2080
- {
2081
- internalType: "address",
2082
- name: "suToken",
2083
- type: "address",
2084
- },
2085
- {
2086
- internalType: "uint256",
2087
- name: "amount",
2088
- type: "uint256",
2089
- },
2090
- ],
2091
- name: "redeemFaceValue",
2092
- outputs: [],
2093
- stateMutability: "nonpayable",
2094
- type: "function",
2095
- },
2096
- {
2097
- inputs: [
2098
- {
2099
- internalType: "address",
2100
- name: "redeemer",
2101
- type: "address",
2102
- },
2103
- {
2104
- internalType: "address",
2105
- name: "provider",
2106
- type: "address",
2107
- },
2108
- {
2109
- internalType: "address",
2110
- name: "cToken",
2111
- type: "address",
2112
- },
2113
- {
2114
- internalType: "address",
2115
- name: "suToken",
2116
- type: "address",
2117
- },
2118
- {
2119
- internalType: "uint256",
2120
- name: "redeemAmount",
2121
- type: "uint256",
2122
- },
2123
- ],
2124
- name: "redeemFaceValueWithTargetPlan",
2125
- outputs: [
2126
- {
2127
- internalType: "uint256",
2128
- name: "",
2129
- type: "uint256",
2130
- },
2131
- {
2132
- internalType: "uint256",
2133
- name: "",
2134
- type: "uint256",
2135
- },
2136
- {
2137
- internalType: "uint256",
2138
- name: "",
2139
- type: "uint256",
2140
- },
2141
- {
2142
- internalType: "uint256",
2143
- name: "",
2144
- type: "uint256",
2145
- },
2146
- {
2147
- internalType: "uint256",
2148
- name: "",
2149
- type: "uint256",
2150
- },
2151
- {
2152
- internalType: "uint256",
2153
- name: "",
2154
- type: "uint256",
2155
- },
2156
- ],
2157
- stateMutability: "nonpayable",
2158
- type: "function",
2159
- },
2160
- {
2161
- inputs: [
2162
- {
2163
- internalType: "address",
2164
- name: "cToken",
2165
- type: "address",
2166
- },
2167
- {
2168
- internalType: "address",
2169
- name: "redeemer",
2170
- type: "address",
2171
- },
2172
- {
2173
- internalType: "uint256",
2174
- name: "redeemAmount",
2175
- type: "uint256",
2176
- },
2177
- {
2178
- internalType: "uint256",
2179
- name: "redeemTokens",
2180
- type: "uint256",
2181
- },
2182
- ],
2183
- name: "redeemVerify",
2184
- outputs: [],
2185
- stateMutability: "nonpayable",
2186
- type: "function",
2187
- },
2188
- {
2189
- inputs: [],
2190
- name: "redemptionManager",
2191
- outputs: [
2192
- {
2193
- internalType: "contract IRedemptionManager",
2194
- name: "",
2195
- type: "address",
2196
- },
2197
- ],
2198
- stateMutability: "view",
2199
- type: "function",
2200
- },
2201
- {
2202
- inputs: [
2203
- {
2204
- internalType: "uint8",
2205
- name: "groupId",
2206
- type: "uint8",
2207
- },
2208
- ],
2209
- name: "removeAssetGroup",
2210
- outputs: [
2211
- {
2212
- internalType: "uint256",
2213
- name: "",
2214
- type: "uint256",
2215
- },
2216
- ],
2217
- stateMutability: "nonpayable",
2218
- type: "function",
2219
- },
2220
- {
2221
- inputs: [
2222
- {
2223
- internalType: "bytes32",
2224
- name: "role",
2225
- type: "bytes32",
2226
- },
2227
- {
2228
- internalType: "address",
2229
- name: "account",
2230
- type: "address",
2231
- },
2232
- ],
2233
- name: "renounceRole",
2234
- outputs: [],
2235
- stateMutability: "nonpayable",
2236
- type: "function",
2237
- },
2238
- {
2239
- inputs: [
2240
- {
2241
- internalType: "address",
2242
- name: "cToken",
2243
- type: "address",
2244
- },
2245
- {
2246
- internalType: "address",
2247
- name: "payer",
2248
- type: "address",
2249
- },
2250
- {
2251
- internalType: "address",
2252
- name: "borrower",
2253
- type: "address",
2254
- },
2255
- {
2256
- internalType: "uint256",
2257
- name: "repayAmount",
2258
- type: "uint256",
2259
- },
2260
- ],
2261
- name: "repayBorrowAllowed",
2262
- outputs: [],
2263
- stateMutability: "nonpayable",
2264
- type: "function",
2265
- },
2266
- {
2267
- inputs: [
2268
- {
2269
- internalType: "address",
2270
- name: "cToken",
2271
- type: "address",
2272
- },
2273
- {
2274
- internalType: "address",
2275
- name: "payer",
2276
- type: "address",
2277
- },
2278
- {
2279
- internalType: "address",
2280
- name: "borrower",
2281
- type: "address",
2282
- },
2283
- {
2284
- internalType: "uint256",
2285
- name: "actualRepayAmount",
2286
- type: "uint256",
2287
- },
2288
- {
2289
- internalType: "uint256",
2290
- name: "borrowerIndex",
2291
- type: "uint256",
2292
- },
2293
- ],
2294
- name: "repayBorrowVerify",
2295
- outputs: [],
2296
- stateMutability: "nonpayable",
2297
- type: "function",
2298
- },
2299
- {
2300
- inputs: [
2301
- {
2302
- internalType: "bytes32",
2303
- name: "role",
2304
- type: "bytes32",
2305
- },
2306
- {
2307
- internalType: "address",
2308
- name: "account",
2309
- type: "address",
2310
- },
2311
- ],
2312
- name: "revokeRole",
2313
- outputs: [],
2314
- stateMutability: "nonpayable",
2315
- type: "function",
2316
- },
2317
- {
2318
- inputs: [
2319
- {
2320
- internalType: "address",
2321
- name: "cTokenCollateral",
2322
- type: "address",
2323
- },
2324
- {
2325
- internalType: "address",
2326
- name: "cTokenBorrowed",
2327
- type: "address",
2328
- },
2329
- {
2330
- internalType: "address",
2331
- name: "liquidator",
2332
- type: "address",
2333
- },
2334
- {
2335
- internalType: "address",
2336
- name: "borrower",
2337
- type: "address",
2338
- },
2339
- {
2340
- internalType: "uint256",
2341
- name: "seizeTokens",
2342
- type: "uint256",
2343
- },
2344
- ],
2345
- name: "seizeAllowed",
2346
- outputs: [],
2347
- stateMutability: "nonpayable",
2348
- type: "function",
2349
- },
2350
- {
2351
- inputs: [],
2352
- name: "seizeGuardianPaused",
2353
- outputs: [
2354
- {
2355
- internalType: "bool",
2356
- name: "",
2357
- type: "bool",
2358
- },
2359
- ],
2360
- stateMutability: "view",
2361
- type: "function",
2362
- },
2363
- {
2364
- inputs: [
2365
- {
2366
- internalType: "address",
2367
- name: "cTokenCollateral",
2368
- type: "address",
2369
- },
2370
- {
2371
- internalType: "address",
2372
- name: "cTokenBorrowed",
2373
- type: "address",
2374
- },
2375
- {
2376
- internalType: "address",
2377
- name: "liquidator",
2378
- type: "address",
2379
- },
2380
- {
2381
- internalType: "address",
2382
- name: "borrower",
2383
- type: "address",
2384
- },
2385
- {
2386
- internalType: "uint256",
2387
- name: "seizeTokens",
2388
- type: "uint256",
2389
- },
2390
- ],
2391
- name: "seizeVerify",
2392
- outputs: [],
2393
- stateMutability: "nonpayable",
2394
- type: "function",
2395
- },
2396
- {
2397
- inputs: [
2398
- {
2399
- internalType: "contract IAccountLiquidity",
2400
- name: "_accountLiquidity",
2401
- type: "address",
2402
- },
2403
- ],
2404
- name: "setAccountLiquidity",
2405
- outputs: [],
2406
- stateMutability: "nonpayable",
2407
- type: "function",
2408
- },
2409
- {
2410
- inputs: [
2411
- {
2412
- internalType: "uint8",
2413
- name: "groupId",
2414
- type: "uint8",
2415
- },
2416
- {
2417
- internalType: "string",
2418
- name: "groupName",
2419
- type: "string",
2420
- },
2421
- {
2422
- internalType: "uint256",
2423
- name: "intraCRateMantissa",
2424
- type: "uint256",
2425
- },
2426
- {
2427
- internalType: "uint256",
2428
- name: "intraMintRateMantissa",
2429
- type: "uint256",
2430
- },
2431
- {
2432
- internalType: "uint256",
2433
- name: "intraSuRateMantissa",
2434
- type: "uint256",
2435
- },
2436
- {
2437
- internalType: "uint256",
2438
- name: "interCRateMantissa",
2439
- type: "uint256",
2440
- },
2441
- {
2442
- internalType: "uint256",
2443
- name: "interSuRateMantissa",
2444
- type: "uint256",
2445
- },
2446
- ],
2447
- name: "setAssetGroup",
2448
- outputs: [
2449
- {
2450
- internalType: "uint256",
2451
- name: "",
2452
- type: "uint256",
2453
- },
2454
- ],
2455
- stateMutability: "nonpayable",
2456
- type: "function",
2457
- },
2458
- {
2459
- inputs: [
2460
- {
2461
- internalType: "contract ICompLogic",
2462
- name: "_compLogic",
2463
- type: "address",
2464
- },
2465
- ],
2466
- name: "setCompLogic",
2467
- outputs: [],
2468
- stateMutability: "nonpayable",
2469
- type: "function",
2470
- },
2471
- {
2472
- inputs: [
2473
- {
2474
- internalType: "address",
2475
- name: "cToken",
2476
- type: "address",
2477
- },
2478
- {
2479
- internalType: "uint256",
2480
- name: "supplySpeed",
2481
- type: "uint256",
2482
- },
2483
- {
2484
- internalType: "uint256",
2485
- name: "borrowSpeed",
2486
- type: "uint256",
2487
- },
2488
- ],
2489
- name: "setCompSpeed",
2490
- outputs: [],
2491
- stateMutability: "nonpayable",
2492
- type: "function",
2493
- },
2494
- {
2495
- inputs: [
2496
- {
2497
- internalType: "address",
2498
- name: "_governanceToken",
2499
- type: "address",
2500
- },
2501
- ],
2502
- name: "setGovTokenAddress",
2503
- outputs: [],
2504
- stateMutability: "nonpayable",
2505
- type: "function",
2506
- },
2507
- {
2508
- inputs: [
2509
- {
2510
- internalType: "uint256",
2511
- name: "_minSuBorrowValue",
2512
- type: "uint256",
2513
- },
2514
- ],
2515
- name: "setMinSuBorrowValue",
2516
- outputs: [],
2517
- stateMutability: "nonpayable",
2518
- type: "function",
2519
- },
2520
- {
2521
- inputs: [
2522
- {
2523
- internalType: "contract IRedemptionManager",
2524
- name: "_redemptionManager",
2525
- type: "address",
2526
- },
2527
- ],
2528
- name: "setRedemptionManager",
2529
- outputs: [],
2530
- stateMutability: "nonpayable",
2531
- type: "function",
2532
- },
2533
- {
2534
- inputs: [
2535
- {
2536
- internalType: "address",
2537
- name: "_timelock",
2538
- type: "address",
2539
- },
2540
- ],
2541
- name: "setTimelock",
2542
- outputs: [],
2543
- stateMutability: "nonpayable",
2544
- type: "function",
2545
- },
2546
- {
2547
- inputs: [],
2548
- name: "suTokenRateMantissa",
2549
- outputs: [
2550
- {
2551
- internalType: "uint256",
2552
- name: "",
2553
- type: "uint256",
2554
- },
2555
- ],
2556
- stateMutability: "view",
2557
- type: "function",
2558
- },
2559
- {
2560
- inputs: [
2561
- {
2562
- internalType: "bytes4",
2563
- name: "interfaceId",
2564
- type: "bytes4",
2565
- },
2566
- ],
2567
- name: "supportsInterface",
2568
- outputs: [
2569
- {
2570
- internalType: "bool",
2571
- name: "",
2572
- type: "bool",
2573
- },
2574
- ],
2575
- stateMutability: "view",
2576
- type: "function",
2577
- },
2578
- {
2579
- inputs: [],
2580
- name: "sutokenLiquidationIncentiveMantissa",
2581
- outputs: [
2582
- {
2583
- internalType: "uint256",
2584
- name: "",
2585
- type: "uint256",
2586
- },
2587
- ],
2588
- stateMutability: "view",
2589
- type: "function",
2590
- },
2591
- {
2592
- inputs: [],
2593
- name: "timelock",
2594
- outputs: [
2595
- {
2596
- internalType: "address",
2597
- name: "",
2598
- type: "address",
2599
- },
2600
- ],
2601
- stateMutability: "view",
2602
- type: "function",
2603
- },
2604
- {
2605
- inputs: [
2606
- {
2607
- internalType: "address",
2608
- name: "cToken",
2609
- type: "address",
2610
- },
2611
- {
2612
- internalType: "address",
2613
- name: "src",
2614
- type: "address",
2615
- },
2616
- {
2617
- internalType: "address",
2618
- name: "dst",
2619
- type: "address",
2620
- },
2621
- {
2622
- internalType: "uint256",
2623
- name: "transferTokens",
2624
- type: "uint256",
2625
- },
2626
- ],
2627
- name: "transferAllowed",
2628
- outputs: [],
2629
- stateMutability: "nonpayable",
2630
- type: "function",
2631
- },
2632
- {
2633
- inputs: [],
2634
- name: "transferGuardianPaused",
2635
- outputs: [
2636
- {
2637
- internalType: "bool",
2638
- name: "",
2639
- type: "bool",
2640
- },
2641
- ],
2642
- stateMutability: "view",
2643
- type: "function",
2644
- },
2645
- {
2646
- inputs: [
2647
- {
2648
- internalType: "address[]",
2649
- name: "borrowers",
2650
- type: "address[]",
2651
- },
2652
- ],
2653
- name: "updateSortedBorrowsBatch",
2654
- outputs: [],
2655
- stateMutability: "nonpayable",
2656
- type: "function",
2657
- },
2658
- ];
2659
- const _bytecode = "0x6080806040523461001757615f9d90816200001d8239f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c9081627e3dd21461415b5750806301ffc9a7146140ea5780630914888d14613f41578063098c76f514613f015780630df9ef2c14613ec1578063141a7a6514613ea35780631475995c14613e7257806318c882a514613d795780631dbd1aa914613cfc5780631ededc9114613cc557806321af4569146110a557806324008a6214613c8f578063241b4367146113e3578063243cdb5514613c6a578063248a9ca314613c3d57806324a3d6221461325a578063250d71e714613ad8578063255109131461200c5780632d70db78146139e15780632f2ff15d14613933578063317b0b77146138935780633278eb041461386a57806336085d4614613783578063360f5a011461375a57806336568abe146136c7578063391957d7146135175780633bcf7ec1146134205780633bd383811461337f5780633c94786f146133595780633f08c0931461330c57806347bd11ad146132ee5780634a584432146132b55780634ada90af146132835780634cab0f2d1461325a5780634e79238f146131d75780634ede8e6a146131b95780634ef4c3e114612ea857806351dff98914612e6a57806352d84d1e14612e3f578063554994f214612e1657806355ee1fe114612d965780635a0f74a7146126bc5780635c77860514612d7a5780635ec88c7914612cc65780635f5af1aa14612b0a5780635f87769b14612a865780635fc7e71e146128af578063607ef6c1146127a55780636d154ea5146126fb5780636d35bf911461273a578063715cfdd9146126fb578063731f0c2b146126bc57806373a19dc5146124455780637dc0d1d01461241c578063840f82ac146123d057806384b927201461203257806387f763031461200c5780638e8f294b14611fb25780638ebf636414611eb15780639010d07c14611e6b57806391d1485414611e1f578063929fe9a114611dc557806397d0fbe5146118635780639cc7becf1461182a5780639d1b5a0a146118015780639d8ef7e6146117d4578063a217fddf146117b8578063a3514009146114c5578063aa6fb5c014611485578063abfceffc14611409578063ac0b0bb7146113e3578063b0772d0b14611358578063b3030a6314611318578063b9412e3b146112b0578063bc1fc18a14611275578063bdacb30314611235578063bdcdc2581461119b578063c2998238146110ce578063c42e5b2b146110a5578063c7108b431461107c578063c91033b01461105b578063ca15c87314611031578063ce8b680514611013578063d02f735114610e4c578063d1eb167e14610e18578063d33219b414610def578063d547741f14610db1578063da3d454c14610956578063dce15449146108fb578063dd1e75d2146107b5578063e4295d4114610771578063e63ab1e914610748578063e6653f3d14610722578063e875544614610704578063e8762110146106e6578063eabe7d91146106cb578063ede4edd01461069f578063eebc3a9914610603578063f794062e146105c4578063f8717d40146104a25763f96dae0a1461047757600080fd5b3461049f578060031936011261049f5760d1546040516001600160a01b039091168152602090f35b80fd5b503461049f576104b13661459e565b848094939552602094606586526040852033600052865260ff604060002054168015610596575b6104e190615839565b8015158061058d575b6104f390615884565b845b818110610506578686604051908152f35b806105156105889285876158c0565b6001600160a01b0390358161053361052e85888c6158c0565b6158d0565b16895260ce8a52604089205561054d61052e83868a6158c0565b167fb65effed4883ea5c94b76be51cffe6df198456313627302a7726e8a3de19dbea8961057b84888a6158c0565b35604051908152a2614c99565b6104f5565b508082146104ea565b50600080516020615f288339815191528552606586526040808620336000908152908852205460ff166104d8565b503461049f57602036600319011261049f5760209060ff906040906001600160a01b036105ef614244565b16815260cc84522054166040519015158152f35b503461049f57606036600319011261049f576020907fc435a64a252a70e1626526c36dd5dba2119d3d877951ff6fefdea93d062ade9c60043560243561069460443561064d614647565b60ca549260cf549060d054918660ca558160cf558360d055604051968796879260a094919796959260c0850198855260208501526040840152606083015260808201520152565b0390a1604051908152f35b503461049f57602036600319011261049f5760206106c36106be614244565b614e50565b604051908152f35b503461049f576106e36106dd366144d4565b9161514b565b80f35b503461049f578060031936011261049f57602060d054604051908152f35b503461049f578060031936011261049f57602060c954604051908152f35b503461049f578060031936011261049f57602060ff60d55460a81c166040519015158152f35b503461049f578060031936011261049f576020604051600080516020615f088339815191528152f35b503461049f57602036600319011261049f5760043561078e614647565b670de0b6b3a764000081106107a35760df5580f35b604051635012e14560e01b8152600490fd5b503461049f576107c436614286565b81905b80518210156108f7576001600160a01b03806107e38484614ca8565b5116845260209060cb825260408520916040518093849183825491828152019189528389209389905b8282106108db575050506108229250038361420c565b845b82518110156108c857858260de54168361083e8487614ca8565b51168461084b8989614ca8565b5116823b156108c45760405163947f5b7760e01b81526001600160a01b039283166004820152911660248201529082908290604490829084905af180156108b9576108a1575b505061089c90614c99565b610824565b6108aa90614176565b6108b5578538610891565b8580fd5b6040513d84823e3d90fd5b8380fd5b505050906108d590614c99565b906107c7565b855487168452600195860195889550938101939091019061080c565b8280f35b503461049f57604036600319011261049f57610915614244565b6001600160a01b03908116825260cb602052604082208054602435939084101561049f575060209261094691614556565b9190546040519260031b1c168152f35b503461049f57610965366144d4565b60405163715cfdd960e01b81526001600160a01b0393841660048201819052939192602492909160209081818681305afa908115610b9e578891610d94575b50610d615785875260cc81526109c960ff6040892054166109c3614cbc565b90614ce9565b85875260cc815260016040882001928281169384600052825260ff6040600020541615610d20575b508160db54169060405163fc57d4df60e01b9081815288600482015282818881875afa908115610bd6578a91610cf3575b5015610cc15787895260d98252604089205480610be1575b50604051637f4e225760e11b815282816004818c5afa908115610bd6578a91610ba9575b5015610aed575b5050509060609360849260dc5416906040519687958694634e79238f60e01b8652600486015284015287604484015260648301525afa80156108b9576106e3918391610abc575b50610ab5615119565b9015614ce9565b610add915060603d8111610ae6575b610ad5818361420c565b8101906150fe565b91505038610aac565b503d610acb565b8190866040969596518095819382528b60048301525afa8015610b9e5786918991610b66575b50610b2d925060405190610b268261419f565b8152615e2a565b5160df548015159182610b5c575b5050610b4a5790388080610a65565b604051630b92ac0b60e11b8152600490fd5b1090503880610b3b565b8092508391503d8311610b97575b610b7e818361420c565b81010312610b925784610b2d915138610b13565b600080fd5b503d610b74565b6040513d8a823e3d90fd5b610bc99150833d8511610bcf575b610bc1818361420c565b8101906150e6565b38610a5e565b503d610bb7565b6040513d8c823e3d90fd5b6040516308f7a6e360e31b815283816004818d5afa908115610cb6578b91610c89575b50610c44604051610c14816141d6565b60118152706164646974696f6e206f766572666c6f7760781b86820152610c3b8b846149d5565b92831015614ce9565b1015610c505738610a3a565b60405162461bcd60e51b81526004810183905260128188015271189bdc9c9bddc818d85c081c995858da195960721b6044820152606490fd5b90508381813d8311610caf575b610ca0818361420c565b81010312610b92575138610c04565b503d610c96565b6040513d8d823e3d90fd5b60405162461bcd60e51b815260048101839052600b818801526a383934b1b29032b93937b960a91b6044820152606490fd5b90508281813d8311610d19575b610d0a818361420c565b81010312610b92575138610a22565b503d610d00565b610d3590610d2f8833146151f9565b33614d15565b5085875260cc815260016040882001836000528152610d5b60ff60406000205416614e33565b386109f1565b606490600d856040519262461bcd60e51b845260048401528201526c189bdc9c9bddc81c185d5cd959609a1b6044820152fd5b610dab9150823d8411610bcf57610bc1818361420c565b386109a4565b503461049f57604036600319011261049f576106e3600435610dd161425a565b908084526065602052610dea6001604086200154614841565b61494c565b503461049f578060031936011261049f5760dd546040516001600160a01b039091168152602090f35b503461049f57602036600319011261049f5760ff604060209282610e3a614314565b16815260d48452205416604051908152f35b503461049f57610e5b36614485565b505060405163241b436760e01b81526020939291508381600481305afa908115610f77578591610ff6575b50610fc2576001600160a01b0391821680855260cc8452604085205490929060ff1680610faf575b610eba906109c3614cbc565b6040518481600481635fe3b56760e01b978882525afa928315610fa45785918794610f82575b50600483949560405194859384928352165afa8015610f775782918691610f4a575b5016911603610f0f575080f35b6064906040519062461bcd60e51b8252600482015260146024820152730c6dedae0e8e4ded8d8cae440dad2e6dac2e8c6d60631b6044820152fd5b610f6a9150853d8711610f70575b610f62818361420c565b810190615233565b38610f02565b503d610f58565b6040513d87823e3d90fd5b839450610f9d600491843d8611610f7057610f62818361420c565b9450610ee0565b6040513d88823e3d90fd5b508181168552604085205460ff16610eae565b60405162461bcd60e51b815260048101849052600c60248201526b1cd95a5e99481c185d5cd95960a21b6044820152606490fd5b61100d9150843d8611610bcf57610bc1818361420c565b38610e86565b503461049f578060031936011261049f57602060ca54604051908152f35b503461049f57602036600319011261049f5760406020916004358152609783522054604051908152f35b503461049f578060031936011261049f57602060ff60d35416604051908152f35b503461049f578060031936011261049f576020604051600080516020615f288339815191528152f35b503461049f578060031936011261049f5760d8546040516001600160a01b039091168152602090f35b503461049f576110dd36614286565b80516110e88161422d565b926110f6604051948561420c565b8184526111028261422d565b6020938585019391601f1901368537825b82811061115b5750505060405193838594850191818652518092526040850193925b82811061114457505050500390f35b835185528695509381019392810192600101611135565b929593949261119190611181336001600160a01b0361117a8487614ca8565b5116614d15565b61118b8288614ca8565b52614c99565b9592949395611113565b503461049f576111aa3661440b565b604051632551091360e01b815290929150602081600481305afa908115610f77578591611217575b506111e0576106e39261514b565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c881c185d5cd959608a1b6044820152606490fd5b61122f915060203d8111610bcf57610bc1818361420c565b386111d2565b503461049f57602036600319011261049f5761124f614244565b611257614647565b60018060a01b03166001600160601b0360a01b60dd54161760dd5580f35b503461049f578060031936011261049f5760206040517f750fc7a006f78e0009a09aa4bf97546d802b8f6c9d27e623dd7cc78951321eaf8152f35b503461049f57602036600319011261049f576113006112fa6112f560ff604061131495826112dc614314565b6112e4615252565b5016815260d4602052205416615291565b6152a4565b50615318565b60405191829160208352602083019061436c565b0390f35b503461049f57602036600319011261049f57611332614244565b61133a614647565b60018060a01b03166001600160601b0360a01b60da54161760da5580f35b503461049f578060031936011261049f5760405160cd80548083529083526020808301937f83978b4c69c48dd978ab43fe30f077615294f938fb7f936d9eb340e51ea7db2e92915b8282106113c357611314856113b78189038261420c565b60405191829182614603565b83546001600160a01b0316865294850194600193840193909101906113a0565b503461049f578060031936011261049f57602060ff60d55460b81c166040519015158152f35b503461049f57602080600319360112611481576001600160a01b03918261142e614244565b16815260cb82526040812092604051908193808654938481520195845280842093915b83831061146857611314866113b7818a038261420c565b8454811687529581019560019485019490920191611451565b5080fd5b503461049f57602036600319011261049f5760209060ff906040906001600160a01b036114b0614244565b16815260cc8452205460081c16604051908152f35b503461049f5761014036600319011261049f576114e0614244565b6114e861425a565b6114f0614270565b6001600160a01b0392906064358481169190829003610b925760843590858216809203610b92576101243591868316809303610b925787549360ff8560081c1615968780986117ab575b8015611794575b156117385760ff198087166001178b558a9689611727575b508680526020998a92606584528160408a209a16998a600052845260406000205460ff16157fc435a64a252a70e1626526c36dd5dba2119d3d877951ff6fefdea93d062ade9c9a604060c09b60977fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e229883986115df966116ef575b508280525220614b17565b50816001600160601b0360a01b97168760d154161760d155670de0b6b3a764000060d25516808660db54161760db55815190600082528b820152a18260da54161760da558160dc54161760dc557f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9604060a4358060c9558151908a825289820152a160c435918260ca5560e435908160cf5561010435928360d05560de54161760de556801158e460913d0000060df556040519288845287840152876040840152606083015286608083015260a0820152a16116b9575080f35b7f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061ff0019835416835560405160018152a180f35b8380526065825284842086600052825260018560002091825416179055338584600080516020615ee88339815191528180a4386115d4565b61ffff191661010117875538611559565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156115415750600160ff871614611541565b50600160ff87161061153a565b503461049f578060031936011261049f57602090604051908152f35b503461049f57604036600319011261049f5760206106c36117f3614244565b6117fb61425a565b906158e4565b503461049f578060031936011261049f5760d1546040516001600160a01b039091168152602090f35b503461049f57602036600319011261049f576020906040906001600160a01b03611852614244565b16815260ce83522054604051908152f35b503461049f57604036600319011261049f5761187d614244565b604051637f4e225760e11b81529091602435916001600160a01b03841690602081600481855afa908115611c76578391611da6575b50611d6e5760de546040516308f7a6e360e31b81526001600160a01b0390911690602081600481865afa908115611d6357908492918391611d2b575b5090604460209260405194859384926309d3fe0b60e41b84528a600485015260248401525af18015611c7657611d00575b5080825260cc60205260408220549290602060018060a01b0360de5416916024604051809481936350e8542360e01b835260048301525afa908115611c76578391611ce1575b505b81151580611ccf575b15611cb55760018060a01b038116835260cb602052604083206040518082602082945493848152019087526020872092875b818110611c935750506119b79250038261420c565b835b8151811080611c8a575b15611afd57600460206001600160a01b036119de8486614ca8565b511660405192838092637f4e225760e11b82525afa908115610fa4578691611ade575b5015611a4a57336001600160a01b03841614611a4a576001600160a01b03611a298284614ca8565b5116855260cc60205260ff8660081c1660ff604087205460081c1614611a58575b611a5390614c99565b6119b9565b92611a7981886001600160a01b03611a708887614ca8565b51168633615be0565b9080821015611ad257611a5391611ac991611ac4604051611a99816141d6565b60158152747375627472616374696f6e20756e646572666c6f7760581b602082015282841115614ce9565b614b9c565b935b9050611a4a565b5050611a538493611acb565b611af7915060203d602011610bcf57610bc1818361420c565b38611a01565b50835b8151811080611c81575b15611c0b57600460206001600160a01b03611b258486614ca8565b511660405192838092637f4e225760e11b82525afa908115610fa4578691611bec575b5015611b9157336001600160a01b03841614611b91576001600160a01b03611b708284614ca8565b5116855260cc60205260ff8660081c1660ff604087205460081c1603611b9f575b611b9a90614c99565b611b00565b92611bb781886001600160a01b03611a708887614ca8565b9080821015611be057611b9a91611bd791611ac4604051611a99816141d6565b935b9050611b91565b5050611b9a8493611bd9565b611c05915060203d602011610bcf57610bc1818361420c565b38611b48565b505060de5460405163d99550c960e01b81526001600160a01b03878116600483015292831660248201529160209183916044918391165afa908115611c76578391611c57575b50611967565b611c70915060203d602011610f7057610f62818361420c565b38611c51565b6040513d85823e3d90fd5b50831515611b0a565b508315156119c3565b84546001600160a01b03168352600194850194869450602090930192016119a2565b50611cbd5780f35b60405163518d5aa560e11b8152600490fd5b506001600160a01b0381161515611970565b611cfa915060203d602011610f7057610f62818361420c565b38611965565b602090813d8311611d24575b611d16818361420c565b81010312610b92573861191f565b503d611d0c565b919250506020813d602011611d5b575b81611d486020938361420c565b81010312610b92575183919060446118ee565b3d9150611d3b565b6040513d86823e3d90fd5b60405162461bcd60e51b815260206004820152601060248201526f34b73b30b634b21039ba903a37b5b2b760811b6044820152606490fd5b611dbf915060203d602011610bcf57610bc1818361420c565b386118b2565b503461049f57604036600319011261049f57611ddf614244565b906001600160a01b039060019060409083611df861425a565b16815260cc60205220019116600052602052602060ff604060002054166040519015158152f35b503461049f57604036600319011261049f576040611e3b61425a565b9160043581526065602052209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b503461049f57604036600319011261049f57611e9860209160043581526097835260406024359120614556565b905460405160039290921b1c6001600160a01b03168152f35b503461049f576020908160031936011261049f57600080516020615f4883398151915260a0611ede6143cd565b8015611f55578380526065855260408420336000528552611f0660ff60406000205416615800565b15159260d55460ff60b01b8560b01b169060ff60b01b19161760d55560405190815260608582015260086060820152672a3930b739b332b960c11b6080820152836040820152a1604051908152f35b838052606585526040842033600052855260ff604060002054168015611f84575b611f7f906157bd565b611f06565b50600080516020615f088339815191528452606585526040808520336000908152908752205460ff16611f76565b503461049f57602036600319011261049f576060906040906001600160a01b03611fda614244565b16815260cc6020522060ff600282549201541660ff604051928181161515845260081c16602083015215156040820152f35b503461049f578060031936011261049f57602060ff60d55460b01c166040519015158152f35b503461049f57608036600319011261049f5761204c614244565b90602480359060ff821693848303610b92576044918235926064803593612071614647565b60018060a01b039182821697888a5260209a60cc8c5260ff60408c20541661239657156123635789806040518d810190637f4e225760e11b8252600481526120b8816141d6565b519082875af13d1561235e573d6120ce816145e8565b906120dc604051928361420c565b81528b8d3d92013e5b80612354575b1561232257888a5260cc8b52600160408b209161ff0083549160081b169061ffff191617179055889060cd54915b8281106122c4575050600160401b8110156122af5790612142826001612161940160cd55614509565b90919082549060031b9160018060a01b03809116831b921b1916179055565b6121a6604051612170816141d6565b601c81527f626c6f636b206e756d62657220657863656564732033322062697473000000008a8201526401000000004310614ce9565b60da541691823b156122ab579186929183926040519485938492633ace041560e11b84528a600485015263ffffffff4316908401525af18015610f775785879392869261228d575b50507f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f6837fb65effed4883ea5c94b76be51cffe6df198456313627302a7726e8a3de19dbea957fcf583bb0c569eb967f806b11601c4cb93c10310485c67add5f8362c2f212321f82604051868152a183895260d982528060408a2055604051908152a283855260ce8252806040862055604051908152a2604051908152f35b909294935061229c9150614176565b6108c4579084908385386121ee565b8680fd5b84634e487b7160e01b60005260416004526000fd5b89856122cf83614509565b90549060031b1c16146122ea576122e590614c99565b612119565b5060405162461bcd60e51b8152600481018c9052601481880152731b585c9ad95d08185b1c9958591e48185919195960621b81870152fd5b5060405162461bcd60e51b8152600481018b9052600e818701526d31b7b73a3930b1ba1032b93937b960911b81860152fd5b50823b15156120eb565b6120e5565b5060405162461bcd60e51b8152600481018b9052600f818701526e1a5b9d985b1a590819dc9bdd5c1259608a1b81860152fd5b60405162461bcd60e51b8152600481018d9052601581890152741b585c9ad95d08185b1c9958591e481b1a5cdd1959605a1b818801528390fd5b503461049f57602036600319011261049f576123ea614244565b6123f2614647565b6001600160a01b031661240681151561577f565b6001600160601b0360a01b60d154161760d15580f35b503461049f578060031936011261049f5760db546040516001600160a01b039091168152602090f35b503461049f5760e036600319011261049f5761245f614314565b906024356001600160401b03811161148157366023820112156114815780600401359261248b846145e8565b612498604051918261420c565b8481526020948582019336602483830101116108b5578186926024899301873783010152604435906064359360843560a4359160c435936124d7614647565b60ff80971696878a5260d48b528060408b20541660d35481108015906126a6575b15612608575060405161250a816141ba565b888152828c8201528760408201528960608201528460808201528560a08201528660c0820152600160e082015260d354600160401b8110156125f457937f878e48ed20dc6724a982e6ed357e7ad8d32f3a8550cc2d946046e3a708545e799896938a969360408f8f9060d4906125976125c79860c09f9c806001612591920160d3556152a4565b90615477565b6125a48560d35416615291565b9b835252209716968760ff19825416179055604051928392839251928391614324565b8101039020986040519586528b86015260408501526060840152608083015260a0820152a3604051908152f35b634e487b7160e01b8c52604160045260248cfd5b9798939495969250889061261b896152a4565b5054160361266e5791612591959391612669989795936040519861263e8a6141ba565b89528b89015260408801526060870152608086015260a085015260c0840152600160e08401526152a4565b6106c3565b60405162461bcd60e51b8152600481018b9052601060248201526f0cee4deeae092c840dad2e6dac2e8c6d60831b6044820152606490fd5b5088826126b2836152a4565b50541614156124f8565b503461049f57602036600319011261049f5760209060ff906040906001600160a01b036126e7614244565b16815260d684522054166040519015158152f35b503461049f57602036600319011261049f5760209060ff906040906001600160a01b03612726614244565b16815260d784522054166040519015158152f35b503461049f5761274936614485565b509192505061275a333b15156151f9565b604051637f4e225760e11b815291602083600481335afa928315611d63576106e393612787575b50615dc1565b61279e9060203d8111610bcf57610bc1818361420c565b5038612781565b503461049f576127b43661459e565b848093929352602091606583526040862033600052835260ff604060002054168015612881575b6127e490615839565b80151580612878575b6127f690615884565b855b818110612803578680f35b806128126128739285886158c0565b6001600160a01b0390358161282b61052e85888d6158c0565b168a5260d9875260408a205561284561052e83868b6158c0565b167f6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f68661057b84888b6158c0565b6127f8565b508082146127ed565b50600080516020615f288339815191528652606583526040808720336000908152908552205460ff166127db565b503461049f576128be36614485565b939092915060018060a01b0380911680865260209260cc84528260ff60408920541615918215612a72575b5050612a60576040516395dd919360e01b815293821660048501819052928085602481855afa948515612a55578795612a26575b50604051630c71782360e41b81528181600481865afa918215610b9e578892612a09575b50501561296557505050106129535780f35b60405163e46c155960e01b8152600490fd5b608460609260dc5416936040519485938492634e79238f60e01b84526004840152602483015260006044830152600060648301525afa908115611d635784916129e8575b50156129d6576129cc670de0b6b3a76400009160c95460405190610b268261419f565b5104106129535780f35b60405163095bf33360e01b8152600490fd5b612a00915060603d8111610ae657610ad5818361420c565b915050386129a9565b612a1f9250803d10610bcf57610bc1818361420c565b3880612941565b9080955081813d8311612a4e575b612a3e818361420c565b81010312610b925751933861291d565b503d612a34565b6040513d89823e3d90fd5b6040516334b04fe360e11b8152600490fd5b16875250604086205460ff161582386128e9565b503461049f57606036600319011261049f57612aa0614244565b612aa8614647565b60da546001600160a01b0390811691839190833b15612b0657606490836040519586948593635f87769b60e01b8552166004840152602435602484015260443560448401525af180156108b957612afd575080f35b6106e390614176565b8280fd5b503461049f576020908160031936011261049f577f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e612b47614244565b612b4f614647565b6001600160a01b0390811690612b6682151561577f565b612c1e8160d5541692600080516020615f088339815191528087526065808952612b96600160408a200154614841565b81885280895260408820868952895260ff604089205416612c80575b81885260978952612bc68660408a20614ba9565b50826001600160601b0360a01b60d554161760d555818852808952612bf1600160408a200154614841565b81885280895260408820838952895260ff60408920541615612c49575b5086526097875260408620614b17565b5060d554604080516001600160a01b0394851681529290911690921660208201529081908101610694565b8188528852604080882083895289528720805460ff19166001179055338282600080516020615ee88339815191528a80a438612c0e565b8188528089526040808920878a528a528820805460ff191690553386837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8b80a4612bb2565b503461049f57602036600319011261049f57612ce0614244565b60dc54604051634e79238f60e01b81526001600160a01b0392831660048201526024810184905260448101849052606481018490529160609183916084918391165afa80156108b95782918391612d54575b5061131490604051938493846040919493926060820195825260208201520152565b90506113149250612d73915060603d8111610ae657610ad5818361420c565b9092612d32565b503461049f57612d89366144d4565b5061275a333b15156151f9565b503461049f57602036600319011261049f576020907fd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e22612dd4614244565b612ddc614647565b60db80546001600160a01b039283166001600160a01b03198216811790925560408051939091168352602083019190915281908101610694565b503461049f578060031936011261049f5760dc546040516001600160a01b039091168152602090f35b503461049f57602036600319011261049f576004359060cd5482101561049f576020611e9883614509565b503461049f57612e793661444c565b159250905081612e9e575b50612e8c5780f35b604051631812515160e11b8152600490fd5b9050151538612e84565b503461049f57612eb7366144d4565b604051635a0f74a760e01b81526001600160a01b0393841660048201819052602094929390929185816024818a305af1908115612a5557879161319c575b506131695782865260cc8552612f1460ff6040882054166109c3614cbc565b6040516361bfb47160e11b81529181166004830181905291608081602481875afa8015612a5557878892899261312f575b50612f5290610ab5614e09565b84885260cc875260016040892001848952875260ff604089205416159182613126575b508161311d575b506130a4575b505080845260ce83526040842054159182159182612fe0575b50505015612fa7575080f35b6064906040519062461bcd60e51b8252600482015260126024820152711cdd5c1c1b1e4818d85c081c995858da195960721b6044820152fd5b9192509082612ff4575b5050388080612f9b565b6040516318160ddd60e01b81529250908383600481855afa928315610f7757859361306f575b5061305b906130526040519161302f836141d6565b60118352706164646974696f6e206f766572666c6f7760781b87840152856149d5565b93841015614ce9565b835260ce8252604083205410153880612fea565b9092508381813d831161309d575b613087818361420c565b8101031261309957519161305b61301a565b8480fd5b503d61307d565b8233036130e0576130b59033614d15565b5081855260cc84526001604086200190855283526130d960ff604086205416614e33565b3880612f82565b60405162461bcd60e51b815260048101869052601560248201527439b2b73232b91036bab9ba1031329031aa37b5b2b760591b6044820152606490fd5b90501538612f7c565b15915038612f75565b9050612f529250613157915060803d8111613162575b61314f818361420c565b810190614de7565b509290929190612f45565b503d613145565b60405162461bcd60e51b815260048101869052600b60248201526a1b5a5b9d081c185d5cd95960aa1b6044820152606490fd5b6131b39150863d8811610bcf57610bc1818361420c565b38612ef5565b503461049f578060031936011261049f57602060cf54604051908152f35b503461049f5760606131e83661444c565b60dc54604051634e79238f60e01b81526001600160a01b03958616600482015293851660248501526044840192909252606483015290929183916084918391165afa80156108b95782918391612d54575061131490604051938493846040919493926060820195825260208201520152565b503461049f578060031936011261049f5760d5546040516001600160a01b039091168152602090f35b503461049f578060031936011261049f5760ca5460cf5460d05460408051938452602084019290925290820152606090f35b503461049f57602036600319011261049f576020906040906001600160a01b036132dd614244565b16815260d983522054604051908152f35b503461049f578060031936011261049f57602060d254604051908152f35b503461049f5761131461332a61332136614485565b93929092615a52565b604080519687526020870195909552938501929092526060840152608083015260a082015290819060c0820190565b503461049f578060031936011261049f57602060ff60d55460a01c166040519015158152f35b503461049f5760206133903661444c565b60dc546040516354f2052160e11b81526001600160a01b03958616600482015293851660248501526044840192909252606483015290929183916084918391165afa9081156108b95782916133eb575b602082604051908152f35b90506020813d8211613418575b816134056020938361420c565b81010312611481576020915051386133e0565b3d91506133f8565b503461049f57602090600080516020615f4883398151915260a06040613490613448366143dc565b92839182156134c25787805260658952818820338952895261346f60ff838a205416615800565b600180871b03169687815260d68952209060ff801983541691151516179055565b6040519384526060858501526004606085015263135a5b9d60e21b6080850152151592836040820152a1604051908152f35b87805260658952818820338952895260ff828920541680156134ed575b6134e8906157bd565b61346f565b50600080516020615f0883398151915288526065895281882033895289528188205460ff166134df565b503461049f57602080600319360112611481577feda98690e518e9a05f8ec6837663e188211b2da8f4906648b323f2c1d4434e2990613554614244565b9061355d614647565b61362a6001600160a01b038381169060979061357a83151561577f565b60d8541693600080516020615f2883398151915280895260658083526135a6600160408c200154614841565b818a5280835260408a20878b52835260ff60408b205416613681575b818a528383526135d58760408c20614ba9565b50846001600160601b0360a01b60d854161760d855818a52808352613600600160408c200154614841565b818a5280835260408a20858b52835260ff60408b2054161561364a575b5088525260408620614b17565b50604080516001600160a01b03928316815292909116602083015290a180f35b818a5282526040808a20858b5283528920805460ff19166001179055338482600080516020615ee88339815191528c80a43861361d565b818a528083526040808b20888c5284528a20805460ff191690553387837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8d80a46135c2565b503461049f57604036600319011261049f576136e161425a565b336001600160a01b038216036136fd576106e39060043561494c565b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b503461049f578060031936011261049f5760da546040516001600160a01b039091168152602090f35b503461049f578060031936011261049f5760d3546137a08161422d565b906137ae604051928361420c565b80825260d3835260209283830191817f915c3eb987b20e1af620c1403197bf687fb7f18513b3a73fde6e78c7072c41a6845b8383106138455750505050604051928484019085855251809152604084019460408260051b8601019392955b8287106138195785850386f35b909192938280613835600193603f198a8203018652885161436c565b960192019601959291909261380c565b600888600192613858859b9a989b615318565b815201920192019190969395966137e0565b503461049f578060031936011261049f5760de546040516001600160a01b039091168152602090f35b503461049f57602036600319011261049f57600435906138b1614647565b81156138f7577f3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9604060209360c954908060c955825191825285820152a1604051908152f35b60405162461bcd60e51b815260206004820152601460248201527334b73b30b634b21031b637b9b2903330b1ba37b960611b6044820152606490fd5b503461049f57604036600319011261049f576139a5600435609761395561425a565b91808552602090606582526139706001604088200154614841565b8086526065825260408087206001600160a01b0390951680885294835286205460ff16156139a9575b85525260408320614b17565b5080f35b80865260658252604080872085885283528620805460ff19166001179055338482600080516020615ee88339815191528980a4613999565b503461049f576020908160031936011261049f57600080516020615f4883398151915260a0613a0e6143cd565b8015613a805783805260658552604084203385528552613a3460ff604086205416615800565b15159260d55460ff60b81b8560b81b169060ff60b81b19161760d55560405190815260608582015260056060820152645365697a6560d81b6080820152836040820152a1604051908152f35b8380526065855260408420338552855260ff6040852054168015613aad575b613aa8906157bd565b613a34565b50600080516020615f088339815191528452606585526040808520338652865284205460ff16613a9f565b503461049f576020908160031936011261049f57613af4614314565b613afc614647565b60ff8060d35416908080613b126112f585615291565b50541693169283855260d486528160408620541691613b336112f585615291565b50613b3d846152a4565b919091613c29579181838a96947f3142b1d766c6799b48d5083bdb3ef6e5a2d93657c1a073fba6c4cf5a93f3d0be98969403613bb4575b505050865260d483526040862060ff199182825416179055613b946156a8565b84865260d4835260408620908154169055604051908152a2604051908152f35b82600782613c21958294541660ff19865416178555613bd960018201600187016155d0565b600281015460028601556003810154600386015560048101546004860155600581015460058601556006810154600686015501541691019060ff801983541691151516179055565b388080613b74565b634e487b7160e01b88526004889052602488fd5b503461049f57602036600319011261049f5760016040602092600435815260658452200154604051908152f35b503461049f57602036600319011261049f57611314611300613c8a614314565b615753565b503461049f57613c9e3661440b565b5050506001600160a01b0316815260cc60205260408120546106e39060ff166109c3614cbc565b503461049f5760a036600319011261049f57613cdf614244565b613ce761425a565b50613cf0614270565b61275a333b15156151f9565b503461049f578060031936011261049f57805b60d3549060ff918282161015613d4c57613d4791613d2c826152a4565b505416835260d460205260408320805460ff19169055615742565b613d0f565b8260ff8060d35416825b8183821610613d63578380f35b613d7490613d6f6156a8565b615742565b613d56565b503461049f57602090600080516020615f4883398151915260a06040613de9613da1366143dc565b9283918215613e1d57878052606589528188203389528952613dc860ff838a205416615800565b600180871b03169687815260d78952209060ff801983541691151516179055565b6040519384526060858501526006606085015265426f72726f7760d01b6080850152151592836040820152a1604051908152f35b87805260658952818820338952895260ff82892054168015613e48575b613e43906157bd565b613dc8565b50600080516020615f0883398151915288526065895281882033895289528188205460ff16613e3a565b503461049f57602036600319011261049f576113146113006112fa613e95614314565b613e9d615252565b506152a4565b503461049f578060031936011261049f57602060df54604051908152f35b503461049f57602036600319011261049f57613edb614244565b613ee3614647565b60018060a01b03166001600160601b0360a01b60de54161760de5580f35b503461049f57602036600319011261049f57613f1b614244565b613f23614647565b60018060a01b03166001600160601b0360a01b60dc54161760dc5580f35b503461049f57613f5036614286565b613f58614647565b805191805b60cd548110156139a557613f7081614509565b90546001600160a01b0360039290921b1c811690835b868110613f9e57505050613f9990614c99565b613f5d565b81613fad828894959698614ca8565b51166040516370a0823160e01b8152816004820152602091602491838184818b5afa9081156140b25789916140bd575b501580159061404e575b614002575b505050613ff890614c99565b9492919094613f86565b61400c9087614d15565b6140165780613fec565b9060126064926040519262461bcd60e51b8452600484015282015271185919151bd3585c9ad95d0819985a5b195960721b6044820152fd5b506040516305eff7ef60e21b815260048101829052838184818c8c5af19081156140b2578991614081575b501515613fe7565b90508381813d83116140ab575b614098818361420c565b810103126140a7575138614079565b8880fd5b503d61408e565b6040513d8b823e3d90fd5b90508381813d83116140e3575b6140d4818361420c565b810103126140a7575138613fdd565b503d6140ca565b503461049f57602036600319011261049f5760043563ffffffff60e01b811680910361148157602090635a05180f60e01b8114908115614130575b506040519015158152f35b637965db0b60e01b81149150811561414a575b5082614125565b6301ffc9a760e01b14905082614143565b90503461148157816003193601126114815780600160209252f35b6001600160401b03811161418957604052565b634e487b7160e01b600052604160045260246000fd5b602081019081106001600160401b0382111761418957604052565b61010081019081106001600160401b0382111761418957604052565b604081019081106001600160401b0382111761418957604052565b608081019081106001600160401b0382111761418957604052565b90601f801991011681019081106001600160401b0382111761418957604052565b6001600160401b0381116141895760051b60200190565b600435906001600160a01b0382168203610b9257565b602435906001600160a01b0382168203610b9257565b604435906001600160a01b0382168203610b9257565b602080600319830112610b9257600435916001600160401b038311610b925780602384011215610b925782600401356142be8161422d565b936142cc604051958661420c565b81855260248486019260051b820101928311610b9257602401905b8282106142f5575050505090565b81356001600160a01b0381168103610b925781529083019083016142e7565b6004359060ff82168203610b9257565b60005b8381106143375750506000910152565b8181015183820152602001614327565b9060209161436081518092818552858086019101614324565b601f01601f1916010190565b9060ff825116815260e0806143906020850151610100806020870152850190614347565b9360408101516040850152606081015160608501526080810151608085015260a081015160a085015260c081015160c08501520151151591015290565b600435908115158203610b9257565b6040906003190112610b92576004356001600160a01b0381168103610b9257906024358015158103610b925790565b6080906003190112610b92576001600160a01b036004358181168103610b9257916024358281168103610b9257916044359081168103610b92579060643590565b6080906003190112610b92576001600160a01b03906004358281168103610b9257916024359081168103610b9257906044359060643590565b60a0906003190112610b92576001600160a01b03906004358281168103610b9257916024358181168103610b9257916044358281168103610b9257916064359081168103610b92579060843590565b6060906003190112610b92576001600160a01b03906004358281168103610b9257916024359081168103610b92579060443590565b60cd548110156145405760cd6000527f83978b4c69c48dd978ab43fe30f077615294f938fb7f936d9eb340e51ea7db2e0190600090565b634e487b7160e01b600052603260045260246000fd5b80548210156145405760005260206000200190600090565b9181601f84011215610b92578235916001600160401b038311610b92576020808501948460051b010111610b9257565b6040600319820112610b92576001600160401b0391600435838111610b9257826145ca9160040161456e565b93909392602435918211610b92576145e49160040161456e565b9091565b6001600160401b03811161418957601f01601f191660200190565b6020908160408183019282815285518094520193019160005b82811061462a575050505090565b83516001600160a01b03168552938101939281019260010161461c565b3360009081527fffdfc1249c027f9191656349feb0761381bb32c9f557e01f419fd08754bf5a1b602090815260408083205490929060ff161561468957505050565b61469233614a09565b90808451906146a0826141f1565b6042825284820192606036853782511561482d576030845382519060019182101561482d5790607860218501536041915b8183116147bf5750505061477d57604861477993869361475d9361474e985198899376020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8a860152614725815180928c603789019101614324565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190614324565b0103602881018752018561420c565b5192839262461bcd60e51b845260048401526024830190614347565b0390fd5b60648486519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015614819576f181899199a1a9b1b9c1cb0b131b232b360811b901a6147ef85876149f8565b5360041c928015614805576000190191906146d1565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b60009080825260209060658252604092838120338252835260ff84822054161561486b5750505050565b61487433614a09565b91845190614881826141f1565b6042825284820192606036853782511561482d576030845382519060019182101561482d5790607860218501536041915b8183116149065750505061477d57604861477993869361475d9361474e985198899376020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8a860152614725815180928c603789019101614324565b909192600f81166010811015614819576f181899199a1a9b1b9c1cb0b131b232b360811b901a61493685876149f8565b5360041c928015614805576000190191906148b2565b90604061498a9260009080825260656020528282209360018060a01b03169384835260205260ff838320541661498d575b8152609760205220614ba9565b50565b808252606560205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a461497d565b919082018092116149e257565b634e487b7160e01b600052601160045260246000fd5b908151811015614540570160200190565b60405190606082018281106001600160401b0382111761418957604052602a82526020820160403682378251156145405760309053815160019081101561454057607860218401536029905b808211614aa9575050614a655790565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b9091600f81166010811015614b02576f181899199a1a9b1b9c1cb0b131b232b360811b901a614ad884866149f8565b5360041c918015614aed576000190190614a55565b60246000634e487b7160e01b81526011600452fd5b60246000634e487b7160e01b81526032600452fd5b91906001830160009082825280602052604082205415600014614b9657845494600160401b861015614b825783614b72614b5b886001604098999a01855584614556565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b919082039182116149e257565b90600182019060009281845282602052604084205490811515600014614c925760001991808301818111614c7e57825490848201918211614c6a57808203614c35575b50505080548015614c2157820191614c048383614556565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b614c55614c45614b5b9386614556565b90549060031b1c92839286614556565b90558652846020526040862055388080614bec565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b87526011600452602487fd5b5050505090565b60001981146149e25760010190565b80518210156145405760209160051b010190565b60405190614cc9826141d6565b60118252701b585c9ad95d081b9bdd081b1a5cdd1959607a1b6020830152565b15614cf15750565b60405162461bcd60e51b815260206004820152908190614779906024830190614347565b6001600160a01b03808216600090815260cc60205260408120805491949392600192614d469060ff166109c3614cbc565b841685520160205260408320805460ff8116614c925760ff1916600117905560cb60205260408320805490600160401b821015614dd3578261214283614db49360017f3ab23ab0d51cccc0c3085aec51f99228625aa1a922b3a8ca89a26b0f2027a1a5989796018155614556565b604080516001600160a01b03928316815292909116602083015290a190565b634e487b7160e01b85526041600452602485fd5b9190826080910312610b92578151916020810151916060604083015192015190565b60405190614e16826141d6565b600e82526d39b730b839b437ba1032b93937b960911b6020830152565b15614e3a57565b634e487b7160e01b600052600160045260246000fd5b604080516361bfb47160e11b81523360048201526001600160a01b03838116939091608081602481885afa80156150db576000809281926150b1575b50614e9990610ab5614e09565b61507457614ea890338361514b565b8360005260209260cc845260019384826000200133600052815281600020805460ff8116156150675760ff1916905560cb8152816000209482519081968791848254948581520191600052846000209060005b8686821061504f5750505050614f139250038661420c565b845194859660005b88811061501d575b505050614f37859660cb9394959610614e33565b33600052528060002092835494600019958681019081116149e257614f939183614f64614f6e9389614556565b9390549289614556565b92909360031b1c169082549060031b9160018060a01b03809116831b921b1916179055565b8354938415615007577fe699a64c18b07ac5b7301aa273f36a2287239eb9501d81950672794afba29a0d95614fff950191614fce8383614556565b815460039190911b9290921b19909116905555516001600160a01b0390911681523360208201529081906040820190565b0390a1600090565b634e487b7160e01b600052603160045260246000fd5b81876150298386614ca8565b51161461503e5761503990614c99565b614f1b565b9650614f37915060cb905038614f23565b83548b1685528b955090930192918101918101614efb565b5050505050505050600090565b835162461bcd60e51b81526020600482015260166024820152756e6f6e7a65726f20626f72726f772062616c616e636560501b6044820152606490fd5b9050614e9992506150d0915060803d81116131625761314f818361420c565b509290929190614e8c565b84513d6000823e3d90fd5b90816020910312610b9257518015158103610b925790565b90816060910312610b92578051916040602083015192015190565b60405190615126826141d6565b6016825275696e73756666696369656e74206c697175696469747960501b6020830152565b6001600160a01b03908116600081815260cc60205260408120549095949391929061517b9060ff166109c3614cbc565b82865260cc602052806001604088200192169182875260205260ff604087205416156151f1576060929160849160dc54166040519586948593634e79238f60e01b85526004850152602484015260448301528760648301525afa908115611c76576151ef929391610abc5750610ab5615119565b565b505050509050565b1561520057565b60405162461bcd60e51b815260206004820152600b60248201526a37b7363c9031ba37b5b2b760a91b6044820152606490fd5b90816020910312610b9257516001600160a01b0381168103610b925790565b6040519061525f826141ba565b8160e0600091828152606060208201528260408201528260608201528260808201528260a08201528260c08201520152565b60ff6000199116019060ff82116149e257565b60d3548110156145405760d360005260031b7f915c3eb987b20e1af620c1403197bf687fb7f18513b3a73fde6e78c7072c41a60190600090565b90600182811c9216801561530e575b60208310146152f857565b634e487b7160e01b600052602260045260246000fd5b91607f16916152ed565b90604051615325816141ba565b809260ff8154168252600180820160405191600091805490615346826152de565b808652918381169081156153f157506001146153b5575b50505060e0928261537460ff94600794038261420c565b6020860152600281015460408601526003810154606086015260048101546080860152600581015460a0860152600681015460c08601520154161515910152565b90925060005260209182600020916000925b8284106153de57505050820101828261537461535d565b80548685018601529284019281016153c7565b60ff191660208088019190915292151560051b86019092019350859250849150615374905061535d565b818110615426575050565b6000815560010161541b565b9190601f811161544157505050565b6151ef926000526020600020906020601f840160051c8301931061546d575b601f0160051c019061541b565b9091508190615460565b906155ba5760ff82511660ff19825416178155600191828201602080830151948551916001600160401b038311614189576154bc836154b686546152de565b86615432565b80601f8411600114615546575091808060e09593600797956151ef9a60009461553b575b50501b916000199060031b1c19161790555b60408101516002850155606081015160038501556080810151600485015560a0810151600585015560c081015160068501550151151591019060ff801983541691151516179055565b0151925038806154e0565b9193949596601f1984168660005283600020936000905b8282106155a35750509260e0959285926151ef9a9996600799961061558a575b505050811b0190556154f2565b015160001960f88460031b161c1916905538808061557d565b80888697829497870151815501960194019061555d565b634e487b7160e01b600052600060045260246000fd5b908082146156a4576155e281546152de565b906001600160401b038211614189578190615601826154b686546152de565b600090601f83116001146156385760009261562d575b50508160011b916000199060031b1c1916179055565b015490503880615617565b81526020808220858352818320935090601f1985169083905b82821061568b575050908460019594939210615672575b505050811b019055565b015460001960f88460031b161c19169055388080615668565b8495819295850154815560018091019601940190615651565b5050565b60d354801561500757600019016156be816152a4565b6155ba57600760009182815582600182016156d981546152de565b80615705575b50506002820155826003820155826004820155826005820155826006820155015560d355565b82601f821160011461571d575050555b8238806156df565b909180825261573b601f60208420940160051c84016001850161541b565b5555615715565b60ff1660ff81146149e25760010190565b60ff9061575e615252565b501660005260d460205261577c6112fa60ff604060002054166152a4565b90565b1561578657565b60405162461bcd60e51b815260206004820152600f60248201526e696e76616c6964206164647265737360881b6044820152606490fd5b156157c457565b60405162461bcd60e51b815260206004820152601460248201527337b7363c9030b236b4b71037b9103830bab9b2b960611b6044820152606490fd5b1561580757565b60405162461bcd60e51b815260206004820152600a60248201526937b7363c9030b236b4b760b11b6044820152606490fd5b1561584057565b606460405162461bcd60e51b815260206004820152602060248201527f6f6e6c792061646d696e206f72206361707065722063616e20736574206361706044820152fd5b1561588b57565b60405162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081a5b9c1d5d609a1b6044820152606490fd5b91908110156145405760051b0190565b356001600160a01b0381168103610b925790565b60018060a01b038091169060009082825260209060cc825260409460ff868520541615615a4157169283835260cc825260ff858420541615615a305780835260cc825260ff8584205460081c169380845260ff8685205460081c16928651928184600481637f4e225760e11b948582525afa938415615a26578694615a05575b508190600489518095819382525afa9485156159fa57946159db575b5050156159bb5782036159ad57156159a05761599b90615753565b015190565b6060915061599b90615753565b5060a0915061599b90615753565b9192505081036159d05761599b608091615753565b61599b60c091615753565b6159f2929450803d10610bcf57610bc1818361420c565b913880615980565b8751903d90823e3d90fd5b82919450615a1f90823d8411610bcf57610bc1818361420c565b9390615964565b88513d88823e3d90fd5b84516334b04fe360e11b8152600490fd5b85516334b04fe360e11b8152600490fd5b9394936001600160a01b03929190831683821614615bcc578260de54169060409687519463629430f960e11b8652602086600481875afa958615615bc157600096615b8d575b5060db548951635dfab59d60e11b815260048101939093526001600160a01b03938416602484015294831660448301529582166064820152949092169091166084840152608090839060a49082906000905af19081156150db576000938485948694615b64575b5085158015615b5c575b615b4b5786615b449184611ac4989951615b228161419f565b52670de0b6b3a7640000615b368683615e56565b0497889251611a99816141d6565b9493929190565b506000955085945084939291508390565b508015615b09565b929450509350615b82915060803d81116131625761314f818361420c565b929490939138615aff565b90956020823d8211615bb9575b81615ba76020938361420c565b8101031261049f575051946080615a98565b3d9150615b9a565b89513d6000823e3d90fd5b506000945084938493508392508291508190565b60de5460408051631588aa8d60e11b815294959394926001600160a01b03926020919084168286600481845afa9586156150db57600096615d92575b5060db548451635dfab59d60e11b8152600481019b909b526001600160a01b0389811660248d01528a811660448d015288811660648d01529086161660848b01528960a4815a608094600091f1958615615d50576000998a97615d6a575b508915615d5b5784169380808551936372cd916760e01b8552169889600485015216988960248401528a6044840152169485606483015286608483015260a4820152818160c4816000885af18015615d5057615d1b575b50907fa99c28e2353d54c85eddfc29c44a1c922aa0878a5934b0c7d9e75552d5e210189660c096959493928251968752860152840152856060840152608083015260a0820152a190565b9080969594939291813d8311615d49575b615d36818361420c565b81010312610b9257909192939438615cd1565b503d615d2c565b83513d6000823e3d90fd5b50505050505050505050600090565b909650615d8691995060803d81116131625761314f818361420c565b50509890989538615c7a565b90958382813d8311615dba575b615da9818361420c565b8101031261049f5750519438615c1c565b503d615d9f565b60de546001600160a01b031691823b15610b925760405163947f5b7760e01b81526001600160a01b03928316600482015291166024820152906000908290604490829084905af18015615e1e57615e155750565b6151ef90614176565b6040513d6000823e3d90fd5b90615e44916000604051615e3d8161419f565b5251615e56565b60405190615e518261419f565b815290565b61577c9160405191615e67836141d6565b601783527f6d756c7469706c69636174696f6e206f766572666c6f77000000000000000000602084015291821591828015615edf575b615ed657808402938404928382148117156149e257615ec05761577c9214614ce9565b634e487b7160e01b600052601260045260246000fd5b50505050600090565b508015615e9d56fe2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a585dbb3f830c4325b9ffb1ad42c16ada76c518747b0fb7ee297b261fc6a0f29f71aec636243f9709bb0007ae15e9afb8150ab01716d75fd7573be5cc096e03b0a2646970667358221220604eaec1d2923db2e6535e31ef35268a8a48258d681757f268287970777d74fa64736f6c63430008130033";
2660
- const isSuperArgs = (xs) => xs.length > 1;
2661
- class Comptroller__factory extends ethers_1.ContractFactory {
2662
- constructor(...args) {
2663
- if (isSuperArgs(args)) {
2664
- super(...args);
2665
- }
2666
- else {
2667
- super(_abi, _bytecode, args[0]);
2668
- }
2669
- }
2670
- getDeployTransaction(overrides) {
2671
- return super.getDeployTransaction(overrides || {});
2672
- }
2673
- deploy(overrides) {
2674
- return super.deploy(overrides || {});
2675
- }
2676
- connect(runner) {
2677
- return super.connect(runner);
2678
- }
2679
- static createInterface() {
2680
- return new ethers_1.Interface(_abi);
2681
- }
2682
- static connect(address, runner) {
2683
- return new ethers_1.Contract(address, _abi, runner);
2684
- }
2685
- }
2686
- exports.Comptroller__factory = Comptroller__factory;
2687
- Comptroller__factory.bytecode = _bytecode;
2688
- Comptroller__factory.abi = _abi;
2689
- //# sourceMappingURL=Comptroller__factory.js.map