@venusprotocol/governance-contracts 1.1.0-dev.2 → 1.1.0-dev.4

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 (30) hide show
  1. package/README.md +11 -0
  2. package/artifacts/build-info/52cd2a2ed6764b7fce3ff5a23ca8a581.json +1 -0
  3. package/artifacts/contracts/Governance/GovernorBravoDelegate.sol/GovernorBravoDelegate.dbg.json +1 -1
  4. package/artifacts/contracts/Governance/GovernorBravoDelegator.sol/GovernorBravoDelegator.dbg.json +1 -1
  5. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorAlphaInterface.dbg.json +1 -1
  6. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateInterface.dbg.json +1 -1
  7. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV1.dbg.json +1 -1
  8. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV2.dbg.json +1 -1
  9. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegatorStorage.dbg.json +1 -1
  10. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoEvents.dbg.json +1 -1
  11. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/TimelockInterface.dbg.json +1 -1
  12. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/XvsVaultInterface.dbg.json +1 -1
  13. package/artifacts/contracts/legacy/GovernorBravoDelegateV1.sol/GovernorBravoDelegateV1.dbg.json +4 -0
  14. package/artifacts/contracts/legacy/GovernorBravoDelegateV1.sol/GovernorBravoDelegateV1.json +1143 -0
  15. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV1.dbg.json +4 -0
  16. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV1.json +278 -0
  17. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoDelegatorStorage.dbg.json +4 -0
  18. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoDelegatorStorage.json +56 -0
  19. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoEventsV1.dbg.json +4 -0
  20. package/artifacts/contracts/legacy/GovernorBravoInterfaces.sol/GovernorBravoEventsV1.json +306 -0
  21. package/contracts/legacy/GovernorBravoDelegateV1.sol +528 -0
  22. package/contracts/legacy/GovernorBravoInterfaces.sol +176 -0
  23. package/deployments/bscmainnet/AccessControlManager.json +285 -0
  24. package/deployments/bscmainnet.json +7167 -0
  25. package/deployments/bsctestnet/AccessControlManager.json +364 -0
  26. package/deployments/bsctestnet.json +6437 -0
  27. package/deployments/sepolia.json +369 -0
  28. package/package.json +1 -1
  29. package/artifacts/build-info/97a3124320e74f843bc59439c75c258d.json +0 -1
  30. package/deployments/deployments.json +0 -13981
