@layerzerolabs/onesig-evm 0.0.1

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.
@@ -0,0 +1,579 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "OneSig",
4
+ "sourceName": "contracts/OneSig.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address[]",
10
+ "name": "_signers",
11
+ "type": "address[]"
12
+ },
13
+ {
14
+ "internalType": "uint256",
15
+ "name": "_threshold",
16
+ "type": "uint256"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "_chainId",
21
+ "type": "uint256"
22
+ },
23
+ {
24
+ "internalType": "bytes32",
25
+ "name": "_seed",
26
+ "type": "bytes32"
27
+ }
28
+ ],
29
+ "stateMutability": "nonpayable",
30
+ "type": "constructor"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "ECDSAInvalidSignature",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [
39
+ {
40
+ "internalType": "uint256",
41
+ "name": "length",
42
+ "type": "uint256"
43
+ }
44
+ ],
45
+ "name": "ECDSAInvalidSignatureLength",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [
50
+ {
51
+ "internalType": "bytes32",
52
+ "name": "s",
53
+ "type": "bytes32"
54
+ }
55
+ ],
56
+ "name": "ECDSAInvalidSignatureS",
57
+ "type": "error"
58
+ },
59
+ {
60
+ "inputs": [
61
+ {
62
+ "internalType": "uint256",
63
+ "name": "index",
64
+ "type": "uint256"
65
+ }
66
+ ],
67
+ "name": "ExecutionFailed",
68
+ "type": "error"
69
+ },
70
+ {
71
+ "inputs": [],
72
+ "name": "InvalidProofOrNonce",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [],
77
+ "name": "InvalidSigner",
78
+ "type": "error"
79
+ },
80
+ {
81
+ "inputs": [],
82
+ "name": "MerkleRootExpired",
83
+ "type": "error"
84
+ },
85
+ {
86
+ "inputs": [],
87
+ "name": "OnlyMultiSig",
88
+ "type": "error"
89
+ },
90
+ {
91
+ "inputs": [],
92
+ "name": "SignatureError",
93
+ "type": "error"
94
+ },
95
+ {
96
+ "inputs": [
97
+ {
98
+ "internalType": "address",
99
+ "name": "signer",
100
+ "type": "address"
101
+ }
102
+ ],
103
+ "name": "SignerAlreadyAdded",
104
+ "type": "error"
105
+ },
106
+ {
107
+ "inputs": [
108
+ {
109
+ "internalType": "address",
110
+ "name": "signer",
111
+ "type": "address"
112
+ }
113
+ ],
114
+ "name": "SignerNotFound",
115
+ "type": "error"
116
+ },
117
+ {
118
+ "inputs": [
119
+ {
120
+ "internalType": "uint256",
121
+ "name": "totalSigners",
122
+ "type": "uint256"
123
+ },
124
+ {
125
+ "internalType": "uint256",
126
+ "name": "threshold",
127
+ "type": "uint256"
128
+ }
129
+ ],
130
+ "name": "TotalSignersLessThanThreshold",
131
+ "type": "error"
132
+ },
133
+ {
134
+ "inputs": [],
135
+ "name": "UnsortedSigners",
136
+ "type": "error"
137
+ },
138
+ {
139
+ "inputs": [],
140
+ "name": "ZeroThreshold",
141
+ "type": "error"
142
+ },
143
+ {
144
+ "anonymous": false,
145
+ "inputs": [
146
+ {
147
+ "indexed": false,
148
+ "internalType": "bytes32",
149
+ "name": "seed",
150
+ "type": "bytes32"
151
+ }
152
+ ],
153
+ "name": "SeedSet",
154
+ "type": "event"
155
+ },
156
+ {
157
+ "anonymous": false,
158
+ "inputs": [
159
+ {
160
+ "indexed": false,
161
+ "internalType": "address",
162
+ "name": "signer",
163
+ "type": "address"
164
+ },
165
+ {
166
+ "indexed": false,
167
+ "internalType": "bool",
168
+ "name": "active",
169
+ "type": "bool"
170
+ }
171
+ ],
172
+ "name": "SignerSet",
173
+ "type": "event"
174
+ },
175
+ {
176
+ "anonymous": false,
177
+ "inputs": [
178
+ {
179
+ "indexed": false,
180
+ "internalType": "uint256",
181
+ "name": "threshold",
182
+ "type": "uint256"
183
+ }
184
+ ],
185
+ "name": "ThresholdSet",
186
+ "type": "event"
187
+ },
188
+ {
189
+ "anonymous": false,
190
+ "inputs": [
191
+ {
192
+ "indexed": false,
193
+ "internalType": "bytes32",
194
+ "name": "merkleRoot",
195
+ "type": "bytes32"
196
+ },
197
+ {
198
+ "indexed": false,
199
+ "internalType": "uint256",
200
+ "name": "nonce",
201
+ "type": "uint256"
202
+ }
203
+ ],
204
+ "name": "TransactionExecuted",
205
+ "type": "event"
206
+ },
207
+ {
208
+ "inputs": [],
209
+ "name": "CHAIN_ID",
210
+ "outputs": [
211
+ {
212
+ "internalType": "uint256",
213
+ "name": "",
214
+ "type": "uint256"
215
+ }
216
+ ],
217
+ "stateMutability": "view",
218
+ "type": "function"
219
+ },
220
+ {
221
+ "inputs": [],
222
+ "name": "VERSION",
223
+ "outputs": [
224
+ {
225
+ "internalType": "string",
226
+ "name": "",
227
+ "type": "string"
228
+ }
229
+ ],
230
+ "stateMutability": "view",
231
+ "type": "function"
232
+ },
233
+ {
234
+ "inputs": [
235
+ {
236
+ "internalType": "uint256",
237
+ "name": "_nonce",
238
+ "type": "uint256"
239
+ },
240
+ {
241
+ "components": [
242
+ {
243
+ "internalType": "address",
244
+ "name": "to",
245
+ "type": "address"
246
+ },
247
+ {
248
+ "internalType": "uint256",
249
+ "name": "value",
250
+ "type": "uint256"
251
+ },
252
+ {
253
+ "internalType": "bytes",
254
+ "name": "data",
255
+ "type": "bytes"
256
+ }
257
+ ],
258
+ "internalType": "struct OneSig.Call[]",
259
+ "name": "_calls",
260
+ "type": "tuple[]"
261
+ }
262
+ ],
263
+ "name": "encodeLeaf",
264
+ "outputs": [
265
+ {
266
+ "internalType": "bytes32",
267
+ "name": "",
268
+ "type": "bytes32"
269
+ }
270
+ ],
271
+ "stateMutability": "view",
272
+ "type": "function"
273
+ },
274
+ {
275
+ "inputs": [
276
+ {
277
+ "components": [
278
+ {
279
+ "components": [
280
+ {
281
+ "internalType": "address",
282
+ "name": "to",
283
+ "type": "address"
284
+ },
285
+ {
286
+ "internalType": "uint256",
287
+ "name": "value",
288
+ "type": "uint256"
289
+ },
290
+ {
291
+ "internalType": "bytes",
292
+ "name": "data",
293
+ "type": "bytes"
294
+ }
295
+ ],
296
+ "internalType": "struct OneSig.Call[]",
297
+ "name": "calls",
298
+ "type": "tuple[]"
299
+ },
300
+ {
301
+ "internalType": "bytes32[]",
302
+ "name": "proof",
303
+ "type": "bytes32[]"
304
+ }
305
+ ],
306
+ "internalType": "struct OneSig.Transaction",
307
+ "name": "_transaction",
308
+ "type": "tuple"
309
+ },
310
+ {
311
+ "internalType": "bytes32",
312
+ "name": "_merkleRoot",
313
+ "type": "bytes32"
314
+ },
315
+ {
316
+ "internalType": "uint256",
317
+ "name": "_expiry",
318
+ "type": "uint256"
319
+ },
320
+ {
321
+ "internalType": "bytes",
322
+ "name": "_signatures",
323
+ "type": "bytes"
324
+ }
325
+ ],
326
+ "name": "executeTransaction",
327
+ "outputs": [],
328
+ "stateMutability": "payable",
329
+ "type": "function"
330
+ },
331
+ {
332
+ "inputs": [],
333
+ "name": "getSigners",
334
+ "outputs": [
335
+ {
336
+ "internalType": "address[]",
337
+ "name": "",
338
+ "type": "address[]"
339
+ }
340
+ ],
341
+ "stateMutability": "view",
342
+ "type": "function"
343
+ },
344
+ {
345
+ "inputs": [
346
+ {
347
+ "internalType": "address",
348
+ "name": "_signer",
349
+ "type": "address"
350
+ }
351
+ ],
352
+ "name": "isSigner",
353
+ "outputs": [
354
+ {
355
+ "internalType": "bool",
356
+ "name": "",
357
+ "type": "bool"
358
+ }
359
+ ],
360
+ "stateMutability": "view",
361
+ "type": "function"
362
+ },
363
+ {
364
+ "inputs": [],
365
+ "name": "nonce",
366
+ "outputs": [
367
+ {
368
+ "internalType": "uint256",
369
+ "name": "",
370
+ "type": "uint256"
371
+ }
372
+ ],
373
+ "stateMutability": "view",
374
+ "type": "function"
375
+ },
376
+ {
377
+ "inputs": [],
378
+ "name": "seed",
379
+ "outputs": [
380
+ {
381
+ "internalType": "bytes32",
382
+ "name": "",
383
+ "type": "bytes32"
384
+ }
385
+ ],
386
+ "stateMutability": "view",
387
+ "type": "function"
388
+ },
389
+ {
390
+ "inputs": [
391
+ {
392
+ "internalType": "bytes32",
393
+ "name": "_seed",
394
+ "type": "bytes32"
395
+ }
396
+ ],
397
+ "name": "setSeed",
398
+ "outputs": [],
399
+ "stateMutability": "nonpayable",
400
+ "type": "function"
401
+ },
402
+ {
403
+ "inputs": [
404
+ {
405
+ "internalType": "address",
406
+ "name": "_signer",
407
+ "type": "address"
408
+ },
409
+ {
410
+ "internalType": "bool",
411
+ "name": "_active",
412
+ "type": "bool"
413
+ }
414
+ ],
415
+ "name": "setSigner",
416
+ "outputs": [],
417
+ "stateMutability": "nonpayable",
418
+ "type": "function"
419
+ },
420
+ {
421
+ "inputs": [
422
+ {
423
+ "internalType": "uint256",
424
+ "name": "_threshold",
425
+ "type": "uint256"
426
+ }
427
+ ],
428
+ "name": "setThreshold",
429
+ "outputs": [],
430
+ "stateMutability": "nonpayable",
431
+ "type": "function"
432
+ },
433
+ {
434
+ "inputs": [],
435
+ "name": "threshold",
436
+ "outputs": [
437
+ {
438
+ "internalType": "uint256",
439
+ "name": "",
440
+ "type": "uint256"
441
+ }
442
+ ],
443
+ "stateMutability": "view",
444
+ "type": "function"
445
+ },
446
+ {
447
+ "inputs": [],
448
+ "name": "totalSigners",
449
+ "outputs": [
450
+ {
451
+ "internalType": "uint256",
452
+ "name": "",
453
+ "type": "uint256"
454
+ }
455
+ ],
456
+ "stateMutability": "view",
457
+ "type": "function"
458
+ },
459
+ {
460
+ "inputs": [
461
+ {
462
+ "internalType": "bytes32",
463
+ "name": "_merkleRoot",
464
+ "type": "bytes32"
465
+ },
466
+ {
467
+ "internalType": "uint256",
468
+ "name": "_expiry",
469
+ "type": "uint256"
470
+ },
471
+ {
472
+ "internalType": "bytes",
473
+ "name": "_signatures",
474
+ "type": "bytes"
475
+ }
476
+ ],
477
+ "name": "verifyMerkleRoot",
478
+ "outputs": [],
479
+ "stateMutability": "view",
480
+ "type": "function"
481
+ },
482
+ {
483
+ "inputs": [
484
+ {
485
+ "internalType": "bytes32",
486
+ "name": "_digest",
487
+ "type": "bytes32"
488
+ },
489
+ {
490
+ "internalType": "bytes",
491
+ "name": "_signatures",
492
+ "type": "bytes"
493
+ },
494
+ {
495
+ "internalType": "uint256",
496
+ "name": "_threshold",
497
+ "type": "uint256"
498
+ }
499
+ ],
500
+ "name": "verifyNSignatures",
501
+ "outputs": [],
502
+ "stateMutability": "view",
503
+ "type": "function"
504
+ },
505
+ {
506
+ "inputs": [
507
+ {
508
+ "internalType": "bytes32",
509
+ "name": "_digest",
510
+ "type": "bytes32"
511
+ },
512
+ {
513
+ "internalType": "bytes",
514
+ "name": "_signatures",
515
+ "type": "bytes"
516
+ }
517
+ ],
518
+ "name": "verifySignatures",
519
+ "outputs": [],
520
+ "stateMutability": "view",
521
+ "type": "function"
522
+ },
523
+ {
524
+ "inputs": [
525
+ {
526
+ "internalType": "bytes32",
527
+ "name": "_merkleRoot",
528
+ "type": "bytes32"
529
+ },
530
+ {
531
+ "components": [
532
+ {
533
+ "components": [
534
+ {
535
+ "internalType": "address",
536
+ "name": "to",
537
+ "type": "address"
538
+ },
539
+ {
540
+ "internalType": "uint256",
541
+ "name": "value",
542
+ "type": "uint256"
543
+ },
544
+ {
545
+ "internalType": "bytes",
546
+ "name": "data",
547
+ "type": "bytes"
548
+ }
549
+ ],
550
+ "internalType": "struct OneSig.Call[]",
551
+ "name": "calls",
552
+ "type": "tuple[]"
553
+ },
554
+ {
555
+ "internalType": "bytes32[]",
556
+ "name": "proof",
557
+ "type": "bytes32[]"
558
+ }
559
+ ],
560
+ "internalType": "struct OneSig.Transaction",
561
+ "name": "_transaction",
562
+ "type": "tuple"
563
+ }
564
+ ],
565
+ "name": "verifyTransactionProof",
566
+ "outputs": [],
567
+ "stateMutability": "view",
568
+ "type": "function"
569
+ },
570
+ {
571
+ "stateMutability": "payable",
572
+ "type": "receive"
573
+ }
574
+ ],
575
+ "bytecode": "0x60c06040523480156200001157600080fd5b5060405162001ad038038062001ad08339810160408190526200003491620002fe565b838360005b82518110156200007957620000708382815181106200005c576200005c620003eb565b6020026020010151620000fb60201b60201c565b60010162000039565b506200008581620001a4565b505060808290526040805160208101849052309181019190915260600160408051808303601f1901815290829052805160209182012060a05260038390558282527f36d9c0a688d366a03517cca4843dfff4e45db3869d5fd86fb9d15a1b45ce0e5a910160405180910390a15050505062000401565b6001600160a01b0381166200012357604051632057875960e21b815260040160405180910390fd5b620001306000826200023c565b6200015e576040516327ec359360e21b81526001600160a01b03821660048201526024015b60405180910390fd5b604080516001600160a01b0383168152600160208201527ffc4acb499491cd850a8a21ab98c7f128850c0f0e5f1a875a62b7fa055c2ecf1991015b60405180910390a150565b80600003620001c65760405163831761d760e01b815260040160405180910390fd5b80620001d16200025c565b10156200020657620001e26200025c565b60405162daa43760e71b815260048101919091526024810182905260440162000155565b60028190556040518181527f6e8a187d7944998085dbd1f16b84c51c903bb727536cdba86962439aded2cfd79060200162000199565b600062000253836001600160a01b0384166200026e565b90505b92915050565b60006200026981620002c0565b905090565b6000818152600183016020526040812054620002b75750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915562000256565b50600062000256565b600062000256825490565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b0381168114620002f957600080fd5b919050565b600080600080608085870312156200031557600080fd5b84516001600160401b03808211156200032d57600080fd5b818701915087601f8301126200034257600080fd5b8151602082821115620003595762000359620002cb565b8160051b604051601f19603f83011681018181108682111715620003815762000381620002cb565b60405292835281830193508481018201928b841115620003a057600080fd5b948201945b83861015620003c957620003b986620002e1565b85529482019493820193620003a5565b918a015160408b01516060909b0151929c909b50919850909650505050505050565b634e487b7160e01b600052603260045260246000fd5b60805160a0516116a96200042760003960006109330152600061021101526116a96000f3fe6080604052600436106101025760003560e01c80638e6725bd11610095578063c7a823e011610064578063c7a823e01461029e578063d1a62648146102be578063d63f97c9146102d3578063e3bd0362146102f3578063ffa1ad741461031357600080fd5b80638e6725bd1461023357806394cf795e14610246578063960bfe0414610268578063affed0e01461028857600080fd5b80636419ebde116100d15780636419ebde146101995780637d94792a146101b95780637df73e27146101cf57806385e1f4d0146101ff57600080fd5b80632b03f6ab1461010e57806331cb610514610130578063347024ff1461015057806342cde4e81461017057600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5061012e610129366004611034565b610351565b005b34801561013c57600080fd5b5061012e61014b3660046110a3565b6104f4565b34801561015c57600080fd5b5061012e61016b3660046110df565b610530565b34801561017c57600080fd5b5061018660025481565b6040519081526020015b60405180910390f35b3480156101a557600080fd5b5061012e6101b43660046110f8565b61058c565b3480156101c557600080fd5b5061018660035481565b3480156101db57600080fd5b506101ef6101ea36600461114b565b6106ba565b6040519015158152602001610190565b34801561020b57600080fd5b506101867f000000000000000000000000000000000000000000000000000000000000000081565b61012e61024136600461117e565b6106cc565b34801561025257600080fd5b5061025b61087e565b60405161019091906111fc565b34801561027457600080fd5b5061012e6102833660046110df565b61088f565b34801561029457600080fd5b5061018660045481565b3480156102aa57600080fd5b5061012e6102b9366004611249565b6108bb565b3480156102ca57600080fd5b506101866108ce565b3480156102df57600080fd5b5061012e6102ee366004611295565b6108da565b3480156102ff57600080fd5b5061018661030e3660046112dc565b61092f565b34801561031f57600080fd5b5061034460405180604001604052806005815260200164302e302e3160d81b81525081565b604051610190919061137f565b8242111561037257604051634f01675560e01b815260040160405180910390fd5b6040805180820182526002815261190160f01b6020808301919091528251808401845260068152654f6e6553696760d01b90820152825180840184526001808252603160f81b9183019190915283517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818401527fbd7855a8d66a83be54ebc7fa5f2e3fb658ab6007afa89cd93dfca08ad1b97ec8818601527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc66060820152608081019190915261dead60a0808301919091528451808303909101815260c0820185528051908301206003547f642ed5d2b77bc7ccb98e10da4c02d7cd8231228da4222a9f88a80c15545074ed60e08401526101008301526101208201899052610140808301899052855180840390910181526101608301909552845194909201939093206000936104ca93929190610180016113b2565b6040516020818303038152906040528051906020012090506104ed8184846108bb565b5050505050565b33301461051457604051634afb817760e11b815260040160405180910390fd5b80156105275761052382610987565b5050565b61052382610a20565b33301461055057604051634afb817760e11b815260040160405180910390fd5b60038190556040518181527f36d9c0a688d366a03517cca4843dfff4e45db3869d5fd86fb9d15a1b45ce0e5a906020015b60405180910390a150565b6105978160416113ef565b82146105b65760405163669233e360e11b815260040160405180910390fd5b6000805b828110156106b25736600086866105d28560416113ef565b906105de866001611406565b6105e99060416113ef565b926105f693929190611419565b91509150600061063c8984848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610acf92505050565b9050846001600160a01b0316816001600160a01b0316116106705760405163d02ef0e560e01b815260040160405180910390fd5b610679816106ba565b6106a6576040516353b1def160e01b81526001600160a01b03821660048201526024015b60405180910390fd5b935050506001016105ba565b505050505050565b60006106c68183610af9565b92915050565b6106d884848484610351565b6106e284866108da565b60048054600091826106f383611443565b91905055905060005b610706878061145c565b905081101561083c57600061071b888061145c565b8381811061072b5761072b6114a6565b905060200281019061073d91906114bc565b61074b90602081019061114b565b6001600160a01b031661075e898061145c565b8481811061076e5761076e6114a6565b905060200281019061078091906114bc565b6020013561078e8a8061145c565b8581811061079e5761079e6114a6565b90506020028101906107b091906114bc565b6107be9060408101906114dc565b6040516107cc929190611523565b60006040518083038185875af1925050503d8060008114610809576040519150601f19603f3d011682016040523d82523d6000602084013e61080e565b606091505b505090508061083357604051632497eb8760e11b81526004810183905260240161069d565b506001016106fc565b5060408051868152602081018390527fd9a0df418868c38712b1f6eab685bc77a2e49596edd77667ab34d5448f5f941c910160405180910390a1505050505050565b606061088a6000610b1e565b905090565b3330146108af57604051634afb817760e11b815260040160405180910390fd5b6108b881610b2b565b50565b6108c983838360025461058c565b505050565b600061088a6000610bbb565b6004546000906108ee9061030e848061145c565b90506000610909610902602085018561145c565b8685610bc5565b9050806109295760405163150b827160e11b815260040160405180910390fd5b50505050565b60007f00000000000000000000000000000000000000000000000000000000000000008484846040516020016109689493929190611533565b6040516020818303038152906040528051906020012090509392505050565b6001600160a01b0381166109ae57604051632057875960e21b815260040160405180910390fd5b6109b9600082610bdd565b6109e1576040516327ec359360e21b81526001600160a01b038216600482015260240161069d565b604080516001600160a01b0383168152600160208201527ffc4acb499491cd850a8a21ab98c7f128850c0f0e5f1a875a62b7fa055c2ecf199101610581565b610a2b600082610bf2565b610a53576040516353b1def160e01b81526001600160a01b038216600482015260240161069d565b600254610a5e6108ce565b1015610a9057610a6c6108ce565b60025460405162daa43760e71b81526004810192909252602482015260440161069d565b604080516001600160a01b0383168152600060208201527ffc4acb499491cd850a8a21ab98c7f128850c0f0e5f1a875a62b7fa055c2ecf199101610581565b600080600080610adf8686610c07565b925092509250610aef8282610c54565b5090949350505050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b60606000610b1783610d0d565b80600003610b4c5760405163831761d760e01b815260040160405180910390fd5b80610b556108ce565b1015610b8657610b636108ce565b60405162daa43760e71b815260048101919091526024810182905260440161069d565b60028190556040518181527f6e8a187d7944998085dbd1f16b84c51c903bb727536cdba86962439aded2cfd790602001610581565b60006106c6825490565b600082610bd3868685610d69565b1495945050505050565b6000610b17836001600160a01b038416610dab565b6000610b17836001600160a01b038416610dfa565b60008060008351604103610c415760208401516040850151606086015160001a610c3388828585610eed565b955095509550505050610c4d565b50508151600091506002905b9250925092565b6000826003811115610c6857610c68611634565b03610c71575050565b6001826003811115610c8557610c85611634565b03610ca35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115610cb757610cb7611634565b03610cd85760405163fce698f760e01b81526004810182905260240161069d565b6003826003811115610cec57610cec611634565b03610523576040516335e2f38360e21b81526004810182905260240161069d565b606081600001805480602002602001604051908101604052809291908181526020018280548015610d5d57602002820191906000526020600020905b815481526020019060010190808311610d49575b50505050509050919050565b600081815b84811015610da257610d9882878784818110610d8c57610d8c6114a6565b90506020020135610fbc565b9150600101610d6e565b50949350505050565b6000818152600183016020526040812054610df2575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106c6565b5060006106c6565b60008181526001830160205260408120548015610ee3576000610e1e60018361164a565b8554909150600090610e329060019061164a565b9050808214610e97576000866000018281548110610e5257610e526114a6565b9060005260206000200154905080876000018481548110610e7557610e756114a6565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080610ea857610ea861165d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506106c6565b60009150506106c6565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115610f285750600091506003905082610fb2565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610f7c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610fa857506000925060019150829050610fb2565b9250600091508190505b9450945094915050565b6000818310610fd8576000828152602084905260409020610b17565b6000838152602083905260409020610b17565b60008083601f840112610ffd57600080fd5b50813567ffffffffffffffff81111561101557600080fd5b60208301915083602082850101111561102d57600080fd5b9250929050565b6000806000806060858703121561104a57600080fd5b8435935060208501359250604085013567ffffffffffffffff81111561106f57600080fd5b61107b87828801610feb565b95989497509550505050565b80356001600160a01b038116811461109e57600080fd5b919050565b600080604083850312156110b657600080fd5b6110bf83611087565b9150602083013580151581146110d457600080fd5b809150509250929050565b6000602082840312156110f157600080fd5b5035919050565b6000806000806060858703121561110e57600080fd5b84359350602085013567ffffffffffffffff81111561112c57600080fd5b61113887828801610feb565b9598909750949560400135949350505050565b60006020828403121561115d57600080fd5b610b1782611087565b60006040828403121561117857600080fd5b50919050565b60008060008060006080868803121561119657600080fd5b853567ffffffffffffffff808211156111ae57600080fd5b6111ba89838a01611166565b9650602088013595506040880135945060608801359150808211156111de57600080fd5b506111eb88828901610feb565b969995985093965092949392505050565b6020808252825182820181905260009190848201906040850190845b8181101561123d5783516001600160a01b031683529284019291840191600101611218565b50909695505050505050565b60008060006040848603121561125e57600080fd5b83359250602084013567ffffffffffffffff81111561127c57600080fd5b61128886828701610feb565b9497909650939450505050565b600080604083850312156112a857600080fd5b82359150602083013567ffffffffffffffff8111156112c657600080fd5b6112d285828601611166565b9150509250929050565b6000806000604084860312156112f157600080fd5b83359250602084013567ffffffffffffffff8082111561131057600080fd5b818601915086601f83011261132457600080fd5b81358181111561133357600080fd5b8760208260051b850101111561134857600080fd5b6020830194508093505050509250925092565b60005b8381101561137657818101518382015260200161135e565b50506000910152565b602081526000825180602084015261139e81604085016020870161135b565b601f01601f19169190910160400192915050565b600084516113c481846020890161135b565b91909101928352506020820152604001919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176106c6576106c66113d9565b808201808211156106c6576106c66113d9565b6000808585111561142957600080fd5b8386111561143657600080fd5b5050820193919092039150565b600060018201611455576114556113d9565b5060010190565b6000808335601e1984360301811261147357600080fd5b83018035915067ffffffffffffffff82111561148e57600080fd5b6020019150600581901b360382131561102d57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126114d257600080fd5b9190910192915050565b6000808335601e198436030181126114f357600080fd5b83018035915067ffffffffffffffff82111561150e57600080fd5b60200191503681900382131561102d57600080fd5b8183823760009101908152919050565b6000606080830187845260208781860152604060606040870152828784526080935060808701905060808860051b8801018960005b8a81101561162257898303607f190184528135368d9003605e1901811261158e57600080fd5b8c016001600160a01b036115a182611087565b168452868101358785015285810135601e198236030181126115c257600080fd5b01868101903567ffffffffffffffff8111156115dd57600080fd5b8036038213156115ec57600080fd5b8987860152808a86015280828a87013760008582018a015294870194601f01601f19169093018701925090850190600101611568565b50909c9b505050505050505050505050565b634e487b7160e01b600052602160045260246000fd5b818103818111156106c6576106c66113d9565b634e487b7160e01b600052603160045260246000fdfea26469706673582212206b06781babe135ad4916badfd90306503d7f97802cdeba6bc86078789f6e2b9764736f6c63430008160033",
576
+ "deployedBytecode": "0x6080604052600436106101025760003560e01c80638e6725bd11610095578063c7a823e011610064578063c7a823e01461029e578063d1a62648146102be578063d63f97c9146102d3578063e3bd0362146102f3578063ffa1ad741461031357600080fd5b80638e6725bd1461023357806394cf795e14610246578063960bfe0414610268578063affed0e01461028857600080fd5b80636419ebde116100d15780636419ebde146101995780637d94792a146101b95780637df73e27146101cf57806385e1f4d0146101ff57600080fd5b80632b03f6ab1461010e57806331cb610514610130578063347024ff1461015057806342cde4e81461017057600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5061012e610129366004611034565b610351565b005b34801561013c57600080fd5b5061012e61014b3660046110a3565b6104f4565b34801561015c57600080fd5b5061012e61016b3660046110df565b610530565b34801561017c57600080fd5b5061018660025481565b6040519081526020015b60405180910390f35b3480156101a557600080fd5b5061012e6101b43660046110f8565b61058c565b3480156101c557600080fd5b5061018660035481565b3480156101db57600080fd5b506101ef6101ea36600461114b565b6106ba565b6040519015158152602001610190565b34801561020b57600080fd5b506101867f000000000000000000000000000000000000000000000000000000000000000081565b61012e61024136600461117e565b6106cc565b34801561025257600080fd5b5061025b61087e565b60405161019091906111fc565b34801561027457600080fd5b5061012e6102833660046110df565b61088f565b34801561029457600080fd5b5061018660045481565b3480156102aa57600080fd5b5061012e6102b9366004611249565b6108bb565b3480156102ca57600080fd5b506101866108ce565b3480156102df57600080fd5b5061012e6102ee366004611295565b6108da565b3480156102ff57600080fd5b5061018661030e3660046112dc565b61092f565b34801561031f57600080fd5b5061034460405180604001604052806005815260200164302e302e3160d81b81525081565b604051610190919061137f565b8242111561037257604051634f01675560e01b815260040160405180910390fd5b6040805180820182526002815261190160f01b6020808301919091528251808401845260068152654f6e6553696760d01b90820152825180840184526001808252603160f81b9183019190915283517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818401527fbd7855a8d66a83be54ebc7fa5f2e3fb658ab6007afa89cd93dfca08ad1b97ec8818601527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc66060820152608081019190915261dead60a0808301919091528451808303909101815260c0820185528051908301206003547f642ed5d2b77bc7ccb98e10da4c02d7cd8231228da4222a9f88a80c15545074ed60e08401526101008301526101208201899052610140808301899052855180840390910181526101608301909552845194909201939093206000936104ca93929190610180016113b2565b6040516020818303038152906040528051906020012090506104ed8184846108bb565b5050505050565b33301461051457604051634afb817760e11b815260040160405180910390fd5b80156105275761052382610987565b5050565b61052382610a20565b33301461055057604051634afb817760e11b815260040160405180910390fd5b60038190556040518181527f36d9c0a688d366a03517cca4843dfff4e45db3869d5fd86fb9d15a1b45ce0e5a906020015b60405180910390a150565b6105978160416113ef565b82146105b65760405163669233e360e11b815260040160405180910390fd5b6000805b828110156106b25736600086866105d28560416113ef565b906105de866001611406565b6105e99060416113ef565b926105f693929190611419565b91509150600061063c8984848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610acf92505050565b9050846001600160a01b0316816001600160a01b0316116106705760405163d02ef0e560e01b815260040160405180910390fd5b610679816106ba565b6106a6576040516353b1def160e01b81526001600160a01b03821660048201526024015b60405180910390fd5b935050506001016105ba565b505050505050565b60006106c68183610af9565b92915050565b6106d884848484610351565b6106e284866108da565b60048054600091826106f383611443565b91905055905060005b610706878061145c565b905081101561083c57600061071b888061145c565b8381811061072b5761072b6114a6565b905060200281019061073d91906114bc565b61074b90602081019061114b565b6001600160a01b031661075e898061145c565b8481811061076e5761076e6114a6565b905060200281019061078091906114bc565b6020013561078e8a8061145c565b8581811061079e5761079e6114a6565b90506020028101906107b091906114bc565b6107be9060408101906114dc565b6040516107cc929190611523565b60006040518083038185875af1925050503d8060008114610809576040519150601f19603f3d011682016040523d82523d6000602084013e61080e565b606091505b505090508061083357604051632497eb8760e11b81526004810183905260240161069d565b506001016106fc565b5060408051868152602081018390527fd9a0df418868c38712b1f6eab685bc77a2e49596edd77667ab34d5448f5f941c910160405180910390a1505050505050565b606061088a6000610b1e565b905090565b3330146108af57604051634afb817760e11b815260040160405180910390fd5b6108b881610b2b565b50565b6108c983838360025461058c565b505050565b600061088a6000610bbb565b6004546000906108ee9061030e848061145c565b90506000610909610902602085018561145c565b8685610bc5565b9050806109295760405163150b827160e11b815260040160405180910390fd5b50505050565b60007f00000000000000000000000000000000000000000000000000000000000000008484846040516020016109689493929190611533565b6040516020818303038152906040528051906020012090509392505050565b6001600160a01b0381166109ae57604051632057875960e21b815260040160405180910390fd5b6109b9600082610bdd565b6109e1576040516327ec359360e21b81526001600160a01b038216600482015260240161069d565b604080516001600160a01b0383168152600160208201527ffc4acb499491cd850a8a21ab98c7f128850c0f0e5f1a875a62b7fa055c2ecf199101610581565b610a2b600082610bf2565b610a53576040516353b1def160e01b81526001600160a01b038216600482015260240161069d565b600254610a5e6108ce565b1015610a9057610a6c6108ce565b60025460405162daa43760e71b81526004810192909252602482015260440161069d565b604080516001600160a01b0383168152600060208201527ffc4acb499491cd850a8a21ab98c7f128850c0f0e5f1a875a62b7fa055c2ecf199101610581565b600080600080610adf8686610c07565b925092509250610aef8282610c54565b5090949350505050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b60606000610b1783610d0d565b80600003610b4c5760405163831761d760e01b815260040160405180910390fd5b80610b556108ce565b1015610b8657610b636108ce565b60405162daa43760e71b815260048101919091526024810182905260440161069d565b60028190556040518181527f6e8a187d7944998085dbd1f16b84c51c903bb727536cdba86962439aded2cfd790602001610581565b60006106c6825490565b600082610bd3868685610d69565b1495945050505050565b6000610b17836001600160a01b038416610dab565b6000610b17836001600160a01b038416610dfa565b60008060008351604103610c415760208401516040850151606086015160001a610c3388828585610eed565b955095509550505050610c4d565b50508151600091506002905b9250925092565b6000826003811115610c6857610c68611634565b03610c71575050565b6001826003811115610c8557610c85611634565b03610ca35760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115610cb757610cb7611634565b03610cd85760405163fce698f760e01b81526004810182905260240161069d565b6003826003811115610cec57610cec611634565b03610523576040516335e2f38360e21b81526004810182905260240161069d565b606081600001805480602002602001604051908101604052809291908181526020018280548015610d5d57602002820191906000526020600020905b815481526020019060010190808311610d49575b50505050509050919050565b600081815b84811015610da257610d9882878784818110610d8c57610d8c6114a6565b90506020020135610fbc565b9150600101610d6e565b50949350505050565b6000818152600183016020526040812054610df2575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106c6565b5060006106c6565b60008181526001830160205260408120548015610ee3576000610e1e60018361164a565b8554909150600090610e329060019061164a565b9050808214610e97576000866000018281548110610e5257610e526114a6565b9060005260206000200154905080876000018481548110610e7557610e756114a6565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080610ea857610ea861165d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506106c6565b60009150506106c6565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115610f285750600091506003905082610fb2565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610f7c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610fa857506000925060019150829050610fb2565b9250600091508190505b9450945094915050565b6000818310610fd8576000828152602084905260409020610b17565b6000838152602083905260409020610b17565b60008083601f840112610ffd57600080fd5b50813567ffffffffffffffff81111561101557600080fd5b60208301915083602082850101111561102d57600080fd5b9250929050565b6000806000806060858703121561104a57600080fd5b8435935060208501359250604085013567ffffffffffffffff81111561106f57600080fd5b61107b87828801610feb565b95989497509550505050565b80356001600160a01b038116811461109e57600080fd5b919050565b600080604083850312156110b657600080fd5b6110bf83611087565b9150602083013580151581146110d457600080fd5b809150509250929050565b6000602082840312156110f157600080fd5b5035919050565b6000806000806060858703121561110e57600080fd5b84359350602085013567ffffffffffffffff81111561112c57600080fd5b61113887828801610feb565b9598909750949560400135949350505050565b60006020828403121561115d57600080fd5b610b1782611087565b60006040828403121561117857600080fd5b50919050565b60008060008060006080868803121561119657600080fd5b853567ffffffffffffffff808211156111ae57600080fd5b6111ba89838a01611166565b9650602088013595506040880135945060608801359150808211156111de57600080fd5b506111eb88828901610feb565b969995985093965092949392505050565b6020808252825182820181905260009190848201906040850190845b8181101561123d5783516001600160a01b031683529284019291840191600101611218565b50909695505050505050565b60008060006040848603121561125e57600080fd5b83359250602084013567ffffffffffffffff81111561127c57600080fd5b61128886828701610feb565b9497909650939450505050565b600080604083850312156112a857600080fd5b82359150602083013567ffffffffffffffff8111156112c657600080fd5b6112d285828601611166565b9150509250929050565b6000806000604084860312156112f157600080fd5b83359250602084013567ffffffffffffffff8082111561131057600080fd5b818601915086601f83011261132457600080fd5b81358181111561133357600080fd5b8760208260051b850101111561134857600080fd5b6020830194508093505050509250925092565b60005b8381101561137657818101518382015260200161135e565b50506000910152565b602081526000825180602084015261139e81604085016020870161135b565b601f01601f19169190910160400192915050565b600084516113c481846020890161135b565b91909101928352506020820152604001919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176106c6576106c66113d9565b808201808211156106c6576106c66113d9565b6000808585111561142957600080fd5b8386111561143657600080fd5b5050820193919092039150565b600060018201611455576114556113d9565b5060010190565b6000808335601e1984360301811261147357600080fd5b83018035915067ffffffffffffffff82111561148e57600080fd5b6020019150600581901b360382131561102d57600080fd5b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126114d257600080fd5b9190910192915050565b6000808335601e198436030181126114f357600080fd5b83018035915067ffffffffffffffff82111561150e57600080fd5b60200191503681900382131561102d57600080fd5b8183823760009101908152919050565b6000606080830187845260208781860152604060606040870152828784526080935060808701905060808860051b8801018960005b8a81101561162257898303607f190184528135368d9003605e1901811261158e57600080fd5b8c016001600160a01b036115a182611087565b168452868101358785015285810135601e198236030181126115c257600080fd5b01868101903567ffffffffffffffff8111156115dd57600080fd5b8036038213156115ec57600080fd5b8987860152808a86015280828a87013760008582018a015294870194601f01601f19169093018701925090850190600101611568565b50909c9b505050505050505050505050565b634e487b7160e01b600052602160045260246000fd5b818103818111156106c6576106c66113d9565b634e487b7160e01b600052603160045260246000fdfea26469706673582212206b06781babe135ad4916badfd90306503d7f97802cdeba6bc86078789f6e2b9764736f6c63430008160033",
577
+ "linkReferences": {},
578
+ "deployedLinkReferences": {}
579
+ }
@@ -0,0 +1,52 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MockOApp",
4
+ "sourceName": "contracts/mocks/MockOApp.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint32",
10
+ "name": "",
11
+ "type": "uint32"
12
+ }
13
+ ],
14
+ "name": "bytesMapping",
15
+ "outputs": [
16
+ {
17
+ "internalType": "bytes",
18
+ "name": "",
19
+ "type": "bytes"
20
+ }
21
+ ],
22
+ "stateMutability": "view",
23
+ "type": "function"
24
+ },
25
+ {
26
+ "inputs": [
27
+ {
28
+ "internalType": "uint32",
29
+ "name": "_dstEid",
30
+ "type": "uint32"
31
+ },
32
+ {
33
+ "internalType": "bytes",
34
+ "name": "_bytes",
35
+ "type": "bytes"
36
+ }
37
+ ],
38
+ "name": "setBytes",
39
+ "outputs": [],
40
+ "stateMutability": "nonpayable",
41
+ "type": "function"
42
+ },
43
+ {
44
+ "stateMutability": "payable",
45
+ "type": "receive"
46
+ }
47
+ ],
48
+ "bytecode": "0x608060405234801561001057600080fd5b506103f6806100206000396000f3fe60806040526004361061002d5760003560e01c8063063a540814610039578063404110861461006f57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b5061005961005436600461016a565b610091565b604051610066919061018c565b60405180910390f35b34801561007b57600080fd5b5061008f61008a3660046101db565b61012b565b005b600060208190529081526040902080546100aa9061025e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061025e565b80156101235780601f106100f857610100808354040283529160200191610123565b820191906000526020600020905b81548152906001019060200180831161010657829003601f168201915b505050505081565b63ffffffff8316600090815260208190526040902061014b8284836102ff565b50505050565b803563ffffffff8116811461016557600080fd5b919050565b60006020828403121561017c57600080fd5b61018582610151565b9392505050565b60006020808352835180602085015260005b818110156101ba5785810183015185820160400152820161019e565b506000604082860101526040601f19601f8301168501019250505092915050565b6000806000604084860312156101f057600080fd5b6101f984610151565b9250602084013567ffffffffffffffff8082111561021657600080fd5b818601915086601f83011261022a57600080fd5b81358181111561023957600080fd5b87602082850101111561024b57600080fd5b6020830194508093505050509250925092565b600181811c9082168061027257607f821691505b60208210810361029257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b601f8211156102fa576000816000526020600020601f850160051c810160208610156102d75750805b601f850160051c820191505b818110156102f6578281556001016102e3565b5050505b505050565b67ffffffffffffffff83111561031757610317610298565b61032b83610325835461025e565b836102ae565b6000601f84116001811461035f57600085156103475750838201355b600019600387901b1c1916600186901b1783556103b9565b600083815260209020601f19861690835b828110156103905786850135825560209485019460019092019101610370565b50868210156103ad5760001960f88860031b161c19848701351681555b505060018560011b0183555b505050505056fea2646970667358221220f599b0707c3f58cc1f5e9922be3c6fa07ff9221351e410fd121fee045d837a9264736f6c63430008160033",
49
+ "deployedBytecode": "0x60806040526004361061002d5760003560e01c8063063a540814610039578063404110861461006f57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b5061005961005436600461016a565b610091565b604051610066919061018c565b60405180910390f35b34801561007b57600080fd5b5061008f61008a3660046101db565b61012b565b005b600060208190529081526040902080546100aa9061025e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061025e565b80156101235780601f106100f857610100808354040283529160200191610123565b820191906000526020600020905b81548152906001019060200180831161010657829003601f168201915b505050505081565b63ffffffff8316600090815260208190526040902061014b8284836102ff565b50505050565b803563ffffffff8116811461016557600080fd5b919050565b60006020828403121561017c57600080fd5b61018582610151565b9392505050565b60006020808352835180602085015260005b818110156101ba5785810183015185820160400152820161019e565b506000604082860101526040601f19601f8301168501019250505092915050565b6000806000604084860312156101f057600080fd5b6101f984610151565b9250602084013567ffffffffffffffff8082111561021657600080fd5b818601915086601f83011261022a57600080fd5b81358181111561023957600080fd5b87602082850101111561024b57600080fd5b6020830194508093505050509250925092565b600181811c9082168061027257607f821691505b60208210810361029257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b601f8211156102fa576000816000526020600020601f850160051c810160208610156102d75750805b601f850160051c820191505b818110156102f6578281556001016102e3565b5050505b505050565b67ffffffffffffffff83111561031757610317610298565b61032b83610325835461025e565b836102ae565b6000601f84116001811461035f57600085156103475750838201355b600019600387901b1c1916600186901b1783556103b9565b600083815260209020601f19861690835b828110156103905786850135825560209485019460019092019101610370565b50868210156103ad5760001960f88860031b161c19848701351681555b505060018560011b0183555b505050505056fea2646970667358221220f599b0707c3f58cc1f5e9922be3c6fa07ff9221351e410fd121fee045d837a9264736f6c63430008160033",
50
+ "linkReferences": {},
51
+ "deployedLinkReferences": {}
52
+ }