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