@@ -0,0 +1,1143 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GovernorBravoDelegateV1",
4
+ "sourceName": "contracts/legacy/GovernorBravoDelegateV1.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "address",
12
+ "name": "oldAdmin",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "address",
18
+ "name": "newAdmin",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "name": "NewAdmin",
23
+ "type": "event"
24
+ },
25
+ {
26
+ "anonymous": false,
27
+ "inputs": [
28
+ {
29
+ "indexed": false,
30
+ "internalType": "address",
31
+ "name": "oldGuardian",
32
+ "type": "address"
33
+ },
34
+ {
35
+ "indexed": false,
36
+ "internalType": "address",
37
+ "name": "newGuardian",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "NewGuardian",
42
+ "type": "event"
43
+ },
44
+ {
45
+ "anonymous": false,
46
+ "inputs": [
47
+ {
48
+ "indexed": false,
49
+ "internalType": "address",
50
+ "name": "oldImplementation",
51
+ "type": "address"
52
+ },
53
+ {
54
+ "indexed": false,
55
+ "internalType": "address",
56
+ "name": "newImplementation",
57
+ "type": "address"
58
+ }
59
+ ],
60
+ "name": "NewImplementation",
61
+ "type": "event"
62
+ },
63
+ {
64
+ "anonymous": false,
65
+ "inputs": [
66
+ {
67
+ "indexed": false,
68
+ "internalType": "address",
69
+ "name": "oldPendingAdmin",
70
+ "type": "address"
71
+ },
72
+ {
73
+ "indexed": false,
74
+ "internalType": "address",
75
+ "name": "newPendingAdmin",
76
+ "type": "address"
77
+ }
78
+ ],
79
+ "name": "NewPendingAdmin",
80
+ "type": "event"
81
+ },
82
+ {
83
+ "anonymous": false,
84
+ "inputs": [
85
+ {
86
+ "indexed": false,
87
+ "internalType": "uint256",
88
+ "name": "id",
89
+ "type": "uint256"
90
+ }
91
+ ],
92
+ "name": "ProposalCanceled",
93
+ "type": "event"
94
+ },
95
+ {
96
+ "anonymous": false,
97
+ "inputs": [
98
+ {
99
+ "indexed": false,
100
+ "internalType": "uint256",
101
+ "name": "id",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "indexed": false,
106
+ "internalType": "address",
107
+ "name": "proposer",
108
+ "type": "address"
109
+ },
110
+ {
111
+ "indexed": false,
112
+ "internalType": "address[]",
113
+ "name": "targets",
114
+ "type": "address[]"
115
+ },
116
+ {
117
+ "indexed": false,
118
+ "internalType": "uint256[]",
119
+ "name": "values",
120
+ "type": "uint256[]"
121
+ },
122
+ {
123
+ "indexed": false,
124
+ "internalType": "string[]",
125
+ "name": "signatures",
126
+ "type": "string[]"
127
+ },
128
+ {
129
+ "indexed": false,
130
+ "internalType": "bytes[]",
131
+ "name": "calldatas",
132
+ "type": "bytes[]"
133
+ },
134
+ {
135
+ "indexed": false,
136
+ "internalType": "uint256",
137
+ "name": "startBlock",
138
+ "type": "uint256"
139
+ },
140
+ {
141
+ "indexed": false,
142
+ "internalType": "uint256",
143
+ "name": "endBlock",
144
+ "type": "uint256"
145
+ },
146
+ {
147
+ "indexed": false,
148
+ "internalType": "string",
149
+ "name": "description",
150
+ "type": "string"
151
+ }
152
+ ],
153
+ "name": "ProposalCreated",
154
+ "type": "event"
155
+ },
156
+ {
157
+ "anonymous": false,
158
+ "inputs": [
159
+ {
160
+ "indexed": false,
161
+ "internalType": "uint256",
162
+ "name": "id",
163
+ "type": "uint256"
164
+ }
165
+ ],
166
+ "name": "ProposalExecuted",
167
+ "type": "event"
168
+ },
169
+ {
170
+ "anonymous": false,
171
+ "inputs": [
172
+ {
173
+ "indexed": false,
174
+ "internalType": "uint256",
175
+ "name": "oldMaxOperations",
176
+ "type": "uint256"
177
+ },
178
+ {
179
+ "indexed": false,
180
+ "internalType": "uint256",
181
+ "name": "newMaxOperations",
182
+ "type": "uint256"
183
+ }
184
+ ],
185
+ "name": "ProposalMaxOperationsUpdated",
186
+ "type": "event"
187
+ },
188
+ {
189
+ "anonymous": false,
190
+ "inputs": [
191
+ {
192
+ "indexed": false,
193
+ "internalType": "uint256",
194
+ "name": "id",
195
+ "type": "uint256"
196
+ },
197
+ {
198
+ "indexed": false,
199
+ "internalType": "uint256",
200
+ "name": "eta",
201
+ "type": "uint256"
202
+ }
203
+ ],
204
+ "name": "ProposalQueued",
205
+ "type": "event"
206
+ },
207
+ {
208
+ "anonymous": false,
209
+ "inputs": [
210
+ {
211
+ "indexed": false,
212
+ "internalType": "uint256",
213
+ "name": "oldProposalThreshold",
214
+ "type": "uint256"
215
+ },
216
+ {
217
+ "indexed": false,
218
+ "internalType": "uint256",
219
+ "name": "newProposalThreshold",
220
+ "type": "uint256"
221
+ }
222
+ ],
223
+ "name": "ProposalThresholdSet",
224
+ "type": "event"
225
+ },
226
+ {
227
+ "anonymous": false,
228
+ "inputs": [
229
+ {
230
+ "indexed": true,
231
+ "internalType": "address",
232
+ "name": "voter",
233
+ "type": "address"
234
+ },
235
+ {
236
+ "indexed": false,
237
+ "internalType": "uint256",
238
+ "name": "proposalId",
239
+ "type": "uint256"
240
+ },
241
+ {
242
+ "indexed": false,
243
+ "internalType": "uint8",
244
+ "name": "support",
245
+ "type": "uint8"
246
+ },
247
+ {
248
+ "indexed": false,
249
+ "internalType": "uint256",
250
+ "name": "votes",
251
+ "type": "uint256"
252
+ },
253
+ {
254
+ "indexed": false,
255
+ "internalType": "string",
256
+ "name": "reason",
257
+ "type": "string"
258
+ }
259
+ ],
260
+ "name": "VoteCast",
261
+ "type": "event"
262
+ },
263
+ {
264
+ "anonymous": false,
265
+ "inputs": [
266
+ {
267
+ "indexed": false,
268
+ "internalType": "uint256",
269
+ "name": "oldVotingDelay",
270
+ "type": "uint256"
271
+ },
272
+ {
273
+ "indexed": false,
274
+ "internalType": "uint256",
275
+ "name": "newVotingDelay",
276
+ "type": "uint256"
277
+ }
278
+ ],
279
+ "name": "VotingDelaySet",
280
+ "type": "event"
281
+ },
282
+ {
283
+ "anonymous": false,
284
+ "inputs": [
285
+ {
286
+ "indexed": false,
287
+ "internalType": "uint256",
288
+ "name": "oldVotingPeriod",
289
+ "type": "uint256"
290
+ },
291
+ {
292
+ "indexed": false,
293
+ "internalType": "uint256",
294
+ "name": "newVotingPeriod",
295
+ "type": "uint256"
296
+ }
297
+ ],
298
+ "name": "VotingPeriodSet",
299
+ "type": "event"
300
+ },
301
+ {
302
+ "constant": true,
303
+ "inputs": [],
304
+ "name": "BALLOT_TYPEHASH",
305
+ "outputs": [
306
+ {
307
+ "internalType": "bytes32",
308
+ "name": "",
309
+ "type": "bytes32"
310
+ }
311
+ ],
312
+ "payable": false,
313
+ "stateMutability": "view",
314
+ "type": "function"
315
+ },
316
+ {
317
+ "constant": true,
318
+ "inputs": [],
319
+ "name": "DOMAIN_TYPEHASH",
320
+ "outputs": [
321
+ {
322
+ "internalType": "bytes32",
323
+ "name": "",
324
+ "type": "bytes32"
325
+ }
326
+ ],
327
+ "payable": false,
328
+ "stateMutability": "view",
329
+ "type": "function"
330
+ },
331
+ {
332
+ "constant": true,
333
+ "inputs": [],
334
+ "name": "MAX_PROPOSAL_THRESHOLD",
335
+ "outputs": [
336
+ {
337
+ "internalType": "uint256",
338
+ "name": "",
339
+ "type": "uint256"
340
+ }
341
+ ],
342
+ "payable": false,
343
+ "stateMutability": "view",
344
+ "type": "function"
345
+ },
346
+ {
347
+ "constant": true,
348
+ "inputs": [],
349
+ "name": "MAX_VOTING_DELAY",
350
+ "outputs": [
351
+ {
352
+ "internalType": "uint256",
353
+ "name": "",
354
+ "type": "uint256"
355
+ }
356
+ ],
357
+ "payable": false,
358
+ "stateMutability": "view",
359
+ "type": "function"
360
+ },
361
+ {
362
+ "constant": true,
363
+ "inputs": [],
364
+ "name": "MAX_VOTING_PERIOD",
365
+ "outputs": [
366
+ {
367
+ "internalType": "uint256",
368
+ "name": "",
369
+ "type": "uint256"
370
+ }
371
+ ],
372
+ "payable": false,
373
+ "stateMutability": "view",
374
+ "type": "function"
375
+ },
376
+ {
377
+ "constant": true,
378
+ "inputs": [],
379
+ "name": "MIN_PROPOSAL_THRESHOLD",
380
+ "outputs": [
381
+ {
382
+ "internalType": "uint256",
383
+ "name": "",
384
+ "type": "uint256"
385
+ }
386
+ ],
387
+ "payable": false,
388
+ "stateMutability": "view",
389
+ "type": "function"
390
+ },
391
+ {
392
+ "constant": true,
393
+ "inputs": [],
394
+ "name": "MIN_VOTING_DELAY",
395
+ "outputs": [
396
+ {
397
+ "internalType": "uint256",
398
+ "name": "",
399
+ "type": "uint256"
400
+ }
401
+ ],
402
+ "payable": false,
403
+ "stateMutability": "view",
404
+ "type": "function"
405
+ },
406
+ {
407
+ "constant": true,
408
+ "inputs": [],
409
+ "name": "MIN_VOTING_PERIOD",
410
+ "outputs": [
411
+ {
412
+ "internalType": "uint256",
413
+ "name": "",
414
+ "type": "uint256"
415
+ }
416
+ ],
417
+ "payable": false,
418
+ "stateMutability": "view",
419
+ "type": "function"
420
+ },
421
+ {
422
+ "constant": false,
423
+ "inputs": [],
424
+ "name": "_acceptAdmin",
425
+ "outputs": [],
426
+ "payable": false,
427
+ "stateMutability": "nonpayable",
428
+ "type": "function"
429
+ },
430
+ {
431
+ "constant": false,
432
+ "inputs": [
433
+ {
434
+ "internalType": "address",
435
+ "name": "governorAlpha",
436
+ "type": "address"
437
+ }
438
+ ],
439
+ "name": "_initiate",
440
+ "outputs": [],
441
+ "payable": false,
442
+ "stateMutability": "nonpayable",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "constant": false,
447
+ "inputs": [
448
+ {
449
+ "internalType": "address",
450
+ "name": "newGuardian",
451
+ "type": "address"
452
+ }
453
+ ],
454
+ "name": "_setGuardian",
455
+ "outputs": [],
456
+ "payable": false,
457
+ "stateMutability": "nonpayable",
458
+ "type": "function"
459
+ },
460
+ {
461
+ "constant": false,
462
+ "inputs": [
463
+ {
464
+ "internalType": "address",
465
+ "name": "newPendingAdmin",
466
+ "type": "address"
467
+ }
468
+ ],
469
+ "name": "_setPendingAdmin",
470
+ "outputs": [],
471
+ "payable": false,
472
+ "stateMutability": "nonpayable",
473
+ "type": "function"
474
+ },
475
+ {
476
+ "constant": false,
477
+ "inputs": [
478
+ {
479
+ "internalType": "uint256",
480
+ "name": "proposalMaxOperations_",
481
+ "type": "uint256"
482
+ }
483
+ ],
484
+ "name": "_setProposalMaxOperations",
485
+ "outputs": [],
486
+ "payable": false,
487
+ "stateMutability": "nonpayable",
488
+ "type": "function"
489
+ },
490
+ {
491
+ "constant": false,
492
+ "inputs": [
493
+ {
494
+ "internalType": "uint256",
495
+ "name": "newProposalThreshold",
496
+ "type": "uint256"
497
+ }
498
+ ],
499
+ "name": "_setProposalThreshold",
500
+ "outputs": [],
501
+ "payable": false,
502
+ "stateMutability": "nonpayable",
503
+ "type": "function"
504
+ },
505
+ {
506
+ "constant": false,
507
+ "inputs": [
508
+ {
509
+ "internalType": "uint256",
510
+ "name": "newVotingDelay",
511
+ "type": "uint256"
512
+ }
513
+ ],
514
+ "name": "_setVotingDelay",
515
+ "outputs": [],
516
+ "payable": false,
517
+ "stateMutability": "nonpayable",
518
+ "type": "function"
519
+ },
520
+ {
521
+ "constant": false,
522
+ "inputs": [
523
+ {
524
+ "internalType": "uint256",
525
+ "name": "newVotingPeriod",
526
+ "type": "uint256"
527
+ }
528
+ ],
529
+ "name": "_setVotingPeriod",
530
+ "outputs": [],
531
+ "payable": false,
532
+ "stateMutability": "nonpayable",
533
+ "type": "function"
534
+ },
535
+ {
536
+ "constant": true,
537
+ "inputs": [],
538
+ "name": "admin",
539
+ "outputs": [
540
+ {
541
+ "internalType": "address",
542
+ "name": "",
543
+ "type": "address"
544
+ }
545
+ ],
546
+ "payable": false,
547
+ "stateMutability": "view",
548
+ "type": "function"
549
+ },
550
+ {
551
+ "constant": false,
552
+ "inputs": [
553
+ {
554
+ "internalType": "uint256",
555
+ "name": "proposalId",
556
+ "type": "uint256"
557
+ }
558
+ ],
559
+ "name": "cancel",
560
+ "outputs": [],
561
+ "payable": false,
562
+ "stateMutability": "nonpayable",
563
+ "type": "function"
564
+ },
565
+ {
566
+ "constant": false,
567
+ "inputs": [
568
+ {
569
+ "internalType": "uint256",
570
+ "name": "proposalId",
571
+ "type": "uint256"
572
+ },
573
+ {
574
+ "internalType": "uint8",
575
+ "name": "support",
576
+ "type": "uint8"
577
+ }
578
+ ],
579
+ "name": "castVote",
580
+ "outputs": [],
581
+ "payable": false,
582
+ "stateMutability": "nonpayable",
583
+ "type": "function"
584
+ },
585
+ {
586
+ "constant": false,
587
+ "inputs": [
588
+ {
589
+ "internalType": "uint256",
590
+ "name": "proposalId",
591
+ "type": "uint256"
592
+ },
593
+ {
594
+ "internalType": "uint8",
595
+ "name": "support",
596
+ "type": "uint8"
597
+ },
598
+ {
599
+ "internalType": "uint8",
600
+ "name": "v",
601
+ "type": "uint8"
602
+ },
603
+ {
604
+ "internalType": "bytes32",
605
+ "name": "r",
606
+ "type": "bytes32"
607
+ },
608
+ {
609
+ "internalType": "bytes32",
610
+ "name": "s",
611
+ "type": "bytes32"
612
+ }
613
+ ],
614
+ "name": "castVoteBySig",
615
+ "outputs": [],
616
+ "payable": false,
617
+ "stateMutability": "nonpayable",
618
+ "type": "function"
619
+ },
620
+ {
621
+ "constant": false,
622
+ "inputs": [
623
+ {
624
+ "internalType": "uint256",
625
+ "name": "proposalId",
626
+ "type": "uint256"
627
+ },
628
+ {
629
+ "internalType": "uint8",
630
+ "name": "support",
631
+ "type": "uint8"
632
+ },
633
+ {
634
+ "internalType": "string",
635
+ "name": "reason",
636
+ "type": "string"
637
+ }
638
+ ],
639
+ "name": "castVoteWithReason",
640
+ "outputs": [],
641
+ "payable": false,
642
+ "stateMutability": "nonpayable",
643
+ "type": "function"
644
+ },
645
+ {
646
+ "constant": false,
647
+ "inputs": [
648
+ {
649
+ "internalType": "uint256",
650
+ "name": "proposalId",
651
+ "type": "uint256"
652
+ }
653
+ ],
654
+ "name": "execute",
655
+ "outputs": [],
656
+ "payable": false,
657
+ "stateMutability": "nonpayable",
658
+ "type": "function"
659
+ },
660
+ {
661
+ "constant": true,
662
+ "inputs": [
663
+ {
664
+ "internalType": "uint256",
665
+ "name": "proposalId",
666
+ "type": "uint256"
667
+ }
668
+ ],
669
+ "name": "getActions",
670
+ "outputs": [
671
+ {
672
+ "internalType": "address[]",
673
+ "name": "targets",
674
+ "type": "address[]"
675
+ },
676
+ {
677
+ "internalType": "uint256[]",
678
+ "name": "values",
679
+ "type": "uint256[]"
680
+ },
681
+ {
682
+ "internalType": "string[]",
683
+ "name": "signatures",
684
+ "type": "string[]"
685
+ },
686
+ {
687
+ "internalType": "bytes[]",
688
+ "name": "calldatas",
689
+ "type": "bytes[]"
690
+ }
691
+ ],
692
+ "payable": false,
693
+ "stateMutability": "view",
694
+ "type": "function"
695
+ },
696
+ {
697
+ "constant": true,
698
+ "inputs": [
699
+ {
700
+ "internalType": "uint256",
701
+ "name": "proposalId",
702
+ "type": "uint256"
703
+ },
704
+ {
705
+ "internalType": "address",
706
+ "name": "voter",
707
+ "type": "address"
708
+ }
709
+ ],
710
+ "name": "getReceipt",
711
+ "outputs": [
712
+ {
713
+ "components": [
714
+ {
715
+ "internalType": "bool",
716
+ "name": "hasVoted",
717
+ "type": "bool"
718
+ },
719
+ {
720
+ "internalType": "uint8",
721
+ "name": "support",
722
+ "type": "uint8"
723
+ },
724
+ {
725
+ "internalType": "uint96",
726
+ "name": "votes",
727
+ "type": "uint96"
728
+ }
729
+ ],
730
+ "internalType": "struct GovernorBravoDelegateStorageV1.Receipt",
731
+ "name": "",
732
+ "type": "tuple"
733
+ }
734
+ ],
735
+ "payable": false,
736
+ "stateMutability": "view",
737
+ "type": "function"
738
+ },
739
+ {
740
+ "constant": true,
741
+ "inputs": [],
742
+ "name": "guardian",
743
+ "outputs": [
744
+ {
745
+ "internalType": "address",
746
+ "name": "",
747
+ "type": "address"
748
+ }
749
+ ],
750
+ "payable": false,
751
+ "stateMutability": "view",
752
+ "type": "function"
753
+ },
754
+ {
755
+ "constant": true,
756
+ "inputs": [],
757
+ "name": "implementation",
758
+ "outputs": [
759
+ {
760
+ "internalType": "address",
761
+ "name": "",
762
+ "type": "address"
763
+ }
764
+ ],
765
+ "payable": false,
766
+ "stateMutability": "view",
767
+ "type": "function"
768
+ },
769
+ {
770
+ "constant": true,
771
+ "inputs": [],
772
+ "name": "initialProposalId",
773
+ "outputs": [
774
+ {
775
+ "internalType": "uint256",
776
+ "name": "",
777
+ "type": "uint256"
778
+ }
779
+ ],
780
+ "payable": false,
781
+ "stateMutability": "view",
782
+ "type": "function"
783
+ },
784
+ {
785
+ "constant": false,
786
+ "inputs": [
787
+ {
788
+ "internalType": "address",
789
+ "name": "timelock_",
790
+ "type": "address"
791
+ },
792
+ {
793
+ "internalType": "address",
794
+ "name": "xvsVault_",
795
+ "type": "address"
796
+ },
797
+ {
798
+ "internalType": "uint256",
799
+ "name": "votingPeriod_",
800
+ "type": "uint256"
801
+ },
802
+ {
803
+ "internalType": "uint256",
804
+ "name": "votingDelay_",
805
+ "type": "uint256"
806
+ },
807
+ {
808
+ "internalType": "uint256",
809
+ "name": "proposalThreshold_",
810
+ "type": "uint256"
811
+ },
812
+ {
813
+ "internalType": "address",
814
+ "name": "guardian_",
815
+ "type": "address"
816
+ }
817
+ ],
818
+ "name": "initialize",
819
+ "outputs": [],
820
+ "payable": false,
821
+ "stateMutability": "nonpayable",
822
+ "type": "function"
823
+ },
824
+ {
825
+ "constant": true,
826
+ "inputs": [
827
+ {
828
+ "internalType": "address",
829
+ "name": "",
830
+ "type": "address"
831
+ }
832
+ ],
833
+ "name": "latestProposalIds",
834
+ "outputs": [
835
+ {
836
+ "internalType": "uint256",
837
+ "name": "",
838
+ "type": "uint256"
839
+ }
840
+ ],
841
+ "payable": false,
842
+ "stateMutability": "view",
843
+ "type": "function"
844
+ },
845
+ {
846
+ "constant": true,
847
+ "inputs": [],
848
+ "name": "name",
849
+ "outputs": [
850
+ {
851
+ "internalType": "string",
852
+ "name": "",
853
+ "type": "string"
854
+ }
855
+ ],
856
+ "payable": false,
857
+ "stateMutability": "view",
858
+ "type": "function"
859
+ },
860
+ {
861
+ "constant": true,
862
+ "inputs": [],
863
+ "name": "pendingAdmin",
864
+ "outputs": [
865
+ {
866
+ "internalType": "address",
867
+ "name": "",
868
+ "type": "address"
869
+ }
870
+ ],
871
+ "payable": false,
872
+ "stateMutability": "view",
873
+ "type": "function"
874
+ },
875
+ {
876
+ "constant": true,
877
+ "inputs": [],
878
+ "name": "proposalCount",
879
+ "outputs": [
880
+ {
881
+ "internalType": "uint256",
882
+ "name": "",
883
+ "type": "uint256"
884
+ }
885
+ ],
886
+ "payable": false,
887
+ "stateMutability": "view",
888
+ "type": "function"
889
+ },
890
+ {
891
+ "constant": true,
892
+ "inputs": [],
893
+ "name": "proposalMaxOperations",
894
+ "outputs": [
895
+ {
896
+ "internalType": "uint256",
897
+ "name": "",
898
+ "type": "uint256"
899
+ }
900
+ ],
901
+ "payable": false,
902
+ "stateMutability": "view",
903
+ "type": "function"
904
+ },
905
+ {
906
+ "constant": true,
907
+ "inputs": [],
908
+ "name": "proposalThreshold",
909
+ "outputs": [
910
+ {
911
+ "internalType": "uint256",
912
+ "name": "",
913
+ "type": "uint256"
914
+ }
915
+ ],
916
+ "payable": false,
917
+ "stateMutability": "view",
918
+ "type": "function"
919
+ },
920
+ {
921
+ "constant": true,
922
+ "inputs": [
923
+ {
924
+ "internalType": "uint256",
925
+ "name": "",
926
+ "type": "uint256"
927
+ }
928
+ ],
929
+ "name": "proposals",
930
+ "outputs": [
931
+ {
932
+ "internalType": "uint256",
933
+ "name": "id",
934
+ "type": "uint256"
935
+ },
936
+ {
937
+ "internalType": "address",
938
+ "name": "proposer",
939
+ "type": "address"
940
+ },
941
+ {
942
+ "internalType": "uint256",
943
+ "name": "eta",
944
+ "type": "uint256"
945
+ },
946
+ {
947
+ "internalType": "uint256",
948
+ "name": "startBlock",
949
+ "type": "uint256"
950
+ },
951
+ {
952
+ "internalType": "uint256",
953
+ "name": "endBlock",
954
+ "type": "uint256"
955
+ },
956
+ {
957
+ "internalType": "uint256",
958
+ "name": "forVotes",
959
+ "type": "uint256"
960
+ },
961
+ {
962
+ "internalType": "uint256",
963
+ "name": "againstVotes",
964
+ "type": "uint256"
965
+ },
966
+ {
967
+ "internalType": "uint256",
968
+ "name": "abstainVotes",
969
+ "type": "uint256"
970
+ },
971
+ {
972
+ "internalType": "bool",
973
+ "name": "canceled",
974
+ "type": "bool"
975
+ },
976
+ {
977
+ "internalType": "bool",
978
+ "name": "executed",
979
+ "type": "bool"
980
+ }
981
+ ],
982
+ "payable": false,
983
+ "stateMutability": "view",
984
+ "type": "function"
985
+ },
986
+ {
987
+ "constant": false,
988
+ "inputs": [
989
+ {
990
+ "internalType": "address[]",
991
+ "name": "targets",
992
+ "type": "address[]"
993
+ },
994
+ {
995
+ "internalType": "uint256[]",
996
+ "name": "values",
997
+ "type": "uint256[]"
998
+ },
999
+ {
1000
+ "internalType": "string[]",
1001
+ "name": "signatures",
1002
+ "type": "string[]"
1003
+ },
1004
+ {
1005
+ "internalType": "bytes[]",
1006
+ "name": "calldatas",
1007
+ "type": "bytes[]"
1008
+ },
1009
+ {
1010
+ "internalType": "string",
1011
+ "name": "description",
1012
+ "type": "string"
1013
+ }
1014
+ ],
1015
+ "name": "propose",
1016
+ "outputs": [
1017
+ {
1018
+ "internalType": "uint256",
1019
+ "name": "",
1020
+ "type": "uint256"
1021
+ }
1022
+ ],
1023
+ "payable": false,
1024
+ "stateMutability": "nonpayable",
1025
+ "type": "function"
1026
+ },
1027
+ {
1028
+ "constant": false,
1029
+ "inputs": [
1030
+ {
1031
+ "internalType": "uint256",
1032
+ "name": "proposalId",
1033
+ "type": "uint256"
1034
+ }
1035
+ ],
1036
+ "name": "queue",
1037
+ "outputs": [],
1038
+ "payable": false,
1039
+ "stateMutability": "nonpayable",
1040
+ "type": "function"
1041
+ },
1042
+ {
1043
+ "constant": true,
1044
+ "inputs": [],
1045
+ "name": "quorumVotes",
1046
+ "outputs": [
1047
+ {
1048
+ "internalType": "uint256",
1049
+ "name": "",
1050
+ "type": "uint256"
1051
+ }
1052
+ ],
1053
+ "payable": false,
1054
+ "stateMutability": "view",
1055
+ "type": "function"
1056
+ },
1057
+ {
1058
+ "constant": true,
1059
+ "inputs": [
1060
+ {
1061
+ "internalType": "uint256",
1062
+ "name": "proposalId",
1063
+ "type": "uint256"
1064
+ }
1065
+ ],
1066
+ "name": "state",
1067
+ "outputs": [
1068
+ {
1069
+ "internalType": "enum GovernorBravoDelegateStorageV1.ProposalState",
1070
+ "name": "",
1071
+ "type": "uint8"
1072
+ }
1073
+ ],
1074
+ "payable": false,
1075
+ "stateMutability": "view",
1076
+ "type": "function"
1077
+ },
1078
+ {
1079
+ "constant": true,
1080
+ "inputs": [],
1081
+ "name": "timelock",
1082
+ "outputs": [
1083
+ {
1084
+ "internalType": "contract TimelockInterface",
1085
+ "name": "",
1086
+ "type": "address"
1087
+ }
1088
+ ],
1089
+ "payable": false,
1090
+ "stateMutability": "view",
1091
+ "type": "function"
1092
+ },
1093
+ {
1094
+ "constant": true,
1095
+ "inputs": [],
1096
+ "name": "votingDelay",
1097
+ "outputs": [
1098
+ {
1099
+ "internalType": "uint256",
1100
+ "name": "",
1101
+ "type": "uint256"
1102
+ }
1103
+ ],
1104
+ "payable": false,
1105
+ "stateMutability": "view",
1106
+ "type": "function"
1107
+ },
1108
+ {
1109
+ "constant": true,
1110
+ "inputs": [],
1111
+ "name": "votingPeriod",
1112
+ "outputs": [
1113
+ {
1114
+ "internalType": "uint256",
1115
+ "name": "",
1116
+ "type": "uint256"
1117
+ }
1118
+ ],
1119
+ "payable": false,
1120
+ "stateMutability": "view",
1121
+ "type": "function"
1122
+ },
1123
+ {
1124
+ "constant": true,
1125
+ "inputs": [],
1126
+ "name": "xvsVault",
1127
+ "outputs": [
1128
+ {
1129
+ "internalType": "contract XvsVaultInterface",
1130
+ "name": "",
1131
+ "type": "address"
1132
+ }
1133
+ ],
1134
+ "payable": false,
1135
+ "stateMutability": "view",
1136
+ "type": "function"
1137
+ }
1138
+ ],
1139
+ "bytecode": "0x608060405234801561001057600080fd5b50614640806100206000396000f3fe608060405234801561001057600080fd5b50600436106102695760003560e01c80635c60da1b11610151578063da95691a116100c3578063e48083fe11610087578063e48083fe146104db578063e9c714f2146104e3578063f851a440146104eb578063f9d28b80146104f3578063fc4eee4214610506578063fe0d94c11461050e57610269565b8063da95691a1461047a578063ddf0b0091461048d578063deaaa7cc146104a0578063e23a9a52146104a8578063e38e8c0f146104c857610269565b8063b112626311610115578063b112626314610434578063b1a5d12d1461043c578063b58131b01461044f578063b71d1a0c14610457578063d33219b41461046a578063da35c6641461047257610269565b80635c60da1b14610401578063791f5d23146104095780637b3c71d3146104115780637bdbe4d014610424578063a64e024a1461042c57610269565b8063215809ca116101ea5780633932abb1116101ae5780633932abb1146103985780633bccf4fd146103a05780633e4f49e6146103b357806340e58ee5146103d3578063452a9320146103e657806356781388146103ee57610269565b8063215809ca1461034857806324bc1a641461035057806325fd935a146103585780632678224714610360578063328dd9821461037557610269565b806317ba1b8b1161023157806317ba1b8b146102f25780631b9ce575146103055780631dfb1b5a1461031a5780631ebcfefd1461032d57806320606b701461034057610269565b8063013cf08b1461026e57806302a251a3146102a057806306fdde03146102b55780630ea2d98c146102ca57806317977c61146102df575b600080fd5b61028161027c366004612b4a565b610521565b6040516102979a99989796959493929190614357565b60405180910390f35b6102a8610584565b6040516102979190613f54565b6102bd61058a565b6040516102979190614010565b6102dd6102d8366004612b4a565b6105ba565b005b6102a86102ed366004612940565b610664565b6102dd610300366004612b4a565b610676565b61030d61071a565b6040516102979190613ff4565b6102dd610328366004612b4a565b610729565b6102dd61033b366004612b4a565b6107bd565b6102a8610821565b6102a8610838565b6102a861083e565b6102a861084c565b61036861085a565b6040516102979190613e1a565b610388610383366004612b4a565b610869565b6040516102979493929190613f07565b6102a8610af8565b6102dd6103ae366004612c3a565b610afe565b6103c66103c1366004612b4a565b610cd6565b6040516102979190614002565b6102dd6103e1366004612b4a565b610e5c565b6103686110c5565b6102dd6103fc366004612ba2565b6110d4565b61036861111e565b6102a861112d565b6102dd61041f366004612bd2565b61113b565b6102a861118b565b6102a8611191565b6102a8611198565b6102dd61044a366004612966565b61119f565b6102a8611358565b6102dd610465366004612940565b61135e565b61030d6113db565b6102a86113ea565b6102a86104883660046129ed565b6113f0565b6102dd61049b366004612b4a565b611839565b6102a8611ab5565b6104bb6104b6366004612b68565b611ac1565b60405161029791906142a1565b6102dd6104d6366004612940565b611b2e565b6102a8611be6565b6102dd611beb565b610368611cc9565b6102dd610501366004612940565b611cd8565b6102a8611dfe565b6102dd61051c366004612b4a565b611e04565b600a60208190526000918252604090912080546001820154600283015460078401546008850154600986015496860154600b870154600c9097015495976001600160a01b0390951696939592949193919290919060ff808216916101009004168a565b60045481565b6040518060400160405280601481526020017356656e757320476f7665726e6f7220427261766f60601b81525081565b6000546001600160a01b031633146105ed5760405162461bcd60e51b81526004016105e490614061565b60405180910390fd5b610e1081101580156106025750620627008111155b61061e5760405162461bcd60e51b81526004016105e4906140a1565b60048054908290556040517f7e3f7f0708a84de9203036abaa450dccc85ad5ff52f78c170f3edb55cf5e88289061065890839085906143dd565b60405180910390a15050565b600b6020526000908152604090205481565b6000546001600160a01b031633146106a05760405162461bcd60e51b81526004016105e490614241565b691fc3842bd1f071c0000081101580156106c45750693f870857a3e0e38000008111155b6106e05760405162461bcd60e51b81526004016105e490614151565b60058054908290556040517fccb45da8d5717e6c4544694297c4ba5cf151d455c9bb0ed4fc7a38411bc054619061065890839085906143dd565b6009546001600160a01b031681565b6000546001600160a01b031633146107535760405162461bcd60e51b81526004016105e490614081565b600181101580156107675750620313808111155b6107835760405162461bcd60e51b81526004016105e4906140e1565b60038054908290556040517fc565b045403dc03c2eea82b81a0465edad9e2e7fc4d97e11421c209da93d7a939061065890839085906143dd565b6000546001600160a01b031633146107e75760405162461bcd60e51b81526004016105e4906141f1565b600c8054908290556040517fd03b3c3c5c1446bcdd31423061041c94ca3bc5450fe7ccfb0f636f4c420de87e9061065890839085906143dd565b60405161082d90613e0f565b604051809103902081565b610e1081565b697f0e10af47c1c700000081565b693f870857a3e0e380000081565b6001546001600160a01b031681565b6060806060806000600a6000878152602001908152602001600020905080600301816004018260050183600601838054806020026020016040519081016040528092919081815260200182805480156108eb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108cd575b505050505093508280548060200260200160405190810160405280929190818152602001828054801561093d57602002820191906000526020600020905b815481526020019060010190808311610929575b5050505050925081805480602002602001604051908101604052809291908181526020016000905b82821015610a105760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156109fc5780601f106109d1576101008083540402835291602001916109fc565b820191906000526020600020905b8154815290600101906020018083116109df57829003601f168201915b505050505081526020019060010190610965565b50505050915080805480602002602001604051908101604052809291908181526020016000905b82821015610ae25760008481526020908190208301805460408051601f6002600019610100600187161502019094169390930492830185900485028101850190915281815292830182828015610ace5780601f10610aa357610100808354040283529160200191610ace565b820191906000526020600020905b815481529060010190602001808311610ab157829003601f168201915b505050505081526020019060010190610a37565b5050505090509450945094509450509193509193565b60035481565b6000604051610b0c90613e0f565b60408051918290038220828201909152601482527356656e757320476f7665726e6f7220427261766f60601b6020909201919091527f157d76627a3b71c0167806f5879f7a61d3e301322f3a3b9f900315f15937671a610b6a611fa3565b30604051602001610b7e9493929190613f62565b6040516020818303038152906040528051906020012090506000604051610ba490613dd3565b604051908190038120610bbd9189908990602001613f97565b60405160208183030381529060405280519060200120905060008282604051602001610bea929190613dde565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610c279493929190613fbf565b6020604051602081039080840390855afa158015610c49573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c7c5760405162461bcd60e51b81526004016105e490614111565b806001600160a01b03167fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda48a8a610cb4858e8e611fa8565b604051610cc393929190614431565b60405180910390a2505050505050505050565b60008160075410158015610ceb575060065482115b610d075760405162461bcd60e51b81526004016105e490614251565b6000828152600a60205260409020600c81015460ff1615610d2c576002915050610e57565b80600701544311610d41576000915050610e57565b80600801544311610d56576001915050610e57565b80600a01548160090154111580610d7a5750697f0e10af47c1c70000008160090154105b15610d89576003915050610e57565b6002810154610d9c576004915050610e57565b600c810154610100900460ff1615610db8576007915050610e57565b6002810154600854604080516360d143f160e11b81529051610e4193926001600160a01b03169163c1a287e2916004808301926020929190829003018186803b158015610e0457600080fd5b505afa158015610e18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e3c9190810190612af7565b612199565b4210610e51576006915050610e57565b60059150505b919050565b6007610e6782610cd6565b6007811115610e7257fe5b1415610e905760405162461bcd60e51b81526004016105e490614231565b6000818152600a60205260409020600d546001600160a01b0316331480610ec3575060018101546001600160a01b031633145b80610f6d57506005546009546001838101546001600160a01b039283169263782d6fe192911690610ef59043906121be565b6040518363ffffffff1660e01b8152600401610f12929190613e5e565b60206040518083038186803b158015610f2a57600080fd5b505afa158015610f3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f629190810190612ca2565b6001600160601b0316105b610f895760405162461bcd60e51b81526004016105e4906141b1565b600c8101805460ff1916600117905560005b6003820154811015611095576008546003830180546001600160a01b039092169163591fcdfe919084908110610fcd57fe5b6000918252602090912001546004850180546001600160a01b039092169185908110610ff557fe5b906000526020600020015485600501858154811061100f57fe5b9060005260206000200186600601868154811061102857fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401611057959493929190613ec6565b600060405180830381600087803b15801561107157600080fd5b505af1158015611085573d6000803e3d6000fd5b505060019092019150610f9b9050565b507f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c826040516106589190613f54565b600d546001600160a01b031681565b337fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda48383611103848383611fa8565b60405161111293929190614431565b60405180910390a25050565b6002546001600160a01b031681565b691fc3842bd1f071c0000081565b337fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda4858561116a848383611fa8565b868660405161117d9594939291906143eb565b60405180910390a250505050565b600c5481565b6206270081565b6203138081565b6008546001600160a01b0316156111c85760405162461bcd60e51b81526004016105e490614031565b6000546001600160a01b031633146111f25760405162461bcd60e51b81526004016105e490614141565b6001600160a01b0386166112185760405162461bcd60e51b81526004016105e490614071565b6001600160a01b03851661123e5760405162461bcd60e51b81526004016105e4906140d1565b610e1084101580156112535750620627008411155b61126f5760405162461bcd60e51b81526004016105e490614261565b600183101580156112835750620313808311155b61129f5760405162461bcd60e51b81526004016105e490614121565b691fc3842bd1f071c0000082101580156112c35750693f870857a3e0e38000008211155b6112df5760405162461bcd60e51b81526004016105e4906140f1565b6001600160a01b0381166113055760405162461bcd60e51b81526004016105e4906141c1565b600880546001600160a01b039788166001600160a01b0319918216179091556009805496881696821696909617909555600493909355600391909155600555600a600c55600d8054919093169116179055565b60055481565b6000546001600160a01b031633146113885760405162461bcd60e51b81526004016105e490614041565b600180546001600160a01b038381166001600160a01b03198316179092556040519116907fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9906106589083908590613e43565b6008546001600160a01b031681565b60075481565b6000600654600014156114155760405162461bcd60e51b81526004016105e490614091565b6005546009546001600160a01b031663782d6fe1336114354360016121be565b6040518363ffffffff1660e01b8152600401611452929190613e28565b60206040518083038186803b15801561146a57600080fd5b505afa15801561147e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506114a29190810190612ca2565b6001600160601b0316116114c85760405162461bcd60e51b81526004016105e490614221565b845186511480156114da575083518651145b80156114e7575082518651145b6115035760405162461bcd60e51b81526004016105e490614131565b85516115215760405162461bcd60e51b81526004016105e490614191565b600c54865111156115445760405162461bcd60e51b81526004016105e4906141d1565b336000908152600b602052604090205480156115c157600061156582610cd6565b9050600181600781111561157557fe5b14156115935760405162461bcd60e51b81526004016105e490614201565b60008160078111156115a157fe5b14156115bf5760405162461bcd60e51b81526004016105e4906141e1565b505b60006115cf43600354612199565b905060006115df82600454612199565b60078054600101905590506115f2612345565b604051806101c001604052806007548152602001336001600160a01b03168152602001600081526020018b81526020018a815260200189815260200188815260200184815260200183815260200160008152602001600081526020016000815260200160001515815260200160001515815250905080600a6000836000015181526020019081526020016000206000820151816000015560208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506040820151816002015560608201518160030190805190602001906116dc9291906123c1565b50608082015180516116f8916004840191602090910190612426565b5060a0820151805161171491600584019160209091019061246d565b5060c082015180516117309160068401916020909101906124c6565b5060e082015181600701556101008201518160080155610120820151816009015561014082015181600a015561016082015181600b015561018082015181600c0160006101000a81548160ff0219169083151502179055506101a082015181600c0160016101000a81548160ff0219169083151502179055509050508060000151600b600083602001516001600160a01b03166001600160a01b03168152602001908152602001600020819055507f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e08160000151338c8c8c8c89898e604051611821999897969594939291906142af565b60405180910390a15193505050505b95945050505050565b600461184482610cd6565b600781111561184f57fe5b1461186c5760405162461bcd60e51b81526004016105e490614161565b6000818152600a602090815260408083206008548251630d48571f60e31b815292519194936118c69342936001600160a01b0390931692636a42b8f892600480840193919291829003018186803b158015610e0457600080fd5b905060005b6003830154811015611a6e57611a668360030182815481106118e957fe5b6000918252602090912001546004850180546001600160a01b03909216918490811061191157fe5b906000526020600020015485600501848154811061192b57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156119b95780601f1061198e576101008083540402835291602001916119b9565b820191906000526020600020905b81548152906001019060200180831161199c57829003601f168201915b50505050508660060185815481106119cd57fe5b600091825260209182902001805460408051601f6002600019610100600187161502019094169390930492830185900485028101850190915281815292830182828015611a5b5780601f10611a3057610100808354040283529160200191611a5b565b820191906000526020600020905b815481529060010190602001808311611a3e57829003601f168201915b5050505050866121e6565b6001016118cb565b50600282018190556040517f9a2e42fd6722813d69113e7d0079d3d940171428df7373df9c7f7617cfda289290611aa890859084906143dd565b60405180910390a1505050565b60405161082d90613dd3565b611ac961251f565b506000828152600a602090815260408083206001600160a01b0385168452600d018252918290208251606081018452905460ff8082161515835261010082041692820192909252620100009091046001600160601b0316918101919091525b92915050565b600d546001600160a01b0316331480611b5157506000546001600160a01b031633145b611b6d5760405162461bcd60e51b81526004016105e490614281565b6001600160a01b038116611b935760405162461bcd60e51b81526004016105e490614271565b600d80546001600160a01b038381166001600160a01b03198316179092556040519116907f08fdaf06427a2010e5958f4329b566993472d14ce81d3f16ce7f2a2660da98e3906106589083908590613e43565b600181565b6001546001600160a01b031633148015611c0457503315155b611c205760405162461bcd60e51b81526004016105e4906141a1565b60008054600180546001600160a01b038082166001600160a01b03198086168217968790559092169092556040519282169390927ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc92611c84928692911690613e43565b60405180910390a16001546040517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9916106589184916001600160a01b031690613e43565b6000546001600160a01b031681565b6000546001600160a01b03163314611d025760405162461bcd60e51b81526004016105e490614211565b60065415611d225760405162461bcd60e51b81526004016105e490614181565b806001600160a01b031663da35c6646040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611d5d57600080fd5b505af1158015611d71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611d959190810190612af7565b600781905560065560085460408051630e18b68160e01b815290516001600160a01b0390921691630e18b6819160048082019260009290919082900301818387803b158015611de357600080fd5b505af1158015611df7573d6000803e3d6000fd5b5050505050565b60065481565b6005611e0f82610cd6565b6007811115611e1a57fe5b14611e375760405162461bcd60e51b81526004016105e490614101565b6000818152600a60205260408120600c8101805461ff001916610100179055905b6003820154811015611f73576008546003830180546001600160a01b0390921691630825f38f919084908110611e8a57fe5b6000918252602090912001546004850180546001600160a01b039092169185908110611eb257fe5b9060005260206000200154856005018581548110611ecc57fe5b90600052602060002001866006018681548110611ee557fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401611f14959493929190613ec6565b600060405180830381600087803b158015611f2e57600080fd5b505af1158015611f42573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f6a9190810190612b15565b50600101611e58565b507f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f826040516106589190613f54565b465b90565b60006001611fb584610cd6565b6007811115611fc057fe5b14611fdd5760405162461bcd60e51b81526004016105e4906140b1565b60028260ff1611156120015760405162461bcd60e51b81526004016105e490614021565b6000838152600a602090815260408083206001600160a01b0388168452600d8101909252909120805460ff161561204a5760405162461bcd60e51b81526004016105e4906140c1565b600954600783015460405163782d6fe160e01b81526000926001600160a01b03169163782d6fe191612080918b91600401613e5e565b60206040518083038186803b15801561209857600080fd5b505afa1580156120ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120d09190810190612ca2565b905060ff85166120fb576120f183600a0154826001600160601b0316612199565b600a840155612151565b8460ff16600114156121285761211e8360090154826001600160601b0316612199565b6009840155612151565b8460ff16600214156121515761214b83600b0154826001600160601b0316612199565b600b8401555b8154600160ff199091161761ff00191661010060ff871602176dffffffffffffffffffffffff00001916620100006001600160601b03831602179091559150505b9392505050565b6000828201838110156121925760405162461bcd60e51b81526004016105e490614171565b6000828211156121e05760405162461bcd60e51b81526004016105e490614291565b50900390565b6008546040516001600160a01b039091169063f2b06537906122149088908890889088908890602001613e6c565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016122469190613f54565b60206040518083038186803b15801561225e57600080fd5b505afa158015612272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506122969190810190612ad9565b156122b35760405162461bcd60e51b81526004016105e490614051565b600854604051633a66f90160e01b81526001600160a01b0390911690633a66f901906122eb9088908890889088908890600401613e6c565b602060405180830381600087803b15801561230557600080fd5b505af1158015612319573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061233d9190810190612af7565b505050505050565b604051806101c001604052806000815260200160006001600160a01b03168152602001600081526020016060815260200160608152602001606081526020016060815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b828054828255906000526020600020908101928215612416579160200282015b8281111561241657825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906123e1565b5061242292915061253f565b5090565b828054828255906000526020600020908101928215612461579160200282015b82811115612461578251825591602001919060010190612446565b50612422929150612563565b8280548282559060005260206000209081019282156124ba579160200282015b828111156124ba57825180516124aa91849160209091019061257d565b509160200191906001019061248d565b506124229291506125ea565b828054828255906000526020600020908101928215612513579160200282015b82811115612513578251805161250391849160209091019061257d565b50916020019190600101906124e6565b5061242292915061260d565b604080516060810182526000808252602082018190529181019190915290565b611fa591905b808211156124225780546001600160a01b0319168155600101612545565b611fa591905b808211156124225760008155600101612569565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106125be57805160ff1916838001178555612461565b828001600101855582156124615791820182811115612461578251825591602001919060010190612446565b611fa591905b808211156124225760006126048282612630565b506001016125f0565b611fa591905b808211156124225760006126278282612630565b50600101612613565b50805460018160011615610100020316600290046000825580601f106126565750612674565b601f0160209004906000526020600020908101906126749190612563565b50565b8035611b28816145a5565b600082601f83011261269357600080fd5b81356126a66126a182614491565b61446a565b915081818352602084019350602081019050838560208402820111156126cb57600080fd5b60005b838110156126f757816126e18882612677565b84525060209283019291909101906001016126ce565b5050505092915050565b600082601f83011261271257600080fd5b81356127206126a182614491565b81815260209384019390925082018360005b838110156126f75781358601612748888261284c565b8452506020928301929190910190600101612732565b600082601f83011261276f57600080fd5b813561277d6126a182614491565b81815260209384019390925082018360005b838110156126f757813586016127a5888261284c565b845250602092830192919091019060010161278f565b600082601f8301126127cc57600080fd5b81356127da6126a182614491565b915081818352602084019350602081019050838560208402820111156127ff57600080fd5b60005b838110156126f757816128158882612836565b8452506020928301929190910190600101612802565b8051611b28816145b9565b8035611b28816145c2565b8051611b28816145c2565b600082601f83011261285d57600080fd5b813561286b6126a1826144b2565b9150808252602083016020830185838301111561288757600080fd5b612892838284614559565b50505092915050565b600082601f8301126128ac57600080fd5b81516128ba6126a1826144b2565b915080825260208301602083018583830111156128d657600080fd5b612892838284614565565b60008083601f8401126128f357600080fd5b50813567ffffffffffffffff81111561290b57600080fd5b60208301915083600182028301111561292357600080fd5b9250929050565b8035611b28816145cb565b8051611b28816145d4565b60006020828403121561295257600080fd5b600061295e8484612677565b949350505050565b60008060008060008060c0878903121561297f57600080fd5b600061298b8989612677565b965050602061299c89828a01612677565b95505060406129ad89828a01612836565b94505060606129be89828a01612836565b93505060806129cf89828a01612836565b92505060a06129e089828a01612677565b9150509295509295509295565b600080600080600060a08688031215612a0557600080fd5b853567ffffffffffffffff811115612a1c57600080fd5b612a2888828901612682565b955050602086013567ffffffffffffffff811115612a4557600080fd5b612a51888289016127bb565b945050604086013567ffffffffffffffff811115612a6e57600080fd5b612a7a8882890161275e565b935050606086013567ffffffffffffffff811115612a9757600080fd5b612aa388828901612701565b925050608086013567ffffffffffffffff811115612ac057600080fd5b612acc8882890161284c565b9150509295509295909350565b600060208284031215612aeb57600080fd5b600061295e848461282b565b600060208284031215612b0957600080fd5b600061295e8484612841565b600060208284031215612b2757600080fd5b815167ffffffffffffffff811115612b3e57600080fd5b61295e8482850161289b565b600060208284031215612b5c57600080fd5b600061295e8484612836565b60008060408385031215612b7b57600080fd5b6000612b878585612836565b9250506020612b9885828601612677565b9150509250929050565b60008060408385031215612bb557600080fd5b6000612bc18585612836565b9250506020612b988582860161292a565b60008060008060608587031215612be857600080fd5b6000612bf48787612836565b9450506020612c058782880161292a565b935050604085013567ffffffffffffffff811115612c2257600080fd5b612c2e878288016128e1565b95989497509550505050565b600080600080600060a08688031215612c5257600080fd5b6000612c5e8888612836565b9550506020612c6f8882890161292a565b9450506040612c808882890161292a565b9350506060612c9188828901612836565b9250506080612acc88828901612836565b600060208284031215612cb457600080fd5b600061295e8484612935565b6000612ccc8383612cfb565b505060200190565b60006121928383612e9d565b6000612ccc8383612e83565b612cf581614531565b82525050565b612cf5816144f9565b6000612d0f826144ec565b612d1981856144f0565b9350612d24836144da565b8060005b83811015612d52578151612d3c8882612cc0565b9750612d47836144da565b925050600101612d28565b509495945050505050565b6000612d68826144ec565b612d7281856144f0565b935083602082028501612d84856144da565b8060005b85811015612dbe5784840389528151612da18582612cd4565b9450612dac836144da565b60209a909a0199925050600101612d88565b5091979650505050505050565b6000612dd6826144ec565b612de081856144f0565b935083602082028501612df2856144da565b8060005b85811015612dbe5784840389528151612e0f8582612cd4565b9450612e1a836144da565b60209a909a0199925050600101612df6565b6000612e37826144ec565b612e4181856144f0565b9350612e4c836144da565b8060005b83811015612d52578151612e648882612ce0565b9750612e6f836144da565b925050600101612e50565b612cf581614504565b612cf581611fa5565b612cf5612e9882611fa5565b611fa5565b6000612ea8826144ec565b612eb281856144f0565b9350612ec2818560208601614565565b612ecb81614591565b9093019392505050565b600081546001811660008114612ef25760018114612f1857612f57565b607f6002830416612f0381876144f0565b60ff1984168152955050602085019250612f57565b60028204612f2681876144f0565b9550612f31856144e0565b60005b82811015612f5057815488820152600190910190602001612f34565b8701945050505b505092915050565b612cf581614538565b612cf581614543565b6000612f7d83856144f0565b9350612f8a838584614559565b612ecb83614591565b6000612fa06032836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a81527120696e76616c696420766f7465207479706560701b602082015260400192915050565b6000612ff4602883610e57565b7f42616c6c6f742875696e743235362070726f706f73616c49642c75696e743820815267737570706f72742960c01b602082015260280192915050565b600061303e6033836144f0565b7f476f7665726e6f72427261766f3a3a696e697469616c697a653a2063616e206f8152726e6c7920696e697469616c697a65206f6e636560681b602082015260400192915050565b6000613093602a836144f0565b7f476f7665726e6f72427261766f3a5f73657450656e64696e6741646d696e3a2081526961646d696e206f6e6c7960b01b602082015260400192915050565b60006130df6055836144f0565b7f476f7665726e6f72427261766f3a3a71756575654f72526576657274496e746581527f726e616c3a206964656e746963616c2070726f706f73616c20616374696f6e20602082015274616c7265616479207175657565642061742065746160581b604082015260600192915050565b600061315c602b836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e67506572696f643a81526a2061646d696e206f6e6c7960a81b602082015260400192915050565b60006131a96033836144f0565b6000805160206145de83398151915281527269642074696d656c6f636b206164647265737360681b602082015260400192915050565b60006131ec602a836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e6744656c61793a2081526961646d696e206f6e6c7960b01b602082015260400192915050565b60006132386031836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a20476f7665726e6f7281527020427261766f206e6f742061637469766560781b602082015260400192915050565b600061328b600283610e57565b61190160f01b815260020192915050565b60006132a96036836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e67506572696f643a815275081a5b9d985b1a59081d9bdd1a5b99c81c195c9a5bd960521b602082015260400192915050565b60006133016031836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a815270081d9bdd1a5b99c81a5cc818db1bdcd959607a1b602082015260400192915050565b60006133546034836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a815273081d9bdd195c88185b1c9958591e481d9bdd195960621b602082015260400192915050565b60006133aa602e836144f0565b6000805160206145de83398151915281526d696420787673206164647265737360901b602082015260400192915050565b60006133e86034836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e6744656c61793a20815273696e76616c696420766f74696e672064656c617960601b602082015260400192915050565b600061343e6035836144f0565b6000805160206145de8339815191528152741a59081c1c9bdc1bdcd85b081d1a1c995cda1bdb19605a1b602082015260400192915050565b60006134836045836144f0565b7f476f7665726e6f72427261766f3a3a657865637574653a2070726f706f73616c81527f2063616e206f6e6c7920626520657865637574656420696620697420697320716020820152641d595d595960da1b604082015260600192915050565b60006134f0602f836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f746542795369673a20696e81526e76616c6964207369676e617475726560881b602082015260400192915050565b6000613541602f836144f0565b6000805160206145de83398151915281526e696420766f74696e672064656c617960881b602082015260400192915050565b60006135806044836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a2070726f706f73616c81527f2066756e6374696f6e20696e666f726d6174696f6e206172697479206d69736d6020820152630c2e8c6d60e31b604082015260600192915050565b60006135ec6025836144f0565b7f476f7665726e6f72427261766f3a3a696e697469616c697a653a2061646d696e815264206f6e6c7960d81b602082015260400192915050565b60006136336040836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c546872657381527f686f6c643a20696e76616c69642070726f706f73616c207468726573686f6c64602082015260400192915050565b60006136926044836144f0565b7f476f7665726e6f72427261766f3a3a71756575653a2070726f706f73616c206381527f616e206f6e6c79206265207175657565642069662069742069732073756363656020820152631959195960e21b604082015260600192915050565b60006136fe6011836144f0565b706164646974696f6e206f766572666c6f7760781b815260200192915050565b600061372b604383610e57565b7f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353681527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208201526263742960e81b604082015260430192915050565b60006137966030836144f0565b7f476f7665726e6f72427261766f3a3a5f696e6974696174653a2063616e206f6e81526f6c7920696e697469617465206f6e636560801b602082015260400192915050565b60006137e8602c836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206d7573742070726f81526b7669646520616374696f6e7360a01b602082015260400192915050565b6000613836602e836144f0565b7f476f7665726e6f72427261766f3a5f61636365707441646d696e3a2070656e6481526d696e672061646d696e206f6e6c7960901b602082015260400192915050565b6000613886602f836144f0565b7f476f7665726e6f72427261766f3a3a63616e63656c3a2070726f706f7365722081526e18589bdd99481d1a1c995cda1bdb19608a1b602082015260400192915050565b60006138d7602b836144f0565b6000805160206145de83398151915281526a34b21033bab0b93234b0b760a91b602082015260400192915050565b60006139126028836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a20746f6f206d616e7981526720616374696f6e7360c01b602082015260400192915050565b600061395c6059836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206f6e65206c69766581527f2070726f706f73616c207065722070726f706f7365722c20666f756e6420616e60208201527f20616c72656164792070656e64696e672070726f706f73616c00000000000000604082015260600192915050565b60006139e16034836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c4d61784f7081527365726174696f6e733a2061646d696e206f6e6c7960601b602082015260400192915050565b6000613a376058836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206f6e65206c69766581527f2070726f706f73616c207065722070726f706f7365722c20666f756e6420616e60208201527f20616c7265616479206163746976652070726f706f73616c0000000000000000604082015260600192915050565b6000611b286000836144f0565b6000613ac96024836144f0565b7f476f7665726e6f72427261766f3a3a5f696e6974696174653a2061646d696e208152636f6e6c7960e01b602082015260400192915050565b6000613b0f603f836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a2070726f706f73657281527f20766f7465732062656c6f772070726f706f73616c207468726573686f6c6400602082015260400192915050565b6000613b6e6036836144f0565b7f476f7665726e6f72427261766f3a3a63616e63656c3a2063616e6e6f742063618152751b98d95b08195e1958dd5d1959081c1c9bdc1bdcd85b60521b602082015260400192915050565b6000613bc66030836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c546872657381526f686f6c643a2061646d696e206f6e6c7960801b602082015260400192915050565b6000613c186029836144f0565b7f476f7665726e6f72427261766f3a3a73746174653a20696e76616c69642070728152681bdc1bdcd85b081a5960ba1b602082015260400192915050565b6000613c636030836144f0565b6000805160206145de83398151915281526f1a59081d9bdd1a5b99c81c195c9a5bd960821b602082015260400192915050565b6000613ca3603b836144f0565b7f476f7665726e6f72427261766f3a3a5f736574477561726469616e3a2063616e81527f6e6f74206c69766520776974686f7574206120677561726469616e0000000000602082015260400192915050565b6000613d026033836144f0565b7f476f7665726e6f72427261766f3a3a5f736574477561726469616e3a2061646d815272696e206f7220677561726469616e206f6e6c7960681b602082015260400192915050565b6000613d576015836144f0565b747375627472616374696f6e20756e646572666c6f7760581b815260200192915050565b80516060830190613d8c8482612e7a565b506020820151613d9f6020850182613db8565b506040820151613db26040850182613dca565b50505050565b612cf58161451f565b612cf58161454e565b612cf581614525565b6000611b2882612fe7565b6000613de98261327e565b9150613df58285612e8c565b602082019150613e058284612e8c565b5060200192915050565b6000611b288261371e565b60208101611b288284612cfb565b60408101613e368285612cec565b6121926020830184612e83565b60408101613e518285612cfb565b6121926020830184612cfb565b60408101613e368285612cfb565b60a08101613e7a8288612cfb565b613e876020830187612e83565b8181036040830152613e998186612e9d565b90508181036060830152613ead8185612e9d565b9050613ebc6080830184612e83565b9695505050505050565b60a08101613ed48288612cfb565b613ee16020830187612e83565b8181036040830152613ef38186612ed5565b90508181036060830152613ead8185612ed5565b60808082528101613f188187612d04565b90508181036020830152613f2c8186612e2c565b90508181036040830152613f408185612dcb565b90508181036060830152613ebc8184612d5d565b60208101611b288284612e83565b60808101613f708287612e83565b613f7d6020830186612e83565b613f8a6040830185612e83565b6118306060830184612cfb565b60608101613fa58286612e83565b613fb26020830185612e83565b61295e6040830184613db8565b60808101613fcd8287612e83565b613fda6020830186613db8565b613fe76040830185612e83565b6118306060830184612e83565b60208101611b288284612f5f565b60208101611b288284612f68565b602080825281016121928184612e9d565b60208082528101611b2881612f93565b60208082528101611b2881613031565b60208082528101611b2881613086565b60208082528101611b28816130d2565b60208082528101611b288161314f565b60208082528101611b288161319c565b60208082528101611b28816131df565b60208082528101611b288161322b565b60208082528101611b288161329c565b60208082528101611b28816132f4565b60208082528101611b2881613347565b60208082528101611b288161339d565b60208082528101611b28816133db565b60208082528101611b2881613431565b60208082528101611b2881613476565b60208082528101611b28816134e3565b60208082528101611b2881613534565b60208082528101611b2881613573565b60208082528101611b28816135df565b60208082528101611b2881613626565b60208082528101611b2881613685565b60208082528101611b28816136f1565b60208082528101611b2881613789565b60208082528101611b28816137db565b60208082528101611b2881613829565b60208082528101611b2881613879565b60208082528101611b28816138ca565b60208082528101611b2881613905565b60208082528101611b288161394f565b60208082528101611b28816139d4565b60208082528101611b2881613a2a565b60208082528101611b2881613abc565b60208082528101611b2881613b02565b60208082528101611b2881613b61565b60208082528101611b2881613bb9565b60208082528101611b2881613c0b565b60208082528101611b2881613c56565b60208082528101611b2881613c96565b60208082528101611b2881613cf5565b60208082528101611b2881613d4a565b60608101611b288284613d7b565b61012081016142be828c612e83565b6142cb602083018b612cec565b81810360408301526142dd818a612d04565b905081810360608301526142f18189612e2c565b905081810360808301526143058188612dcb565b905081810360a08301526143198187612d5d565b905061432860c0830186612e83565b61433560e0830185612e83565b8181036101008301526143488184612e9d565b9b9a5050505050505050505050565b6101408101614366828d612e83565b614373602083018c612cfb565b614380604083018b612e83565b61438d606083018a612e83565b61439a6080830189612e83565b6143a760a0830188612e83565b6143b460c0830187612e83565b6143c160e0830186612e83565b6143cf610100830185612e7a565b614348610120830184612e7a565b60408101613e368285612e83565b608081016143f98288612e83565b6144066020830187613db8565b6144136040830186613dc1565b8181036060830152614426818486612f71565b979650505050505050565b6080810161443f8286612e83565b61444c6020830185613db8565b6144596040830184613dc1565b818103606083015261183081613aaf565b60405181810167ffffffffffffffff8111828210171561448957600080fd5b604052919050565b600067ffffffffffffffff8211156144a857600080fd5b5060209081020190565b600067ffffffffffffffff8211156144c957600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b90815260200190565b6000611b2882614513565b151590565b80610e578161459b565b6001600160a01b031690565b60ff1690565b6001600160601b031690565b6000611b28825b6000611b28826144f9565b6000611b2882614509565b6000611b2882614525565b82818337506000910152565b60005b83811015614580578181015183820152602001614568565b83811115613db25750506000910152565b601f01601f191690565b6008811061267457fe5b6145ae816144f9565b811461267457600080fd5b6145ae81614504565b6145ae81611fa5565b6145ae8161451f565b6145ae8161452556fe476f7665726e6f72427261766f3a3a696e697469616c697a653a20696e76616ca365627a7a7231582007e40eb1f52ca81d59356a5d040dabfd429f3104343ac39ea39eb88a4044d43c6c6578706572696d656e74616cf564736f6c63430005100040",
1140
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102695760003560e01c80635c60da1b11610151578063da95691a116100c3578063e48083fe11610087578063e48083fe146104db578063e9c714f2146104e3578063f851a440146104eb578063f9d28b80146104f3578063fc4eee4214610506578063fe0d94c11461050e57610269565b8063da95691a1461047a578063ddf0b0091461048d578063deaaa7cc146104a0578063e23a9a52146104a8578063e38e8c0f146104c857610269565b8063b112626311610115578063b112626314610434578063b1a5d12d1461043c578063b58131b01461044f578063b71d1a0c14610457578063d33219b41461046a578063da35c6641461047257610269565b80635c60da1b14610401578063791f5d23146104095780637b3c71d3146104115780637bdbe4d014610424578063a64e024a1461042c57610269565b8063215809ca116101ea5780633932abb1116101ae5780633932abb1146103985780633bccf4fd146103a05780633e4f49e6146103b357806340e58ee5146103d3578063452a9320146103e657806356781388146103ee57610269565b8063215809ca1461034857806324bc1a641461035057806325fd935a146103585780632678224714610360578063328dd9821461037557610269565b806317ba1b8b1161023157806317ba1b8b146102f25780631b9ce575146103055780631dfb1b5a1461031a5780631ebcfefd1461032d57806320606b701461034057610269565b8063013cf08b1461026e57806302a251a3146102a057806306fdde03146102b55780630ea2d98c146102ca57806317977c61146102df575b600080fd5b61028161027c366004612b4a565b610521565b6040516102979a99989796959493929190614357565b60405180910390f35b6102a8610584565b6040516102979190613f54565b6102bd61058a565b6040516102979190614010565b6102dd6102d8366004612b4a565b6105ba565b005b6102a86102ed366004612940565b610664565b6102dd610300366004612b4a565b610676565b61030d61071a565b6040516102979190613ff4565b6102dd610328366004612b4a565b610729565b6102dd61033b366004612b4a565b6107bd565b6102a8610821565b6102a8610838565b6102a861083e565b6102a861084c565b61036861085a565b6040516102979190613e1a565b610388610383366004612b4a565b610869565b6040516102979493929190613f07565b6102a8610af8565b6102dd6103ae366004612c3a565b610afe565b6103c66103c1366004612b4a565b610cd6565b6040516102979190614002565b6102dd6103e1366004612b4a565b610e5c565b6103686110c5565b6102dd6103fc366004612ba2565b6110d4565b61036861111e565b6102a861112d565b6102dd61041f366004612bd2565b61113b565b6102a861118b565b6102a8611191565b6102a8611198565b6102dd61044a366004612966565b61119f565b6102a8611358565b6102dd610465366004612940565b61135e565b61030d6113db565b6102a86113ea565b6102a86104883660046129ed565b6113f0565b6102dd61049b366004612b4a565b611839565b6102a8611ab5565b6104bb6104b6366004612b68565b611ac1565b60405161029791906142a1565b6102dd6104d6366004612940565b611b2e565b6102a8611be6565b6102dd611beb565b610368611cc9565b6102dd610501366004612940565b611cd8565b6102a8611dfe565b6102dd61051c366004612b4a565b611e04565b600a60208190526000918252604090912080546001820154600283015460078401546008850154600986015496860154600b870154600c9097015495976001600160a01b0390951696939592949193919290919060ff808216916101009004168a565b60045481565b6040518060400160405280601481526020017356656e757320476f7665726e6f7220427261766f60601b81525081565b6000546001600160a01b031633146105ed5760405162461bcd60e51b81526004016105e490614061565b60405180910390fd5b610e1081101580156106025750620627008111155b61061e5760405162461bcd60e51b81526004016105e4906140a1565b60048054908290556040517f7e3f7f0708a84de9203036abaa450dccc85ad5ff52f78c170f3edb55cf5e88289061065890839085906143dd565b60405180910390a15050565b600b6020526000908152604090205481565b6000546001600160a01b031633146106a05760405162461bcd60e51b81526004016105e490614241565b691fc3842bd1f071c0000081101580156106c45750693f870857a3e0e38000008111155b6106e05760405162461bcd60e51b81526004016105e490614151565b60058054908290556040517fccb45da8d5717e6c4544694297c4ba5cf151d455c9bb0ed4fc7a38411bc054619061065890839085906143dd565b6009546001600160a01b031681565b6000546001600160a01b031633146107535760405162461bcd60e51b81526004016105e490614081565b600181101580156107675750620313808111155b6107835760405162461bcd60e51b81526004016105e4906140e1565b60038054908290556040517fc565b045403dc03c2eea82b81a0465edad9e2e7fc4d97e11421c209da93d7a939061065890839085906143dd565b6000546001600160a01b031633146107e75760405162461bcd60e51b81526004016105e4906141f1565b600c8054908290556040517fd03b3c3c5c1446bcdd31423061041c94ca3bc5450fe7ccfb0f636f4c420de87e9061065890839085906143dd565b60405161082d90613e0f565b604051809103902081565b610e1081565b697f0e10af47c1c700000081565b693f870857a3e0e380000081565b6001546001600160a01b031681565b6060806060806000600a6000878152602001908152602001600020905080600301816004018260050183600601838054806020026020016040519081016040528092919081815260200182805480156108eb57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108cd575b505050505093508280548060200260200160405190810160405280929190818152602001828054801561093d57602002820191906000526020600020905b815481526020019060010190808311610929575b5050505050925081805480602002602001604051908101604052809291908181526020016000905b82821015610a105760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156109fc5780601f106109d1576101008083540402835291602001916109fc565b820191906000526020600020905b8154815290600101906020018083116109df57829003601f168201915b505050505081526020019060010190610965565b50505050915080805480602002602001604051908101604052809291908181526020016000905b82821015610ae25760008481526020908190208301805460408051601f6002600019610100600187161502019094169390930492830185900485028101850190915281815292830182828015610ace5780601f10610aa357610100808354040283529160200191610ace565b820191906000526020600020905b815481529060010190602001808311610ab157829003601f168201915b505050505081526020019060010190610a37565b5050505090509450945094509450509193509193565b60035481565b6000604051610b0c90613e0f565b60408051918290038220828201909152601482527356656e757320476f7665726e6f7220427261766f60601b6020909201919091527f157d76627a3b71c0167806f5879f7a61d3e301322f3a3b9f900315f15937671a610b6a611fa3565b30604051602001610b7e9493929190613f62565b6040516020818303038152906040528051906020012090506000604051610ba490613dd3565b604051908190038120610bbd9189908990602001613f97565b60405160208183030381529060405280519060200120905060008282604051602001610bea929190613dde565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610c279493929190613fbf565b6020604051602081039080840390855afa158015610c49573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610c7c5760405162461bcd60e51b81526004016105e490614111565b806001600160a01b03167fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda48a8a610cb4858e8e611fa8565b604051610cc393929190614431565b60405180910390a2505050505050505050565b60008160075410158015610ceb575060065482115b610d075760405162461bcd60e51b81526004016105e490614251565b6000828152600a60205260409020600c81015460ff1615610d2c576002915050610e57565b80600701544311610d41576000915050610e57565b80600801544311610d56576001915050610e57565b80600a01548160090154111580610d7a5750697f0e10af47c1c70000008160090154105b15610d89576003915050610e57565b6002810154610d9c576004915050610e57565b600c810154610100900460ff1615610db8576007915050610e57565b6002810154600854604080516360d143f160e11b81529051610e4193926001600160a01b03169163c1a287e2916004808301926020929190829003018186803b158015610e0457600080fd5b505afa158015610e18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610e3c9190810190612af7565b612199565b4210610e51576006915050610e57565b60059150505b919050565b6007610e6782610cd6565b6007811115610e7257fe5b1415610e905760405162461bcd60e51b81526004016105e490614231565b6000818152600a60205260409020600d546001600160a01b0316331480610ec3575060018101546001600160a01b031633145b80610f6d57506005546009546001838101546001600160a01b039283169263782d6fe192911690610ef59043906121be565b6040518363ffffffff1660e01b8152600401610f12929190613e5e565b60206040518083038186803b158015610f2a57600080fd5b505afa158015610f3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610f629190810190612ca2565b6001600160601b0316105b610f895760405162461bcd60e51b81526004016105e4906141b1565b600c8101805460ff1916600117905560005b6003820154811015611095576008546003830180546001600160a01b039092169163591fcdfe919084908110610fcd57fe5b6000918252602090912001546004850180546001600160a01b039092169185908110610ff557fe5b906000526020600020015485600501858154811061100f57fe5b9060005260206000200186600601868154811061102857fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401611057959493929190613ec6565b600060405180830381600087803b15801561107157600080fd5b505af1158015611085573d6000803e3d6000fd5b505060019092019150610f9b9050565b507f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c826040516106589190613f54565b600d546001600160a01b031681565b337fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda48383611103848383611fa8565b60405161111293929190614431565b60405180910390a25050565b6002546001600160a01b031681565b691fc3842bd1f071c0000081565b337fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda4858561116a848383611fa8565b868660405161117d9594939291906143eb565b60405180910390a250505050565b600c5481565b6206270081565b6203138081565b6008546001600160a01b0316156111c85760405162461bcd60e51b81526004016105e490614031565b6000546001600160a01b031633146111f25760405162461bcd60e51b81526004016105e490614141565b6001600160a01b0386166112185760405162461bcd60e51b81526004016105e490614071565b6001600160a01b03851661123e5760405162461bcd60e51b81526004016105e4906140d1565b610e1084101580156112535750620627008411155b61126f5760405162461bcd60e51b81526004016105e490614261565b600183101580156112835750620313808311155b61129f5760405162461bcd60e51b81526004016105e490614121565b691fc3842bd1f071c0000082101580156112c35750693f870857a3e0e38000008211155b6112df5760405162461bcd60e51b81526004016105e4906140f1565b6001600160a01b0381166113055760405162461bcd60e51b81526004016105e4906141c1565b600880546001600160a01b039788166001600160a01b0319918216179091556009805496881696821696909617909555600493909355600391909155600555600a600c55600d8054919093169116179055565b60055481565b6000546001600160a01b031633146113885760405162461bcd60e51b81526004016105e490614041565b600180546001600160a01b038381166001600160a01b03198316179092556040519116907fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9906106589083908590613e43565b6008546001600160a01b031681565b60075481565b6000600654600014156114155760405162461bcd60e51b81526004016105e490614091565b6005546009546001600160a01b031663782d6fe1336114354360016121be565b6040518363ffffffff1660e01b8152600401611452929190613e28565b60206040518083038186803b15801561146a57600080fd5b505afa15801561147e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506114a29190810190612ca2565b6001600160601b0316116114c85760405162461bcd60e51b81526004016105e490614221565b845186511480156114da575083518651145b80156114e7575082518651145b6115035760405162461bcd60e51b81526004016105e490614131565b85516115215760405162461bcd60e51b81526004016105e490614191565b600c54865111156115445760405162461bcd60e51b81526004016105e4906141d1565b336000908152600b602052604090205480156115c157600061156582610cd6565b9050600181600781111561157557fe5b14156115935760405162461bcd60e51b81526004016105e490614201565b60008160078111156115a157fe5b14156115bf5760405162461bcd60e51b81526004016105e4906141e1565b505b60006115cf43600354612199565b905060006115df82600454612199565b60078054600101905590506115f2612345565b604051806101c001604052806007548152602001336001600160a01b03168152602001600081526020018b81526020018a815260200189815260200188815260200184815260200183815260200160008152602001600081526020016000815260200160001515815260200160001515815250905080600a6000836000015181526020019081526020016000206000820151816000015560208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506040820151816002015560608201518160030190805190602001906116dc9291906123c1565b50608082015180516116f8916004840191602090910190612426565b5060a0820151805161171491600584019160209091019061246d565b5060c082015180516117309160068401916020909101906124c6565b5060e082015181600701556101008201518160080155610120820151816009015561014082015181600a015561016082015181600b015561018082015181600c0160006101000a81548160ff0219169083151502179055506101a082015181600c0160016101000a81548160ff0219169083151502179055509050508060000151600b600083602001516001600160a01b03166001600160a01b03168152602001908152602001600020819055507f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e08160000151338c8c8c8c89898e604051611821999897969594939291906142af565b60405180910390a15193505050505b95945050505050565b600461184482610cd6565b600781111561184f57fe5b1461186c5760405162461bcd60e51b81526004016105e490614161565b6000818152600a602090815260408083206008548251630d48571f60e31b815292519194936118c69342936001600160a01b0390931692636a42b8f892600480840193919291829003018186803b158015610e0457600080fd5b905060005b6003830154811015611a6e57611a668360030182815481106118e957fe5b6000918252602090912001546004850180546001600160a01b03909216918490811061191157fe5b906000526020600020015485600501848154811061192b57fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156119b95780601f1061198e576101008083540402835291602001916119b9565b820191906000526020600020905b81548152906001019060200180831161199c57829003601f168201915b50505050508660060185815481106119cd57fe5b600091825260209182902001805460408051601f6002600019610100600187161502019094169390930492830185900485028101850190915281815292830182828015611a5b5780601f10611a3057610100808354040283529160200191611a5b565b820191906000526020600020905b815481529060010190602001808311611a3e57829003601f168201915b5050505050866121e6565b6001016118cb565b50600282018190556040517f9a2e42fd6722813d69113e7d0079d3d940171428df7373df9c7f7617cfda289290611aa890859084906143dd565b60405180910390a1505050565b60405161082d90613dd3565b611ac961251f565b506000828152600a602090815260408083206001600160a01b0385168452600d018252918290208251606081018452905460ff8082161515835261010082041692820192909252620100009091046001600160601b0316918101919091525b92915050565b600d546001600160a01b0316331480611b5157506000546001600160a01b031633145b611b6d5760405162461bcd60e51b81526004016105e490614281565b6001600160a01b038116611b935760405162461bcd60e51b81526004016105e490614271565b600d80546001600160a01b038381166001600160a01b03198316179092556040519116907f08fdaf06427a2010e5958f4329b566993472d14ce81d3f16ce7f2a2660da98e3906106589083908590613e43565b600181565b6001546001600160a01b031633148015611c0457503315155b611c205760405162461bcd60e51b81526004016105e4906141a1565b60008054600180546001600160a01b038082166001600160a01b03198086168217968790559092169092556040519282169390927ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc92611c84928692911690613e43565b60405180910390a16001546040517fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9916106589184916001600160a01b031690613e43565b6000546001600160a01b031681565b6000546001600160a01b03163314611d025760405162461bcd60e51b81526004016105e490614211565b60065415611d225760405162461bcd60e51b81526004016105e490614181565b806001600160a01b031663da35c6646040518163ffffffff1660e01b8152600401602060405180830381600087803b158015611d5d57600080fd5b505af1158015611d71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611d959190810190612af7565b600781905560065560085460408051630e18b68160e01b815290516001600160a01b0390921691630e18b6819160048082019260009290919082900301818387803b158015611de357600080fd5b505af1158015611df7573d6000803e3d6000fd5b5050505050565b60065481565b6005611e0f82610cd6565b6007811115611e1a57fe5b14611e375760405162461bcd60e51b81526004016105e490614101565b6000818152600a60205260408120600c8101805461ff001916610100179055905b6003820154811015611f73576008546003830180546001600160a01b0390921691630825f38f919084908110611e8a57fe5b6000918252602090912001546004850180546001600160a01b039092169185908110611eb257fe5b9060005260206000200154856005018581548110611ecc57fe5b90600052602060002001866006018681548110611ee557fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401611f14959493929190613ec6565b600060405180830381600087803b158015611f2e57600080fd5b505af1158015611f42573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f6a9190810190612b15565b50600101611e58565b507f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f826040516106589190613f54565b465b90565b60006001611fb584610cd6565b6007811115611fc057fe5b14611fdd5760405162461bcd60e51b81526004016105e4906140b1565b60028260ff1611156120015760405162461bcd60e51b81526004016105e490614021565b6000838152600a602090815260408083206001600160a01b0388168452600d8101909252909120805460ff161561204a5760405162461bcd60e51b81526004016105e4906140c1565b600954600783015460405163782d6fe160e01b81526000926001600160a01b03169163782d6fe191612080918b91600401613e5e565b60206040518083038186803b15801561209857600080fd5b505afa1580156120ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506120d09190810190612ca2565b905060ff85166120fb576120f183600a0154826001600160601b0316612199565b600a840155612151565b8460ff16600114156121285761211e8360090154826001600160601b0316612199565b6009840155612151565b8460ff16600214156121515761214b83600b0154826001600160601b0316612199565b600b8401555b8154600160ff199091161761ff00191661010060ff871602176dffffffffffffffffffffffff00001916620100006001600160601b03831602179091559150505b9392505050565b6000828201838110156121925760405162461bcd60e51b81526004016105e490614171565b6000828211156121e05760405162461bcd60e51b81526004016105e490614291565b50900390565b6008546040516001600160a01b039091169063f2b06537906122149088908890889088908890602001613e6c565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016122469190613f54565b60206040518083038186803b15801561225e57600080fd5b505afa158015612272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052506122969190810190612ad9565b156122b35760405162461bcd60e51b81526004016105e490614051565b600854604051633a66f90160e01b81526001600160a01b0390911690633a66f901906122eb9088908890889088908890600401613e6c565b602060405180830381600087803b15801561230557600080fd5b505af1158015612319573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061233d9190810190612af7565b505050505050565b604051806101c001604052806000815260200160006001600160a01b03168152602001600081526020016060815260200160608152602001606081526020016060815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b828054828255906000526020600020908101928215612416579160200282015b8281111561241657825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906123e1565b5061242292915061253f565b5090565b828054828255906000526020600020908101928215612461579160200282015b82811115612461578251825591602001919060010190612446565b50612422929150612563565b8280548282559060005260206000209081019282156124ba579160200282015b828111156124ba57825180516124aa91849160209091019061257d565b509160200191906001019061248d565b506124229291506125ea565b828054828255906000526020600020908101928215612513579160200282015b82811115612513578251805161250391849160209091019061257d565b50916020019190600101906124e6565b5061242292915061260d565b604080516060810182526000808252602082018190529181019190915290565b611fa591905b808211156124225780546001600160a01b0319168155600101612545565b611fa591905b808211156124225760008155600101612569565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106125be57805160ff1916838001178555612461565b828001600101855582156124615791820182811115612461578251825591602001919060010190612446565b611fa591905b808211156124225760006126048282612630565b506001016125f0565b611fa591905b808211156124225760006126278282612630565b50600101612613565b50805460018160011615610100020316600290046000825580601f106126565750612674565b601f0160209004906000526020600020908101906126749190612563565b50565b8035611b28816145a5565b600082601f83011261269357600080fd5b81356126a66126a182614491565b61446a565b915081818352602084019350602081019050838560208402820111156126cb57600080fd5b60005b838110156126f757816126e18882612677565b84525060209283019291909101906001016126ce565b5050505092915050565b600082601f83011261271257600080fd5b81356127206126a182614491565b81815260209384019390925082018360005b838110156126f75781358601612748888261284c565b8452506020928301929190910190600101612732565b600082601f83011261276f57600080fd5b813561277d6126a182614491565b81815260209384019390925082018360005b838110156126f757813586016127a5888261284c565b845250602092830192919091019060010161278f565b600082601f8301126127cc57600080fd5b81356127da6126a182614491565b915081818352602084019350602081019050838560208402820111156127ff57600080fd5b60005b838110156126f757816128158882612836565b8452506020928301929190910190600101612802565b8051611b28816145b9565b8035611b28816145c2565b8051611b28816145c2565b600082601f83011261285d57600080fd5b813561286b6126a1826144b2565b9150808252602083016020830185838301111561288757600080fd5b612892838284614559565b50505092915050565b600082601f8301126128ac57600080fd5b81516128ba6126a1826144b2565b915080825260208301602083018583830111156128d657600080fd5b612892838284614565565b60008083601f8401126128f357600080fd5b50813567ffffffffffffffff81111561290b57600080fd5b60208301915083600182028301111561292357600080fd5b9250929050565b8035611b28816145cb565b8051611b28816145d4565b60006020828403121561295257600080fd5b600061295e8484612677565b949350505050565b60008060008060008060c0878903121561297f57600080fd5b600061298b8989612677565b965050602061299c89828a01612677565b95505060406129ad89828a01612836565b94505060606129be89828a01612836565b93505060806129cf89828a01612836565b92505060a06129e089828a01612677565b9150509295509295509295565b600080600080600060a08688031215612a0557600080fd5b853567ffffffffffffffff811115612a1c57600080fd5b612a2888828901612682565b955050602086013567ffffffffffffffff811115612a4557600080fd5b612a51888289016127bb565b945050604086013567ffffffffffffffff811115612a6e57600080fd5b612a7a8882890161275e565b935050606086013567ffffffffffffffff811115612a9757600080fd5b612aa388828901612701565b925050608086013567ffffffffffffffff811115612ac057600080fd5b612acc8882890161284c565b9150509295509295909350565b600060208284031215612aeb57600080fd5b600061295e848461282b565b600060208284031215612b0957600080fd5b600061295e8484612841565b600060208284031215612b2757600080fd5b815167ffffffffffffffff811115612b3e57600080fd5b61295e8482850161289b565b600060208284031215612b5c57600080fd5b600061295e8484612836565b60008060408385031215612b7b57600080fd5b6000612b878585612836565b9250506020612b9885828601612677565b9150509250929050565b60008060408385031215612bb557600080fd5b6000612bc18585612836565b9250506020612b988582860161292a565b60008060008060608587031215612be857600080fd5b6000612bf48787612836565b9450506020612c058782880161292a565b935050604085013567ffffffffffffffff811115612c2257600080fd5b612c2e878288016128e1565b95989497509550505050565b600080600080600060a08688031215612c5257600080fd5b6000612c5e8888612836565b9550506020612c6f8882890161292a565b9450506040612c808882890161292a565b9350506060612c9188828901612836565b9250506080612acc88828901612836565b600060208284031215612cb457600080fd5b600061295e8484612935565b6000612ccc8383612cfb565b505060200190565b60006121928383612e9d565b6000612ccc8383612e83565b612cf581614531565b82525050565b612cf5816144f9565b6000612d0f826144ec565b612d1981856144f0565b9350612d24836144da565b8060005b83811015612d52578151612d3c8882612cc0565b9750612d47836144da565b925050600101612d28565b509495945050505050565b6000612d68826144ec565b612d7281856144f0565b935083602082028501612d84856144da565b8060005b85811015612dbe5784840389528151612da18582612cd4565b9450612dac836144da565b60209a909a0199925050600101612d88565b5091979650505050505050565b6000612dd6826144ec565b612de081856144f0565b935083602082028501612df2856144da565b8060005b85811015612dbe5784840389528151612e0f8582612cd4565b9450612e1a836144da565b60209a909a0199925050600101612df6565b6000612e37826144ec565b612e4181856144f0565b9350612e4c836144da565b8060005b83811015612d52578151612e648882612ce0565b9750612e6f836144da565b925050600101612e50565b612cf581614504565b612cf581611fa5565b612cf5612e9882611fa5565b611fa5565b6000612ea8826144ec565b612eb281856144f0565b9350612ec2818560208601614565565b612ecb81614591565b9093019392505050565b600081546001811660008114612ef25760018114612f1857612f57565b607f6002830416612f0381876144f0565b60ff1984168152955050602085019250612f57565b60028204612f2681876144f0565b9550612f31856144e0565b60005b82811015612f5057815488820152600190910190602001612f34565b8701945050505b505092915050565b612cf581614538565b612cf581614543565b6000612f7d83856144f0565b9350612f8a838584614559565b612ecb83614591565b6000612fa06032836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a81527120696e76616c696420766f7465207479706560701b602082015260400192915050565b6000612ff4602883610e57565b7f42616c6c6f742875696e743235362070726f706f73616c49642c75696e743820815267737570706f72742960c01b602082015260280192915050565b600061303e6033836144f0565b7f476f7665726e6f72427261766f3a3a696e697469616c697a653a2063616e206f8152726e6c7920696e697469616c697a65206f6e636560681b602082015260400192915050565b6000613093602a836144f0565b7f476f7665726e6f72427261766f3a5f73657450656e64696e6741646d696e3a2081526961646d696e206f6e6c7960b01b602082015260400192915050565b60006130df6055836144f0565b7f476f7665726e6f72427261766f3a3a71756575654f72526576657274496e746581527f726e616c3a206964656e746963616c2070726f706f73616c20616374696f6e20602082015274616c7265616479207175657565642061742065746160581b604082015260600192915050565b600061315c602b836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e67506572696f643a81526a2061646d696e206f6e6c7960a81b602082015260400192915050565b60006131a96033836144f0565b6000805160206145de83398151915281527269642074696d656c6f636b206164647265737360681b602082015260400192915050565b60006131ec602a836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e6744656c61793a2081526961646d696e206f6e6c7960b01b602082015260400192915050565b60006132386031836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a20476f7665726e6f7281527020427261766f206e6f742061637469766560781b602082015260400192915050565b600061328b600283610e57565b61190160f01b815260020192915050565b60006132a96036836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e67506572696f643a815275081a5b9d985b1a59081d9bdd1a5b99c81c195c9a5bd960521b602082015260400192915050565b60006133016031836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a815270081d9bdd1a5b99c81a5cc818db1bdcd959607a1b602082015260400192915050565b60006133546034836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f7465496e7465726e616c3a815273081d9bdd195c88185b1c9958591e481d9bdd195960621b602082015260400192915050565b60006133aa602e836144f0565b6000805160206145de83398151915281526d696420787673206164647265737360901b602082015260400192915050565b60006133e86034836144f0565b7f476f7665726e6f72427261766f3a3a5f736574566f74696e6744656c61793a20815273696e76616c696420766f74696e672064656c617960601b602082015260400192915050565b600061343e6035836144f0565b6000805160206145de8339815191528152741a59081c1c9bdc1bdcd85b081d1a1c995cda1bdb19605a1b602082015260400192915050565b60006134836045836144f0565b7f476f7665726e6f72427261766f3a3a657865637574653a2070726f706f73616c81527f2063616e206f6e6c7920626520657865637574656420696620697420697320716020820152641d595d595960da1b604082015260600192915050565b60006134f0602f836144f0565b7f476f7665726e6f72427261766f3a3a63617374566f746542795369673a20696e81526e76616c6964207369676e617475726560881b602082015260400192915050565b6000613541602f836144f0565b6000805160206145de83398151915281526e696420766f74696e672064656c617960881b602082015260400192915050565b60006135806044836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a2070726f706f73616c81527f2066756e6374696f6e20696e666f726d6174696f6e206172697479206d69736d6020820152630c2e8c6d60e31b604082015260600192915050565b60006135ec6025836144f0565b7f476f7665726e6f72427261766f3a3a696e697469616c697a653a2061646d696e815264206f6e6c7960d81b602082015260400192915050565b60006136336040836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c546872657381527f686f6c643a20696e76616c69642070726f706f73616c207468726573686f6c64602082015260400192915050565b60006136926044836144f0565b7f476f7665726e6f72427261766f3a3a71756575653a2070726f706f73616c206381527f616e206f6e6c79206265207175657565642069662069742069732073756363656020820152631959195960e21b604082015260600192915050565b60006136fe6011836144f0565b706164646974696f6e206f766572666c6f7760781b815260200192915050565b600061372b604383610e57565b7f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353681527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208201526263742960e81b604082015260430192915050565b60006137966030836144f0565b7f476f7665726e6f72427261766f3a3a5f696e6974696174653a2063616e206f6e81526f6c7920696e697469617465206f6e636560801b602082015260400192915050565b60006137e8602c836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206d7573742070726f81526b7669646520616374696f6e7360a01b602082015260400192915050565b6000613836602e836144f0565b7f476f7665726e6f72427261766f3a5f61636365707441646d696e3a2070656e6481526d696e672061646d696e206f6e6c7960901b602082015260400192915050565b6000613886602f836144f0565b7f476f7665726e6f72427261766f3a3a63616e63656c3a2070726f706f7365722081526e18589bdd99481d1a1c995cda1bdb19608a1b602082015260400192915050565b60006138d7602b836144f0565b6000805160206145de83398151915281526a34b21033bab0b93234b0b760a91b602082015260400192915050565b60006139126028836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a20746f6f206d616e7981526720616374696f6e7360c01b602082015260400192915050565b600061395c6059836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206f6e65206c69766581527f2070726f706f73616c207065722070726f706f7365722c20666f756e6420616e60208201527f20616c72656164792070656e64696e672070726f706f73616c00000000000000604082015260600192915050565b60006139e16034836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c4d61784f7081527365726174696f6e733a2061646d696e206f6e6c7960601b602082015260400192915050565b6000613a376058836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a206f6e65206c69766581527f2070726f706f73616c207065722070726f706f7365722c20666f756e6420616e60208201527f20616c7265616479206163746976652070726f706f73616c0000000000000000604082015260600192915050565b6000611b286000836144f0565b6000613ac96024836144f0565b7f476f7665726e6f72427261766f3a3a5f696e6974696174653a2061646d696e208152636f6e6c7960e01b602082015260400192915050565b6000613b0f603f836144f0565b7f476f7665726e6f72427261766f3a3a70726f706f73653a2070726f706f73657281527f20766f7465732062656c6f772070726f706f73616c207468726573686f6c6400602082015260400192915050565b6000613b6e6036836144f0565b7f476f7665726e6f72427261766f3a3a63616e63656c3a2063616e6e6f742063618152751b98d95b08195e1958dd5d1959081c1c9bdc1bdcd85b60521b602082015260400192915050565b6000613bc66030836144f0565b7f476f7665726e6f72427261766f3a3a5f73657450726f706f73616c546872657381526f686f6c643a2061646d696e206f6e6c7960801b602082015260400192915050565b6000613c186029836144f0565b7f476f7665726e6f72427261766f3a3a73746174653a20696e76616c69642070728152681bdc1bdcd85b081a5960ba1b602082015260400192915050565b6000613c636030836144f0565b6000805160206145de83398151915281526f1a59081d9bdd1a5b99c81c195c9a5bd960821b602082015260400192915050565b6000613ca3603b836144f0565b7f476f7665726e6f72427261766f3a3a5f736574477561726469616e3a2063616e81527f6e6f74206c69766520776974686f7574206120677561726469616e0000000000602082015260400192915050565b6000613d026033836144f0565b7f476f7665726e6f72427261766f3a3a5f736574477561726469616e3a2061646d815272696e206f7220677561726469616e206f6e6c7960681b602082015260400192915050565b6000613d576015836144f0565b747375627472616374696f6e20756e646572666c6f7760581b815260200192915050565b80516060830190613d8c8482612e7a565b506020820151613d9f6020850182613db8565b506040820151613db26040850182613dca565b50505050565b612cf58161451f565b612cf58161454e565b612cf581614525565b6000611b2882612fe7565b6000613de98261327e565b9150613df58285612e8c565b602082019150613e058284612e8c565b5060200192915050565b6000611b288261371e565b60208101611b288284612cfb565b60408101613e368285612cec565b6121926020830184612e83565b60408101613e518285612cfb565b6121926020830184612cfb565b60408101613e368285612cfb565b60a08101613e7a8288612cfb565b613e876020830187612e83565b8181036040830152613e998186612e9d565b90508181036060830152613ead8185612e9d565b9050613ebc6080830184612e83565b9695505050505050565b60a08101613ed48288612cfb565b613ee16020830187612e83565b8181036040830152613ef38186612ed5565b90508181036060830152613ead8185612ed5565b60808082528101613f188187612d04565b90508181036020830152613f2c8186612e2c565b90508181036040830152613f408185612dcb565b90508181036060830152613ebc8184612d5d565b60208101611b288284612e83565b60808101613f708287612e83565b613f7d6020830186612e83565b613f8a6040830185612e83565b6118306060830184612cfb565b60608101613fa58286612e83565b613fb26020830185612e83565b61295e6040830184613db8565b60808101613fcd8287612e83565b613fda6020830186613db8565b613fe76040830185612e83565b6118306060830184612e83565b60208101611b288284612f5f565b60208101611b288284612f68565b602080825281016121928184612e9d565b60208082528101611b2881612f93565b60208082528101611b2881613031565b60208082528101611b2881613086565b60208082528101611b28816130d2565b60208082528101611b288161314f565b60208082528101611b288161319c565b60208082528101611b28816131df565b60208082528101611b288161322b565b60208082528101611b288161329c565b60208082528101611b28816132f4565b60208082528101611b2881613347565b60208082528101611b288161339d565b60208082528101611b28816133db565b60208082528101611b2881613431565b60208082528101611b2881613476565b60208082528101611b28816134e3565b60208082528101611b2881613534565b60208082528101611b2881613573565b60208082528101611b28816135df565b60208082528101611b2881613626565b60208082528101611b2881613685565b60208082528101611b28816136f1565b60208082528101611b2881613789565b60208082528101611b28816137db565b60208082528101611b2881613829565b60208082528101611b2881613879565b60208082528101611b28816138ca565b60208082528101611b2881613905565b60208082528101611b288161394f565b60208082528101611b28816139d4565b60208082528101611b2881613a2a565b60208082528101611b2881613abc565b60208082528101611b2881613b02565b60208082528101611b2881613b61565b60208082528101611b2881613bb9565b60208082528101611b2881613c0b565b60208082528101611b2881613c56565b60208082528101611b2881613c96565b60208082528101611b2881613cf5565b60208082528101611b2881613d4a565b60608101611b288284613d7b565b61012081016142be828c612e83565b6142cb602083018b612cec565b81810360408301526142dd818a612d04565b905081810360608301526142f18189612e2c565b905081810360808301526143058188612dcb565b905081810360a08301526143198187612d5d565b905061432860c0830186612e83565b61433560e0830185612e83565b8181036101008301526143488184612e9d565b9b9a5050505050505050505050565b6101408101614366828d612e83565b614373602083018c612cfb565b614380604083018b612e83565b61438d606083018a612e83565b61439a6080830189612e83565b6143a760a0830188612e83565b6143b460c0830187612e83565b6143c160e0830186612e83565b6143cf610100830185612e7a565b614348610120830184612e7a565b60408101613e368285612e83565b608081016143f98288612e83565b6144066020830187613db8565b6144136040830186613dc1565b8181036060830152614426818486612f71565b979650505050505050565b6080810161443f8286612e83565b61444c6020830185613db8565b6144596040830184613dc1565b818103606083015261183081613aaf565b60405181810167ffffffffffffffff8111828210171561448957600080fd5b604052919050565b600067ffffffffffffffff8211156144a857600080fd5b5060209081020190565b600067ffffffffffffffff8211156144c957600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b90815260200190565b6000611b2882614513565b151590565b80610e578161459b565b6001600160a01b031690565b60ff1690565b6001600160601b031690565b6000611b28825b6000611b28826144f9565b6000611b2882614509565b6000611b2882614525565b82818337506000910152565b60005b83811015614580578181015183820152602001614568565b83811115613db25750506000910152565b601f01601f191690565b6008811061267457fe5b6145ae816144f9565b811461267457600080fd5b6145ae81614504565b6145ae81611fa5565b6145ae8161451f565b6145ae8161452556fe476f7665726e6f72427261766f3a3a696e697469616c697a653a20696e76616ca365627a7a7231582007e40eb1f52ca81d59356a5d040dabfd429f3104343ac39ea39eb88a4044d43c6c6578706572696d656e74616cf564736f6c63430005100040",
1141
+ "linkReferences": {},
1142
+ "deployedLinkReferences": {}
1143
+ }