@cofhe/mock-contracts 0.2.0 → 0.3.0
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.
- package/CHANGELOG.md +26 -0
- package/README.md +63 -9
- package/contracts/MockACL.sol +4 -0
- package/contracts/MockTaskManager.sol +86 -1
- package/contracts/{MockQueryDecrypter.sol → MockThresholdNetwork.sol} +67 -1
- package/contracts/TestBed.sol +34 -2
- package/contracts/foundry/CoFheTest.sol +47 -27
- package/dist/index.d.mts +14 -11
- package/dist/index.d.ts +14 -11
- package/dist/index.js +397 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +397 -26
- package/dist/index.mjs.map +1 -1
- package/package.json +5 -5
- package/src/MockACL.ts +65 -6
- package/src/MockTaskManager.ts +187 -5
- package/src/MockThresholdNetwork.ts +457 -0
- package/src/MockZkVerifier.ts +5 -6
- package/src/TestBed.ts +35 -13
- package/src/index.ts +1 -1
- package/src/types.ts +12 -5
- package/test/TestBed.t.sol +18 -7
- package/src/MockQueryDecrypter.ts +0 -353
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
// This file is auto-generated by build-artifacts.ts
|
|
2
|
+
import { type MockArtifact } from './types';
|
|
3
|
+
|
|
4
|
+
export const MockThresholdNetworkArtifact = {
|
|
5
|
+
contractName: 'MockThresholdNetwork',
|
|
6
|
+
isFixed: true,
|
|
7
|
+
fixedAddress: '0x0000000000000000000000000000000000005002',
|
|
8
|
+
abi: [
|
|
9
|
+
{
|
|
10
|
+
type: 'function',
|
|
11
|
+
name: 'decodeLowLevelReversion',
|
|
12
|
+
inputs: [
|
|
13
|
+
{
|
|
14
|
+
name: 'data',
|
|
15
|
+
type: 'bytes',
|
|
16
|
+
internalType: 'bytes',
|
|
17
|
+
},
|
|
18
|
+
],
|
|
19
|
+
outputs: [
|
|
20
|
+
{
|
|
21
|
+
name: 'error',
|
|
22
|
+
type: 'string',
|
|
23
|
+
internalType: 'string',
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
stateMutability: 'pure',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
type: 'function',
|
|
30
|
+
name: 'decryptForTxWithPermit',
|
|
31
|
+
inputs: [
|
|
32
|
+
{
|
|
33
|
+
name: 'ctHash',
|
|
34
|
+
type: 'uint256',
|
|
35
|
+
internalType: 'uint256',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'permission',
|
|
39
|
+
type: 'tuple',
|
|
40
|
+
internalType: 'struct Permission',
|
|
41
|
+
components: [
|
|
42
|
+
{
|
|
43
|
+
name: 'issuer',
|
|
44
|
+
type: 'address',
|
|
45
|
+
internalType: 'address',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'expiration',
|
|
49
|
+
type: 'uint64',
|
|
50
|
+
internalType: 'uint64',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: 'recipient',
|
|
54
|
+
type: 'address',
|
|
55
|
+
internalType: 'address',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: 'validatorId',
|
|
59
|
+
type: 'uint256',
|
|
60
|
+
internalType: 'uint256',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: 'validatorContract',
|
|
64
|
+
type: 'address',
|
|
65
|
+
internalType: 'address',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: 'sealingKey',
|
|
69
|
+
type: 'bytes32',
|
|
70
|
+
internalType: 'bytes32',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: 'issuerSignature',
|
|
74
|
+
type: 'bytes',
|
|
75
|
+
internalType: 'bytes',
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: 'recipientSignature',
|
|
79
|
+
type: 'bytes',
|
|
80
|
+
internalType: 'bytes',
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
},
|
|
84
|
+
],
|
|
85
|
+
outputs: [
|
|
86
|
+
{
|
|
87
|
+
name: 'allowed',
|
|
88
|
+
type: 'bool',
|
|
89
|
+
internalType: 'bool',
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: 'error',
|
|
93
|
+
type: 'string',
|
|
94
|
+
internalType: 'string',
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
name: 'decryptedValue',
|
|
98
|
+
type: 'uint256',
|
|
99
|
+
internalType: 'uint256',
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
stateMutability: 'view',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'function',
|
|
106
|
+
name: 'decryptForTxWithoutPermit',
|
|
107
|
+
inputs: [
|
|
108
|
+
{
|
|
109
|
+
name: 'ctHash',
|
|
110
|
+
type: 'uint256',
|
|
111
|
+
internalType: 'uint256',
|
|
112
|
+
},
|
|
113
|
+
],
|
|
114
|
+
outputs: [
|
|
115
|
+
{
|
|
116
|
+
name: 'allowed',
|
|
117
|
+
type: 'bool',
|
|
118
|
+
internalType: 'bool',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
name: 'error',
|
|
122
|
+
type: 'string',
|
|
123
|
+
internalType: 'string',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name: 'decryptedValue',
|
|
127
|
+
type: 'uint256',
|
|
128
|
+
internalType: 'uint256',
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
stateMutability: 'view',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'function',
|
|
135
|
+
name: 'exists',
|
|
136
|
+
inputs: [],
|
|
137
|
+
outputs: [
|
|
138
|
+
{
|
|
139
|
+
name: '',
|
|
140
|
+
type: 'bool',
|
|
141
|
+
internalType: 'bool',
|
|
142
|
+
},
|
|
143
|
+
],
|
|
144
|
+
stateMutability: 'pure',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'function',
|
|
148
|
+
name: 'initialize',
|
|
149
|
+
inputs: [
|
|
150
|
+
{
|
|
151
|
+
name: '_taskManager',
|
|
152
|
+
type: 'address',
|
|
153
|
+
internalType: 'address',
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: '_acl',
|
|
157
|
+
type: 'address',
|
|
158
|
+
internalType: 'address',
|
|
159
|
+
},
|
|
160
|
+
],
|
|
161
|
+
outputs: [],
|
|
162
|
+
stateMutability: 'nonpayable',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
type: 'function',
|
|
166
|
+
name: 'mockAcl',
|
|
167
|
+
inputs: [],
|
|
168
|
+
outputs: [
|
|
169
|
+
{
|
|
170
|
+
name: '',
|
|
171
|
+
type: 'address',
|
|
172
|
+
internalType: 'contract MockACL',
|
|
173
|
+
},
|
|
174
|
+
],
|
|
175
|
+
stateMutability: 'view',
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: 'function',
|
|
179
|
+
name: 'mockQueryDecrypt',
|
|
180
|
+
inputs: [
|
|
181
|
+
{
|
|
182
|
+
name: 'ctHash',
|
|
183
|
+
type: 'uint256',
|
|
184
|
+
internalType: 'uint256',
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
name: '',
|
|
188
|
+
type: 'uint256',
|
|
189
|
+
internalType: 'uint256',
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
name: 'issuer',
|
|
193
|
+
type: 'address',
|
|
194
|
+
internalType: 'address',
|
|
195
|
+
},
|
|
196
|
+
],
|
|
197
|
+
outputs: [
|
|
198
|
+
{
|
|
199
|
+
name: 'allowed',
|
|
200
|
+
type: 'bool',
|
|
201
|
+
internalType: 'bool',
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
name: 'error',
|
|
205
|
+
type: 'string',
|
|
206
|
+
internalType: 'string',
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
name: '',
|
|
210
|
+
type: 'uint256',
|
|
211
|
+
internalType: 'uint256',
|
|
212
|
+
},
|
|
213
|
+
],
|
|
214
|
+
stateMutability: 'view',
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
type: 'function',
|
|
218
|
+
name: 'mockTaskManager',
|
|
219
|
+
inputs: [],
|
|
220
|
+
outputs: [
|
|
221
|
+
{
|
|
222
|
+
name: '',
|
|
223
|
+
type: 'address',
|
|
224
|
+
internalType: 'contract MockTaskManager',
|
|
225
|
+
},
|
|
226
|
+
],
|
|
227
|
+
stateMutability: 'view',
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
type: 'function',
|
|
231
|
+
name: 'queryDecrypt',
|
|
232
|
+
inputs: [
|
|
233
|
+
{
|
|
234
|
+
name: 'ctHash',
|
|
235
|
+
type: 'uint256',
|
|
236
|
+
internalType: 'uint256',
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
name: '',
|
|
240
|
+
type: 'uint256',
|
|
241
|
+
internalType: 'uint256',
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
name: 'permission',
|
|
245
|
+
type: 'tuple',
|
|
246
|
+
internalType: 'struct Permission',
|
|
247
|
+
components: [
|
|
248
|
+
{
|
|
249
|
+
name: 'issuer',
|
|
250
|
+
type: 'address',
|
|
251
|
+
internalType: 'address',
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
name: 'expiration',
|
|
255
|
+
type: 'uint64',
|
|
256
|
+
internalType: 'uint64',
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
name: 'recipient',
|
|
260
|
+
type: 'address',
|
|
261
|
+
internalType: 'address',
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
name: 'validatorId',
|
|
265
|
+
type: 'uint256',
|
|
266
|
+
internalType: 'uint256',
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
name: 'validatorContract',
|
|
270
|
+
type: 'address',
|
|
271
|
+
internalType: 'address',
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
name: 'sealingKey',
|
|
275
|
+
type: 'bytes32',
|
|
276
|
+
internalType: 'bytes32',
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
name: 'issuerSignature',
|
|
280
|
+
type: 'bytes',
|
|
281
|
+
internalType: 'bytes',
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
name: 'recipientSignature',
|
|
285
|
+
type: 'bytes',
|
|
286
|
+
internalType: 'bytes',
|
|
287
|
+
},
|
|
288
|
+
],
|
|
289
|
+
},
|
|
290
|
+
],
|
|
291
|
+
outputs: [
|
|
292
|
+
{
|
|
293
|
+
name: 'allowed',
|
|
294
|
+
type: 'bool',
|
|
295
|
+
internalType: 'bool',
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
name: 'error',
|
|
299
|
+
type: 'string',
|
|
300
|
+
internalType: 'string',
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
name: '',
|
|
304
|
+
type: 'uint256',
|
|
305
|
+
internalType: 'uint256',
|
|
306
|
+
},
|
|
307
|
+
],
|
|
308
|
+
stateMutability: 'view',
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
type: 'function',
|
|
312
|
+
name: 'querySealOutput',
|
|
313
|
+
inputs: [
|
|
314
|
+
{
|
|
315
|
+
name: 'ctHash',
|
|
316
|
+
type: 'uint256',
|
|
317
|
+
internalType: 'uint256',
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
name: '',
|
|
321
|
+
type: 'uint256',
|
|
322
|
+
internalType: 'uint256',
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
name: 'permission',
|
|
326
|
+
type: 'tuple',
|
|
327
|
+
internalType: 'struct Permission',
|
|
328
|
+
components: [
|
|
329
|
+
{
|
|
330
|
+
name: 'issuer',
|
|
331
|
+
type: 'address',
|
|
332
|
+
internalType: 'address',
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
name: 'expiration',
|
|
336
|
+
type: 'uint64',
|
|
337
|
+
internalType: 'uint64',
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
name: 'recipient',
|
|
341
|
+
type: 'address',
|
|
342
|
+
internalType: 'address',
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
name: 'validatorId',
|
|
346
|
+
type: 'uint256',
|
|
347
|
+
internalType: 'uint256',
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
name: 'validatorContract',
|
|
351
|
+
type: 'address',
|
|
352
|
+
internalType: 'address',
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
name: 'sealingKey',
|
|
356
|
+
type: 'bytes32',
|
|
357
|
+
internalType: 'bytes32',
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
name: 'issuerSignature',
|
|
361
|
+
type: 'bytes',
|
|
362
|
+
internalType: 'bytes',
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
name: 'recipientSignature',
|
|
366
|
+
type: 'bytes',
|
|
367
|
+
internalType: 'bytes',
|
|
368
|
+
},
|
|
369
|
+
],
|
|
370
|
+
},
|
|
371
|
+
],
|
|
372
|
+
outputs: [
|
|
373
|
+
{
|
|
374
|
+
name: 'allowed',
|
|
375
|
+
type: 'bool',
|
|
376
|
+
internalType: 'bool',
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
name: 'error',
|
|
380
|
+
type: 'string',
|
|
381
|
+
internalType: 'string',
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
name: '',
|
|
385
|
+
type: 'bytes32',
|
|
386
|
+
internalType: 'bytes32',
|
|
387
|
+
},
|
|
388
|
+
],
|
|
389
|
+
stateMutability: 'view',
|
|
390
|
+
},
|
|
391
|
+
{
|
|
392
|
+
type: 'function',
|
|
393
|
+
name: 'seal',
|
|
394
|
+
inputs: [
|
|
395
|
+
{
|
|
396
|
+
name: 'input',
|
|
397
|
+
type: 'uint256',
|
|
398
|
+
internalType: 'uint256',
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
name: 'key',
|
|
402
|
+
type: 'bytes32',
|
|
403
|
+
internalType: 'bytes32',
|
|
404
|
+
},
|
|
405
|
+
],
|
|
406
|
+
outputs: [
|
|
407
|
+
{
|
|
408
|
+
name: '',
|
|
409
|
+
type: 'bytes32',
|
|
410
|
+
internalType: 'bytes32',
|
|
411
|
+
},
|
|
412
|
+
],
|
|
413
|
+
stateMutability: 'pure',
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
type: 'function',
|
|
417
|
+
name: 'unseal',
|
|
418
|
+
inputs: [
|
|
419
|
+
{
|
|
420
|
+
name: 'hashed',
|
|
421
|
+
type: 'bytes32',
|
|
422
|
+
internalType: 'bytes32',
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
name: 'key',
|
|
426
|
+
type: 'bytes32',
|
|
427
|
+
internalType: 'bytes32',
|
|
428
|
+
},
|
|
429
|
+
],
|
|
430
|
+
outputs: [
|
|
431
|
+
{
|
|
432
|
+
name: '',
|
|
433
|
+
type: 'uint256',
|
|
434
|
+
internalType: 'uint256',
|
|
435
|
+
},
|
|
436
|
+
],
|
|
437
|
+
stateMutability: 'pure',
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
type: 'error',
|
|
441
|
+
name: 'NotAllowed',
|
|
442
|
+
inputs: [],
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
type: 'error',
|
|
446
|
+
name: 'SealingKeyInvalid',
|
|
447
|
+
inputs: [],
|
|
448
|
+
},
|
|
449
|
+
{
|
|
450
|
+
type: 'error',
|
|
451
|
+
name: 'SealingKeyMissing',
|
|
452
|
+
inputs: [],
|
|
453
|
+
},
|
|
454
|
+
],
|
|
455
|
+
deployedBytecode:
|
|
456
|
+
'0x608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c80638a5c8c7f1161006f5780638a5c8c7f1461018e5780638ca07b48146101be578063a02eb534146101f0578063a0639f5414610222578063b4bc28f814610254578063ff6957d314610286576100b2565b806309ba3156146100b65780631a1992a9146100e8578063267c4ae414610118578063485cc955146101365780634cdc014d146101525780637e0f4b5b14610170575b5f5ffd5b6100d060048036038101906100cb9190611723565b6102b6565b6040516100df93929190611818565b60405180910390f35b61010260048036038101906100fd9190611854565b610599565b60405161010f9190611892565b60405180910390f35b6101206105a7565b60405161012d91906118ab565b60405180910390f35b610150600480360381019061014b91906118c4565b6105af565b005b61015a610632565b604051610167919061195d565b60405180910390f35b610178610657565b6040516101859190611996565b60405180910390f35b6101a860048036038101906101a391906119af565b61067b565b6040516101b591906119fc565b60405180910390f35b6101d860048036038101906101d39190611a15565b610689565b6040516101e793929190611a6f565b60405180910390f35b61020a60048036038101906102059190611aab565b6107eb565b60405161021993929190611a6f565b60405180910390f35b61023c60048036038101906102379190611723565b610a7a565b60405161024b93929190611a6f565b60405180910390f35b61026e60048036038101906102699190611afb565b610d04565b60405161027d93929190611a6f565b60405180910390f35b6102a0600480360381019061029b9190611b26565b610deb565b6040516102ad9190611b6d565b60405180910390f35b5f60605f5f5f1b8460a00151036102f9576040517fb78926d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ae79f04a86896040518363ffffffff1660e01b8152600401610356929190611ccf565b602060405180830381865afa92505050801561039057506040513d601f19601f8201168201806040525081019061038d9190611d27565b60015b61047c5761039c611d5e565b806308c379a0036103cd57506103b0611d7d565b806103bb5750610432565b5f815f5f1b9450945094505050610590565b634e487b7103610432576103df611e0c565b906103ea5750610432565b5f5f5f1b6040518060400160405280600581526020017f50616e6963000000000000000000000000000000000000000000000000000000815250909450945094505050610590565b3d805f811461045c576040519150601f19603f3d011682016040523d82523d5f602084013e610461565b606091505b505f61046c82610deb565b5f5f1b9450945094505050610590565b80915050806104cc575f5f5f1b6040518060400160405280600a81526020017f4e6f74416c6c6f776564000000000000000000000000000000000000000000008152509093509350935050610590565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631c76642b896040518263ffffffff1660e01b815260040161052691906119fc565b602060405180830381865afa158015610541573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105659190611e3e565b90506001610577828860a00151610599565b60405180602001604052805f8152509094509450945050505b93509350939050565b5f81835f1b18905092915050565b5f6001905090565b815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f8183185f1c905092915050565b5f60605f5f73ffffffffffffffffffffffffffffffffffffffff16845f015173ffffffffffffffffffffffffffffffffffffffff1603610707575f5f6040518060400160405280601181526020017f5065726d697373696f6e4d697373696e67000000000000000000000000000000815250909250925092506107e4565b5f5f6107138787611027565b915091508161072c575f815f94509450945050506107e4565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631c76642b896040518263ffffffff1660e01b815260040161078691906119fc565b602060405180830381865afa1580156107a1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107c59190611e3e565b905060018160405180602001604052805f815250909550955095505050505b9250925092565b5f60605f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635faa299a88876040518363ffffffff1660e01b815260040161084c929190611e78565b602060405180830381865afa92505050801561088657506040513d601f19601f820116820180604052508101906108839190611d27565b60015b61096c57610892611d5e565b806308c379a0036108c157506108a6611d7d565b806108b15750610924565b5f815f9450945094505050610a71565b634e487b7103610924576108d3611e0c565b906108de5750610924565b5f5f6040518060400160405280600581526020017f50616e6963000000000000000000000000000000000000000000000000000000815250909450945094505050610a71565b3d805f811461094e576040519150601f19603f3d011682016040523d82523d5f602084013e610953565b606091505b505f61095e82610deb565b5f9450945094505050610a71565b80915050806109ba575f5f6040518060400160405280600a81526020017f4e6f74416c6c6f776564000000000000000000000000000000000000000000008152509093509350935050610a71565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631c76642b896040518263ffffffff1660e01b8152600401610a1491906119fc565b602060405180830381865afa158015610a2f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a539190611e3e565b905060018160405180602001604052805f8152509094509450945050505b93509350939050565b5f60605f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ae79f04a86896040518363ffffffff1660e01b8152600401610adb929190611ccf565b602060405180830381865afa925050508015610b1557506040513d601f19601f82011682018060405250810190610b129190611d27565b60015b610bfb57610b21611d5e565b806308c379a003610b505750610b35611d7d565b80610b405750610bb3565b5f815f9450945094505050610cfb565b634e487b7103610bb357610b62611e0c565b90610b6d5750610bb3565b5f5f6040518060400160405280600581526020017f50616e6963000000000000000000000000000000000000000000000000000000815250909450945094505050610cfb565b3d805f8114610bdd576040519150601f19603f3d011682016040523d82523d5f602084013e610be2565b606091505b505f610bed82610deb565b5f9450945094505050610cfb565b8091505080610c49575f5f6040518060400160405280600a81526020017f4e6f74416c6c6f776564000000000000000000000000000000000000000000008152509093509350935050610cfb565b60015f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631c76642b896040518263ffffffff1660e01b8152600401610ca491906119fc565b602060405180830381865afa158015610cbf573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce39190611e3e565b60405180602001604052805f81525090935093509350505b93509350939050565b5f60605f5f5f610d13866111fe565b9150915081610d2c575f815f9450945094505050610de4565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631c76642b886040518263ffffffff1660e01b8152600401610d8691906119fc565b602060405180830381865afa158015610da1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dc59190611e3e565b905060018160405180602001604052805f815250909550955095505050505b9193909250565b60605f82610df890611ef9565b905063ed0764a160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610e84576040518060400160405280601981526020017f5065726d697373696f6e496e76616c69645f4578706972656400000000000000815250915050611022565b634c40eccb60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610ef157604051806060016040528060218152602001611f8460219139915050611022565b638e143bf760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610f5e57604051806060016040528060248152602001611f6060249139915050611022565b63cbd3a96660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610fe8576040518060400160405280601a81526020017f5065726d697373696f6e496e76616c69645f44697361626c6564000000000000815250915050611022565b6040518060400160405280600f81526020017f4c6f77204c6576656c204572726f7200000000000000000000000000000000008152509150505b919050565b5f60605f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ae79f04a84866040518363ffffffff1660e01b8152600401611085929190611ccf565b602060405180830381865afa9250505080156110bf57506040513d601f19601f820116820180604052508101906110bc9190611d27565b60015b611198576110cb611d5e565b806308c379a0036110f657506110df611d7d565b806110ea5750611154565b5f8192509250506111f7565b634e487b710361115457611108611e0c565b906111135750611154565b5f6040518060400160405280600581526020017f50616e696300000000000000000000000000000000000000000000000000000081525092509250506111f7565b3d805f811461117e576040519150601f19603f3d011682016040523d82523d5f602084013e611183565b606091505b505f61118e82610deb565b92509250506111f7565b80925050816111e1575f6040518060400160405280600a81526020017f4e6f74416c6c6f77656400000000000000000000000000000000000000000000815250915091506111f7565b600160405180602001604052805f815250915091505b9250929050565b5f606060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166394d9184c846040518263ffffffff1660e01b815260040161125b91906119fc565b602060405180830381865afa92505050801561129557506040513d601f19601f820116820180604052508101906112929190611d27565b60015b61136e576112a1611d5e565b806308c379a0036112cc57506112b5611d7d565b806112c0575061132a565b5f8192509250506113cd565b634e487b710361132a576112de611e0c565b906112e9575061132a565b5f6040518060400160405280600581526020017f50616e696300000000000000000000000000000000000000000000000000000081525092509250506113cd565b3d805f8114611354576040519150601f19603f3d011682016040523d82523d5f602084013e611359565b606091505b505f61136482610deb565b92509250506113cd565b80925050816113b7575f6040518060400160405280600a81526020017f4e6f74416c6c6f77656400000000000000000000000000000000000000000000815250915091506113cd565b600160405180602001604052805f815250915091505b915091565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b6113f5816113e3565b81146113ff575f5ffd5b50565b5f81359050611410816113ec565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6114608261141a565b810181811067ffffffffffffffff8211171561147f5761147e61142a565b5b80604052505050565b5f6114916113d2565b905061149d8282611457565b919050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114cf826114a6565b9050919050565b6114df816114c5565b81146114e9575f5ffd5b50565b5f813590506114fa816114d6565b92915050565b5f67ffffffffffffffff82169050919050565b61151c81611500565b8114611526575f5ffd5b50565b5f8135905061153781611513565b92915050565b5f819050919050565b61154f8161153d565b8114611559575f5ffd5b50565b5f8135905061156a81611546565b92915050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff8211156115925761159161142a565b5b61159b8261141a565b9050602081019050919050565b828183375f83830152505050565b5f6115c86115c384611578565b611488565b9050828152602081018484840111156115e4576115e3611574565b5b6115ef8482856115a8565b509392505050565b5f82601f83011261160b5761160a611570565b5b813561161b8482602086016115b6565b91505092915050565b5f610100828403121561163a57611639611416565b5b611645610100611488565b90505f611654848285016114ec565b5f83015250602061166784828501611529565b602083015250604061167b848285016114ec565b604083015250606061168f84828501611402565b60608301525060806116a3848285016114ec565b60808301525060a06116b78482850161155c565b60a08301525060c082013567ffffffffffffffff8111156116db576116da6114a2565b5b6116e7848285016115f7565b60c08301525060e082013567ffffffffffffffff81111561170b5761170a6114a2565b5b611717848285016115f7565b60e08301525092915050565b5f5f5f6060848603121561173a576117396113db565b5b5f61174786828701611402565b935050602061175886828701611402565b925050604084013567ffffffffffffffff811115611779576117786113df565b5b61178586828701611624565b9150509250925092565b5f8115159050919050565b6117a38161178f565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6117db826117a9565b6117e581856117b3565b93506117f58185602086016117c3565b6117fe8161141a565b840191505092915050565b6118128161153d565b82525050565b5f60608201905061182b5f83018661179a565b818103602083015261183d81856117d1565b905061184c6040830184611809565b949350505050565b5f5f6040838503121561186a576118696113db565b5b5f61187785828601611402565b92505060206118888582860161155c565b9150509250929050565b5f6020820190506118a55f830184611809565b92915050565b5f6020820190506118be5f83018461179a565b92915050565b5f5f604083850312156118da576118d96113db565b5b5f6118e7858286016114ec565b92505060206118f8858286016114ec565b9150509250929050565b5f819050919050565b5f61192561192061191b846114a6565b611902565b6114a6565b9050919050565b5f6119368261190b565b9050919050565b5f6119478261192c565b9050919050565b6119578161193d565b82525050565b5f6020820190506119705f83018461194e565b92915050565b5f6119808261192c565b9050919050565b61199081611976565b82525050565b5f6020820190506119a95f830184611987565b92915050565b5f5f604083850312156119c5576119c46113db565b5b5f6119d28582860161155c565b92505060206119e38582860161155c565b9150509250929050565b6119f6816113e3565b82525050565b5f602082019050611a0f5f8301846119ed565b92915050565b5f5f60408385031215611a2b57611a2a6113db565b5b5f611a3885828601611402565b925050602083013567ffffffffffffffff811115611a5957611a586113df565b5b611a6585828601611624565b9150509250929050565b5f606082019050611a825f83018661179a565b8181036020830152611a9481856117d1565b9050611aa360408301846119ed565b949350505050565b5f5f5f60608486031215611ac257611ac16113db565b5b5f611acf86828701611402565b9350506020611ae086828701611402565b9250506040611af1868287016114ec565b9150509250925092565b5f60208284031215611b1057611b0f6113db565b5b5f611b1d84828501611402565b91505092915050565b5f60208284031215611b3b57611b3a6113db565b5b5f82013567ffffffffffffffff811115611b5857611b576113df565b5b611b64848285016115f7565b91505092915050565b5f6020820190508181035f830152611b8581846117d1565b905092915050565b611b96816114c5565b82525050565b611ba581611500565b82525050565b611bb4816113e3565b82525050565b611bc38161153d565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f611bed82611bc9565b611bf78185611bd3565b9350611c078185602086016117c3565b611c108161141a565b840191505092915050565b5f61010083015f830151611c315f860182611b8d565b506020830151611c446020860182611b9c565b506040830151611c576040860182611b8d565b506060830151611c6a6060860182611bab565b506080830151611c7d6080860182611b8d565b5060a0830151611c9060a0860182611bba565b5060c083015184820360c0860152611ca88282611be3565b91505060e083015184820360e0860152611cc28282611be3565b9150508091505092915050565b5f6040820190508181035f830152611ce78185611c1b565b9050611cf660208301846119ed565b9392505050565b611d068161178f565b8114611d10575f5ffd5b50565b5f81519050611d2181611cfd565b92915050565b5f60208284031215611d3c57611d3b6113db565b5b5f611d4984828501611d13565b91505092915050565b5f8160e01c9050919050565b5f60033d1115611d7a5760045f5f3e611d775f51611d52565b90505b90565b5f60443d10611e0957611d8e6113d2565b60043d036004823e80513d602482011167ffffffffffffffff82111715611db6575050611e09565b808201805167ffffffffffffffff811115611dd45750505050611e09565b80602083010160043d038501811115611df1575050505050611e09565b611e0082602001850186611457565b82955050505050505b90565b5f5f60233d1115611e2657602060045f3e600191505f5190505b9091565b5f81519050611e38816113ec565b92915050565b5f60208284031215611e5357611e526113db565b5b5f611e6084828501611e2a565b91505092915050565b611e72816114c5565b82525050565b5f604082019050611e8b5f8301856119ed565b611e986020830184611e69565b9392505050565b5f819050602082019050919050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b5f611ee48251611eae565b80915050919050565b5f82821b905092915050565b5f611f0382611bc9565b82611f0d84611e9f565b9050611f1881611ed9565b92506004821015611f5857611f537fffffffff0000000000000000000000000000000000000000000000000000000083600403600802611eed565b831692505b505091905056fe5065726d697373696f6e496e76616c69645f526563697069656e745369676e61747572655065726d697373696f6e496e76616c69645f4973737565725369676e6174757265a26469706673582212205d3131bc17ef8c3447a8a36901e39ff4b2e9d6384495205d4eb336fcc5183e7364736f6c63430008210033',
|
|
457
|
+
} satisfies MockArtifact;
|
package/src/MockZkVerifier.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// This file is auto-generated by build-artifacts.ts
|
|
2
|
-
import { type
|
|
2
|
+
import { type MockArtifact } from './types';
|
|
3
3
|
|
|
4
4
|
export const MockZkVerifierArtifact = {
|
|
5
5
|
contractName: 'MockZkVerifier',
|
|
6
|
-
|
|
6
|
+
isFixed: true,
|
|
7
|
+
fixedAddress: '0x0000000000000000000000000000000000005001',
|
|
7
8
|
abi: [
|
|
8
9
|
{
|
|
9
10
|
type: 'function',
|
|
@@ -261,7 +262,5 @@ export const MockZkVerifierArtifact = {
|
|
|
261
262
|
},
|
|
262
263
|
],
|
|
263
264
|
deployedBytecode:
|
|
264
|
-
'
|
|
265
|
-
|
|
266
|
-
'0x60806040525f5f553480156011575f5ffd5b5061116a8061001f5f395ff3fe608060405234801561000f575f5ffd5b506004361061007b575f3560e01c8063772de59611610059578063772de596146100e9578063a2616ba914610119578063a9f046cd14610149578063d2a0693e146101655761007b565b8063267c4ae41461007f5780635946761f1461009d57806366dfcfc6146100cd575b5f5ffd5b610087610195565b6040516100949190610750565b60405180910390f35b6100b760048036038101906100b29190610a4d565b61019d565b6040516100c49190610c95565b60405180910390f35b6100e760048036038101906100e29190610cb5565b6102b5565b005b61010360048036038101906100fe9190610a4d565b61034d565b6040516101109190610d9b565b60405180910390f35b610133600480360381019061012e9190610dbb565b61045b565b6040516101409190610e92565b60405180910390f35b610163600480360381019061015e9190610eb2565b6104bd565b005b61017f600480360381019061017a9190610dbb565b61051b565b60405161018c9190610f37565b60405180910390f35b5f6001905090565b606085518551146101da576040517ff34cfab600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845167ffffffffffffffff8111156101f5576101f461078e565b5b60405190808252806020026020018201604052801561022e57816020015b61021b61070b565b8152602001906001900390816102135790505b5090505f5f90505b85518110156102ab5761028087828151811061025557610254610f50565b5b60200260200101518783815181106102705761026f610f50565b5b602002602001015187878761045b565b82828151811061029357610292610f50565b5b60200260200101819052508080600101915050610236565b5095945050505050565b73ea30c4b8b44078bbf8a6ef5b9f1ec1626c7848d973ffffffffffffffffffffffffffffffffffffffff166315a486fe83836040518363ffffffff1660e01b8152600401610304929190610f7d565b5f604051808303815f87803b15801561031b575f5ffd5b505af115801561032d573d5f5f3e3d5ffd5b5050505060015f5f8282546103429190610fd1565b925050819055505050565b6060855185511461038a576040517ff34cfab600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845167ffffffffffffffff8111156103a5576103a461078e565b5b6040519080825280602002602001820160405280156103d35781602001602082028036833780820191505090505b5090505f5f90505b8551811015610451576104258782815181106103fa576103f9610f50565b5b602002602001015187838151811061041557610414610f50565b5b602002602001015187878761051b565b82828151811061043857610437610f50565b5b60200260200101818152505080806001019150506103db565b5095945050505050565b61046361070b565b5f6104708587868a610533565b905061047c81886102b5565b60405180608001604052808281526020018560ff1681526020018760ff16815260200160405180602001604052805f81525081525091505095945050505050565b5f5f90505b8251811015610516576105098382815181106104e1576104e0610f50565b5b60200260200101518383815181106104fc576104fb610f50565b5b60200260200101516102b5565b80806001019150506104c2565b505050565b5f61052884868589610533565b905095945050505050565b5f5f61053e83610611565b60405160200161054e919061103e565b60405160208183030381529060405290508061057f8773ffffffffffffffffffffffffffffffffffffffff16610611565b604051602001610590929190611054565b6040516020818303038152906040529050805f546040516020016105b49190611097565b604051602081830303815290604052805190602001206040516020016105db9291906110da565b60405160208183030381529060405290505f81805190602001209050610605815f1c86885f610673565b92505050949350505050565b60605f602067ffffffffffffffff81111561062f5761062e61078e565b5b6040519080825280601f01601f1916602001820160405280156106615781602001600182028036833780820191505090505b50905082602082015280915050919050565b5f61ffff80167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6106a49190611101565b851690505f8460ff1660086106b985876106cc565b901b179050808217915050949350505050565b5f600160ff8016901c60ff168260ff1616836106e8575f610702565b600160ff8016901c60ff1660ff80166107019190611101565b5b17905092915050565b60405180608001604052805f81526020015f60ff1681526020015f60ff168152602001606081525090565b5f8115159050919050565b61074a81610736565b82525050565b5f6020820190506107635f830184610741565b92915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6107c48261077e565b810181811067ffffffffffffffff821117156107e3576107e261078e565b5b80604052505050565b5f6107f5610769565b905061080182826107bb565b919050565b5f67ffffffffffffffff8211156108205761081f61078e565b5b602082029050602081019050919050565b5f5ffd5b5f819050919050565b61084781610835565b8114610851575f5ffd5b50565b5f813590506108628161083e565b92915050565b5f61087a61087584610806565b6107ec565b9050808382526020820190506020840283018581111561089d5761089c610831565b5b835b818110156108c657806108b28882610854565b84526020840193505060208101905061089f565b5050509392505050565b5f82601f8301126108e4576108e361077a565b5b81356108f4848260208601610868565b91505092915050565b5f67ffffffffffffffff8211156109175761091661078e565b5b602082029050602081019050919050565b5f60ff82169050919050565b61093d81610928565b8114610947575f5ffd5b50565b5f8135905061095881610934565b92915050565b5f61097061096b846108fd565b6107ec565b9050808382526020820190506020840283018581111561099357610992610831565b5b835b818110156109bc57806109a8888261094a565b845260208401935050602081019050610995565b5050509392505050565b5f82601f8301126109da576109d961077a565b5b81356109ea84826020860161095e565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a1c826109f3565b9050919050565b610a2c81610a12565b8114610a36575f5ffd5b50565b5f81359050610a4781610a23565b92915050565b5f5f5f5f5f60a08688031215610a6657610a65610772565b5b5f86013567ffffffffffffffff811115610a8357610a82610776565b5b610a8f888289016108d0565b955050602086013567ffffffffffffffff811115610ab057610aaf610776565b5b610abc888289016109c6565b9450506040610acd88828901610a39565b9350506060610ade8882890161094a565b9250506080610aef88828901610854565b9150509295509295909350565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610b2e81610835565b82525050565b610b3d81610928565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610b7582610b43565b610b7f8185610b4d565b9350610b8f818560208601610b5d565b610b988161077e565b840191505092915050565b5f608083015f830151610bb85f860182610b25565b506020830151610bcb6020860182610b34565b506040830151610bde6040860182610b34565b5060608301518482036060860152610bf68282610b6b565b9150508091505092915050565b5f610c0e8383610ba3565b905092915050565b5f602082019050919050565b5f610c2c82610afc565b610c368185610b06565b935083602082028501610c4885610b16565b805f5b85811015610c835784840389528151610c648582610c03565b9450610c6f83610c16565b925060208a01995050600181019050610c4b565b50829750879550505050505092915050565b5f6020820190508181035f830152610cad8184610c22565b905092915050565b5f5f60408385031215610ccb57610cca610772565b5b5f610cd885828601610854565b9250506020610ce985828601610854565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f610d278383610b25565b60208301905092915050565b5f602082019050919050565b5f610d4982610cf3565b610d538185610cfd565b9350610d5e83610d0d565b805f5b83811015610d8e578151610d758882610d1c565b9750610d8083610d33565b925050600181019050610d61565b5085935050505092915050565b5f6020820190508181035f830152610db38184610d3f565b905092915050565b5f5f5f5f5f60a08688031215610dd457610dd3610772565b5b5f610de188828901610854565b9550506020610df28882890161094a565b9450506040610e0388828901610a39565b9350506060610e148882890161094a565b9250506080610e2588828901610854565b9150509295509295909350565b5f608083015f830151610e475f860182610b25565b506020830151610e5a6020860182610b34565b506040830151610e6d6040860182610b34565b5060608301518482036060860152610e858282610b6b565b9150508091505092915050565b5f6020820190508181035f830152610eaa8184610e32565b905092915050565b5f5f60408385031215610ec857610ec7610772565b5b5f83013567ffffffffffffffff811115610ee557610ee4610776565b5b610ef1858286016108d0565b925050602083013567ffffffffffffffff811115610f1257610f11610776565b5b610f1e858286016108d0565b9150509250929050565b610f3181610835565b82525050565b5f602082019050610f4a5f830184610f28565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f604082019050610f905f830185610f28565b610f9d6020830184610f28565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610fdb82610835565b9150610fe683610835565b9250828201905080821115610ffe57610ffd610fa4565b5b92915050565b5f81905092915050565b5f61101882610b43565b6110228185611004565b9350611032818560208601610b5d565b80840191505092915050565b5f611049828461100e565b915081905092915050565b5f61105f828561100e565b915061106b828461100e565b91508190509392505050565b5f819050919050565b61109161108c82610835565b611077565b82525050565b5f6110a28284611080565b60208201915081905092915050565b5f819050919050565b5f819050919050565b6110d46110cf826110b1565b6110ba565b82525050565b5f6110e5828561100e565b91506110f182846110c3565b6020820191508190509392505050565b5f61110b82610835565b915061111683610835565b925082820390508181111561112e5761112d610fa4565b5b9291505056fea2646970667358221220b1548315347fff19febfb4a67e626c11bb208bcfce36ad53d3f7eb402e8d05a964736f6c63430008210033',
|
|
267
|
-
} satisfies MocksArtifact;
|
|
265
|
+
'0x608060405234801561000f575f5ffd5b506004361061007b575f3560e01c8063772de59611610059578063772de596146100e9578063a2616ba914610119578063a9f046cd14610149578063d2a0693e146101655761007b565b8063267c4ae41461007f5780635946761f1461009d57806366dfcfc6146100cd575b5f5ffd5b610087610195565b6040516100949190610750565b60405180910390f35b6100b760048036038101906100b29190610a4d565b61019d565b6040516100c49190610c95565b60405180910390f35b6100e760048036038101906100e29190610cb5565b6102b5565b005b61010360048036038101906100fe9190610a4d565b61034d565b6040516101109190610d9b565b60405180910390f35b610133600480360381019061012e9190610dbb565b61045b565b6040516101409190610e92565b60405180910390f35b610163600480360381019061015e9190610eb2565b6104bd565b005b61017f600480360381019061017a9190610dbb565b61051b565b60405161018c9190610f37565b60405180910390f35b5f6001905090565b606085518551146101da576040517ff34cfab600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845167ffffffffffffffff8111156101f5576101f461078e565b5b60405190808252806020026020018201604052801561022e57816020015b61021b61070b565b8152602001906001900390816102135790505b5090505f5f90505b85518110156102ab5761028087828151811061025557610254610f50565b5b60200260200101518783815181106102705761026f610f50565b5b602002602001015187878761045b565b82828151811061029357610292610f50565b5b60200260200101819052508080600101915050610236565b5095945050505050565b73ea30c4b8b44078bbf8a6ef5b9f1ec1626c7848d973ffffffffffffffffffffffffffffffffffffffff166315a486fe83836040518363ffffffff1660e01b8152600401610304929190610f7d565b5f604051808303815f87803b15801561031b575f5ffd5b505af115801561032d573d5f5f3e3d5ffd5b5050505060015f5f8282546103429190610fd1565b925050819055505050565b6060855185511461038a576040517ff34cfab600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845167ffffffffffffffff8111156103a5576103a461078e565b5b6040519080825280602002602001820160405280156103d35781602001602082028036833780820191505090505b5090505f5f90505b8551811015610451576104258782815181106103fa576103f9610f50565b5b602002602001015187838151811061041557610414610f50565b5b602002602001015187878761051b565b82828151811061043857610437610f50565b5b60200260200101818152505080806001019150506103db565b5095945050505050565b61046361070b565b5f6104708587868a610533565b905061047c81886102b5565b60405180608001604052808281526020018560ff1681526020018760ff16815260200160405180602001604052805f81525081525091505095945050505050565b5f5f90505b8251811015610516576105098382815181106104e1576104e0610f50565b5b60200260200101518383815181106104fc576104fb610f50565b5b60200260200101516102b5565b80806001019150506104c2565b505050565b5f61052884868589610533565b905095945050505050565b5f5f61053e83610611565b60405160200161054e919061103e565b60405160208183030381529060405290508061057f8773ffffffffffffffffffffffffffffffffffffffff16610611565b604051602001610590929190611054565b6040516020818303038152906040529050805f546040516020016105b49190611097565b604051602081830303815290604052805190602001206040516020016105db9291906110da565b60405160208183030381529060405290505f81805190602001209050610605815f1c86885f610673565b92505050949350505050565b60605f602067ffffffffffffffff81111561062f5761062e61078e565b5b6040519080825280601f01601f1916602001820160405280156106615781602001600182028036833780820191505090505b50905082602082015280915050919050565b5f61ffff80167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6106a49190611101565b851690505f8460ff1660086106b985876106cc565b901b179050808217915050949350505050565b5f600160ff8016901c60ff168260ff1616836106e8575f610702565b600160ff8016901c60ff1660ff80166107019190611101565b5b17905092915050565b60405180608001604052805f81526020015f60ff1681526020015f60ff168152602001606081525090565b5f8115159050919050565b61074a81610736565b82525050565b5f6020820190506107635f830184610741565b92915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6107c48261077e565b810181811067ffffffffffffffff821117156107e3576107e261078e565b5b80604052505050565b5f6107f5610769565b905061080182826107bb565b919050565b5f67ffffffffffffffff8211156108205761081f61078e565b5b602082029050602081019050919050565b5f5ffd5b5f819050919050565b61084781610835565b8114610851575f5ffd5b50565b5f813590506108628161083e565b92915050565b5f61087a61087584610806565b6107ec565b9050808382526020820190506020840283018581111561089d5761089c610831565b5b835b818110156108c657806108b28882610854565b84526020840193505060208101905061089f565b5050509392505050565b5f82601f8301126108e4576108e361077a565b5b81356108f4848260208601610868565b91505092915050565b5f67ffffffffffffffff8211156109175761091661078e565b5b602082029050602081019050919050565b5f60ff82169050919050565b61093d81610928565b8114610947575f5ffd5b50565b5f8135905061095881610934565b92915050565b5f61097061096b846108fd565b6107ec565b9050808382526020820190506020840283018581111561099357610992610831565b5b835b818110156109bc57806109a8888261094a565b845260208401935050602081019050610995565b5050509392505050565b5f82601f8301126109da576109d961077a565b5b81356109ea84826020860161095e565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a1c826109f3565b9050919050565b610a2c81610a12565b8114610a36575f5ffd5b50565b5f81359050610a4781610a23565b92915050565b5f5f5f5f5f60a08688031215610a6657610a65610772565b5b5f86013567ffffffffffffffff811115610a8357610a82610776565b5b610a8f888289016108d0565b955050602086013567ffffffffffffffff811115610ab057610aaf610776565b5b610abc888289016109c6565b9450506040610acd88828901610a39565b9350506060610ade8882890161094a565b9250506080610aef88828901610854565b9150509295509295909350565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610b2e81610835565b82525050565b610b3d81610928565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610b7582610b43565b610b7f8185610b4d565b9350610b8f818560208601610b5d565b610b988161077e565b840191505092915050565b5f608083015f830151610bb85f860182610b25565b506020830151610bcb6020860182610b34565b506040830151610bde6040860182610b34565b5060608301518482036060860152610bf68282610b6b565b9150508091505092915050565b5f610c0e8383610ba3565b905092915050565b5f602082019050919050565b5f610c2c82610afc565b610c368185610b06565b935083602082028501610c4885610b16565b805f5b85811015610c835784840389528151610c648582610c03565b9450610c6f83610c16565b925060208a01995050600181019050610c4b565b50829750879550505050505092915050565b5f6020820190508181035f830152610cad8184610c22565b905092915050565b5f5f60408385031215610ccb57610cca610772565b5b5f610cd885828601610854565b9250506020610ce985828601610854565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f610d278383610b25565b60208301905092915050565b5f602082019050919050565b5f610d4982610cf3565b610d538185610cfd565b9350610d5e83610d0d565b805f5b83811015610d8e578151610d758882610d1c565b9750610d8083610d33565b925050600181019050610d61565b5085935050505092915050565b5f6020820190508181035f830152610db38184610d3f565b905092915050565b5f5f5f5f5f60a08688031215610dd457610dd3610772565b5b5f610de188828901610854565b9550506020610df28882890161094a565b9450506040610e0388828901610a39565b9350506060610e148882890161094a565b9250506080610e2588828901610854565b9150509295509295909350565b5f608083015f830151610e475f860182610b25565b506020830151610e5a6020860182610b34565b506040830151610e6d6040860182610b34565b5060608301518482036060860152610e858282610b6b565b9150508091505092915050565b5f6020820190508181035f830152610eaa8184610e32565b905092915050565b5f5f60408385031215610ec857610ec7610772565b5b5f83013567ffffffffffffffff811115610ee557610ee4610776565b5b610ef1858286016108d0565b925050602083013567ffffffffffffffff811115610f1257610f11610776565b5b610f1e858286016108d0565b9150509250929050565b610f3181610835565b82525050565b5f602082019050610f4a5f830184610f28565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f604082019050610f905f830185610f28565b610f9d6020830184610f28565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610fdb82610835565b9150610fe683610835565b9250828201905080821115610ffe57610ffd610fa4565b5b92915050565b5f81905092915050565b5f61101882610b43565b6110228185611004565b9350611032818560208601610b5d565b80840191505092915050565b5f611049828461100e565b915081905092915050565b5f61105f828561100e565b915061106b828461100e565b91508190509392505050565b5f819050919050565b61109161108c82610835565b611077565b82525050565b5f6110a28284611080565b60208201915081905092915050565b5f819050919050565b5f819050919050565b6110d46110cf826110b1565b6110ba565b82525050565b5f6110e5828561100e565b91506110f182846110c3565b6020820191508190509392505050565b5f61110b82610835565b915061111683610835565b925082820390508181111561112e5761112d610fa4565b5b9291505056fea26469706673582212208e282d121e07054ce50ba8f6e513898043efe35dd42bedd7c2de9550e1aab27464736f6c63430008210033',
|
|
266
|
+
} satisfies MockArtifact;
|