@venusprotocol/governance-contracts 1.0.1-dev.6 → 1.1.0-dev.2

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 (70) hide show
  1. package/artifacts/build-info/4b74a981a83b37e1de5123f7f9359ad5.json +1 -0
  2. package/artifacts/build-info/5ef7ba07b1e4b96d9b02042d36d229c2.json +1 -0
  3. package/artifacts/build-info/97a3124320e74f843bc59439c75c258d.json +1 -0
  4. package/artifacts/contracts/Governance/GovernorBravoDelegate.sol/GovernorBravoDelegate.dbg.json +1 -1
  5. package/artifacts/contracts/Governance/GovernorBravoDelegate.sol/GovernorBravoDelegate.json +3 -3
  6. package/artifacts/contracts/Governance/GovernorBravoDelegator.sol/GovernorBravoDelegator.dbg.json +1 -1
  7. package/artifacts/contracts/Governance/GovernorBravoDelegator.sol/GovernorBravoDelegator.json +25 -18
  8. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorAlphaInterface.dbg.json +1 -1
  9. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateInterface.dbg.json +4 -0
  10. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateInterface.json +58 -0
  11. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV1.dbg.json +1 -1
  12. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV1.json +2 -2
  13. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV2.dbg.json +1 -1
  14. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegateStorageV2.json +2 -2
  15. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegatorStorage.dbg.json +1 -1
  16. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoDelegatorStorage.json +2 -2
  17. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoEvents.dbg.json +1 -1
  18. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/GovernorBravoEvents.json +2 -2
  19. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/TimelockInterface.dbg.json +1 -1
  20. package/artifacts/contracts/Governance/GovernorBravoInterfaces.sol/XvsVaultInterface.dbg.json +1 -1
  21. package/artifacts/contracts/legacy/GovernorAlpha.sol/GovernorAlpha.dbg.json +4 -0
  22. package/artifacts/contracts/legacy/GovernorAlpha.sol/GovernorAlpha.json +731 -0
  23. package/artifacts/contracts/legacy/GovernorAlpha.sol/TimelockInterface.dbg.json +4 -0
  24. package/artifacts/contracts/legacy/GovernorAlpha.sol/TimelockInterface.json +188 -0
  25. package/artifacts/contracts/legacy/GovernorAlpha.sol/XVSInterface.dbg.json +4 -0
  26. package/artifacts/contracts/legacy/GovernorAlpha.sol/XVSInterface.json +37 -0
  27. package/artifacts/contracts/legacy/GovernorAlpha2.sol/GovernorAlpha2.dbg.json +4 -0
  28. package/artifacts/contracts/legacy/GovernorAlpha2.sol/GovernorAlpha2.json +736 -0
  29. package/artifacts/contracts/legacy/GovernorAlpha2.sol/TimelockInterface.dbg.json +4 -0
  30. package/artifacts/contracts/legacy/GovernorAlpha2.sol/TimelockInterface.json +188 -0
  31. package/artifacts/contracts/legacy/GovernorAlpha2.sol/XVSInterface.dbg.json +4 -0
  32. package/artifacts/contracts/legacy/GovernorAlpha2.sol/XVSInterface.json +37 -0
  33. package/contracts/Governance/GovernorBravoDelegate.sol +1 -1
  34. package/contracts/Governance/GovernorBravoDelegator.sol +6 -10
  35. package/contracts/Governance/GovernorBravoInterfaces.sol +19 -5
  36. package/contracts/legacy/GovernorAlpha.sol +426 -0
  37. package/contracts/legacy/GovernorAlpha2.sol +427 -0
  38. package/deployments/bscmainnet/.chainId +1 -0
  39. package/deployments/bscmainnet/CriticalTimelock.json +463 -0
  40. package/deployments/bscmainnet/FastTrackTimelock.json +463 -0
  41. package/deployments/bscmainnet/GovernorAlpha.json +726 -0
  42. package/deployments/bscmainnet/GovernorAlpha2.json +731 -0
  43. package/deployments/bscmainnet/GovernorBravoDelegate.json +1168 -0
  44. package/deployments/bscmainnet/GovernorBravoDelegator.json +1576 -0
  45. package/deployments/bscmainnet/GovernorBravoDelegator_Implementation.json +1168 -0
  46. package/deployments/bscmainnet/GovernorBravoDelegator_Proxy.json +413 -0
  47. package/deployments/bscmainnet/NormalTimelock.json +463 -0
  48. package/deployments/bsctestnet/.chainId +1 -0
  49. package/deployments/bsctestnet/CriticalTimelock.json +463 -0
  50. package/deployments/bsctestnet/FastTrackTimelock.json +463 -0
  51. package/deployments/bsctestnet/GovernorAlpha.json +726 -0
  52. package/deployments/bsctestnet/GovernorBravoDelegate.json +1168 -0
  53. package/deployments/bsctestnet/GovernorBravoDelegator.json +1576 -0
  54. package/deployments/bsctestnet/GovernorBravoDelegator_Implementation.json +1168 -0
  55. package/deployments/bsctestnet/GovernorBravoDelegator_Proxy.json +413 -0
  56. package/deployments/bsctestnet/NormalTimelock.json +463 -0
  57. package/deployments/deployments.json +13981 -0
  58. package/dist/deploy/001-access-control.d.ts.map +1 -1
  59. package/dist/deploy/001-access-control.js +7 -2
  60. package/dist/deploy/001-access-control.js.map +1 -1
  61. package/dist/deploy/helpers/constants.d.ts +2 -0
  62. package/dist/deploy/helpers/constants.d.ts.map +1 -1
  63. package/dist/deploy/helpers/constants.js +1 -0
  64. package/dist/deploy/helpers/constants.js.map +1 -1
  65. package/dist/deploy/helpers/deploymentUtils.d.ts +2 -0
  66. package/dist/deploy/helpers/deploymentUtils.d.ts.map +1 -1
  67. package/dist/deploy/helpers/deploymentUtils.js +1 -0
  68. package/dist/deploy/helpers/deploymentUtils.js.map +1 -1
  69. package/package.json +1 -1
  70. package/artifacts/build-info/e5638231ea42ec29d0230b1b013f1a57.json +0 -1
