@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,205 @@
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 { Errors, ErrorsInterface } from "../../../contracts/libs/Errors";
13
+
14
+ const _abi = [
15
+ {
16
+ inputs: [
17
+ {
18
+ internalType: "address",
19
+ name: "subject",
20
+ type: "address",
21
+ },
22
+ {
23
+ internalType: "uint256",
24
+ name: "requestedAmount",
25
+ type: "uint256",
26
+ },
27
+ {
28
+ internalType: "uint256",
29
+ name: "availibleAmount",
30
+ type: "uint256",
31
+ },
32
+ ],
33
+ name: "InsufficientStakeAmount",
34
+ type: "error",
35
+ },
36
+ {
37
+ inputs: [],
38
+ name: "InvalidERC20Token",
39
+ type: "error",
40
+ },
41
+ {
42
+ inputs: [],
43
+ name: "InvalidGovernance",
44
+ type: "error",
45
+ },
46
+ {
47
+ inputs: [],
48
+ name: "InvalidParametersRegistry",
49
+ type: "error",
50
+ },
51
+ {
52
+ inputs: [
53
+ {
54
+ internalType: "uint256",
55
+ name: "amount_",
56
+ type: "uint256",
57
+ },
58
+ ],
59
+ name: "InvalidStakeAmount",
60
+ type: "error",
61
+ },
62
+ {
63
+ inputs: [
64
+ {
65
+ internalType: "address",
66
+ name: "subject",
67
+ type: "address",
68
+ },
69
+ ],
70
+ name: "NoRewardsAvailible",
71
+ type: "error",
72
+ },
73
+ {
74
+ inputs: [
75
+ {
76
+ internalType: "address",
77
+ name: "sender",
78
+ type: "address",
79
+ },
80
+ ],
81
+ name: "NotDAOSLC",
82
+ type: "error",
83
+ },
84
+ {
85
+ inputs: [
86
+ {
87
+ internalType: "string",
88
+ name: "parameterName",
89
+ type: "string",
90
+ },
91
+ ],
92
+ name: "ParameterIsAlreadySynced",
93
+ type: "error",
94
+ },
95
+ {
96
+ inputs: [
97
+ {
98
+ internalType: "address",
99
+ name: "parametersRegistry",
100
+ type: "address",
101
+ },
102
+ {
103
+ internalType: "string",
104
+ name: "parameterName",
105
+ type: "string",
106
+ },
107
+ ],
108
+ name: "ParameterIsNotSet",
109
+ type: "error",
110
+ },
111
+ {
112
+ inputs: [
113
+ {
114
+ internalType: "string",
115
+ name: "parameterName",
116
+ type: "string",
117
+ },
118
+ ],
119
+ name: "ParameterIsNotSynced",
120
+ type: "error",
121
+ },
122
+ {
123
+ inputs: [
124
+ {
125
+ internalType: "address",
126
+ name: "sender",
127
+ type: "address",
128
+ },
129
+ ],
130
+ name: "SenderExpectedToBeDAOSLC",
131
+ type: "error",
132
+ },
133
+ {
134
+ inputs: [
135
+ {
136
+ internalType: "address",
137
+ name: "sender",
138
+ type: "address",
139
+ },
140
+ ],
141
+ name: "SenderExpectedToBeGovernance",
142
+ type: "error",
143
+ },
144
+ {
145
+ inputs: [
146
+ {
147
+ internalType: "uint256",
148
+ name: "value",
149
+ type: "uint256",
150
+ },
151
+ ],
152
+ name: "ValueShouldBeInBasisPoints",
153
+ type: "error",
154
+ },
155
+ ] as const;
156
+
157
+ const _bytecode =
158
+ "0x6080806040523460175760119081601d823930815050f35b600080fdfe600080fdfea164736f6c634300081e000a";
159
+
160
+ type ErrorsConstructorParams =
161
+ | [signer?: Signer]
162
+ | ConstructorParameters<typeof ContractFactory>;
163
+
164
+ const isSuperArgs = (
165
+ xs: ErrorsConstructorParams
166
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
167
+
168
+ export class Errors__factory extends ContractFactory {
169
+ constructor(...args: ErrorsConstructorParams) {
170
+ if (isSuperArgs(args)) {
171
+ super(...args);
172
+ } else {
173
+ super(_abi, _bytecode, args[0]);
174
+ }
175
+ this.contractName = "Errors";
176
+ }
177
+
178
+ override getDeployTransaction(
179
+ overrides?: NonPayableOverrides & { from?: string }
180
+ ): Promise<ContractDeployTransaction> {
181
+ return super.getDeployTransaction(overrides || {});
182
+ }
183
+ override deploy(overrides?: NonPayableOverrides & { from?: string }) {
184
+ return super.deploy(overrides || {}) as Promise<
185
+ Errors & {
186
+ deploymentTransaction(): ContractTransactionResponse;
187
+ }
188
+ >;
189
+ }
190
+ override connect(runner: ContractRunner | null): Errors__factory {
191
+ return super.connect(runner) as Errors__factory;
192
+ }
193
+ static readonly contractName: "Errors";
194
+
195
+ public readonly contractName: "Errors";
196
+
197
+ static readonly bytecode = _bytecode;
198
+ static readonly abi = _abi;
199
+ static createInterface(): ErrorsInterface {
200
+ return new Interface(_abi) as ErrorsInterface;
201
+ }
202
+ static connect(address: string, runner?: ContractRunner | null): Errors {
203
+ return new Contract(address, _abi, runner) as unknown as Errors;
204
+ }
205
+ }
@@ -0,0 +1,103 @@
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
+ NeutralsSelection,
14
+ NeutralsSelectionInterface,
15
+ } from "../../../contracts/libs/NeutralsSelection";
16
+
17
+ const _abi = [
18
+ {
19
+ inputs: [
20
+ {
21
+ internalType: "uint256",
22
+ name: "addressesCount",
23
+ type: "uint256",
24
+ },
25
+ {
26
+ internalType: "uint256",
27
+ name: "weightsCount",
28
+ type: "uint256",
29
+ },
30
+ ],
31
+ name: "CountOfAddressesMustBeTheSameAsWeights",
32
+ type: "error",
33
+ },
34
+ {
35
+ inputs: [
36
+ {
37
+ internalType: "uint256",
38
+ name: "k",
39
+ type: "uint256",
40
+ },
41
+ {
42
+ internalType: "uint256",
43
+ name: "addressesLength",
44
+ type: "uint256",
45
+ },
46
+ ],
47
+ name: "KmustBeInRangeOfAddresesLength",
48
+ type: "error",
49
+ },
50
+ ] as const;
51
+
52
+ const _bytecode =
53
+ "0x6080806040523460175760119081601d823930815050f35b600080fdfe600080fdfea164736f6c634300081e000a";
54
+
55
+ type NeutralsSelectionConstructorParams =
56
+ | [signer?: Signer]
57
+ | ConstructorParameters<typeof ContractFactory>;
58
+
59
+ const isSuperArgs = (
60
+ xs: NeutralsSelectionConstructorParams
61
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
62
+
63
+ export class NeutralsSelection__factory extends ContractFactory {
64
+ constructor(...args: NeutralsSelectionConstructorParams) {
65
+ if (isSuperArgs(args)) {
66
+ super(...args);
67
+ } else {
68
+ super(_abi, _bytecode, args[0]);
69
+ }
70
+ this.contractName = "NeutralsSelection";
71
+ }
72
+
73
+ override getDeployTransaction(
74
+ overrides?: NonPayableOverrides & { from?: string }
75
+ ): Promise<ContractDeployTransaction> {
76
+ return super.getDeployTransaction(overrides || {});
77
+ }
78
+ override deploy(overrides?: NonPayableOverrides & { from?: string }) {
79
+ return super.deploy(overrides || {}) as Promise<
80
+ NeutralsSelection & {
81
+ deploymentTransaction(): ContractTransactionResponse;
82
+ }
83
+ >;
84
+ }
85
+ override connect(runner: ContractRunner | null): NeutralsSelection__factory {
86
+ return super.connect(runner) as NeutralsSelection__factory;
87
+ }
88
+ static readonly contractName: "NeutralsSelection";
89
+
90
+ public readonly contractName: "NeutralsSelection";
91
+
92
+ static readonly bytecode = _bytecode;
93
+ static readonly abi = _abi;
94
+ static createInterface(): NeutralsSelectionInterface {
95
+ return new Interface(_abi) as NeutralsSelectionInterface;
96
+ }
97
+ static connect(
98
+ address: string,
99
+ runner?: ContractRunner | null
100
+ ): NeutralsSelection {
101
+ return new Contract(address, _abi, runner) as unknown as NeutralsSelection;
102
+ }
103
+ }
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export { Errors__factory } from "./Errors__factory";
5
+ export { NeutralsSelection__factory } from "./NeutralsSelection__factory";
@@ -0,0 +1,353 @@
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
+ MockGovernance,
14
+ MockGovernanceInterface,
15
+ } from "../../../contracts/mocks/MockGovernance";
16
+
17
+ const _abi = [
18
+ {
19
+ inputs: [],
20
+ name: "_lastCall",
21
+ outputs: [
22
+ {
23
+ internalType: "address",
24
+ name: "requester",
25
+ type: "address",
26
+ },
27
+ {
28
+ internalType: "uint256",
29
+ name: "serviceFee",
30
+ type: "uint256",
31
+ },
32
+ {
33
+ internalType: "uint256",
34
+ name: "neutralsNumber",
35
+ type: "uint256",
36
+ },
37
+ {
38
+ internalType: "string",
39
+ name: "additionalLink",
40
+ type: "string",
41
+ },
42
+ {
43
+ internalType: "bytes",
44
+ name: "data",
45
+ type: "bytes",
46
+ },
47
+ ],
48
+ stateMutability: "view",
49
+ type: "function",
50
+ },
51
+ {
52
+ inputs: [],
53
+ name: "_parametersRegistry",
54
+ outputs: [
55
+ {
56
+ internalType: "address",
57
+ name: "",
58
+ type: "address",
59
+ },
60
+ ],
61
+ stateMutability: "view",
62
+ type: "function",
63
+ },
64
+ {
65
+ inputs: [],
66
+ name: "_processServiceRequestResult",
67
+ outputs: [
68
+ {
69
+ internalType: "bool",
70
+ name: "",
71
+ type: "bool",
72
+ },
73
+ ],
74
+ stateMutability: "view",
75
+ type: "function",
76
+ },
77
+ {
78
+ inputs: [],
79
+ name: "_systemToken",
80
+ outputs: [
81
+ {
82
+ internalType: "address",
83
+ name: "",
84
+ type: "address",
85
+ },
86
+ ],
87
+ stateMutability: "view",
88
+ type: "function",
89
+ },
90
+ {
91
+ inputs: [],
92
+ name: "getLastProcessServiceRequestCall",
93
+ outputs: [
94
+ {
95
+ components: [
96
+ {
97
+ internalType: "address",
98
+ name: "requester",
99
+ type: "address",
100
+ },
101
+ {
102
+ internalType: "uint256",
103
+ name: "serviceFee",
104
+ type: "uint256",
105
+ },
106
+ {
107
+ internalType: "uint256",
108
+ name: "neutralsNumber",
109
+ type: "uint256",
110
+ },
111
+ {
112
+ internalType: "string",
113
+ name: "additionalLink",
114
+ type: "string",
115
+ },
116
+ {
117
+ internalType: "bytes",
118
+ name: "data",
119
+ type: "bytes",
120
+ },
121
+ ],
122
+ internalType: "struct MockGovernance.ServiceRequestCall",
123
+ name: "",
124
+ type: "tuple",
125
+ },
126
+ ],
127
+ stateMutability: "view",
128
+ type: "function",
129
+ },
130
+ {
131
+ inputs: [],
132
+ name: "getParametersRegistry",
133
+ outputs: [
134
+ {
135
+ internalType: "address",
136
+ name: "",
137
+ type: "address",
138
+ },
139
+ ],
140
+ stateMutability: "view",
141
+ type: "function",
142
+ },
143
+ {
144
+ inputs: [],
145
+ name: "getSystemToken",
146
+ outputs: [
147
+ {
148
+ internalType: "address",
149
+ name: "",
150
+ type: "address",
151
+ },
152
+ ],
153
+ stateMutability: "view",
154
+ type: "function",
155
+ },
156
+ {
157
+ inputs: [
158
+ {
159
+ internalType: "address",
160
+ name: "requester_",
161
+ type: "address",
162
+ },
163
+ {
164
+ internalType: "uint256",
165
+ name: "serviceFee_",
166
+ type: "uint256",
167
+ },
168
+ {
169
+ internalType: "uint256",
170
+ name: "neutralsNumber_",
171
+ type: "uint256",
172
+ },
173
+ {
174
+ internalType: "string",
175
+ name: "additionalLink_",
176
+ type: "string",
177
+ },
178
+ {
179
+ internalType: "bytes",
180
+ name: "data_",
181
+ type: "bytes",
182
+ },
183
+ ],
184
+ name: "processServiceRequest",
185
+ outputs: [
186
+ {
187
+ internalType: "bool",
188
+ name: "",
189
+ type: "bool",
190
+ },
191
+ ],
192
+ stateMutability: "payable",
193
+ type: "function",
194
+ },
195
+ {
196
+ inputs: [
197
+ {
198
+ internalType: "uint256",
199
+ name: "proposalId_",
200
+ type: "uint256",
201
+ },
202
+ {
203
+ components: [
204
+ {
205
+ components: [
206
+ {
207
+ internalType: "enum IGovernance.OperationType",
208
+ name: "operation_",
209
+ type: "uint8",
210
+ },
211
+ {
212
+ internalType: "address",
213
+ name: "to_",
214
+ type: "address",
215
+ },
216
+ {
217
+ internalType: "bytes",
218
+ name: "data_",
219
+ type: "bytes",
220
+ },
221
+ {
222
+ internalType: "uint256",
223
+ name: "value_",
224
+ type: "uint256",
225
+ },
226
+ ],
227
+ internalType: "struct IGovernance.OperationData[]",
228
+ name: "operations",
229
+ type: "tuple[]",
230
+ },
231
+ ],
232
+ internalType: "struct IGovernance.OperationBundle",
233
+ name: "operationBundle_",
234
+ type: "tuple",
235
+ },
236
+ ],
237
+ name: "proposeOperations",
238
+ outputs: [],
239
+ stateMutability: "nonpayable",
240
+ type: "function",
241
+ },
242
+ {
243
+ inputs: [
244
+ {
245
+ internalType: "address",
246
+ name: "registry_",
247
+ type: "address",
248
+ },
249
+ ],
250
+ name: "setParametersRegistry",
251
+ outputs: [],
252
+ stateMutability: "nonpayable",
253
+ type: "function",
254
+ },
255
+ {
256
+ inputs: [
257
+ {
258
+ internalType: "bool",
259
+ name: "result_",
260
+ type: "bool",
261
+ },
262
+ ],
263
+ name: "setProcessServiceRequestResult",
264
+ outputs: [],
265
+ stateMutability: "nonpayable",
266
+ type: "function",
267
+ },
268
+ {
269
+ inputs: [
270
+ {
271
+ internalType: "address",
272
+ name: "token_",
273
+ type: "address",
274
+ },
275
+ ],
276
+ name: "setSystemToken",
277
+ outputs: [],
278
+ stateMutability: "nonpayable",
279
+ type: "function",
280
+ },
281
+ {
282
+ inputs: [
283
+ {
284
+ internalType: "bytes4",
285
+ name: "interfaceId",
286
+ type: "bytes4",
287
+ },
288
+ ],
289
+ name: "supportsInterface",
290
+ outputs: [
291
+ {
292
+ internalType: "bool",
293
+ name: "",
294
+ type: "bool",
295
+ },
296
+ ],
297
+ stateMutability: "view",
298
+ type: "function",
299
+ },
300
+ ] as const;
301
+
302
+ const _bytecode =
303
+ "0x60808060405234601557610a74908161001b8239f35b600080fdfe608080604052600436101561001357600080fd5b60003560e01c908162c12699146107c257816301ffc9a71461076f575080630645e39d146106f45780631065baee146106cb57806315d24904146103eb5780632db8b607146106cb5780637e555c80146106a85780638955e33114610677578063adf499f51461050d578063c729505e14610414578063dae83c43146103eb578063e312d7f2146100e95763eb284bbf146100ad57600080fd5b346100e45760203660031901126100e4576001600160a01b036100ce6107f9565b1660018060a01b03196006541617600655600080f35b600080fd5b60a03660031901126100e4576100fd6107f9565b602435906044356064356001600160401b0381116100e457366023820112156100e4576101349036906024816004013591016109ec565b926084356001600160401b0381116100e457610154903690600401610a32565b926080604051916101648361096f565b6001600160a01b03168083526020830184905260408301859052606083018790529101938452600180546001600160a01b031916909117905560025560035581516001600160401b038111610316576101be60045461080f565b601f811161039c575b50602092601f8211600114610337576101fa9293829160009261032c575b50508160011b916000199060031b1c19161790565b6004555b5180516001600160401b0381116103165761021a60055461080f565b601f81116102d8575b50602091601f82116001146102745761025392600091836102695750508160011b916000199060031b1c19161790565b6005555b602060ff600054166040519015158152f35b0151905083806101e5565b601f198216926005600052806000209160005b8581106102c0575083600195106102a7575b505050811b01600555610257565b015160001960f88460031b161c19169055828080610299565b91926020600181928685015181550194019201610287565b6103069060056000526020600020601f840160051c8101916020851061030c575b601f0160051c0190610a50565b82610223565b90915081906102f9565b634e487b7160e01b600052604160045260246000fd5b0151905084806101e5565b601f198216936004600052806000209160005b868110610384575083600195961061036b575b505050811b016004556101fe565b015160001960f88460031b161c1916905583808061035d565b9192602060018192868501518155019401920161034a565b60046000526103e5907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f840160051c8101916020851061030c57601f0160051c0190610a50565b836101c7565b346100e45760003660031901126100e4576007546040516001600160a01b039091168152602090f35b346100e45760003660031901126100e457606060806040516104358161096f565b6000815260006020820152600060408201528280820152015260405161045a8161096f565b60018060a01b036001541681526002549060208101918252610509600354604083019081526104f66040516104998161049281610849565b038261098a565b60608501908152604051926104b8846104b1816108ea565b038561098a565b608086019384526040519687966020885260018060a01b0390511660208801525160408701525160608601525160a0608086015260c08501906109ab565b9051838203601f190160a08501526109ab565b0390f35b346100e45760403660031901126100e4576024356001600160401b0381116100e457602060031982360301126100e45760405190602082018281106001600160401b03821117610316576040528060040135906001600160401b0382116100e4570190366023830112156100e4576004820135916001600160401b038311610316578260051b90604051936105a5602084018661098a565b845260208401918101602401903682116100e45760248101925b8284106105cb57858552005b83356001600160401b0381116100e4576004908301016080601f1982360301126100e45760405191608083018381106001600160401b0382111761031657604052602082013560028110156100e457835260408201356001600160a01b03811681036100e45760208401526060820135926001600160401b0384116100e4576080602094936106608695863691840101610a32565b6040840152013560608201528152019301926105bf565b346100e45760203660031901126100e4576004358015158091036100e45760ff801960005416911617600055600080f35b346100e45760003660031901126100e457602060ff600054166040519015158152f35b346100e45760003660031901126100e4576006546040516001600160a01b039091168152602090f35b346100e45760003660031901126100e45760018060a01b03600154166002549061050960035461076160405161072d8161049281610849565b6040519261073e846104b1816108ea565b60405196879687526020870152604086015260a0606086015260a08501906109ab565b9083820360808501526109ab565b346100e45760203660031901126100e4576004359063ffffffff60e01b82168092036100e457602091631da32c4160e21b81149081156107b1575b5015158152f35b6301ffc9a760e01b149050836107aa565b346100e45760203660031901126100e4576001600160a01b036107e36107f9565b1660018060a01b03196007541617600755600080f35b600435906001600160a01b03821682036100e457565b90600182811c9216801561083f575b602083101461082957565b634e487b7160e01b600052602260045260246000fd5b91607f169161081e565b600454600092916108598261080f565b80825291600181169081156108ce5750600114610874575050565b600460009081529293509091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8383106108b4575060209250010190565b6001816020929493945483858701015201910191906108a3565b9050602093945060ff929192191683830152151560051b010190565b600554600092916108fa8261080f565b80825291600181169081156108ce5750600114610915575050565b600560009081529293509091907f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b838310610955575060209250010190565b600181602092949394548385870101520191019190610944565b60a081019081106001600160401b0382111761031657604052565b90601f801991011681019081106001600160401b0382111761031657604052565b919082519283825260005b8481106109d7575050826000602080949584010152601f8019910116010190565b806020809284010151828286010152016109b6565b9291926001600160401b0382116103165760405191610a15601f8201601f19166020018461098a565b8294818452818301116100e4578281602093846000960137010152565b9080601f830112156100e457816020610a4d933591016109ec565b90565b818110610a5b575050565b60008155600101610a5056fea164736f6c634300081e000a";
304
+
305
+ type MockGovernanceConstructorParams =
306
+ | [signer?: Signer]
307
+ | ConstructorParameters<typeof ContractFactory>;
308
+
309
+ const isSuperArgs = (
310
+ xs: MockGovernanceConstructorParams
311
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
312
+
313
+ export class MockGovernance__factory extends ContractFactory {
314
+ constructor(...args: MockGovernanceConstructorParams) {
315
+ if (isSuperArgs(args)) {
316
+ super(...args);
317
+ } else {
318
+ super(_abi, _bytecode, args[0]);
319
+ }
320
+ this.contractName = "MockGovernance";
321
+ }
322
+
323
+ override getDeployTransaction(
324
+ overrides?: NonPayableOverrides & { from?: string }
325
+ ): Promise<ContractDeployTransaction> {
326
+ return super.getDeployTransaction(overrides || {});
327
+ }
328
+ override deploy(overrides?: NonPayableOverrides & { from?: string }) {
329
+ return super.deploy(overrides || {}) as Promise<
330
+ MockGovernance & {
331
+ deploymentTransaction(): ContractTransactionResponse;
332
+ }
333
+ >;
334
+ }
335
+ override connect(runner: ContractRunner | null): MockGovernance__factory {
336
+ return super.connect(runner) as MockGovernance__factory;
337
+ }
338
+ static readonly contractName: "MockGovernance";
339
+
340
+ public readonly contractName: "MockGovernance";
341
+
342
+ static readonly bytecode = _bytecode;
343
+ static readonly abi = _abi;
344
+ static createInterface(): MockGovernanceInterface {
345
+ return new Interface(_abi) as MockGovernanceInterface;
346
+ }
347
+ static connect(
348
+ address: string,
349
+ runner?: ContractRunner | null
350
+ ): MockGovernance {
351
+ return new Contract(address, _abi, runner) as unknown as MockGovernance;
352
+ }
353
+ }