@ubk-labs/ubk-oracle 0.1.5 → 0.1.7

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 (24) hide show
  1. package/contracts/constants/UBKOracleConstants.sol +6 -5
  2. package/contracts/core/UBKOracle.sol +58 -33
  3. package/contracts/errors/UBKOracleErrors.sol +1 -1
  4. package/contracts/imports/UBKImports.sol +14 -0
  5. package/interfaces/IUBKOracle.sol +90 -6
  6. package/package.json +4 -4
  7. package/artifacts/contracts/constants/UBKOracleConstants.sol/UBKOracleConstants.dbg.json +0 -4
  8. package/artifacts/contracts/constants/UBKOracleConstants.sol/UBKOracleConstants.json +0 -141
  9. package/artifacts/contracts/core/UBKOracle.sol/UBKOracle.dbg.json +0 -4
  10. package/artifacts/contracts/core/UBKOracle.sol/UBKOracle.json +0 -1028
  11. package/artifacts/contracts/mocks/MockAggregatorV3.sol/MockAggregatorV3.dbg.json +0 -4
  12. package/artifacts/contracts/mocks/MockAggregatorV3.sol/MockAggregatorV3.json +0 -177
  13. package/artifacts/contracts/mocks/MockERC20.sol/MockERC20.dbg.json +0 -4
  14. package/artifacts/contracts/mocks/MockERC20.sol/MockERC20.json +0 -381
  15. package/artifacts/contracts/mocks/MockERC4626.sol/Mock4626.dbg.json +0 -4
  16. package/artifacts/contracts/mocks/MockERC4626.sol/Mock4626.json +0 -500
  17. package/artifacts/contracts/mocks/MockIERC4626.sol/MockIERC4626.dbg.json +0 -4
  18. package/artifacts/contracts/mocks/MockIERC4626.sol/MockIERC4626.json +0 -99
  19. package/artifacts/interfaces/IUBKOracle.sol/IUBKOracle.dbg.json +0 -4
  20. package/artifacts/interfaces/IUBKOracle.sol/IUBKOracle.json +0 -312
  21. package/contracts/mocks/MockAggregatorV3.sol +0 -56
  22. package/contracts/mocks/MockERC20.sol +0 -28
  23. package/contracts/mocks/MockERC4626.sol +0 -74
  24. package/contracts/mocks/MockIERC4626.sol +0 -13