@@ -0,0 +1,731 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GovernorAlpha",
4
+ "sourceName": "contracts/legacy/GovernorAlpha.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "timelock_",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "xvs_",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "guardian_",
21
+ "type": "address"
22
+ }
23
+ ],
24
+ "payable": false,
25
+ "stateMutability": "nonpayable",
26
+ "type": "constructor"
27
+ },
28
+ {
29
+ "anonymous": false,
30
+ "inputs": [
31
+ {
32
+ "indexed": false,
33
+ "internalType": "uint256",
34
+ "name": "id",
35
+ "type": "uint256"
36
+ }
37
+ ],
38
+ "name": "ProposalCanceled",
39
+ "type": "event"
40
+ },
41
+ {
42
+ "anonymous": false,
43
+ "inputs": [
44
+ {
45
+ "indexed": false,
46
+ "internalType": "uint256",
47
+ "name": "id",
48
+ "type": "uint256"
49
+ },
50
+ {
51
+ "indexed": false,
52
+ "internalType": "address",
53
+ "name": "proposer",
54
+ "type": "address"
55
+ },
56
+ {
57
+ "indexed": false,
58
+ "internalType": "address[]",
59
+ "name": "targets",
60
+ "type": "address[]"
61
+ },
62
+ {
63
+ "indexed": false,
64
+ "internalType": "uint256[]",
65
+ "name": "values",
66
+ "type": "uint256[]"
67
+ },
68
+ {
69
+ "indexed": false,
70
+ "internalType": "string[]",
71
+ "name": "signatures",
72
+ "type": "string[]"
73
+ },
74
+ {
75
+ "indexed": false,
76
+ "internalType": "bytes[]",
77
+ "name": "calldatas",
78
+ "type": "bytes[]"
79
+ },
80
+ {
81
+ "indexed": false,
82
+ "internalType": "uint256",
83
+ "name": "startBlock",
84
+ "type": "uint256"
85
+ },
86
+ {
87
+ "indexed": false,
88
+ "internalType": "uint256",
89
+ "name": "endBlock",
90
+ "type": "uint256"
91
+ },
92
+ {
93
+ "indexed": false,
94
+ "internalType": "string",
95
+ "name": "description",
96
+ "type": "string"
97
+ }
98
+ ],
99
+ "name": "ProposalCreated",
100
+ "type": "event"
101
+ },
102
+ {
103
+ "anonymous": false,
104
+ "inputs": [
105
+ {
106
+ "indexed": false,
107
+ "internalType": "uint256",
108
+ "name": "id",
109
+ "type": "uint256"
110
+ }
111
+ ],
112
+ "name": "ProposalExecuted",
113
+ "type": "event"
114
+ },
115
+ {
116
+ "anonymous": false,
117
+ "inputs": [
118
+ {
119
+ "indexed": false,
120
+ "internalType": "uint256",
121
+ "name": "id",
122
+ "type": "uint256"
123
+ },
124
+ {
125
+ "indexed": false,
126
+ "internalType": "uint256",
127
+ "name": "eta",
128
+ "type": "uint256"
129
+ }
130
+ ],
131
+ "name": "ProposalQueued",
132
+ "type": "event"
133
+ },
134
+ {
135
+ "anonymous": false,
136
+ "inputs": [
137
+ {
138
+ "indexed": false,
139
+ "internalType": "address",
140
+ "name": "voter",
141
+ "type": "address"
142
+ },
143
+ {
144
+ "indexed": false,
145
+ "internalType": "uint256",
146
+ "name": "proposalId",
147
+ "type": "uint256"
148
+ },
149
+ {
150
+ "indexed": false,
151
+ "internalType": "bool",
152
+ "name": "support",
153
+ "type": "bool"
154
+ },
155
+ {
156
+ "indexed": false,
157
+ "internalType": "uint256",
158
+ "name": "votes",
159
+ "type": "uint256"
160
+ }
161
+ ],
162
+ "name": "VoteCast",
163
+ "type": "event"
164
+ },
165
+ {
166
+ "constant": true,
167
+ "inputs": [],
168
+ "name": "BALLOT_TYPEHASH",
169
+ "outputs": [
170
+ {
171
+ "internalType": "bytes32",
172
+ "name": "",
173
+ "type": "bytes32"
174
+ }
175
+ ],
176
+ "payable": false,
177
+ "stateMutability": "view",
178
+ "type": "function"
179
+ },
180
+ {
181
+ "constant": true,
182
+ "inputs": [],
183
+ "name": "DOMAIN_TYPEHASH",
184
+ "outputs": [
185
+ {
186
+ "internalType": "bytes32",
187
+ "name": "",
188
+ "type": "bytes32"
189
+ }
190
+ ],
191
+ "payable": false,
192
+ "stateMutability": "view",
193
+ "type": "function"
194
+ },
195
+ {
196
+ "constant": false,
197
+ "inputs": [],
198
+ "name": "__abdicate",
199
+ "outputs": [],
200
+ "payable": false,
201
+ "stateMutability": "nonpayable",
202
+ "type": "function"
203
+ },
204
+ {
205
+ "constant": false,
206
+ "inputs": [],
207
+ "name": "__acceptAdmin",
208
+ "outputs": [],
209
+ "payable": false,
210
+ "stateMutability": "nonpayable",
211
+ "type": "function"
212
+ },
213
+ {
214
+ "constant": false,
215
+ "inputs": [
216
+ {
217
+ "internalType": "address",
218
+ "name": "newPendingAdmin",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "internalType": "uint256",
223
+ "name": "eta",
224
+ "type": "uint256"
225
+ }
226
+ ],
227
+ "name": "__executeSetTimelockPendingAdmin",
228
+ "outputs": [],
229
+ "payable": false,
230
+ "stateMutability": "nonpayable",
231
+ "type": "function"
232
+ },
233
+ {
234
+ "constant": false,
235
+ "inputs": [
236
+ {
237
+ "internalType": "address",
238
+ "name": "newPendingAdmin",
239
+ "type": "address"
240
+ },
241
+ {
242
+ "internalType": "uint256",
243
+ "name": "eta",
244
+ "type": "uint256"
245
+ }
246
+ ],
247
+ "name": "__queueSetTimelockPendingAdmin",
248
+ "outputs": [],
249
+ "payable": false,
250
+ "stateMutability": "nonpayable",
251
+ "type": "function"
252
+ },
253
+ {
254
+ "constant": false,
255
+ "inputs": [
256
+ {
257
+ "internalType": "uint256",
258
+ "name": "proposalId",
259
+ "type": "uint256"
260
+ }
261
+ ],
262
+ "name": "cancel",
263
+ "outputs": [],
264
+ "payable": false,
265
+ "stateMutability": "nonpayable",
266
+ "type": "function"
267
+ },
268
+ {
269
+ "constant": false,
270
+ "inputs": [
271
+ {
272
+ "internalType": "uint256",
273
+ "name": "proposalId",
274
+ "type": "uint256"
275
+ },
276
+ {
277
+ "internalType": "bool",
278
+ "name": "support",
279
+ "type": "bool"
280
+ }
281
+ ],
282
+ "name": "castVote",
283
+ "outputs": [],
284
+ "payable": false,
285
+ "stateMutability": "nonpayable",
286
+ "type": "function"
287
+ },
288
+ {
289
+ "constant": false,
290
+ "inputs": [
291
+ {
292
+ "internalType": "uint256",
293
+ "name": "proposalId",
294
+ "type": "uint256"
295
+ },
296
+ {
297
+ "internalType": "bool",
298
+ "name": "support",
299
+ "type": "bool"
300
+ },
301
+ {
302
+ "internalType": "uint8",
303
+ "name": "v",
304
+ "type": "uint8"
305
+ },
306
+ {
307
+ "internalType": "bytes32",
308
+ "name": "r",
309
+ "type": "bytes32"
310
+ },
311
+ {
312
+ "internalType": "bytes32",
313
+ "name": "s",
314
+ "type": "bytes32"
315
+ }
316
+ ],
317
+ "name": "castVoteBySig",
318
+ "outputs": [],
319
+ "payable": false,
320
+ "stateMutability": "nonpayable",
321
+ "type": "function"
322
+ },
323
+ {
324
+ "constant": false,
325
+ "inputs": [
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "proposalId",
329
+ "type": "uint256"
330
+ }
331
+ ],
332
+ "name": "execute",
333
+ "outputs": [],
334
+ "payable": true,
335
+ "stateMutability": "payable",
336
+ "type": "function"
337
+ },
338
+ {
339
+ "constant": true,
340
+ "inputs": [
341
+ {
342
+ "internalType": "uint256",
343
+ "name": "proposalId",
344
+ "type": "uint256"
345
+ }
346
+ ],
347
+ "name": "getActions",
348
+ "outputs": [
349
+ {
350
+ "internalType": "address[]",
351
+ "name": "targets",
352
+ "type": "address[]"
353
+ },
354
+ {
355
+ "internalType": "uint256[]",
356
+ "name": "values",
357
+ "type": "uint256[]"
358
+ },
359
+ {
360
+ "internalType": "string[]",
361
+ "name": "signatures",
362
+ "type": "string[]"
363
+ },
364
+ {
365
+ "internalType": "bytes[]",
366
+ "name": "calldatas",
367
+ "type": "bytes[]"
368
+ }
369
+ ],
370
+ "payable": false,
371
+ "stateMutability": "view",
372
+ "type": "function"
373
+ },
374
+ {
375
+ "constant": true,
376
+ "inputs": [
377
+ {
378
+ "internalType": "uint256",
379
+ "name": "proposalId",
380
+ "type": "uint256"
381
+ },
382
+ {
383
+ "internalType": "address",
384
+ "name": "voter",
385
+ "type": "address"
386
+ }
387
+ ],
388
+ "name": "getReceipt",
389
+ "outputs": [
390
+ {
391
+ "components": [
392
+ {
393
+ "internalType": "bool",
394
+ "name": "hasVoted",
395
+ "type": "bool"
396
+ },
397
+ {
398
+ "internalType": "bool",
399
+ "name": "support",
400
+ "type": "bool"
401
+ },
402
+ {
403
+ "internalType": "uint96",
404
+ "name": "votes",
405
+ "type": "uint96"
406
+ }
407
+ ],
408
+ "internalType": "struct GovernorAlpha.Receipt",
409
+ "name": "",
410
+ "type": "tuple"
411
+ }
412
+ ],
413
+ "payable": false,
414
+ "stateMutability": "view",
415
+ "type": "function"
416
+ },
417
+ {
418
+ "constant": true,
419
+ "inputs": [],
420
+ "name": "guardian",
421
+ "outputs": [
422
+ {
423
+ "internalType": "address",
424
+ "name": "",
425
+ "type": "address"
426
+ }
427
+ ],
428
+ "payable": false,
429
+ "stateMutability": "view",
430
+ "type": "function"
431
+ },
432
+ {
433
+ "constant": true,
434
+ "inputs": [
435
+ {
436
+ "internalType": "address",
437
+ "name": "",
438
+ "type": "address"
439
+ }
440
+ ],
441
+ "name": "latestProposalIds",
442
+ "outputs": [
443
+ {
444
+ "internalType": "uint256",
445
+ "name": "",
446
+ "type": "uint256"
447
+ }
448
+ ],
449
+ "payable": false,
450
+ "stateMutability": "view",
451
+ "type": "function"
452
+ },
453
+ {
454
+ "constant": true,
455
+ "inputs": [],
456
+ "name": "name",
457
+ "outputs": [
458
+ {
459
+ "internalType": "string",
460
+ "name": "",
461
+ "type": "string"
462
+ }
463
+ ],
464
+ "payable": false,
465
+ "stateMutability": "view",
466
+ "type": "function"
467
+ },
468
+ {
469
+ "constant": true,
470
+ "inputs": [],
471
+ "name": "proposalCount",
472
+ "outputs": [
473
+ {
474
+ "internalType": "uint256",
475
+ "name": "",
476
+ "type": "uint256"
477
+ }
478
+ ],
479
+ "payable": false,
480
+ "stateMutability": "view",
481
+ "type": "function"
482
+ },
483
+ {
484
+ "constant": true,
485
+ "inputs": [],
486
+ "name": "proposalMaxOperations",
487
+ "outputs": [
488
+ {
489
+ "internalType": "uint256",
490
+ "name": "",
491
+ "type": "uint256"
492
+ }
493
+ ],
494
+ "payable": false,
495
+ "stateMutability": "pure",
496
+ "type": "function"
497
+ },
498
+ {
499
+ "constant": true,
500
+ "inputs": [],
501
+ "name": "proposalThreshold",
502
+ "outputs": [
503
+ {
504
+ "internalType": "uint256",
505
+ "name": "",
506
+ "type": "uint256"
507
+ }
508
+ ],
509
+ "payable": false,
510
+ "stateMutability": "pure",
511
+ "type": "function"
512
+ },
513
+ {
514
+ "constant": true,
515
+ "inputs": [
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "",
519
+ "type": "uint256"
520
+ }
521
+ ],
522
+ "name": "proposals",
523
+ "outputs": [
524
+ {
525
+ "internalType": "uint256",
526
+ "name": "id",
527
+ "type": "uint256"
528
+ },
529
+ {
530
+ "internalType": "address",
531
+ "name": "proposer",
532
+ "type": "address"
533
+ },
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "eta",
537
+ "type": "uint256"
538
+ },
539
+ {
540
+ "internalType": "uint256",
541
+ "name": "startBlock",
542
+ "type": "uint256"
543
+ },
544
+ {
545
+ "internalType": "uint256",
546
+ "name": "endBlock",
547
+ "type": "uint256"
548
+ },
549
+ {
550
+ "internalType": "uint256",
551
+ "name": "forVotes",
552
+ "type": "uint256"
553
+ },
554
+ {
555
+ "internalType": "uint256",
556
+ "name": "againstVotes",
557
+ "type": "uint256"
558
+ },
559
+ {
560
+ "internalType": "bool",
561
+ "name": "canceled",
562
+ "type": "bool"
563
+ },
564
+ {
565
+ "internalType": "bool",
566
+ "name": "executed",
567
+ "type": "bool"
568
+ }
569
+ ],
570
+ "payable": false,
571
+ "stateMutability": "view",
572
+ "type": "function"
573
+ },
574
+ {
575
+ "constant": false,
576
+ "inputs": [
577
+ {
578
+ "internalType": "address[]",
579
+ "name": "targets",
580
+ "type": "address[]"
581
+ },
582
+ {
583
+ "internalType": "uint256[]",
584
+ "name": "values",
585
+ "type": "uint256[]"
586
+ },
587
+ {
588
+ "internalType": "string[]",
589
+ "name": "signatures",
590
+ "type": "string[]"
591
+ },
592
+ {
593
+ "internalType": "bytes[]",
594
+ "name": "calldatas",
595
+ "type": "bytes[]"
596
+ },
597
+ {
598
+ "internalType": "string",
599
+ "name": "description",
600
+ "type": "string"
601
+ }
602
+ ],
603
+ "name": "propose",
604
+ "outputs": [
605
+ {
606
+ "internalType": "uint256",
607
+ "name": "",
608
+ "type": "uint256"
609
+ }
610
+ ],
611
+ "payable": false,
612
+ "stateMutability": "nonpayable",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "constant": false,
617
+ "inputs": [
618
+ {
619
+ "internalType": "uint256",
620
+ "name": "proposalId",
621
+ "type": "uint256"
622
+ }
623
+ ],
624
+ "name": "queue",
625
+ "outputs": [],
626
+ "payable": false,
627
+ "stateMutability": "nonpayable",
628
+ "type": "function"
629
+ },
630
+ {
631
+ "constant": true,
632
+ "inputs": [],
633
+ "name": "quorumVotes",
634
+ "outputs": [
635
+ {
636
+ "internalType": "uint256",
637
+ "name": "",
638
+ "type": "uint256"
639
+ }
640
+ ],
641
+ "payable": false,
642
+ "stateMutability": "pure",
643
+ "type": "function"
644
+ },
645
+ {
646
+ "constant": true,
647
+ "inputs": [
648
+ {
649
+ "internalType": "uint256",
650
+ "name": "proposalId",
651
+ "type": "uint256"
652
+ }
653
+ ],
654
+ "name": "state",
655
+ "outputs": [
656
+ {
657
+ "internalType": "enum GovernorAlpha.ProposalState",
658
+ "name": "",
659
+ "type": "uint8"
660
+ }
661
+ ],
662
+ "payable": false,
663
+ "stateMutability": "view",
664
+ "type": "function"
665
+ },
666
+ {
667
+ "constant": true,
668
+ "inputs": [],
669
+ "name": "timelock",
670
+ "outputs": [
671
+ {
672
+ "internalType": "contract TimelockInterface",
673
+ "name": "",
674
+ "type": "address"
675
+ }
676
+ ],
677
+ "payable": false,
678
+ "stateMutability": "view",
679
+ "type": "function"
680
+ },
681
+ {
682
+ "constant": true,
683
+ "inputs": [],
684
+ "name": "votingDelay",
685
+ "outputs": [
686
+ {
687
+ "internalType": "uint256",
688
+ "name": "",
689
+ "type": "uint256"
690
+ }
691
+ ],
692
+ "payable": false,
693
+ "stateMutability": "pure",
694
+ "type": "function"
695
+ },
696
+ {
697
+ "constant": true,
698
+ "inputs": [],
699
+ "name": "votingPeriod",
700
+ "outputs": [
701
+ {
702
+ "internalType": "uint256",
703
+ "name": "",
704
+ "type": "uint256"
705
+ }
706
+ ],
707
+ "payable": false,
708
+ "stateMutability": "pure",
709
+ "type": "function"
710
+ },
711
+ {
712
+ "constant": true,
713
+ "inputs": [],
714
+ "name": "xvs",
715
+ "outputs": [
716
+ {
717
+ "internalType": "contract XVSInterface",
718
+ "name": "",
719
+ "type": "address"
720
+ }
721
+ ],
722
+ "payable": false,
723
+ "stateMutability": "view",
724
+ "type": "function"
725
+ }
726
+ ],
727
+ "bytecode": "0x60806040523480156200001157600080fd5b50604051620038cc380380620038cc83398101604081905262000034916200008a565b600080546001600160a01b039485166001600160a01b0319918216179091556001805493851693821693909317909255600280549190931691161790556200010a565b80516200008481620000f0565b92915050565b600080600060608486031215620000a057600080fd5b6000620000ae868662000077565b9350506020620000c18682870162000077565b9250506040620000d48682870162000077565b9150509250925092565b60006001600160a01b03821662000084565b620000fb81620000de565b81146200010757600080fd5b50565b6137b2806200011a6000396000f3fe60806040526004361061019c5760003560e01c80634634c61f116100ec578063d33219b41161008a578063ddf0b00911610064578063ddf0b00914610463578063deaaa7cc14610483578063e23a9a5214610498578063fe0d94c1146104c55761019c565b8063d33219b414610419578063da35c6641461042e578063da95691a146104435761019c565b80637bdbe4d0116100c65780637bdbe4d0146103ba57806391500671146103cf578063b58131b0146103ef578063b9a61961146104045761019c565b80634634c61f146103635780634e79ed3c14610383578063760fbc13146103a55761019c565b806321f43e42116101595780633932abb1116101335780633932abb1146102df5780633e4f49e6146102f457806340e58ee514610321578063452a9320146103415761019c565b806321f43e421461027a57806324bc1a641461029a578063328dd982146102af5761019c565b8063013cf08b146101a157806302a251a3146101df57806306fdde031461020157806315373e3d1461022357806317977c611461024557806320606b7014610265575b600080fd5b3480156101ad57600080fd5b506101c16101bc366004612444565b6104d8565b6040516101d69998979695949392919061355d565b60405180910390f35b3480156101eb57600080fd5b506101f4610531565b6040516101d6919061328a565b34801561020d57600080fd5b50610216610539565b6040516101d69190613346565b34801561022f57600080fd5b5061024361023e366004612492565b610569565b005b34801561025157600080fd5b506101f4610260366004612287565b610578565b34801561027157600080fd5b506101f461058a565b34801561028657600080fd5b506102436102953660046122ad565b6105a1565b3480156102a657600080fd5b506101f4610688565b3480156102bb57600080fd5b506102cf6102ca366004612444565b610696565b6040516101d6949392919061323d565b3480156102eb57600080fd5b506101f4610925565b34801561030057600080fd5b5061031461030f366004612444565b61092a565b6040516101d69190613338565b34801561032d57600080fd5b5061024361033c366004612444565b610aac565b34801561034d57600080fd5b50610356610d15565b6040516101d691906130e7565b34801561036f57600080fd5b5061024361037e3660046124c2565b610d24565b34801561038f57600080fd5b50610398610eb8565b6040516101d6919061332a565b3480156103b157600080fd5b50610243610ec7565b3480156103c657600080fd5b506101f4610f03565b3480156103db57600080fd5b506102436103ea3660046122ad565b610f08565b3480156103fb57600080fd5b506101f4610fdd565b34801561041057600080fd5b50610243610feb565b34801561042557600080fd5b50610398611070565b34801561043a57600080fd5b506101f461107f565b34801561044f57600080fd5b506101f461045e3660046122e7565b611085565b34801561046f57600080fd5b5061024361047e366004612444565b6114a7565b34801561048f57600080fd5b506101f4611711565b3480156104a457600080fd5b506104b86104b3366004612462565b61171d565b6040516101d691906134a7565b6102436104d3366004612444565b61178c565b6004602052600090815260409020805460018201546002830154600784015460088501546009860154600a870154600b9097015495966001600160a01b0390951695939492939192909160ff8082169161010090041689565b620151805b90565b6040518060400160405280601481526020017356656e757320476f7665726e6f7220416c70686160601b81525081565b610574338383611951565b5050565b60056020526000908152604090205481565b604051610596906130d1565b604051809103902081565b6002546001600160a01b031633146105d45760405162461bcd60e51b81526004016105cb90613387565b60405180910390fd5b600080546040516001600160a01b0390911691630825f38f918391906105fe9087906020016130e7565b604051602081830303815290604052856040518563ffffffff1660e01b815260040161062d9493929190613110565b600060405180830381600087803b15801561064757600080fd5b505af115801561065b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610683919081019061240f565b505050565b697f0e10af47c1c700000090565b6060806060806000600460008781526020019081526020016000209050806003018160040182600501836006018380548060200260200160405190810160405280929190818152602001828054801561071857602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116106fa575b505050505093508280548060200260200160405190810160405280929190818152602001828054801561076a57602002820191906000526020600020905b815481526020019060010190808311610756575b5050505050925081805480602002602001604051908101604052809291908181526020016000905b8282101561083d5760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156108295780601f106107fe57610100808354040283529160200191610829565b820191906000526020600020905b81548152906001019060200180831161080c57829003601f168201915b505050505081526020019060010190610792565b50505050915080805480602002602001604051908101604052809291908181526020016000905b8282101561090f5760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156108fb5780601f106108d0576101008083540402835291602001916108fb565b820191906000526020600020905b8154815290600101906020018083116108de57829003601f168201915b505050505081526020019060010190610864565b5050505090509450945094509450509193509193565b600190565b6000816003541015801561093e5750600082115b61095a5760405162461bcd60e51b81526004016105cb90613397565b6000828152600460205260409020600b81015460ff161561097f576002915050610aa7565b80600701544311610994576000915050610aa7565b806008015443116109a9576001915050610aa7565b80600a015481600901541115806109ca57506109c3610688565b8160090154105b156109d9576003915050610aa7565b60028101546109ec576004915050610aa7565b600b810154610100900460ff1615610a08576007915050610aa7565b6002810154600054604080516360d143f160e11b81529051610a9193926001600160a01b03169163c1a287e2916004808301926020929190829003018186803b158015610a5457600080fd5b505afa158015610a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610a8c91908101906123f1565b611b1a565b4210610aa1576006915050610aa7565b60059150505b919050565b6000610ab78261092a565b90506007816007811115610ac757fe5b1415610ae55760405162461bcd60e51b81526004016105cb90613467565b60008281526004602052604090206002546001600160a01b0316331480610bb05750610b0f610fdd565b60018054838201546001600160a01b039182169263782d6fe19290911690610b38904390611b46565b6040518363ffffffff1660e01b8152600401610b5592919061315f565b60206040518083038186803b158015610b6d57600080fd5b505afa158015610b81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba5919081019061252a565b6001600160601b0316105b610bcc5760405162461bcd60e51b81526004016105cb906133f7565b600b8101805460ff1916600117905560005b6003820154811015610cd8576000546003830180546001600160a01b039092169163591fcdfe919084908110610c1057fe5b6000918252602090912001546004850180546001600160a01b039092169185908110610c3857fe5b9060005260206000200154856005018581548110610c5257fe5b90600052602060002001866006018681548110610c6b57fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401610c9a9594939291906131fc565b600060405180830381600087803b158015610cb457600080fd5b505af1158015610cc8573d6000803e3d6000fd5b505060019092019150610bde9050565b507f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c83604051610d08919061328a565b60405180910390a1505050565b6002546001600160a01b031681565b6000604051610d32906130d1565b60408051918290038220828201909152601482527356656e757320476f7665726e6f7220416c70686160601b6020909201919091527fe7831129eb24a15f1f8f822483f1d64bd3e968215bb4c81d28d0d3ca9310a835610d90611b6e565b30604051602001610da49493929190613298565b6040516020818303038152906040528051906020012090506000604051610dca906130dc565b604051908190038120610de391899089906020016132cd565b60405160208183030381529060405280519060200120905060008282604051602001610e109291906130a0565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610e4d94939291906132f5565b6020604051602081039080840390855afa158015610e6f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610ea25760405162461bcd60e51b81526004016105cb90613457565b610ead818a8a611951565b505050505050505050565b6001546001600160a01b031681565b6002546001600160a01b03163314610ef15760405162461bcd60e51b81526004016105cb90613497565b600280546001600160a01b0319169055565b600a90565b6002546001600160a01b03163314610f325760405162461bcd60e51b81526004016105cb906133b7565b600080546040516001600160a01b0390911691633a66f90191839190610f5c9087906020016130e7565b604051602081830303815290604052856040518563ffffffff1660e01b8152600401610f8b9493929190613110565b602060405180830381600087803b158015610fa557600080fd5b505af1158015610fb9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061068391908101906123f1565b693f870857a3e0e380000090565b6002546001600160a01b031633146110155760405162461bcd60e51b81526004016105cb90613357565b6000805460408051630e18b68160e01b815290516001600160a01b0390921692630e18b6819260048084019382900301818387803b15801561105657600080fd5b505af115801561106a573d6000803e3d6000fd5b50505050565b6000546001600160a01b031681565b60035481565b600061108f610fdd565b600180546001600160a01b03169063782d6fe19033906110b0904390611b46565b6040518363ffffffff1660e01b81526004016110cd9291906130f5565b60206040518083038186803b1580156110e557600080fd5b505afa1580156110f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061111d919081019061252a565b6001600160601b0316116111435760405162461bcd60e51b81526004016105cb90613447565b84518651148015611155575083518651145b8015611162575082518651145b61117e5760405162461bcd60e51b81526004016105cb906133e7565b855161119c5760405162461bcd60e51b81526004016105cb90613437565b6111a4610f03565b865111156111c45760405162461bcd60e51b81526004016105cb906133c7565b3360009081526005602052604090205480156112415760006111e58261092a565b905060018160078111156111f557fe5b14156112135760405162461bcd60e51b81526004016105cb90613407565b600081600781111561122157fe5b141561123f5760405162461bcd60e51b81526004016105cb90613427565b505b600061124f43610a8c610925565b9050600061125f82610a8c610531565b6003805460010190559050611272611cd1565b604051806101a001604052806003548152602001336001600160a01b03168152602001600081526020018b81526020018a815260200189815260200188815260200184815260200183815260200160008152602001600081526020016000151581526020016000151581525090508060046000836000015181526020019081526020016000206000820151816000015560208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550604082015181600201556060820151816003019080519060200190611355929190611d46565b5060808201518051611371916004840191602090910190611dab565b5060a0820151805161138d916005840191602090910190611df2565b5060c082015180516113a9916006840191602090910190611e4b565b5060e082015181600701556101008201518160080155610120820151816009015561014082015181600a015561016082015181600b0160006101000a81548160ff02191690831515021790555061018082015181600b0160016101000a81548160ff02191690831515021790555090505080600001516005600083602001516001600160a01b03166001600160a01b03168152602001908152602001600020819055507f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e08160000151338c8c8c8c89898e60405161148f999897969594939291906134b5565b60405180910390a15193505050505b95945050505050565b60046114b28261092a565b60078111156114bd57fe5b146114da5760405162461bcd60e51b81526004016105cb90613367565b600081815260046020818152604080842084548251630d48571f60e31b8152925191959461152f9442946001600160a01b0390931693636a42b8f8938084019390829003018186803b158015610a5457600080fd5b905060005b60038301548110156116d7576116cf83600301828154811061155257fe5b6000918252602090912001546004850180546001600160a01b03909216918490811061157a57fe5b906000526020600020015485600501848154811061159457fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156116225780601f106115f757610100808354040283529160200191611622565b820191906000526020600020905b81548152906001019060200180831161160557829003601f168201915b505050505086600601858154811061163657fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156116c45780601f10611699576101008083540402835291602001916116c4565b820191906000526020600020905b8154815290600101906020018083116116a757829003601f168201915b505050505086611b72565b600101611534565b50600282018190556040517f9a2e42fd6722813d69113e7d0079d3d940171428df7373df9c7f7617cfda289290610d0890859084906135e3565b604051610596906130dc565b611725611ea4565b5060008281526004602090815260408083206001600160a01b0385168452600c018252918290208251606081018452905460ff80821615158352610100820416151592820192909252620100009091046001600160601b0316918101919091525b92915050565b60056117978261092a565b60078111156117a257fe5b146117bf5760405162461bcd60e51b81526004016105cb90613377565b6000818152600460205260408120600b8101805461ff001916610100179055905b6003820154811015611915576000546004830180546001600160a01b0390921691630825f38f91908490811061181257fe5b906000526020600020015484600301848154811061182c57fe5b6000918252602090912001546004860180546001600160a01b03909216918690811061185457fe5b906000526020600020015486600501868154811061186e57fe5b9060005260206000200187600601878154811061188757fe5b9060005260206000200188600201546040518763ffffffff1660e01b81526004016118b69594939291906131fc565b6000604051808303818588803b1580156118cf57600080fd5b505af11580156118e3573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f1916820160405261190c919081019061240f565b506001016117e0565b507f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f82604051611945919061328a565b60405180910390a15050565b600161195c8361092a565b600781111561196757fe5b146119845760405162461bcd60e51b81526004016105cb90613477565b60008281526004602090815260408083206001600160a01b0387168452600c8101909252909120805460ff16156119cd5760405162461bcd60e51b81526004016105cb906133a7565b600154600783015460405163782d6fe160e01b81526000926001600160a01b03169163782d6fe191611a03918a9160040161315f565b60206040518083038186803b158015611a1b57600080fd5b505afa158015611a2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611a53919081019061252a565b90508315611a7c57611a728360090154826001600160601b0316611b1a565b6009840155611a99565b611a9383600a0154826001600160601b0316611b1a565b600a8401555b8154600160ff199091161761ff00191661010085151502176dffffffffffffffffffffffff00001916620100006001600160601b038316021782556040517f877856338e13f63d0c36822ff0ef736b80934cd90574a3a5bc9262c39d217c4690611b0a90889088908890869061316d565b60405180910390a1505050505050565b600082820183811015611b3f5760405162461bcd60e51b81526004016105cb906133d7565b9392505050565b600082821115611b685760405162461bcd60e51b81526004016105cb90613487565b50900390565b4690565b6000546040516001600160a01b039091169063f2b0653790611ba090889088908890889088906020016131a2565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b8152600401611bd2919061328a565b60206040518083038186803b158015611bea57600080fd5b505afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611c2291908101906123d3565b15611c3f5760405162461bcd60e51b81526004016105cb90613417565b600054604051633a66f90160e01b81526001600160a01b0390911690633a66f90190611c7790889088908890889088906004016131a2565b602060405180830381600087803b158015611c9157600080fd5b505af1158015611ca5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611cc991908101906123f1565b505050505050565b604051806101a001604052806000815260200160006001600160a01b031681526020016000815260200160608152602001606081526020016060815260200160608152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b828054828255906000526020600020908101928215611d9b579160200282015b82811115611d9b57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611d66565b50611da7929150611ec4565b5090565b828054828255906000526020600020908101928215611de6579160200282015b82811115611de6578251825591602001919060010190611dcb565b50611da7929150611ee8565b828054828255906000526020600020908101928215611e3f579160200282015b82811115611e3f5782518051611e2f918491602090910190611f02565b5091602001919060010190611e12565b50611da7929150611f6f565b828054828255906000526020600020908101928215611e98579160200282015b82811115611e985782518051611e88918491602090910190611f02565b5091602001919060010190611e6b565b50611da7929150611f92565b604080516060810182526000808252602082018190529181019190915290565b61053691905b80821115611da75780546001600160a01b0319168155600101611eca565b61053691905b80821115611da75760008155600101611eee565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f4357805160ff1916838001178555611de6565b82800160010185558215611de65791820182811115611de6578251825591602001919060010190611dcb565b61053691905b80821115611da7576000611f898282611fb5565b50600101611f75565b61053691905b80821115611da7576000611fac8282611fb5565b50600101611f98565b50805460018160011615610100020316600290046000825580601f10611fdb5750611ff9565b601f016020900490600052602060002090810190611ff99190611ee8565b50565b803561178681613737565b600082601f83011261201857600080fd5b813561202b61202682613618565b6135f1565b9150818183526020840193506020810190508385602084028201111561205057600080fd5b60005b8381101561207c57816120668882611ffc565b8452506020928301929190910190600101612053565b5050505092915050565b600082601f83011261209757600080fd5b81356120a561202682613618565b81815260209384019390925082018360005b8381101561207c57813586016120cd88826121dc565b84525060209283019291909101906001016120b7565b600082601f8301126120f457600080fd5b813561210261202682613618565b81815260209384019390925082018360005b8381101561207c578135860161212a88826121dc565b8452506020928301929190910190600101612114565b600082601f83011261215157600080fd5b813561215f61202682613618565b9150818183526020840193506020810190508385602084028201111561218457600080fd5b60005b8381101561207c578161219a88826121c6565b8452506020928301929190910190600101612187565b80356117868161374b565b80516117868161374b565b803561178681613754565b805161178681613754565b600082601f8301126121ed57600080fd5b81356121fb61202682613639565b9150808252602083016020830185838301111561221757600080fd5b6122228382846136eb565b50505092915050565b600082601f83011261223c57600080fd5b815161224a61202682613639565b9150808252602083016020830185838301111561226657600080fd5b6122228382846136f7565b80356117868161375d565b805161178681613766565b60006020828403121561229957600080fd5b60006122a58484611ffc565b949350505050565b600080604083850312156122c057600080fd5b60006122cc8585611ffc565b92505060206122dd858286016121c6565b9150509250929050565b600080600080600060a086880312156122ff57600080fd5b853567ffffffffffffffff81111561231657600080fd5b61232288828901612007565b955050602086013567ffffffffffffffff81111561233f57600080fd5b61234b88828901612140565b945050604086013567ffffffffffffffff81111561236857600080fd5b612374888289016120e3565b935050606086013567ffffffffffffffff81111561239157600080fd5b61239d88828901612086565b925050608086013567ffffffffffffffff8111156123ba57600080fd5b6123c6888289016121dc565b9150509295509295909350565b6000602082840312156123e557600080fd5b60006122a584846121bb565b60006020828403121561240357600080fd5b60006122a584846121d1565b60006020828403121561242157600080fd5b815167ffffffffffffffff81111561243857600080fd5b6122a58482850161222b565b60006020828403121561245657600080fd5b60006122a584846121c6565b6000806040838503121561247557600080fd5b600061248185856121c6565b92505060206122dd85828601611ffc565b600080604083850312156124a557600080fd5b60006124b185856121c6565b92505060206122dd858286016121b0565b600080600080600060a086880312156124da57600080fd5b60006124e688886121c6565b95505060206124f7888289016121b0565b945050604061250888828901612271565b9350506060612519888289016121c6565b92505060806123c6888289016121c6565b60006020828403121561253c57600080fd5b60006122a5848461227c565b60006125548383612583565b505060200190565b6000611b3f8383612725565b6000612554838361270b565b61257d816136b8565b82525050565b61257d81613680565b600061259782613673565b6125a18185613677565b93506125ac83613661565b8060005b838110156125da5781516125c48882612548565b97506125cf83613661565b9250506001016125b0565b509495945050505050565b60006125f082613673565b6125fa8185613677565b93508360208202850161260c85613661565b8060005b858110156126465784840389528151612629858261255c565b945061263483613661565b60209a909a0199925050600101612610565b5091979650505050505050565b600061265e82613673565b6126688185613677565b93508360208202850161267a85613661565b8060005b858110156126465784840389528151612697858261255c565b94506126a283613661565b60209a909a019992505060010161267e565b60006126bf82613673565b6126c98185613677565b93506126d483613661565b8060005b838110156125da5781516126ec8882612568565b97506126f783613661565b9250506001016126d8565b61257d8161368b565b61257d81610536565b61257d61272082610536565b610536565b600061273082613673565b61273a8185613677565b935061274a8185602086016136f7565b61275381613723565b9093019392505050565b60008154600181166000811461277a57600181146127a0576127df565b607f600283041661278b8187613677565b60ff19841681529550506020850192506127df565b600282046127ae8187613677565b95506127b985613667565b60005b828110156127d8578154888201526001909101906020016127bc565b8701945050505b505092915050565b61257d816136bf565b61257d816136ca565b61257d816136d5565b600061280f603983613677565b7f476f7665726e6f72416c7068613a3a5f5f61636365707441646d696e3a20736581527f6e646572206d75737420626520676f7620677561726469616e00000000000000602082015260400192915050565b600061286e604483613677565b7f476f7665726e6f72416c7068613a3a71756575653a2070726f706f73616c206381527f616e206f6e6c79206265207175657565642069662069742069732073756363656020820152631959195960e21b604082015260600192915050565b60006128da604583613677565b7f476f7665726e6f72416c7068613a3a657865637574653a2070726f706f73616c81527f2063616e206f6e6c7920626520657865637574656420696620697420697320716020820152641d595d595960da1b604082015260600192915050565b6000612947600283610aa7565b61190160f01b815260020192915050565b6000612965604c83613677565b7f476f7665726e6f72416c7068613a3a5f5f6578656375746553657454696d656c81527f6f636b50656e64696e6741646d696e3a2073656e646572206d7573742062652060208201526b33b7bb1033bab0b93234b0b760a11b604082015260600192915050565b60006129d9601883613677565b7f73657450656e64696e6741646d696e2861646472657373290000000000000000815260200192915050565b6000612a12602983613677565b7f476f7665726e6f72416c7068613a3a73746174653a20696e76616c69642070728152681bdc1bdcd85b081a5960ba1b602082015260400192915050565b6000612a5d602d83613677565b7f476f7665726e6f72416c7068613a3a5f63617374566f74653a20766f7465722081526c185b1c9958591e481d9bdd1959609a1b602082015260400192915050565b6000612aac604a83613677565b7f476f7665726e6f72416c7068613a3a5f5f717565756553657454696d656c6f6381527f6b50656e64696e6741646d696e3a2073656e646572206d75737420626520676f6020820152693b1033bab0b93234b0b760b11b604082015260600192915050565b6000612b1e602883613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20746f6f206d616e7981526720616374696f6e7360c01b602082015260400192915050565b6000612b68601183613677565b706164646974696f6e206f766572666c6f7760781b815260200192915050565b6000612b95604383610aa7565b7f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353681527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208201526263742960e81b604082015260430192915050565b6000612c00602783610aa7565b7f42616c6c6f742875696e743235362070726f706f73616c49642c626f6f6c20738152667570706f72742960c81b602082015260270192915050565b6000612c49604483613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a2070726f706f73616c81527f2066756e6374696f6e20696e666f726d6174696f6e206172697479206d69736d6020820152630c2e8c6d60e31b604082015260600192915050565b6000612cb5602f83613677565b7f476f7665726e6f72416c7068613a3a63616e63656c3a2070726f706f7365722081526e18589bdd99481d1a1c995cda1bdb19608a1b602082015260400192915050565b6000612d06603883613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20666f756e6420616e81527f20616c7265616479206163746976652070726f706f73616c0000000000000000602082015260400192915050565b6000612d65604483613677565b7f476f7665726e6f72416c7068613a3a5f71756575654f725265766572743a207081527f726f706f73616c20616374696f6e20616c7265616479207175657565642061746020820152632065746160e01b604082015260600192915050565b6000612dd1603983613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20666f756e6420616e81527f20616c72656164792070656e64696e672070726f706f73616c00000000000000602082015260400192915050565b6000612e30602c83613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a206d7573742070726f81526b7669646520616374696f6e7360a01b602082015260400192915050565b6000612e7e603f83613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a2070726f706f73657281527f20766f7465732062656c6f772070726f706f73616c207468726573686f6c6400602082015260400192915050565b6000612edd602f83613677565b7f476f7665726e6f72416c7068613a3a63617374566f746542795369673a20696e81526e76616c6964207369676e617475726560881b602082015260400192915050565b6000612f2e603683613677565b7f476f7665726e6f72416c7068613a3a63616e63656c3a2063616e6e6f742063618152751b98d95b08195e1958dd5d1959081c1c9bdc1bdcd85b60521b602082015260400192915050565b6000612f86602a83613677565b7f476f7665726e6f72416c7068613a3a5f63617374566f74653a20766f74696e67815269081a5cc818db1bdcd95960b21b602082015260400192915050565b6000612fd2601583613677565b747375627472616374696f6e20756e646572666c6f7760581b815260200192915050565b6000613003603683613677565b7f476f7665726e6f72416c7068613a3a5f5f61626469636174653a2073656e6465815275391036bab9ba1031329033b7bb1033bab0b93234b0b760511b602082015260400192915050565b8051606083019061305f8482612702565b5060208201516130726020850182612702565b50604082015161106a6040850182613097565b61257d816136a6565b61257d816136e0565b61257d816136ac565b60006130ab8261293a565b91506130b78285612714565b6020820191506130c78284612714565b5060200192915050565b600061178682612b88565b600061178682612bf3565b602081016117868284612583565b604081016131038285612574565b611b3f602083018461270b565b60a0810161311e8287612583565b61312b60208301866127f9565b818103604083015261313c816129cc565b905081810360608301526131508185612725565b905061149e608083018461270b565b604081016131038285612583565b6080810161317b8287612583565b613188602083018661270b565b6131956040830185612702565b61149e606083018461308e565b60a081016131b08288612583565b6131bd602083018761270b565b81810360408301526131cf8186612725565b905081810360608301526131e38185612725565b90506131f2608083018461270b565b9695505050505050565b60a0810161320a8288612583565b613217602083018761270b565b8181036040830152613229818661275d565b905081810360608301526131e3818561275d565b6080808252810161324e818761258c565b9050818103602083015261326281866126b4565b905081810360408301526132768185612653565b905081810360608301526131f281846125e5565b60208101611786828461270b565b608081016132a6828761270b565b6132b3602083018661270b565b6132c0604083018561270b565b61149e6060830184612583565b606081016132db828661270b565b6132e8602083018561270b565b6122a56040830184612702565b60808101613303828761270b565b6133106020830186613085565b61331d604083018561270b565b61149e606083018461270b565b6020810161178682846127e7565b6020810161178682846127f0565b60208082528101611b3f8184612725565b6020808252810161178681612802565b6020808252810161178681612861565b60208082528101611786816128cd565b6020808252810161178681612958565b6020808252810161178681612a05565b6020808252810161178681612a50565b6020808252810161178681612a9f565b6020808252810161178681612b11565b6020808252810161178681612b5b565b6020808252810161178681612c3c565b6020808252810161178681612ca8565b6020808252810161178681612cf9565b6020808252810161178681612d58565b6020808252810161178681612dc4565b6020808252810161178681612e23565b6020808252810161178681612e71565b6020808252810161178681612ed0565b6020808252810161178681612f21565b6020808252810161178681612f79565b6020808252810161178681612fc5565b6020808252810161178681612ff6565b60608101611786828461304e565b61012081016134c4828c61270b565b6134d1602083018b612574565b81810360408301526134e3818a61258c565b905081810360608301526134f781896126b4565b9050818103608083015261350b8188612653565b905081810360a083015261351f81876125e5565b905061352e60c083018661270b565b61353b60e083018561270b565b81810361010083015261354e8184612725565b9b9a5050505050505050505050565b610120810161356c828c61270b565b613579602083018b612583565b613586604083018a61270b565b613593606083018961270b565b6135a0608083018861270b565b6135ad60a083018761270b565b6135ba60c083018661270b565b6135c760e0830185612702565b6135d5610100830184612702565b9a9950505050505050505050565b60408101613103828561270b565b60405181810167ffffffffffffffff8111828210171561361057600080fd5b604052919050565b600067ffffffffffffffff82111561362f57600080fd5b5060209081020190565b600067ffffffffffffffff82111561365057600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b90815260200190565b60006117868261369a565b151590565b80610aa78161372d565b6001600160a01b031690565b60ff1690565b6001600160601b031690565b6000611786825b600061178682613680565b600061178682613690565b600061178682610536565b6000611786826136ac565b82818337506000910152565b60005b838110156137125781810151838201526020016136fa565b8381111561106a5750506000910152565b601f01601f191690565b60088110611ff957fe5b61374081613680565b8114611ff957600080fd5b6137408161368b565b61374081610536565b613740816136a6565b613740816136ac56fea365627a7a723158205ccbc7686b054eebc43e46e02e71db1a594a160d10a09c716edc223032ce01a86c6578706572696d656e74616cf564736f6c63430005100040",
728
+ "deployedBytecode": "0x60806040526004361061019c5760003560e01c80634634c61f116100ec578063d33219b41161008a578063ddf0b00911610064578063ddf0b00914610463578063deaaa7cc14610483578063e23a9a5214610498578063fe0d94c1146104c55761019c565b8063d33219b414610419578063da35c6641461042e578063da95691a146104435761019c565b80637bdbe4d0116100c65780637bdbe4d0146103ba57806391500671146103cf578063b58131b0146103ef578063b9a61961146104045761019c565b80634634c61f146103635780634e79ed3c14610383578063760fbc13146103a55761019c565b806321f43e42116101595780633932abb1116101335780633932abb1146102df5780633e4f49e6146102f457806340e58ee514610321578063452a9320146103415761019c565b806321f43e421461027a57806324bc1a641461029a578063328dd982146102af5761019c565b8063013cf08b146101a157806302a251a3146101df57806306fdde031461020157806315373e3d1461022357806317977c611461024557806320606b7014610265575b600080fd5b3480156101ad57600080fd5b506101c16101bc366004612444565b6104d8565b6040516101d69998979695949392919061355d565b60405180910390f35b3480156101eb57600080fd5b506101f4610531565b6040516101d6919061328a565b34801561020d57600080fd5b50610216610539565b6040516101d69190613346565b34801561022f57600080fd5b5061024361023e366004612492565b610569565b005b34801561025157600080fd5b506101f4610260366004612287565b610578565b34801561027157600080fd5b506101f461058a565b34801561028657600080fd5b506102436102953660046122ad565b6105a1565b3480156102a657600080fd5b506101f4610688565b3480156102bb57600080fd5b506102cf6102ca366004612444565b610696565b6040516101d6949392919061323d565b3480156102eb57600080fd5b506101f4610925565b34801561030057600080fd5b5061031461030f366004612444565b61092a565b6040516101d69190613338565b34801561032d57600080fd5b5061024361033c366004612444565b610aac565b34801561034d57600080fd5b50610356610d15565b6040516101d691906130e7565b34801561036f57600080fd5b5061024361037e3660046124c2565b610d24565b34801561038f57600080fd5b50610398610eb8565b6040516101d6919061332a565b3480156103b157600080fd5b50610243610ec7565b3480156103c657600080fd5b506101f4610f03565b3480156103db57600080fd5b506102436103ea3660046122ad565b610f08565b3480156103fb57600080fd5b506101f4610fdd565b34801561041057600080fd5b50610243610feb565b34801561042557600080fd5b50610398611070565b34801561043a57600080fd5b506101f461107f565b34801561044f57600080fd5b506101f461045e3660046122e7565b611085565b34801561046f57600080fd5b5061024361047e366004612444565b6114a7565b34801561048f57600080fd5b506101f4611711565b3480156104a457600080fd5b506104b86104b3366004612462565b61171d565b6040516101d691906134a7565b6102436104d3366004612444565b61178c565b6004602052600090815260409020805460018201546002830154600784015460088501546009860154600a870154600b9097015495966001600160a01b0390951695939492939192909160ff8082169161010090041689565b620151805b90565b6040518060400160405280601481526020017356656e757320476f7665726e6f7220416c70686160601b81525081565b610574338383611951565b5050565b60056020526000908152604090205481565b604051610596906130d1565b604051809103902081565b6002546001600160a01b031633146105d45760405162461bcd60e51b81526004016105cb90613387565b60405180910390fd5b600080546040516001600160a01b0390911691630825f38f918391906105fe9087906020016130e7565b604051602081830303815290604052856040518563ffffffff1660e01b815260040161062d9493929190613110565b600060405180830381600087803b15801561064757600080fd5b505af115801561065b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610683919081019061240f565b505050565b697f0e10af47c1c700000090565b6060806060806000600460008781526020019081526020016000209050806003018160040182600501836006018380548060200260200160405190810160405280929190818152602001828054801561071857602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116106fa575b505050505093508280548060200260200160405190810160405280929190818152602001828054801561076a57602002820191906000526020600020905b815481526020019060010190808311610756575b5050505050925081805480602002602001604051908101604052809291908181526020016000905b8282101561083d5760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156108295780601f106107fe57610100808354040283529160200191610829565b820191906000526020600020905b81548152906001019060200180831161080c57829003601f168201915b505050505081526020019060010190610792565b50505050915080805480602002602001604051908101604052809291908181526020016000905b8282101561090f5760008481526020908190208301805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156108fb5780601f106108d0576101008083540402835291602001916108fb565b820191906000526020600020905b8154815290600101906020018083116108de57829003601f168201915b505050505081526020019060010190610864565b5050505090509450945094509450509193509193565b600190565b6000816003541015801561093e5750600082115b61095a5760405162461bcd60e51b81526004016105cb90613397565b6000828152600460205260409020600b81015460ff161561097f576002915050610aa7565b80600701544311610994576000915050610aa7565b806008015443116109a9576001915050610aa7565b80600a015481600901541115806109ca57506109c3610688565b8160090154105b156109d9576003915050610aa7565b60028101546109ec576004915050610aa7565b600b810154610100900460ff1615610a08576007915050610aa7565b6002810154600054604080516360d143f160e11b81529051610a9193926001600160a01b03169163c1a287e2916004808301926020929190829003018186803b158015610a5457600080fd5b505afa158015610a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610a8c91908101906123f1565b611b1a565b4210610aa1576006915050610aa7565b60059150505b919050565b6000610ab78261092a565b90506007816007811115610ac757fe5b1415610ae55760405162461bcd60e51b81526004016105cb90613467565b60008281526004602052604090206002546001600160a01b0316331480610bb05750610b0f610fdd565b60018054838201546001600160a01b039182169263782d6fe19290911690610b38904390611b46565b6040518363ffffffff1660e01b8152600401610b5592919061315f565b60206040518083038186803b158015610b6d57600080fd5b505afa158015610b81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250610ba5919081019061252a565b6001600160601b0316105b610bcc5760405162461bcd60e51b81526004016105cb906133f7565b600b8101805460ff1916600117905560005b6003820154811015610cd8576000546003830180546001600160a01b039092169163591fcdfe919084908110610c1057fe5b6000918252602090912001546004850180546001600160a01b039092169185908110610c3857fe5b9060005260206000200154856005018581548110610c5257fe5b90600052602060002001866006018681548110610c6b57fe5b9060005260206000200187600201546040518663ffffffff1660e01b8152600401610c9a9594939291906131fc565b600060405180830381600087803b158015610cb457600080fd5b505af1158015610cc8573d6000803e3d6000fd5b505060019092019150610bde9050565b507f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c83604051610d08919061328a565b60405180910390a1505050565b6002546001600160a01b031681565b6000604051610d32906130d1565b60408051918290038220828201909152601482527356656e757320476f7665726e6f7220416c70686160601b6020909201919091527fe7831129eb24a15f1f8f822483f1d64bd3e968215bb4c81d28d0d3ca9310a835610d90611b6e565b30604051602001610da49493929190613298565b6040516020818303038152906040528051906020012090506000604051610dca906130dc565b604051908190038120610de391899089906020016132cd565b60405160208183030381529060405280519060200120905060008282604051602001610e109291906130a0565b604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051610e4d94939291906132f5565b6020604051602081039080840390855afa158015610e6f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610ea25760405162461bcd60e51b81526004016105cb90613457565b610ead818a8a611951565b505050505050505050565b6001546001600160a01b031681565b6002546001600160a01b03163314610ef15760405162461bcd60e51b81526004016105cb90613497565b600280546001600160a01b0319169055565b600a90565b6002546001600160a01b03163314610f325760405162461bcd60e51b81526004016105cb906133b7565b600080546040516001600160a01b0390911691633a66f90191839190610f5c9087906020016130e7565b604051602081830303815290604052856040518563ffffffff1660e01b8152600401610f8b9493929190613110565b602060405180830381600087803b158015610fa557600080fd5b505af1158015610fb9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061068391908101906123f1565b693f870857a3e0e380000090565b6002546001600160a01b031633146110155760405162461bcd60e51b81526004016105cb90613357565b6000805460408051630e18b68160e01b815290516001600160a01b0390921692630e18b6819260048084019382900301818387803b15801561105657600080fd5b505af115801561106a573d6000803e3d6000fd5b50505050565b6000546001600160a01b031681565b60035481565b600061108f610fdd565b600180546001600160a01b03169063782d6fe19033906110b0904390611b46565b6040518363ffffffff1660e01b81526004016110cd9291906130f5565b60206040518083038186803b1580156110e557600080fd5b505afa1580156110f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061111d919081019061252a565b6001600160601b0316116111435760405162461bcd60e51b81526004016105cb90613447565b84518651148015611155575083518651145b8015611162575082518651145b61117e5760405162461bcd60e51b81526004016105cb906133e7565b855161119c5760405162461bcd60e51b81526004016105cb90613437565b6111a4610f03565b865111156111c45760405162461bcd60e51b81526004016105cb906133c7565b3360009081526005602052604090205480156112415760006111e58261092a565b905060018160078111156111f557fe5b14156112135760405162461bcd60e51b81526004016105cb90613407565b600081600781111561122157fe5b141561123f5760405162461bcd60e51b81526004016105cb90613427565b505b600061124f43610a8c610925565b9050600061125f82610a8c610531565b6003805460010190559050611272611cd1565b604051806101a001604052806003548152602001336001600160a01b03168152602001600081526020018b81526020018a815260200189815260200188815260200184815260200183815260200160008152602001600081526020016000151581526020016000151581525090508060046000836000015181526020019081526020016000206000820151816000015560208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550604082015181600201556060820151816003019080519060200190611355929190611d46565b5060808201518051611371916004840191602090910190611dab565b5060a0820151805161138d916005840191602090910190611df2565b5060c082015180516113a9916006840191602090910190611e4b565b5060e082015181600701556101008201518160080155610120820151816009015561014082015181600a015561016082015181600b0160006101000a81548160ff02191690831515021790555061018082015181600b0160016101000a81548160ff02191690831515021790555090505080600001516005600083602001516001600160a01b03166001600160a01b03168152602001908152602001600020819055507f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e08160000151338c8c8c8c89898e60405161148f999897969594939291906134b5565b60405180910390a15193505050505b95945050505050565b60046114b28261092a565b60078111156114bd57fe5b146114da5760405162461bcd60e51b81526004016105cb90613367565b600081815260046020818152604080842084548251630d48571f60e31b8152925191959461152f9442946001600160a01b0390931693636a42b8f8938084019390829003018186803b158015610a5457600080fd5b905060005b60038301548110156116d7576116cf83600301828154811061155257fe5b6000918252602090912001546004850180546001600160a01b03909216918490811061157a57fe5b906000526020600020015485600501848154811061159457fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156116225780601f106115f757610100808354040283529160200191611622565b820191906000526020600020905b81548152906001019060200180831161160557829003601f168201915b505050505086600601858154811061163657fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156116c45780601f10611699576101008083540402835291602001916116c4565b820191906000526020600020905b8154815290600101906020018083116116a757829003601f168201915b505050505086611b72565b600101611534565b50600282018190556040517f9a2e42fd6722813d69113e7d0079d3d940171428df7373df9c7f7617cfda289290610d0890859084906135e3565b604051610596906130dc565b611725611ea4565b5060008281526004602090815260408083206001600160a01b0385168452600c018252918290208251606081018452905460ff80821615158352610100820416151592820192909252620100009091046001600160601b0316918101919091525b92915050565b60056117978261092a565b60078111156117a257fe5b146117bf5760405162461bcd60e51b81526004016105cb90613377565b6000818152600460205260408120600b8101805461ff001916610100179055905b6003820154811015611915576000546004830180546001600160a01b0390921691630825f38f91908490811061181257fe5b906000526020600020015484600301848154811061182c57fe5b6000918252602090912001546004860180546001600160a01b03909216918690811061185457fe5b906000526020600020015486600501868154811061186e57fe5b9060005260206000200187600601878154811061188757fe5b9060005260206000200188600201546040518763ffffffff1660e01b81526004016118b69594939291906131fc565b6000604051808303818588803b1580156118cf57600080fd5b505af11580156118e3573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f1916820160405261190c919081019061240f565b506001016117e0565b507f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f82604051611945919061328a565b60405180910390a15050565b600161195c8361092a565b600781111561196757fe5b146119845760405162461bcd60e51b81526004016105cb90613477565b60008281526004602090815260408083206001600160a01b0387168452600c8101909252909120805460ff16156119cd5760405162461bcd60e51b81526004016105cb906133a7565b600154600783015460405163782d6fe160e01b81526000926001600160a01b03169163782d6fe191611a03918a9160040161315f565b60206040518083038186803b158015611a1b57600080fd5b505afa158015611a2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611a53919081019061252a565b90508315611a7c57611a728360090154826001600160601b0316611b1a565b6009840155611a99565b611a9383600a0154826001600160601b0316611b1a565b600a8401555b8154600160ff199091161761ff00191661010085151502176dffffffffffffffffffffffff00001916620100006001600160601b038316021782556040517f877856338e13f63d0c36822ff0ef736b80934cd90574a3a5bc9262c39d217c4690611b0a90889088908890869061316d565b60405180910390a1505050505050565b600082820183811015611b3f5760405162461bcd60e51b81526004016105cb906133d7565b9392505050565b600082821115611b685760405162461bcd60e51b81526004016105cb90613487565b50900390565b4690565b6000546040516001600160a01b039091169063f2b0653790611ba090889088908890889088906020016131a2565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b8152600401611bd2919061328a565b60206040518083038186803b158015611bea57600080fd5b505afa158015611bfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611c2291908101906123d3565b15611c3f5760405162461bcd60e51b81526004016105cb90613417565b600054604051633a66f90160e01b81526001600160a01b0390911690633a66f90190611c7790889088908890889088906004016131a2565b602060405180830381600087803b158015611c9157600080fd5b505af1158015611ca5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250611cc991908101906123f1565b505050505050565b604051806101a001604052806000815260200160006001600160a01b031681526020016000815260200160608152602001606081526020016060815260200160608152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b828054828255906000526020600020908101928215611d9b579160200282015b82811115611d9b57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611d66565b50611da7929150611ec4565b5090565b828054828255906000526020600020908101928215611de6579160200282015b82811115611de6578251825591602001919060010190611dcb565b50611da7929150611ee8565b828054828255906000526020600020908101928215611e3f579160200282015b82811115611e3f5782518051611e2f918491602090910190611f02565b5091602001919060010190611e12565b50611da7929150611f6f565b828054828255906000526020600020908101928215611e98579160200282015b82811115611e985782518051611e88918491602090910190611f02565b5091602001919060010190611e6b565b50611da7929150611f92565b604080516060810182526000808252602082018190529181019190915290565b61053691905b80821115611da75780546001600160a01b0319168155600101611eca565b61053691905b80821115611da75760008155600101611eee565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f4357805160ff1916838001178555611de6565b82800160010185558215611de65791820182811115611de6578251825591602001919060010190611dcb565b61053691905b80821115611da7576000611f898282611fb5565b50600101611f75565b61053691905b80821115611da7576000611fac8282611fb5565b50600101611f98565b50805460018160011615610100020316600290046000825580601f10611fdb5750611ff9565b601f016020900490600052602060002090810190611ff99190611ee8565b50565b803561178681613737565b600082601f83011261201857600080fd5b813561202b61202682613618565b6135f1565b9150818183526020840193506020810190508385602084028201111561205057600080fd5b60005b8381101561207c57816120668882611ffc565b8452506020928301929190910190600101612053565b5050505092915050565b600082601f83011261209757600080fd5b81356120a561202682613618565b81815260209384019390925082018360005b8381101561207c57813586016120cd88826121dc565b84525060209283019291909101906001016120b7565b600082601f8301126120f457600080fd5b813561210261202682613618565b81815260209384019390925082018360005b8381101561207c578135860161212a88826121dc565b8452506020928301929190910190600101612114565b600082601f83011261215157600080fd5b813561215f61202682613618565b9150818183526020840193506020810190508385602084028201111561218457600080fd5b60005b8381101561207c578161219a88826121c6565b8452506020928301929190910190600101612187565b80356117868161374b565b80516117868161374b565b803561178681613754565b805161178681613754565b600082601f8301126121ed57600080fd5b81356121fb61202682613639565b9150808252602083016020830185838301111561221757600080fd5b6122228382846136eb565b50505092915050565b600082601f83011261223c57600080fd5b815161224a61202682613639565b9150808252602083016020830185838301111561226657600080fd5b6122228382846136f7565b80356117868161375d565b805161178681613766565b60006020828403121561229957600080fd5b60006122a58484611ffc565b949350505050565b600080604083850312156122c057600080fd5b60006122cc8585611ffc565b92505060206122dd858286016121c6565b9150509250929050565b600080600080600060a086880312156122ff57600080fd5b853567ffffffffffffffff81111561231657600080fd5b61232288828901612007565b955050602086013567ffffffffffffffff81111561233f57600080fd5b61234b88828901612140565b945050604086013567ffffffffffffffff81111561236857600080fd5b612374888289016120e3565b935050606086013567ffffffffffffffff81111561239157600080fd5b61239d88828901612086565b925050608086013567ffffffffffffffff8111156123ba57600080fd5b6123c6888289016121dc565b9150509295509295909350565b6000602082840312156123e557600080fd5b60006122a584846121bb565b60006020828403121561240357600080fd5b60006122a584846121d1565b60006020828403121561242157600080fd5b815167ffffffffffffffff81111561243857600080fd5b6122a58482850161222b565b60006020828403121561245657600080fd5b60006122a584846121c6565b6000806040838503121561247557600080fd5b600061248185856121c6565b92505060206122dd85828601611ffc565b600080604083850312156124a557600080fd5b60006124b185856121c6565b92505060206122dd858286016121b0565b600080600080600060a086880312156124da57600080fd5b60006124e688886121c6565b95505060206124f7888289016121b0565b945050604061250888828901612271565b9350506060612519888289016121c6565b92505060806123c6888289016121c6565b60006020828403121561253c57600080fd5b60006122a5848461227c565b60006125548383612583565b505060200190565b6000611b3f8383612725565b6000612554838361270b565b61257d816136b8565b82525050565b61257d81613680565b600061259782613673565b6125a18185613677565b93506125ac83613661565b8060005b838110156125da5781516125c48882612548565b97506125cf83613661565b9250506001016125b0565b509495945050505050565b60006125f082613673565b6125fa8185613677565b93508360208202850161260c85613661565b8060005b858110156126465784840389528151612629858261255c565b945061263483613661565b60209a909a0199925050600101612610565b5091979650505050505050565b600061265e82613673565b6126688185613677565b93508360208202850161267a85613661565b8060005b858110156126465784840389528151612697858261255c565b94506126a283613661565b60209a909a019992505060010161267e565b60006126bf82613673565b6126c98185613677565b93506126d483613661565b8060005b838110156125da5781516126ec8882612568565b97506126f783613661565b9250506001016126d8565b61257d8161368b565b61257d81610536565b61257d61272082610536565b610536565b600061273082613673565b61273a8185613677565b935061274a8185602086016136f7565b61275381613723565b9093019392505050565b60008154600181166000811461277a57600181146127a0576127df565b607f600283041661278b8187613677565b60ff19841681529550506020850192506127df565b600282046127ae8187613677565b95506127b985613667565b60005b828110156127d8578154888201526001909101906020016127bc565b8701945050505b505092915050565b61257d816136bf565b61257d816136ca565b61257d816136d5565b600061280f603983613677565b7f476f7665726e6f72416c7068613a3a5f5f61636365707441646d696e3a20736581527f6e646572206d75737420626520676f7620677561726469616e00000000000000602082015260400192915050565b600061286e604483613677565b7f476f7665726e6f72416c7068613a3a71756575653a2070726f706f73616c206381527f616e206f6e6c79206265207175657565642069662069742069732073756363656020820152631959195960e21b604082015260600192915050565b60006128da604583613677565b7f476f7665726e6f72416c7068613a3a657865637574653a2070726f706f73616c81527f2063616e206f6e6c7920626520657865637574656420696620697420697320716020820152641d595d595960da1b604082015260600192915050565b6000612947600283610aa7565b61190160f01b815260020192915050565b6000612965604c83613677565b7f476f7665726e6f72416c7068613a3a5f5f6578656375746553657454696d656c81527f6f636b50656e64696e6741646d696e3a2073656e646572206d7573742062652060208201526b33b7bb1033bab0b93234b0b760a11b604082015260600192915050565b60006129d9601883613677565b7f73657450656e64696e6741646d696e2861646472657373290000000000000000815260200192915050565b6000612a12602983613677565b7f476f7665726e6f72416c7068613a3a73746174653a20696e76616c69642070728152681bdc1bdcd85b081a5960ba1b602082015260400192915050565b6000612a5d602d83613677565b7f476f7665726e6f72416c7068613a3a5f63617374566f74653a20766f7465722081526c185b1c9958591e481d9bdd1959609a1b602082015260400192915050565b6000612aac604a83613677565b7f476f7665726e6f72416c7068613a3a5f5f717565756553657454696d656c6f6381527f6b50656e64696e6741646d696e3a2073656e646572206d75737420626520676f6020820152693b1033bab0b93234b0b760b11b604082015260600192915050565b6000612b1e602883613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20746f6f206d616e7981526720616374696f6e7360c01b602082015260400192915050565b6000612b68601183613677565b706164646974696f6e206f766572666c6f7760781b815260200192915050565b6000612b95604383610aa7565b7f454950373132446f6d61696e28737472696e67206e616d652c75696e7432353681527f20636861696e49642c6164647265737320766572696679696e67436f6e74726160208201526263742960e81b604082015260430192915050565b6000612c00602783610aa7565b7f42616c6c6f742875696e743235362070726f706f73616c49642c626f6f6c20738152667570706f72742960c81b602082015260270192915050565b6000612c49604483613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a2070726f706f73616c81527f2066756e6374696f6e20696e666f726d6174696f6e206172697479206d69736d6020820152630c2e8c6d60e31b604082015260600192915050565b6000612cb5602f83613677565b7f476f7665726e6f72416c7068613a3a63616e63656c3a2070726f706f7365722081526e18589bdd99481d1a1c995cda1bdb19608a1b602082015260400192915050565b6000612d06603883613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20666f756e6420616e81527f20616c7265616479206163746976652070726f706f73616c0000000000000000602082015260400192915050565b6000612d65604483613677565b7f476f7665726e6f72416c7068613a3a5f71756575654f725265766572743a207081527f726f706f73616c20616374696f6e20616c7265616479207175657565642061746020820152632065746160e01b604082015260600192915050565b6000612dd1603983613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a20666f756e6420616e81527f20616c72656164792070656e64696e672070726f706f73616c00000000000000602082015260400192915050565b6000612e30602c83613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a206d7573742070726f81526b7669646520616374696f6e7360a01b602082015260400192915050565b6000612e7e603f83613677565b7f476f7665726e6f72416c7068613a3a70726f706f73653a2070726f706f73657281527f20766f7465732062656c6f772070726f706f73616c207468726573686f6c6400602082015260400192915050565b6000612edd602f83613677565b7f476f7665726e6f72416c7068613a3a63617374566f746542795369673a20696e81526e76616c6964207369676e617475726560881b602082015260400192915050565b6000612f2e603683613677565b7f476f7665726e6f72416c7068613a3a63616e63656c3a2063616e6e6f742063618152751b98d95b08195e1958dd5d1959081c1c9bdc1bdcd85b60521b602082015260400192915050565b6000612f86602a83613677565b7f476f7665726e6f72416c7068613a3a5f63617374566f74653a20766f74696e67815269081a5cc818db1bdcd95960b21b602082015260400192915050565b6000612fd2601583613677565b747375627472616374696f6e20756e646572666c6f7760581b815260200192915050565b6000613003603683613677565b7f476f7665726e6f72416c7068613a3a5f5f61626469636174653a2073656e6465815275391036bab9ba1031329033b7bb1033bab0b93234b0b760511b602082015260400192915050565b8051606083019061305f8482612702565b5060208201516130726020850182612702565b50604082015161106a6040850182613097565b61257d816136a6565b61257d816136e0565b61257d816136ac565b60006130ab8261293a565b91506130b78285612714565b6020820191506130c78284612714565b5060200192915050565b600061178682612b88565b600061178682612bf3565b602081016117868284612583565b604081016131038285612574565b611b3f602083018461270b565b60a0810161311e8287612583565b61312b60208301866127f9565b818103604083015261313c816129cc565b905081810360608301526131508185612725565b905061149e608083018461270b565b604081016131038285612583565b6080810161317b8287612583565b613188602083018661270b565b6131956040830185612702565b61149e606083018461308e565b60a081016131b08288612583565b6131bd602083018761270b565b81810360408301526131cf8186612725565b905081810360608301526131e38185612725565b90506131f2608083018461270b565b9695505050505050565b60a0810161320a8288612583565b613217602083018761270b565b8181036040830152613229818661275d565b905081810360608301526131e3818561275d565b6080808252810161324e818761258c565b9050818103602083015261326281866126b4565b905081810360408301526132768185612653565b905081810360608301526131f281846125e5565b60208101611786828461270b565b608081016132a6828761270b565b6132b3602083018661270b565b6132c0604083018561270b565b61149e6060830184612583565b606081016132db828661270b565b6132e8602083018561270b565b6122a56040830184612702565b60808101613303828761270b565b6133106020830186613085565b61331d604083018561270b565b61149e606083018461270b565b6020810161178682846127e7565b6020810161178682846127f0565b60208082528101611b3f8184612725565b6020808252810161178681612802565b6020808252810161178681612861565b60208082528101611786816128cd565b6020808252810161178681612958565b6020808252810161178681612a05565b6020808252810161178681612a50565b6020808252810161178681612a9f565b6020808252810161178681612b11565b6020808252810161178681612b5b565b6020808252810161178681612c3c565b6020808252810161178681612ca8565b6020808252810161178681612cf9565b6020808252810161178681612d58565b6020808252810161178681612dc4565b6020808252810161178681612e23565b6020808252810161178681612e71565b6020808252810161178681612ed0565b6020808252810161178681612f21565b6020808252810161178681612f79565b6020808252810161178681612fc5565b6020808252810161178681612ff6565b60608101611786828461304e565b61012081016134c4828c61270b565b6134d1602083018b612574565b81810360408301526134e3818a61258c565b905081810360608301526134f781896126b4565b9050818103608083015261350b8188612653565b905081810360a083015261351f81876125e5565b905061352e60c083018661270b565b61353b60e083018561270b565b81810361010083015261354e8184612725565b9b9a5050505050505050505050565b610120810161356c828c61270b565b613579602083018b612583565b613586604083018a61270b565b613593606083018961270b565b6135a0608083018861270b565b6135ad60a083018761270b565b6135ba60c083018661270b565b6135c760e0830185612702565b6135d5610100830184612702565b9a9950505050505050505050565b60408101613103828561270b565b60405181810167ffffffffffffffff8111828210171561361057600080fd5b604052919050565b600067ffffffffffffffff82111561362f57600080fd5b5060209081020190565b600067ffffffffffffffff82111561365057600080fd5b506020601f91909101601f19160190565b60200190565b60009081526020902090565b5190565b90815260200190565b60006117868261369a565b151590565b80610aa78161372d565b6001600160a01b031690565b60ff1690565b6001600160601b031690565b6000611786825b600061178682613680565b600061178682613690565b600061178682610536565b6000611786826136ac565b82818337506000910152565b60005b838110156137125781810151838201526020016136fa565b8381111561106a5750506000910152565b601f01601f191690565b60088110611ff957fe5b61374081613680565b8114611ff957600080fd5b6137408161368b565b61374081610536565b613740816136a6565b613740816136ac56fea365627a7a723158205ccbc7686b054eebc43e46e02e71db1a594a160d10a09c716edc223032ce01a86c6578706572696d656e74616cf564736f6c63430005100040",
729
+ "linkReferences": {},
730
+ "deployedLinkReferences": {}
731
+ }