@@ -1,1028 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "UBKOracle",
4
- "sourceName": "contracts/core/UBKOracle.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "_owner",
11
- "type": "address"
12
- }
13
- ],
14
- "stateMutability": "nonpayable",
15
- "type": "constructor"
16
- },
17
- {
18
- "inputs": [
19
- {
20
- "internalType": "address",
21
- "name": "vault",
22
- "type": "address"
23
- }
24
- ],
25
- "name": "InvalidERC4626Vault",
26
- "type": "error"
27
- },
28
- {
29
- "inputs": [
30
- {
31
- "internalType": "address",
32
- "name": "feed",
33
- "type": "address"
34
- }
35
- ],
36
- "name": "InvalidFeedContract",
37
- "type": "error"
38
- },
39
- {
40
- "inputs": [
41
- {
42
- "internalType": "address",
43
- "name": "feed",
44
- "type": "address"
45
- },
46
- {
47
- "internalType": "uint8",
48
- "name": "decimals",
49
- "type": "uint8"
50
- }
51
- ],
52
- "name": "InvalidFeedDecimals",
53
- "type": "error"
54
- },
55
- {
56
- "inputs": [
57
- {
58
- "internalType": "address",
59
- "name": "token",
60
- "type": "address"
61
- },
62
- {
63
- "internalType": "uint256",
64
- "name": "price",
65
- "type": "uint256"
66
- }
67
- ],
68
- "name": "InvalidManualPrice",
69
- "type": "error"
70
- },
71
- {
72
- "inputs": [
73
- {
74
- "internalType": "address",
75
- "name": "token",
76
- "type": "address"
77
- },
78
- {
79
- "internalType": "address",
80
- "name": "feed",
81
- "type": "address"
82
- }
83
- ],
84
- "name": "InvalidOraclePrice",
85
- "type": "error"
86
- },
87
- {
88
- "inputs": [
89
- {
90
- "internalType": "uint256",
91
- "name": "period",
92
- "type": "uint256"
93
- }
94
- ],
95
- "name": "InvalidStalePeriod",
96
- "type": "error"
97
- },
98
- {
99
- "inputs": [
100
- {
101
- "internalType": "address",
102
- "name": "vault",
103
- "type": "address"
104
- },
105
- {
106
- "internalType": "uint256",
107
- "name": "minRate",
108
- "type": "uint256"
109
- },
110
- {
111
- "internalType": "uint256",
112
- "name": "maxRate",
113
- "type": "uint256"
114
- }
115
- ],
116
- "name": "InvalidVaultBounds",
117
- "type": "error"
118
- },
119
- {
120
- "inputs": [
121
- {
122
- "internalType": "address",
123
- "name": "vault",
124
- "type": "address"
125
- },
126
- {
127
- "internalType": "uint256",
128
- "name": "rate",
129
- "type": "uint256"
130
- }
131
- ],
132
- "name": "InvalidVaultExchangeRate",
133
- "type": "error"
134
- },
135
- {
136
- "inputs": [
137
- {
138
- "internalType": "address",
139
- "name": "token",
140
- "type": "address"
141
- }
142
- ],
143
- "name": "NoFallbackPrice",
144
- "type": "error"
145
- },
146
- {
147
- "inputs": [
148
- {
149
- "internalType": "address",
150
- "name": "token",
151
- "type": "address"
152
- }
153
- ],
154
- "name": "NoPriceFeed",
155
- "type": "error"
156
- },
157
- {
158
- "inputs": [
159
- {
160
- "internalType": "address",
161
- "name": "oracle",
162
- "type": "address"
163
- },
164
- {
165
- "internalType": "uint256",
166
- "name": "timestamp",
167
- "type": "uint256"
168
- }
169
- ],
170
- "name": "OraclePaused",
171
- "type": "error"
172
- },
173
- {
174
- "inputs": [
175
- {
176
- "internalType": "address",
177
- "name": "owner",
178
- "type": "address"
179
- }
180
- ],
181
- "name": "OwnableInvalidOwner",
182
- "type": "error"
183
- },
184
- {
185
- "inputs": [
186
- {
187
- "internalType": "address",
188
- "name": "account",
189
- "type": "address"
190
- }
191
- ],
192
- "name": "OwnableUnauthorizedAccount",
193
- "type": "error"
194
- },
195
- {
196
- "inputs": [
197
- {
198
- "internalType": "address",
199
- "name": "token",
200
- "type": "address"
201
- }
202
- ],
203
- "name": "RecursiveResolution",
204
- "type": "error"
205
- },
206
- {
207
- "inputs": [
208
- {
209
- "internalType": "address",
210
- "name": "token",
211
- "type": "address"
212
- }
213
- ],
214
- "name": "StaleFallback",
215
- "type": "error"
216
- },
217
- {
218
- "inputs": [
219
- {
220
- "internalType": "address",
221
- "name": "token",
222
- "type": "address"
223
- },
224
- {
225
- "internalType": "uint256",
226
- "name": "updatedAt",
227
- "type": "uint256"
228
- },
229
- {
230
- "internalType": "uint256",
231
- "name": "currentTime",
232
- "type": "uint256"
233
- }
234
- ],
235
- "name": "StalePrice",
236
- "type": "error"
237
- },
238
- {
239
- "inputs": [
240
- {
241
- "internalType": "address",
242
- "name": "vault",
243
- "type": "address"
244
- },
245
- {
246
- "internalType": "uint256",
247
- "name": "rate",
248
- "type": "uint256"
249
- }
250
- ],
251
- "name": "SuspiciousVaultRate",
252
- "type": "error"
253
- },
254
- {
255
- "inputs": [
256
- {
257
- "internalType": "string",
258
- "name": "functionName",
259
- "type": "string"
260
- },
261
- {
262
- "internalType": "string",
263
- "name": "field",
264
- "type": "string"
265
- }
266
- ],
267
- "name": "ZeroAddress",
268
- "type": "error"
269
- },
270
- {
271
- "anonymous": false,
272
- "inputs": [
273
- {
274
- "indexed": true,
275
- "internalType": "address",
276
- "name": "token",
277
- "type": "address"
278
- },
279
- {
280
- "indexed": true,
281
- "internalType": "address",
282
- "name": "feed",
283
- "type": "address"
284
- }
285
- ],
286
- "name": "ChainlinkFeedSet",
287
- "type": "event"
288
- },
289
- {
290
- "anonymous": false,
291
- "inputs": [
292
- {
293
- "indexed": true,
294
- "internalType": "address",
295
- "name": "vault",
296
- "type": "address"
297
- },
298
- {
299
- "indexed": true,
300
- "internalType": "address",
301
- "name": "underlying",
302
- "type": "address"
303
- }
304
- ],
305
- "name": "ERC4626Registered",
306
- "type": "event"
307
- },
308
- {
309
- "anonymous": false,
310
- "inputs": [
311
- {
312
- "indexed": false,
313
- "internalType": "uint256",
314
- "name": "newPeriod",
315
- "type": "uint256"
316
- }
317
- ],
318
- "name": "FallbackStalePeriodUpdated",
319
- "type": "event"
320
- },
321
- {
322
- "anonymous": false,
323
- "inputs": [
324
- {
325
- "indexed": true,
326
- "internalType": "address",
327
- "name": "token",
328
- "type": "address"
329
- },
330
- {
331
- "indexed": false,
332
- "internalType": "uint256",
333
- "name": "price",
334
- "type": "uint256"
335
- },
336
- {
337
- "indexed": false,
338
- "internalType": "uint256",
339
- "name": "timestamp",
340
- "type": "uint256"
341
- }
342
- ],
343
- "name": "LastValidPriceUpdated",
344
- "type": "event"
345
- },
346
- {
347
- "anonymous": false,
348
- "inputs": [
349
- {
350
- "indexed": true,
351
- "internalType": "address",
352
- "name": "token",
353
- "type": "address"
354
- },
355
- {
356
- "indexed": false,
357
- "internalType": "bool",
358
- "name": "enabled",
359
- "type": "bool"
360
- }
361
- ],
362
- "name": "ManualModeEnabled",
363
- "type": "event"
364
- },
365
- {
366
- "anonymous": false,
367
- "inputs": [
368
- {
369
- "indexed": true,
370
- "internalType": "address",
371
- "name": "token",
372
- "type": "address"
373
- },
374
- {
375
- "indexed": false,
376
- "internalType": "uint256",
377
- "name": "price",
378
- "type": "uint256"
379
- }
380
- ],
381
- "name": "ManualPriceSet",
382
- "type": "event"
383
- },
384
- {
385
- "anonymous": false,
386
- "inputs": [
387
- {
388
- "indexed": true,
389
- "internalType": "address",
390
- "name": "token",
391
- "type": "address"
392
- },
393
- {
394
- "indexed": false,
395
- "internalType": "uint256",
396
- "name": "lastValid",
397
- "type": "uint256"
398
- },
399
- {
400
- "indexed": false,
401
- "internalType": "uint256",
402
- "name": "at",
403
- "type": "uint256"
404
- },
405
- {
406
- "indexed": false,
407
- "internalType": "string",
408
- "name": "reason",
409
- "type": "string"
410
- }
411
- ],
412
- "name": "OracleFallbackUsed",
413
- "type": "event"
414
- },
415
- {
416
- "anonymous": false,
417
- "inputs": [
418
- {
419
- "indexed": false,
420
- "internalType": "enum IUBKOracle.OracleMode",
421
- "name": "oldMode",
422
- "type": "uint8"
423
- },
424
- {
425
- "indexed": false,
426
- "internalType": "enum IUBKOracle.OracleMode",
427
- "name": "newMode",
428
- "type": "uint8"
429
- }
430
- ],
431
- "name": "OracleModeChanged",
432
- "type": "event"
433
- },
434
- {
435
- "anonymous": false,
436
- "inputs": [
437
- {
438
- "indexed": true,
439
- "internalType": "address",
440
- "name": "previousOwner",
441
- "type": "address"
442
- },
443
- {
444
- "indexed": true,
445
- "internalType": "address",
446
- "name": "newOwner",
447
- "type": "address"
448
- }
449
- ],
450
- "name": "OwnershipTransferred",
451
- "type": "event"
452
- },
453
- {
454
- "anonymous": false,
455
- "inputs": [
456
- {
457
- "indexed": false,
458
- "internalType": "uint256",
459
- "name": "newPeriod",
460
- "type": "uint256"
461
- }
462
- ],
463
- "name": "StalePeriodUpdated",
464
- "type": "event"
465
- },
466
- {
467
- "anonymous": false,
468
- "inputs": [
469
- {
470
- "indexed": true,
471
- "internalType": "address",
472
- "name": "token",
473
- "type": "address"
474
- }
475
- ],
476
- "name": "TokenSupportAdded",
477
- "type": "event"
478
- },
479
- {
480
- "anonymous": false,
481
- "inputs": [
482
- {
483
- "indexed": true,
484
- "internalType": "address",
485
- "name": "vault",
486
- "type": "address"
487
- },
488
- {
489
- "indexed": false,
490
- "internalType": "uint256",
491
- "name": "minRate",
492
- "type": "uint256"
493
- },
494
- {
495
- "indexed": false,
496
- "internalType": "uint256",
497
- "name": "maxRate",
498
- "type": "uint256"
499
- }
500
- ],
501
- "name": "VaultRateBoundsSet",
502
- "type": "event"
503
- },
504
- {
505
- "inputs": [
506
- {
507
- "internalType": "address",
508
- "name": "",
509
- "type": "address"
510
- }
511
- ],
512
- "name": "chainlinkFeeds",
513
- "outputs": [
514
- {
515
- "internalType": "address",
516
- "name": "",
517
- "type": "address"
518
- }
519
- ],
520
- "stateMutability": "view",
521
- "type": "function"
522
- },
523
- {
524
- "inputs": [
525
- {
526
- "internalType": "address",
527
- "name": "token",
528
- "type": "address"
529
- }
530
- ],
531
- "name": "disableManualPrice",
532
- "outputs": [],
533
- "stateMutability": "nonpayable",
534
- "type": "function"
535
- },
536
- {
537
- "inputs": [
538
- {
539
- "internalType": "address",
540
- "name": "",
541
- "type": "address"
542
- }
543
- ],
544
- "name": "erc4626Underlying",
545
- "outputs": [
546
- {
547
- "internalType": "address",
548
- "name": "",
549
- "type": "address"
550
- }
551
- ],
552
- "stateMutability": "view",
553
- "type": "function"
554
- },
555
- {
556
- "inputs": [],
557
- "name": "fallbackStalePeriod",
558
- "outputs": [
559
- {
560
- "internalType": "uint256",
561
- "name": "",
562
- "type": "uint256"
563
- }
564
- ],
565
- "stateMutability": "view",
566
- "type": "function"
567
- },
568
- {
569
- "inputs": [
570
- {
571
- "internalType": "address",
572
- "name": "token",
573
- "type": "address"
574
- }
575
- ],
576
- "name": "fetchAndUpdatePrice",
577
- "outputs": [
578
- {
579
- "internalType": "uint256",
580
- "name": "",
581
- "type": "uint256"
582
- }
583
- ],
584
- "stateMutability": "nonpayable",
585
- "type": "function"
586
- },
587
- {
588
- "inputs": [
589
- {
590
- "internalType": "address",
591
- "name": "token",
592
- "type": "address"
593
- },
594
- {
595
- "internalType": "uint256",
596
- "name": "usdAmount",
597
- "type": "uint256"
598
- }
599
- ],
600
- "name": "fromUSD",
601
- "outputs": [
602
- {
603
- "internalType": "uint256",
604
- "name": "tokenAmount",
605
- "type": "uint256"
606
- }
607
- ],
608
- "stateMutability": "view",
609
- "type": "function"
610
- },
611
- {
612
- "inputs": [
613
- {
614
- "internalType": "address",
615
- "name": "token",
616
- "type": "address"
617
- }
618
- ],
619
- "name": "getPrice",
620
- "outputs": [
621
- {
622
- "internalType": "uint256",
623
- "name": "price",
624
- "type": "uint256"
625
- }
626
- ],
627
- "stateMutability": "view",
628
- "type": "function"
629
- },
630
- {
631
- "inputs": [
632
- {
633
- "internalType": "address",
634
- "name": "token",
635
- "type": "address"
636
- }
637
- ],
638
- "name": "getPriceAge",
639
- "outputs": [
640
- {
641
- "internalType": "uint256",
642
- "name": "age",
643
- "type": "uint256"
644
- }
645
- ],
646
- "stateMutability": "view",
647
- "type": "function"
648
- },
649
- {
650
- "inputs": [],
651
- "name": "getSupportedTokens",
652
- "outputs": [
653
- {
654
- "internalType": "address[]",
655
- "name": "tokens",
656
- "type": "address[]"
657
- }
658
- ],
659
- "stateMutability": "view",
660
- "type": "function"
661
- },
662
- {
663
- "inputs": [
664
- {
665
- "internalType": "address",
666
- "name": "",
667
- "type": "address"
668
- }
669
- ],
670
- "name": "isManual",
671
- "outputs": [
672
- {
673
- "internalType": "bool",
674
- "name": "",
675
- "type": "bool"
676
- }
677
- ],
678
- "stateMutability": "view",
679
- "type": "function"
680
- },
681
- {
682
- "inputs": [
683
- {
684
- "internalType": "address",
685
- "name": "token",
686
- "type": "address"
687
- }
688
- ],
689
- "name": "isPriceFresh",
690
- "outputs": [
691
- {
692
- "internalType": "bool",
693
- "name": "isFresh",
694
- "type": "bool"
695
- }
696
- ],
697
- "stateMutability": "view",
698
- "type": "function"
699
- },
700
- {
701
- "inputs": [
702
- {
703
- "internalType": "address",
704
- "name": "",
705
- "type": "address"
706
- }
707
- ],
708
- "name": "isSupported",
709
- "outputs": [
710
- {
711
- "internalType": "bool",
712
- "name": "",
713
- "type": "bool"
714
- }
715
- ],
716
- "stateMutability": "view",
717
- "type": "function"
718
- },
719
- {
720
- "inputs": [
721
- {
722
- "internalType": "address",
723
- "name": "",
724
- "type": "address"
725
- }
726
- ],
727
- "name": "lastValidPrice",
728
- "outputs": [
729
- {
730
- "internalType": "uint256",
731
- "name": "price",
732
- "type": "uint256"
733
- },
734
- {
735
- "internalType": "uint256",
736
- "name": "timestamp",
737
- "type": "uint256"
738
- }
739
- ],
740
- "stateMutability": "view",
741
- "type": "function"
742
- },
743
- {
744
- "inputs": [
745
- {
746
- "internalType": "address",
747
- "name": "",
748
- "type": "address"
749
- }
750
- ],
751
- "name": "manualPrices",
752
- "outputs": [
753
- {
754
- "internalType": "uint256",
755
- "name": "",
756
- "type": "uint256"
757
- }
758
- ],
759
- "stateMutability": "view",
760
- "type": "function"
761
- },
762
- {
763
- "inputs": [],
764
- "name": "mode",
765
- "outputs": [
766
- {
767
- "internalType": "enum IUBKOracle.OracleMode",
768
- "name": "",
769
- "type": "uint8"
770
- }
771
- ],
772
- "stateMutability": "view",
773
- "type": "function"
774
- },
775
- {
776
- "inputs": [],
777
- "name": "owner",
778
- "outputs": [
779
- {
780
- "internalType": "address",
781
- "name": "",
782
- "type": "address"
783
- }
784
- ],
785
- "stateMutability": "view",
786
- "type": "function"
787
- },
788
- {
789
- "inputs": [],
790
- "name": "renounceOwnership",
791
- "outputs": [],
792
- "stateMutability": "nonpayable",
793
- "type": "function"
794
- },
795
- {
796
- "inputs": [
797
- {
798
- "internalType": "address",
799
- "name": "token",
800
- "type": "address"
801
- }
802
- ],
803
- "name": "resolvePrice",
804
- "outputs": [
805
- {
806
- "internalType": "uint256",
807
- "name": "price",
808
- "type": "uint256"
809
- }
810
- ],
811
- "stateMutability": "nonpayable",
812
- "type": "function"
813
- },
814
- {
815
- "inputs": [
816
- {
817
- "internalType": "address",
818
- "name": "token",
819
- "type": "address"
820
- },
821
- {
822
- "internalType": "address",
823
- "name": "feed",
824
- "type": "address"
825
- }
826
- ],
827
- "name": "setChainlinkFeed",
828
- "outputs": [],
829
- "stateMutability": "nonpayable",
830
- "type": "function"
831
- },
832
- {
833
- "inputs": [
834
- {
835
- "internalType": "address",
836
- "name": "vault",
837
- "type": "address"
838
- },
839
- {
840
- "internalType": "address",
841
- "name": "underlying",
842
- "type": "address"
843
- }
844
- ],
845
- "name": "setERC4626Vault",
846
- "outputs": [],
847
- "stateMutability": "nonpayable",
848
- "type": "function"
849
- },
850
- {
851
- "inputs": [
852
- {
853
- "internalType": "uint256",
854
- "name": "period",
855
- "type": "uint256"
856
- }
857
- ],
858
- "name": "setFallbackStalePeriod",
859
- "outputs": [],
860
- "stateMutability": "nonpayable",
861
- "type": "function"
862
- },
863
- {
864
- "inputs": [
865
- {
866
- "internalType": "address",
867
- "name": "token",
868
- "type": "address"
869
- },
870
- {
871
- "internalType": "uint256",
872
- "name": "price",
873
- "type": "uint256"
874
- }
875
- ],
876
- "name": "setManualPrice",
877
- "outputs": [],
878
- "stateMutability": "nonpayable",
879
- "type": "function"
880
- },
881
- {
882
- "inputs": [
883
- {
884
- "internalType": "enum IUBKOracle.OracleMode",
885
- "name": "newMode",
886
- "type": "uint8"
887
- }
888
- ],
889
- "name": "setOracleMode",
890
- "outputs": [],
891
- "stateMutability": "nonpayable",
892
- "type": "function"
893
- },
894
- {
895
- "inputs": [
896
- {
897
- "internalType": "uint256",
898
- "name": "period",
899
- "type": "uint256"
900
- }
901
- ],
902
- "name": "setStalePeriod",
903
- "outputs": [],
904
- "stateMutability": "nonpayable",
905
- "type": "function"
906
- },
907
- {
908
- "inputs": [
909
- {
910
- "internalType": "address",
911
- "name": "vault",
912
- "type": "address"
913
- },
914
- {
915
- "internalType": "uint256",
916
- "name": "minRate",
917
- "type": "uint256"
918
- },
919
- {
920
- "internalType": "uint256",
921
- "name": "maxRate",
922
- "type": "uint256"
923
- }
924
- ],
925
- "name": "setVaultRateBounds",
926
- "outputs": [],
927
- "stateMutability": "nonpayable",
928
- "type": "function"
929
- },
930
- {
931
- "inputs": [],
932
- "name": "stalePeriod",
933
- "outputs": [
934
- {
935
- "internalType": "uint256",
936
- "name": "",
937
- "type": "uint256"
938
- }
939
- ],
940
- "stateMutability": "view",
941
- "type": "function"
942
- },
943
- {
944
- "inputs": [
945
- {
946
- "internalType": "uint256",
947
- "name": "",
948
- "type": "uint256"
949
- }
950
- ],
951
- "name": "supportedTokens",
952
- "outputs": [
953
- {
954
- "internalType": "address",
955
- "name": "",
956
- "type": "address"
957
- }
958
- ],
959
- "stateMutability": "view",
960
- "type": "function"
961
- },
962
- {
963
- "inputs": [
964
- {
965
- "internalType": "address",
966
- "name": "token",
967
- "type": "address"
968
- },
969
- {
970
- "internalType": "uint256",
971
- "name": "amount",
972
- "type": "uint256"
973
- }
974
- ],
975
- "name": "toUSD",
976
- "outputs": [
977
- {
978
- "internalType": "uint256",
979
- "name": "usdValue",
980
- "type": "uint256"
981
- }
982
- ],
983
- "stateMutability": "view",
984
- "type": "function"
985
- },
986
- {
987
- "inputs": [
988
- {
989
- "internalType": "address",
990
- "name": "newOwner",
991
- "type": "address"
992
- }
993
- ],
994
- "name": "transferOwnership",
995
- "outputs": [],
996
- "stateMutability": "nonpayable",
997
- "type": "function"
998
- },
999
- {
1000
- "inputs": [
1001
- {
1002
- "internalType": "address",
1003
- "name": "",
1004
- "type": "address"
1005
- }
1006
- ],
1007
- "name": "vaultRateBounds",
1008
- "outputs": [
1009
- {
1010
- "internalType": "uint256",
1011
- "name": "minRate",
1012
- "type": "uint256"
1013
- },
1014
- {
1015
- "internalType": "uint256",
1016
- "name": "maxRate",
1017
- "type": "uint256"
1018
- }
1019
- ],
1020
- "stateMutability": "view",
1021
- "type": "function"
1022
- }
1023
- ],
1024
- "bytecode": "0x6080604052610e10600755610e1060026200001b919062000163565b6008556009805460ff191690553480156200003557600080fd5b506040516200253a3803806200253a83398101604081905262000058916200018f565b806001600160a01b0381166200008957604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b620000948162000113565b506001600160a01b0381166200010c57604080516374b58fcf60e01b81526004810191909152601660448201527f55424b4f7261636c653a3a636f6e7374727563746f7200000000000000000000606482015260806024820152600560848201526437bbb732b960d91b60a482015260c40162000080565b50620001c1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80820281158282048414176200018957634e487b7160e01b600052601160045260246000fd5b92915050565b600060208284031215620001a257600080fd5b81516001600160a01b0381168114620001ba57600080fd5b9392505050565b61236980620001d16000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80638fef24a311610104578063cfa3d593116100a2578063e8c1650011610071578063e8c1650014610461578063ed06a12d1461048a578063f04c98ca1461049d578063f2fde38b146104bd57600080fd5b8063cfa3d593146103e9578063d3c7c2c7146103fc578063d979303314610411578063e310bd2a1461043a57600080fd5b8063a95121b5116100de578063a95121b51461039d578063c6255626146103b0578063cd4f4a9c146103c3578063ced663b0146103d657600080fd5b80638fef24a31461036e578063a5b36a3614610381578063a6f4ab2e1461038a57600080fd5b806348c87c511161017c57806371e8023c1161014b57806371e8023c146102e75780637f33780a146102fa57806387ef186a146103365780638da5cb5b1461034957600080fd5b806348c87c51146102965780634f129c53146102a957806369ef32d2146102cc578063715018a6146102df57600080fd5b8063295a5212116101b8578063295a5212146102415780633b82fdeb1461025b57806341976e09146102705780634316b5a21461028357600080fd5b80630af1a39f146101df5780630f5d559d14610207578063260f9a8b1461022a575b600080fd5b6101f26101ed366004611d10565b6104d0565b60405190151581526020015b60405180910390f35b6101f2610215366004611d10565b60046020526000908152604090205460ff1681565b61023360085481565b6040519081526020016101fe565b60095461024e9060ff1681565b6040516101fe9190611d65565b61026e610269366004611d73565b610527565b005b61023361027e366004611d10565b610593565b61026e610291366004611d94565b6105a4565b6102336102a4366004611d10565b610613565b6101f26102b7366004611d10565b600c6020526000908152604090205460ff1681565b61026e6102da366004611dad565b610664565b61026e6108cd565b61026e6102f5366004611dad565b6108e1565b610321610308366004611d10565b6005602052600090815260409020805460019091015482565b604080519283526020830191909152016101fe565b610233610344366004611de6565b610a22565b6000546001600160a01b03165b6040516001600160a01b0390911681526020016101fe565b61026e61037c366004611e12565b610afa565b61023360075481565b61026e610398366004611d94565b610c45565b61026e6103ab366004611de6565b610cb4565b6103566103be366004611d94565b610f7b565b6102336103d1366004611de6565b610fa5565b61026e6103e4366004611d10565b611068565b6102336103f7366004611d10565b6110ec565b6104046112cc565b6040516101fe9190611e47565b61035661041f366004611d10565b6002602052600090815260409020546001600160a01b031681565b610321610448366004611d10565b6006602052600090815260409020805460019091015482565b61035661046f366004611d10565b6001602052600090815260409020546001600160a01b031681565b610233610498366004611d10565b61132e565b6102336104ab366004611d10565b60036020526000908152604090205481565b61026e6104cb366004611d10565b6113a4565b6001600160a01b03811660009081526005602090815260408083208151808301909252805482526001015491810182905290158015906105205750600754602082015161051d9042611eaa565b11155b9392505050565b61052f6113e2565b6009805460ff811691839160ff19166001838181111561055157610551611d2d565b02179055507fa6972b82c1819c55fbb1eb3a5226aab6498a55b1cccd85bcffc44175751eb5738183604051610587929190611ebd565b60405180910390a15050565b600061059e8261140f565b92915050565b6105ac6113e2565b6007548110156105d7576040516301ee48e160e71b8152600481018290526024015b60405180910390fd5b60088190556040518181527fedd414ac063290211a282c8be3e328fcc6d60e4d1422ab34bc5af9a01736943d906020015b60405180910390a150565b6001600160a01b038116600090815260056020908152604080832081518083019092528054825260010154918101829052908203610655575060001992915050565b60208101516105209042611eaa565b61066c6113e2565b6001600160a01b038216158061068957506001600160a01b038116155b156106a7576040516374b58fcf60e01b81526004016105ce90611ed8565b806001600160a01b03163b6000036106dd5760405163c2b3d6a360e01b81526001600160a01b03821660048201526024016105ce565b60008190506000816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610722573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107469190611f31565b905060128160ff1611156107815760405163bed0220560e01b81526001600160a01b038416600482015260ff821660248201526044016105ce565b816001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156107db575060408051601f3d908101601f191682019092526107d891810190611f6e565b60015b6108035760405163c2b3d6a360e01b81526001600160a01b03841660048201526024016105ce565b600084131580610811575081155b1561083a5760405163c2b3d6a360e01b81526001600160a01b03891660048201526024016105ce565b505050506001600160a01b03858116600090815260016020908152604080832080546001600160a01b031916948916949094179093556004905220805460ff191690555061088784611541565b826001600160a01b0316846001600160a01b03167fb9b75140a682094a10720170347bc8e03bfd71f1bb59d103cd8dc0782c52568360405160405180910390a350505050565b6108d56113e2565b6108df60006115f0565b565b6108e96113e2565b6001600160a01b038216158061090657506001600160a01b038116155b15610924576040516374b58fcf60e01b81526004016105ce90611fbe565b816001600160a01b03166338d52e0f6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561097e575060408051601f3d908101601f1916820190925261097b91810190612017565b60015b6109a65760405163352e446560e11b81526001600160a01b03831660048201526024016105ce565b506001600160a01b03828116600090815260026020526040902080546001600160a01b0319169183169190911790556109de82611541565b806001600160a01b0316826001600160a01b03167f456db9889a9cf62250a0d96274761be08bc928b1ea97a2b6e45d9db8b575fa0c60405160405180910390a35050565b600081600003610a345750600061059e565b6000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a989190611f31565b90506000610aa58561140f565b9050600081610abc670de0b6b3a764000087612034565b610ac69190612061565b9050670de0b6b3a7640000610adc84600a612167565b610ae69083612034565b610af09190612061565b9695505050505050565b610b026113e2565b6001600160a01b038316610b7757604080516374b58fcf60e01b81526004810191909152601d60448201527f55424b4f7261636c653a3a7365745661756c7452617465426f756e647300000060648201526080602482015260056084820152641d985d5b1d60da1b60a482015260c4016105ce565b811580610b845750818111155b80610b97575068056bc75e2d6310000081115b15610bce5760405163dceed17360e01b81526001600160a01b038416600482015260248101839052604481018290526064016105ce565b60408051808201825283815260208082018481526001600160a01b038716600081815260068452859020935184559051600190930192909255825185815290810184905290917f97b96731e654217eb1034ea218d533d1b086cd0ba6ba8b09735ef3e70c4d5fd491015b60405180910390a2505050565b610c4d6113e2565b610e10811080610c5e5750612a3081115b15610c7f576040516301ee48e160e71b8152600481018290526024016105ce565b60078190556040518181527f8e163815dacf2204ab589790672a86e421041804acc4cb85a7caebac33be1b2b90602001610608565b610cbc6113e2565b600160095460ff166001811115610cd557610cd5611d2d565b03610cfb576040516330bcb70560e21b81523060048201524260248201526044016105ce565b6001600160a01b038216610d22576040516374b58fcf60e01b81526004016105ce9061218e565b6402540be400811080610d3e575069d3c21bcecceda100000081115b15610d6e57604051638366d84d60e01b81526001600160a01b0383166004820152602481018290526044016105ce565b6001600160a01b038216600090815260056020908152604091829020825180840190935280548084526001909101549183019190915215801590610dc257506007546020820151610dbf9042611eaa565b11155b15610e71576000670de0b6b3a7640000610de467016345785d8a000082611eaa565b8351610df09190612034565b610dfa9190612061565b90506000670de0b6b3a7640000610e1967016345785d8a0000826121d4565b8451610e259190612034565b610e2f9190612061565b905081841080610e3e57508084115b15610e6e57604051638366d84d60e01b81526001600160a01b0386166004820152602481018590526044016105ce565b50505b6001600160a01b038316600081815260036020908152604080832086905560048252808320805460ff191660019081179091558151808301835287815242818501908152868652600585529483902090518155935193019290925590518481527f469ff3a7ada7a8c122e2729e7041dfdabfc5e8b26802fa04d7f00706149c4e24910160405180910390a2604051600181526001600160a01b038416907f782cbde6cfd4fcc41b55a876a6a2983d09080438d1e4316b98042b68025a29a89060200160405180910390a2604080518381524260208201526001600160a01b038516917f895efb821f241e50aca7011c501989268b4e15748c700bf77d48ff447049888c9101610c38565b600b8181548110610f8b57600080fd5b6000918252602090912001546001600160a01b0316905081565b600081600003610fb75750600061059e565b6000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101b9190611f31565b9050600061102a82600a612167565b61103c670de0b6b3a764000086612034565b6110469190612061565b905060006110538661140f565b9050670de0b6b3a7640000610ae68284612034565b6110706113e2565b6001600160a01b038116611097576040516374b58fcf60e01b81526004016105ce906121e7565b6001600160a01b0381166000818152600460209081526040808320805460ff19169055519182527f782cbde6cfd4fcc41b55a876a6a2983d09080438d1e4316b98042b68025a29a8910160405180910390a250565b6001600160a01b03811660009081526004602052604081205460ff161561112957506001600160a01b031660009081526003602052604090205490565b6001600160a01b03808316600090815260026020526040902054168015611154576105208382611640565b6001600160a01b03808416600090815260016020526040902054168061119857604051632a4f499d60e21b81526001600160a01b03851660048201526024016105ce565b6000806111a483611989565b9150915080156111b75750949350505050565b6001600160a01b03861660009081526005602090815260408083208151808301909252805480835260019091015492820192909252910361121657604051635a94181960e01b81526001600160a01b03881660048201526024016105ce565b60085460208201516112289042611eaa565b111561125257604051634ebf1f0f60e11b81526001600160a01b03881660048201526024016105ce565b805160408051918252426020830152606090820181905260119082015270436861696e6c696e6b206661696c75726560781b60808201526001600160a01b038816907f1037657730ddbc445dbaba678e03c33d31f7ae7f523c4f5de5f458ea5b837d399060a00160405180910390a2519695505050505050565b6060600b80548060200260200160405190810160405280929190818152602001828054801561132457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611306575b5050505050905090565b6000600160095460ff16600181111561134957611349611d2d565b0361136f576040516330bcb70560e21b81523060048201524260248201526044016105ce565b6001600160a01b038216611396576040516374b58fcf60e01b81526004016105ce9061222d565b61059e82611b45565b919050565b6113ac6113e2565b6001600160a01b0381166113d657604051631e4fbdf760e01b8152600060048201526024016105ce565b6113df816115f0565b50565b6000546001600160a01b031633146108df5760405163118cdaa760e01b81523360048201526024016105ce565b60006001600160a01b038216611438576040516374b58fcf60e01b81526004016105ce90612273565b6001600160a01b03821660009081526005602090815260408083208151808301909252805480835260019091015492820192909252910361149757604051635a94181960e01b81526001600160a01b03841660048201526024016105ce565b604051630af1a39f60e01b81526001600160a01b03841660048201523090630af1a39f90602401602060405180830381865afa1580156114db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ff91906122af565b61153a5760208101516040516348da37e960e11b81526001600160a01b038516600482015260248101919091524260448201526064016105ce565b5192915050565b6001600160a01b0381166000908152600c602052604090205460ff166113df57600b805460018082019092557f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90180546001600160a01b0319166001600160a01b0384169081179091556000818152600c6020526040808220805460ff1916909417909355915190917f8f50fda9bf5d3b403c53b7e91646abd507f8cebf2577655d55d7de3926168b1791a250565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006005600a541061166857604051630e5daffd60e11b8152600060048201526024016105ce565b600a8054906000611678836122d1565b91905055506000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e19190611f31565b90506000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611723573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117479190611f31565b9050600061175683600a612167565b6040516303d1689d60e11b8152600481018290529091506000906001600160a01b038816906307a2d13a90602401602060405180830381865afa1580156117a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c591906122ea565b90508015806117e257506ec097ce7bc90715b34b9f100000000081115b1561181157604051624df74960e31b81526001600160a01b0388166004820152602481018290526044016105ce565b600061181e84600a612167565b611830670de0b6b3a764000084612034565b61183a9190612061565b9050600061184986600a612167565b61185b670de0b6b3a764000086612034565b6118659190612061565b905060008161187c670de0b6b3a764000085612034565b6118869190612061565b6001600160a01b038b1660009081526006602090815260408083208151808301909252805480835260019091015492820192909252929350156118ca5781516118d4565b6702c68af0bb1400005b9050600082602001516000146118ee5782602001516118f8565b6729a2241af62c00005b90508084118061190757508184105b156119375760405163c55e83d360e01b81526001600160a01b038e166004820152602481018590526044016105ce565b60006119428d6110ec565b9050670de0b6b3a76400006119578683612034565b6119619190612061565b9b505050505050505050505050600a805490600061197e83612303565b919050555092915050565b600080826001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156119e6575060408051601f3d908101601f191682019092526119e391810190611f6e565b60015b6119f557506000928392509050565b600084131580611a03575081155b80611a185750600754611a168342611eaa565b115b15611a2d575060009788975095505050505050565b6000886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a919190611f31565b905084600060ff8316601203611aa8575080611b00565b60128360ff161015611adc57611ad582611ac385601261231a565b611ace90600a612167565b6001611c16565b9050611b00565b611afd826001611aed60128761231a565b611af890600a612167565b611c16565b90505b6402540be400811080611b1c575069d3c21bcecceda100000081115b15611b34575060009a8b9a5098505050505050505050565b9a60019a5098505050505050505050565b6000611b50826110ec565b90506402540be400811080611b6e575069d3c21bcecceda100000081115b15611b9e57604051631b27609360e01b81526001600160a01b0383166004820152600060248201526044016105ce565b6040805180820182528281524260208083018281526001600160a01b03871660008181526005845286902094518555905160019094019390935583518581529081019190915290917f895efb821f241e50aca7011c501989268b4e15748c700bf77d48ff447049888c910160405180910390a2919050565b6000806000611c258686611ccb565b9150915081600003611c4a57838181611c4057611c4061204b565b0492505050610520565b818411611c6157611c616003851502601118611ce9565b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010185841190960395909502919093039390930492909217029150509392505050565b60008060001983850993909202808410938190039390930393915050565b634e487b71600052806020526024601cfd5b6001600160a01b03811681146113df57600080fd5b600060208284031215611d2257600080fd5b813561052081611cfb565b634e487b7160e01b600052602160045260246000fd5b60028110611d6157634e487b7160e01b600052602160045260246000fd5b9052565b6020810161059e8284611d43565b600060208284031215611d8557600080fd5b81356002811061052057600080fd5b600060208284031215611da657600080fd5b5035919050565b60008060408385031215611dc057600080fd5b8235611dcb81611cfb565b91506020830135611ddb81611cfb565b809150509250929050565b60008060408385031215611df957600080fd5b8235611e0481611cfb565b946020939093013593505050565b600080600060608486031215611e2757600080fd5b8335611e3281611cfb565b95602085013595506040909401359392505050565b6020808252825182820181905260009190848201906040850190845b81811015611e885783516001600160a01b031683529284019291840191600101611e63565b50909695505050505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561059e5761059e611e94565b60408101611ecb8285611d43565b6105206020830184611d43565b60408152601b60408201527f55424b4f7261636c653a3a736574436861696e6c696e6b466565640000000000606082015260806020820152600061059e6080830160058152641a5b9c1d5d60da1b602082015260400190565b600060208284031215611f4357600080fd5b815160ff8116811461052057600080fd5b805169ffffffffffffffffffff8116811461139f57600080fd5b600080600080600060a08688031215611f8657600080fd5b611f8f86611f54565b9450602086015193506040860151925060608601519150611fb260808701611f54565b90509295509295909350565b60408152601a60408201527f55424b4f7261636c653a3a736574455243343632365661756c74000000000000606082015260806020820152600061059e6080830160058152641a5b9c1d5d60da1b602082015260400190565b60006020828403121561202957600080fd5b815161052081611cfb565b808202811582820484141761059e5761059e611e94565b634e487b7160e01b600052601260045260246000fd5b60008261207e57634e487b7160e01b600052601260045260246000fd5b500490565b600181815b808511156120be5781600019048211156120a4576120a4611e94565b808516156120b157918102915b93841c9390800290612088565b509250929050565b6000826120d55750600161059e565b816120e25750600061059e565b81600181146120f857600281146121025761211e565b600191505061059e565b60ff84111561211357612113611e94565b50506001821b61059e565b5060208310610133831016604e8410600b8410161715612141575081810a61059e565b61214b8383612083565b806000190482111561215f5761215f611e94565b029392505050565b600061052060ff8416836120c6565b60058152643a37b5b2b760d91b602082015260400190565b60408152601960408201527f55424b4f7261636c653a3a7365744d616e75616c507269636500000000000000606082015260806020820152600061059e60808301612176565b8082018082111561059e5761059e611e94565b60408152601d60408201527f55424b4f7261636c653a3a64697361626c654d616e75616c5072696365000000606082015260806020820152600061059e60808301612176565b60408152601e60408201527f55424b4f7261636c653a3a6665746368416e6455706461746550726963650000606082015260806020820152600061059e60808301612176565b60408152601360408201527255424b4f7261636c653a3a676574507269636560681b606082015260806020820152600061059e60808301612176565b6000602082840312156122c157600080fd5b8151801515811461052057600080fd5b6000600182016122e3576122e3611e94565b5060010190565b6000602082840312156122fc57600080fd5b5051919050565b60008161231257612312611e94565b506000190190565b60ff828116828216039081111561059e5761059e611e9456fea264697066735822122046b6f21ae12ffd1b438a4ad4c058697c30446dbe0201bbb8fcd8509d64c2696f64736f6c63430008150033",
1025
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c80638fef24a311610104578063cfa3d593116100a2578063e8c1650011610071578063e8c1650014610461578063ed06a12d1461048a578063f04c98ca1461049d578063f2fde38b146104bd57600080fd5b8063cfa3d593146103e9578063d3c7c2c7146103fc578063d979303314610411578063e310bd2a1461043a57600080fd5b8063a95121b5116100de578063a95121b51461039d578063c6255626146103b0578063cd4f4a9c146103c3578063ced663b0146103d657600080fd5b80638fef24a31461036e578063a5b36a3614610381578063a6f4ab2e1461038a57600080fd5b806348c87c511161017c57806371e8023c1161014b57806371e8023c146102e75780637f33780a146102fa57806387ef186a146103365780638da5cb5b1461034957600080fd5b806348c87c51146102965780634f129c53146102a957806369ef32d2146102cc578063715018a6146102df57600080fd5b8063295a5212116101b8578063295a5212146102415780633b82fdeb1461025b57806341976e09146102705780634316b5a21461028357600080fd5b80630af1a39f146101df5780630f5d559d14610207578063260f9a8b1461022a575b600080fd5b6101f26101ed366004611d10565b6104d0565b60405190151581526020015b60405180910390f35b6101f2610215366004611d10565b60046020526000908152604090205460ff1681565b61023360085481565b6040519081526020016101fe565b60095461024e9060ff1681565b6040516101fe9190611d65565b61026e610269366004611d73565b610527565b005b61023361027e366004611d10565b610593565b61026e610291366004611d94565b6105a4565b6102336102a4366004611d10565b610613565b6101f26102b7366004611d10565b600c6020526000908152604090205460ff1681565b61026e6102da366004611dad565b610664565b61026e6108cd565b61026e6102f5366004611dad565b6108e1565b610321610308366004611d10565b6005602052600090815260409020805460019091015482565b604080519283526020830191909152016101fe565b610233610344366004611de6565b610a22565b6000546001600160a01b03165b6040516001600160a01b0390911681526020016101fe565b61026e61037c366004611e12565b610afa565b61023360075481565b61026e610398366004611d94565b610c45565b61026e6103ab366004611de6565b610cb4565b6103566103be366004611d94565b610f7b565b6102336103d1366004611de6565b610fa5565b61026e6103e4366004611d10565b611068565b6102336103f7366004611d10565b6110ec565b6104046112cc565b6040516101fe9190611e47565b61035661041f366004611d10565b6002602052600090815260409020546001600160a01b031681565b610321610448366004611d10565b6006602052600090815260409020805460019091015482565b61035661046f366004611d10565b6001602052600090815260409020546001600160a01b031681565b610233610498366004611d10565b61132e565b6102336104ab366004611d10565b60036020526000908152604090205481565b61026e6104cb366004611d10565b6113a4565b6001600160a01b03811660009081526005602090815260408083208151808301909252805482526001015491810182905290158015906105205750600754602082015161051d9042611eaa565b11155b9392505050565b61052f6113e2565b6009805460ff811691839160ff19166001838181111561055157610551611d2d565b02179055507fa6972b82c1819c55fbb1eb3a5226aab6498a55b1cccd85bcffc44175751eb5738183604051610587929190611ebd565b60405180910390a15050565b600061059e8261140f565b92915050565b6105ac6113e2565b6007548110156105d7576040516301ee48e160e71b8152600481018290526024015b60405180910390fd5b60088190556040518181527fedd414ac063290211a282c8be3e328fcc6d60e4d1422ab34bc5af9a01736943d906020015b60405180910390a150565b6001600160a01b038116600090815260056020908152604080832081518083019092528054825260010154918101829052908203610655575060001992915050565b60208101516105209042611eaa565b61066c6113e2565b6001600160a01b038216158061068957506001600160a01b038116155b156106a7576040516374b58fcf60e01b81526004016105ce90611ed8565b806001600160a01b03163b6000036106dd5760405163c2b3d6a360e01b81526001600160a01b03821660048201526024016105ce565b60008190506000816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610722573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107469190611f31565b905060128160ff1611156107815760405163bed0220560e01b81526001600160a01b038416600482015260ff821660248201526044016105ce565b816001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156107db575060408051601f3d908101601f191682019092526107d891810190611f6e565b60015b6108035760405163c2b3d6a360e01b81526001600160a01b03841660048201526024016105ce565b600084131580610811575081155b1561083a5760405163c2b3d6a360e01b81526001600160a01b03891660048201526024016105ce565b505050506001600160a01b03858116600090815260016020908152604080832080546001600160a01b031916948916949094179093556004905220805460ff191690555061088784611541565b826001600160a01b0316846001600160a01b03167fb9b75140a682094a10720170347bc8e03bfd71f1bb59d103cd8dc0782c52568360405160405180910390a350505050565b6108d56113e2565b6108df60006115f0565b565b6108e96113e2565b6001600160a01b038216158061090657506001600160a01b038116155b15610924576040516374b58fcf60e01b81526004016105ce90611fbe565b816001600160a01b03166338d52e0f6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561097e575060408051601f3d908101601f1916820190925261097b91810190612017565b60015b6109a65760405163352e446560e11b81526001600160a01b03831660048201526024016105ce565b506001600160a01b03828116600090815260026020526040902080546001600160a01b0319169183169190911790556109de82611541565b806001600160a01b0316826001600160a01b03167f456db9889a9cf62250a0d96274761be08bc928b1ea97a2b6e45d9db8b575fa0c60405160405180910390a35050565b600081600003610a345750600061059e565b6000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a989190611f31565b90506000610aa58561140f565b9050600081610abc670de0b6b3a764000087612034565b610ac69190612061565b9050670de0b6b3a7640000610adc84600a612167565b610ae69083612034565b610af09190612061565b9695505050505050565b610b026113e2565b6001600160a01b038316610b7757604080516374b58fcf60e01b81526004810191909152601d60448201527f55424b4f7261636c653a3a7365745661756c7452617465426f756e647300000060648201526080602482015260056084820152641d985d5b1d60da1b60a482015260c4016105ce565b811580610b845750818111155b80610b97575068056bc75e2d6310000081115b15610bce5760405163dceed17360e01b81526001600160a01b038416600482015260248101839052604481018290526064016105ce565b60408051808201825283815260208082018481526001600160a01b038716600081815260068452859020935184559051600190930192909255825185815290810184905290917f97b96731e654217eb1034ea218d533d1b086cd0ba6ba8b09735ef3e70c4d5fd491015b60405180910390a2505050565b610c4d6113e2565b610e10811080610c5e5750612a3081115b15610c7f576040516301ee48e160e71b8152600481018290526024016105ce565b60078190556040518181527f8e163815dacf2204ab589790672a86e421041804acc4cb85a7caebac33be1b2b90602001610608565b610cbc6113e2565b600160095460ff166001811115610cd557610cd5611d2d565b03610cfb576040516330bcb70560e21b81523060048201524260248201526044016105ce565b6001600160a01b038216610d22576040516374b58fcf60e01b81526004016105ce9061218e565b6402540be400811080610d3e575069d3c21bcecceda100000081115b15610d6e57604051638366d84d60e01b81526001600160a01b0383166004820152602481018290526044016105ce565b6001600160a01b038216600090815260056020908152604091829020825180840190935280548084526001909101549183019190915215801590610dc257506007546020820151610dbf9042611eaa565b11155b15610e71576000670de0b6b3a7640000610de467016345785d8a000082611eaa565b8351610df09190612034565b610dfa9190612061565b90506000670de0b6b3a7640000610e1967016345785d8a0000826121d4565b8451610e259190612034565b610e2f9190612061565b905081841080610e3e57508084115b15610e6e57604051638366d84d60e01b81526001600160a01b0386166004820152602481018590526044016105ce565b50505b6001600160a01b038316600081815260036020908152604080832086905560048252808320805460ff191660019081179091558151808301835287815242818501908152868652600585529483902090518155935193019290925590518481527f469ff3a7ada7a8c122e2729e7041dfdabfc5e8b26802fa04d7f00706149c4e24910160405180910390a2604051600181526001600160a01b038416907f782cbde6cfd4fcc41b55a876a6a2983d09080438d1e4316b98042b68025a29a89060200160405180910390a2604080518381524260208201526001600160a01b038516917f895efb821f241e50aca7011c501989268b4e15748c700bf77d48ff447049888c9101610c38565b600b8181548110610f8b57600080fd5b6000918252602090912001546001600160a01b0316905081565b600081600003610fb75750600061059e565b6000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101b9190611f31565b9050600061102a82600a612167565b61103c670de0b6b3a764000086612034565b6110469190612061565b905060006110538661140f565b9050670de0b6b3a7640000610ae68284612034565b6110706113e2565b6001600160a01b038116611097576040516374b58fcf60e01b81526004016105ce906121e7565b6001600160a01b0381166000818152600460209081526040808320805460ff19169055519182527f782cbde6cfd4fcc41b55a876a6a2983d09080438d1e4316b98042b68025a29a8910160405180910390a250565b6001600160a01b03811660009081526004602052604081205460ff161561112957506001600160a01b031660009081526003602052604090205490565b6001600160a01b03808316600090815260026020526040902054168015611154576105208382611640565b6001600160a01b03808416600090815260016020526040902054168061119857604051632a4f499d60e21b81526001600160a01b03851660048201526024016105ce565b6000806111a483611989565b9150915080156111b75750949350505050565b6001600160a01b03861660009081526005602090815260408083208151808301909252805480835260019091015492820192909252910361121657604051635a94181960e01b81526001600160a01b03881660048201526024016105ce565b60085460208201516112289042611eaa565b111561125257604051634ebf1f0f60e11b81526001600160a01b03881660048201526024016105ce565b805160408051918252426020830152606090820181905260119082015270436861696e6c696e6b206661696c75726560781b60808201526001600160a01b038816907f1037657730ddbc445dbaba678e03c33d31f7ae7f523c4f5de5f458ea5b837d399060a00160405180910390a2519695505050505050565b6060600b80548060200260200160405190810160405280929190818152602001828054801561132457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611306575b5050505050905090565b6000600160095460ff16600181111561134957611349611d2d565b0361136f576040516330bcb70560e21b81523060048201524260248201526044016105ce565b6001600160a01b038216611396576040516374b58fcf60e01b81526004016105ce9061222d565b61059e82611b45565b919050565b6113ac6113e2565b6001600160a01b0381166113d657604051631e4fbdf760e01b8152600060048201526024016105ce565b6113df816115f0565b50565b6000546001600160a01b031633146108df5760405163118cdaa760e01b81523360048201526024016105ce565b60006001600160a01b038216611438576040516374b58fcf60e01b81526004016105ce90612273565b6001600160a01b03821660009081526005602090815260408083208151808301909252805480835260019091015492820192909252910361149757604051635a94181960e01b81526001600160a01b03841660048201526024016105ce565b604051630af1a39f60e01b81526001600160a01b03841660048201523090630af1a39f90602401602060405180830381865afa1580156114db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ff91906122af565b61153a5760208101516040516348da37e960e11b81526001600160a01b038516600482015260248101919091524260448201526064016105ce565b5192915050565b6001600160a01b0381166000908152600c602052604090205460ff166113df57600b805460018082019092557f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90180546001600160a01b0319166001600160a01b0384169081179091556000818152600c6020526040808220805460ff1916909417909355915190917f8f50fda9bf5d3b403c53b7e91646abd507f8cebf2577655d55d7de3926168b1791a250565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006005600a541061166857604051630e5daffd60e11b8152600060048201526024016105ce565b600a8054906000611678836122d1565b91905055506000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e19190611f31565b90506000836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611723573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117479190611f31565b9050600061175683600a612167565b6040516303d1689d60e11b8152600481018290529091506000906001600160a01b038816906307a2d13a90602401602060405180830381865afa1580156117a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c591906122ea565b90508015806117e257506ec097ce7bc90715b34b9f100000000081115b1561181157604051624df74960e31b81526001600160a01b0388166004820152602481018290526044016105ce565b600061181e84600a612167565b611830670de0b6b3a764000084612034565b61183a9190612061565b9050600061184986600a612167565b61185b670de0b6b3a764000086612034565b6118659190612061565b905060008161187c670de0b6b3a764000085612034565b6118869190612061565b6001600160a01b038b1660009081526006602090815260408083208151808301909252805480835260019091015492820192909252929350156118ca5781516118d4565b6702c68af0bb1400005b9050600082602001516000146118ee5782602001516118f8565b6729a2241af62c00005b90508084118061190757508184105b156119375760405163c55e83d360e01b81526001600160a01b038e166004820152602481018590526044016105ce565b60006119428d6110ec565b9050670de0b6b3a76400006119578683612034565b6119619190612061565b9b505050505050505050505050600a805490600061197e83612303565b919050555092915050565b600080826001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa9250505080156119e6575060408051601f3d908101601f191682019092526119e391810190611f6e565b60015b6119f557506000928392509050565b600084131580611a03575081155b80611a185750600754611a168342611eaa565b115b15611a2d575060009788975095505050505050565b6000886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a919190611f31565b905084600060ff8316601203611aa8575080611b00565b60128360ff161015611adc57611ad582611ac385601261231a565b611ace90600a612167565b6001611c16565b9050611b00565b611afd826001611aed60128761231a565b611af890600a612167565b611c16565b90505b6402540be400811080611b1c575069d3c21bcecceda100000081115b15611b34575060009a8b9a5098505050505050505050565b9a60019a5098505050505050505050565b6000611b50826110ec565b90506402540be400811080611b6e575069d3c21bcecceda100000081115b15611b9e57604051631b27609360e01b81526001600160a01b0383166004820152600060248201526044016105ce565b6040805180820182528281524260208083018281526001600160a01b03871660008181526005845286902094518555905160019094019390935583518581529081019190915290917f895efb821f241e50aca7011c501989268b4e15748c700bf77d48ff447049888c910160405180910390a2919050565b6000806000611c258686611ccb565b9150915081600003611c4a57838181611c4057611c4061204b565b0492505050610520565b818411611c6157611c616003851502601118611ce9565b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010185841190960395909502919093039390930492909217029150509392505050565b60008060001983850993909202808410938190039390930393915050565b634e487b71600052806020526024601cfd5b6001600160a01b03811681146113df57600080fd5b600060208284031215611d2257600080fd5b813561052081611cfb565b634e487b7160e01b600052602160045260246000fd5b60028110611d6157634e487b7160e01b600052602160045260246000fd5b9052565b6020810161059e8284611d43565b600060208284031215611d8557600080fd5b81356002811061052057600080fd5b600060208284031215611da657600080fd5b5035919050565b60008060408385031215611dc057600080fd5b8235611dcb81611cfb565b91506020830135611ddb81611cfb565b809150509250929050565b60008060408385031215611df957600080fd5b8235611e0481611cfb565b946020939093013593505050565b600080600060608486031215611e2757600080fd5b8335611e3281611cfb565b95602085013595506040909401359392505050565b6020808252825182820181905260009190848201906040850190845b81811015611e885783516001600160a01b031683529284019291840191600101611e63565b50909695505050505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561059e5761059e611e94565b60408101611ecb8285611d43565b6105206020830184611d43565b60408152601b60408201527f55424b4f7261636c653a3a736574436861696e6c696e6b466565640000000000606082015260806020820152600061059e6080830160058152641a5b9c1d5d60da1b602082015260400190565b600060208284031215611f4357600080fd5b815160ff8116811461052057600080fd5b805169ffffffffffffffffffff8116811461139f57600080fd5b600080600080600060a08688031215611f8657600080fd5b611f8f86611f54565b9450602086015193506040860151925060608601519150611fb260808701611f54565b90509295509295909350565b60408152601a60408201527f55424b4f7261636c653a3a736574455243343632365661756c74000000000000606082015260806020820152600061059e6080830160058152641a5b9c1d5d60da1b602082015260400190565b60006020828403121561202957600080fd5b815161052081611cfb565b808202811582820484141761059e5761059e611e94565b634e487b7160e01b600052601260045260246000fd5b60008261207e57634e487b7160e01b600052601260045260246000fd5b500490565b600181815b808511156120be5781600019048211156120a4576120a4611e94565b808516156120b157918102915b93841c9390800290612088565b509250929050565b6000826120d55750600161059e565b816120e25750600061059e565b81600181146120f857600281146121025761211e565b600191505061059e565b60ff84111561211357612113611e94565b50506001821b61059e565b5060208310610133831016604e8410600b8410161715612141575081810a61059e565b61214b8383612083565b806000190482111561215f5761215f611e94565b029392505050565b600061052060ff8416836120c6565b60058152643a37b5b2b760d91b602082015260400190565b60408152601960408201527f55424b4f7261636c653a3a7365744d616e75616c507269636500000000000000606082015260806020820152600061059e60808301612176565b8082018082111561059e5761059e611e94565b60408152601d60408201527f55424b4f7261636c653a3a64697361626c654d616e75616c5072696365000000606082015260806020820152600061059e60808301612176565b60408152601e60408201527f55424b4f7261636c653a3a6665746368416e6455706461746550726963650000606082015260806020820152600061059e60808301612176565b60408152601360408201527255424b4f7261636c653a3a676574507269636560681b606082015260806020820152600061059e60808301612176565b6000602082840312156122c157600080fd5b8151801515811461052057600080fd5b6000600182016122e3576122e3611e94565b5060010190565b6000602082840312156122fc57600080fd5b5051919050565b60008161231257612312611e94565b506000190190565b60ff828116828216039081111561059e5761059e611e9456fea264697066735822122046b6f21ae12ffd1b438a4ad4c058697c30446dbe0201bbb8fcd8509d64c2696f64736f6c63430008150033",
1026
- "linkReferences": {},
1027
- "deployedLinkReferences": {}
1028
- }