@layerzerolabs/lz-evm-sdk-v2 2.1.9 → 2.1.10

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 (121) hide show
  1. package/deployments/exocore-testnet/DVN.json +39 -39
  2. package/deployments/exocore-testnet/DVNFeeLib.json +5 -5
  3. package/deployments/exocore-testnet/DefaultProxyAdmin.json +4 -4
  4. package/deployments/exocore-testnet/EndpointV2.json +23 -23
  5. package/deployments/exocore-testnet/EndpointV2View.json +8 -8
  6. package/deployments/exocore-testnet/EndpointV2View_Implementation.json +2 -2
  7. package/deployments/exocore-testnet/EndpointV2View_Proxy.json +8 -8
  8. package/deployments/exocore-testnet/Executor.json +26 -26
  9. package/deployments/exocore-testnet/ExecutorFeeLib.json +5 -5
  10. package/deployments/exocore-testnet/ExecutorProxyAdmin.json +7 -7
  11. package/deployments/exocore-testnet/Executor_Implementation.json +17 -17
  12. package/deployments/exocore-testnet/Executor_Proxy.json +26 -26
  13. package/deployments/exocore-testnet/LzExecutor.json +10 -10
  14. package/deployments/exocore-testnet/LzExecutor_Implementation.json +6 -6
  15. package/deployments/exocore-testnet/LzExecutor_Proxy.json +10 -10
  16. package/deployments/exocore-testnet/PriceFeed.json +10 -10
  17. package/deployments/exocore-testnet/PriceFeedProxyAdmin.json +7 -7
  18. package/deployments/exocore-testnet/PriceFeed_Implementation.json +14 -14
  19. package/deployments/exocore-testnet/PriceFeed_Proxy.json +10 -10
  20. package/deployments/exocore-testnet/ReceiveUln301.json +36 -36
  21. package/deployments/exocore-testnet/ReceiveUln301View.json +15 -15
  22. package/deployments/exocore-testnet/ReceiveUln301View_Implementation.json +8 -8
  23. package/deployments/exocore-testnet/ReceiveUln301View_Proxy.json +14 -14
  24. package/deployments/exocore-testnet/ReceiveUln302.json +29 -29
  25. package/deployments/exocore-testnet/ReceiveUln302View.json +8 -8
  26. package/deployments/exocore-testnet/ReceiveUln302View_Implementation.json +7 -7
  27. package/deployments/exocore-testnet/ReceiveUln302View_Proxy.json +8 -8
  28. package/deployments/exocore-testnet/SendUln301.json +24 -24
  29. package/deployments/exocore-testnet/SendUln302.json +18 -18
  30. package/deployments/exocore-testnet/Treasury.json +5 -5
  31. package/deployments/exocore-testnet/TreasuryFeeHandler.json +3 -3
  32. package/deployments/mantle-mainnet/AxelarDVNAdapter.json +1578 -0
  33. package/deployments/mantle-mainnet/AxelarDVNAdapterFeeLib.json +813 -0
  34. package/deployments/mantle-mainnet/AxelarDVNAdapterFeeLib_Implementation.json +803 -0
  35. package/deployments/mantle-mainnet/AxelarDVNAdapterFeeLib_Proxy.json +245 -0
  36. package/deployments/mantle-mainnet/DVNFeeLibProxyAdmin.json +284 -0
  37. package/deployments/{avalanche-sandbox-local → mode-testnet}/DVN.json +81 -48
  38. package/deployments/{avalanche-sandbox-local → mode-testnet}/DVNFeeLib.json +16 -16
  39. package/deployments/{avalanche-sandbox-local → mode-testnet}/DefaultProxyAdmin.json +17 -17
  40. package/deployments/{bsc-sandbox-local → mode-testnet}/EndpointV2.json +114 -60
  41. package/deployments/{avalanche-sandbox-local → mode-testnet}/EndpointV2View.json +32 -32
  42. package/deployments/{avalanche-sandbox-local → mode-testnet}/EndpointV2View_Implementation.json +9 -9
  43. package/deployments/{avalanche-sandbox-local → mode-testnet}/EndpointV2View_Proxy.json +30 -30
  44. package/deployments/{bsc-sandbox-local → mode-testnet}/Executor.json +101 -118
  45. package/deployments/{bsc-sandbox-local → mode-testnet}/ExecutorFeeLib.json +17 -17
  46. package/deployments/{bsc-sandbox-local → mode-testnet}/ExecutorProxyAdmin.json +24 -24
  47. package/deployments/{bsc-sandbox-local → mode-testnet}/Executor_Implementation.json +9 -9
  48. package/deployments/{bsc-sandbox-local → mode-testnet}/Executor_Proxy.json +92 -107
  49. package/deployments/{bsc-sandbox-local → mode-testnet}/LzExecutor.json +40 -40
  50. package/deployments/{bsc-sandbox-local → mode-testnet}/LzExecutor_Implementation.json +9 -9
  51. package/deployments/{avalanche-sandbox-local/PriceFeed_Proxy.json → mode-testnet/LzExecutor_Proxy.json} +37 -37
  52. package/deployments/{bsc-sandbox-local → mode-testnet}/PriceFeed.json +39 -39
  53. package/deployments/{arbitrum-sandbox-local → mode-testnet}/PriceFeedProxyAdmin.json +24 -24
  54. package/deployments/{arbitrum-sandbox-local → mode-testnet}/PriceFeed_Implementation.json +9 -9
  55. package/deployments/{bsc-sandbox-local → mode-testnet}/PriceFeed_Proxy.json +37 -37
  56. package/deployments/{avalanche-sandbox-local → mode-testnet}/ReceiveUln301.json +18 -18
  57. package/deployments/{avalanche-sandbox-local → mode-testnet}/ReceiveUln301View.json +34 -34
  58. package/deployments/{avalanche-sandbox-local → mode-testnet}/ReceiveUln301View_Implementation.json +9 -9
  59. package/deployments/{avalanche-sandbox-local/ReceiveUln302View_Proxy.json → mode-testnet/ReceiveUln301View_Proxy.json} +31 -31
  60. package/deployments/{avalanche-sandbox-local → mode-testnet}/ReceiveUln302.json +17 -17
  61. package/deployments/{avalanche-sandbox-local → mode-testnet}/ReceiveUln302View.json +33 -33
  62. package/deployments/{bsc-sandbox-local → mode-testnet}/ReceiveUln302View_Implementation.json +9 -9
  63. package/deployments/{bsc-sandbox-local → mode-testnet}/ReceiveUln302View_Proxy.json +30 -30
  64. package/deployments/{avalanche-sandbox-local → mode-testnet}/SendUln301.json +20 -20
  65. package/deployments/{bsc-sandbox-local → mode-testnet}/SendUln302.json +17 -17
  66. package/deployments/{bsc-sandbox-local → mode-testnet}/Treasury.json +16 -16
  67. package/deployments/{avalanche-sandbox-local → mode-testnet}/TreasuryFeeHandler.json +10 -10
  68. package/package.json +9 -9
  69. package/deployments/arbitrum-sandbox-local/DVN.json +0 -1864
  70. package/deployments/arbitrum-sandbox-local/DVNDecompressor.json +0 -500
  71. package/deployments/arbitrum-sandbox-local/DVNFeeLib.json +0 -398
  72. package/deployments/arbitrum-sandbox-local/PriceFeed.json +0 -890
  73. package/deployments/arbitrum-sandbox-local/PriceFeed_Proxy.json +0 -244
  74. package/deployments/avalanche-sandbox-local/DVNDecompressor.json +0 -508
  75. package/deployments/avalanche-sandbox-local/EndpointV2.json +0 -2946
  76. package/deployments/avalanche-sandbox-local/Executor.json +0 -1549
  77. package/deployments/avalanche-sandbox-local/ExecutorDecompressor.json +0 -339
  78. package/deployments/avalanche-sandbox-local/ExecutorFeeLib.json +0 -423
  79. package/deployments/avalanche-sandbox-local/ExecutorProxyAdmin.json +0 -283
  80. package/deployments/avalanche-sandbox-local/Executor_Implementation.json +0 -1591
  81. package/deployments/avalanche-sandbox-local/Executor_Proxy.json +0 -380
  82. package/deployments/avalanche-sandbox-local/LzExecutor.json +0 -757
  83. package/deployments/avalanche-sandbox-local/LzExecutor_Implementation.json +0 -703
  84. package/deployments/avalanche-sandbox-local/LzExecutor_Proxy.json +0 -244
  85. package/deployments/avalanche-sandbox-local/NonceContractMock.json +0 -163
  86. package/deployments/avalanche-sandbox-local/PriceFeed.json +0 -890
  87. package/deployments/avalanche-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  88. package/deployments/avalanche-sandbox-local/PriceFeed_Implementation.json +0 -912
  89. package/deployments/avalanche-sandbox-local/ReceiveUln301View_Proxy.json +0 -230
  90. package/deployments/avalanche-sandbox-local/ReceiveUln302View_Implementation.json +0 -384
  91. package/deployments/avalanche-sandbox-local/SendUln302.json +0 -1527
  92. package/deployments/avalanche-sandbox-local/SimpleMessageLib.json +0 -708
  93. package/deployments/avalanche-sandbox-local/Treasury.json +0 -412
  94. package/deployments/bsc-sandbox-local/DVN.json +0 -1896
  95. package/deployments/bsc-sandbox-local/DVNDecompressor.json +0 -508
  96. package/deployments/bsc-sandbox-local/DVNFeeLib.json +0 -398
  97. package/deployments/bsc-sandbox-local/DefaultProxyAdmin.json +0 -258
  98. package/deployments/bsc-sandbox-local/EndpointV2View.json +0 -435
  99. package/deployments/bsc-sandbox-local/EndpointV2View_Implementation.json +0 -313
  100. package/deployments/bsc-sandbox-local/EndpointV2View_Proxy.json +0 -230
  101. package/deployments/bsc-sandbox-local/ExecutorDecompressor.json +0 -339
  102. package/deployments/bsc-sandbox-local/LzExecutor_Proxy.json +0 -244
  103. package/deployments/bsc-sandbox-local/NonceContractMock.json +0 -163
  104. package/deployments/bsc-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  105. package/deployments/bsc-sandbox-local/PriceFeed_Implementation.json +0 -912
  106. package/deployments/bsc-sandbox-local/ReceiveUln301.json +0 -1292
  107. package/deployments/bsc-sandbox-local/ReceiveUln301View.json +0 -354
  108. package/deployments/bsc-sandbox-local/ReceiveUln301View_Implementation.json +0 -231
  109. package/deployments/bsc-sandbox-local/ReceiveUln301View_Proxy.json +0 -230
  110. package/deployments/bsc-sandbox-local/ReceiveUln302.json +0 -1006
  111. package/deployments/bsc-sandbox-local/ReceiveUln302View.json +0 -478
  112. package/deployments/bsc-sandbox-local/SendUln301.json +0 -1569
  113. package/deployments/bsc-sandbox-local/SimpleMessageLib.json +0 -708
  114. package/deployments/bsc-sandbox-local/TreasuryFeeHandler.json +0 -125
  115. package/deployments/tron-sandbox-local/DVN.json +0 -1864
  116. package/deployments/tron-sandbox-local/DVNDecompressor.json +0 -500
  117. package/deployments/tron-sandbox-local/DVNFeeLib.json +0 -398
  118. package/deployments/tron-sandbox-local/PriceFeed.json +0 -890
  119. package/deployments/tron-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  120. package/deployments/tron-sandbox-local/PriceFeed_Implementation.json +0 -912
  121. package/deployments/tron-sandbox-local/PriceFeed_Proxy.json +0 -244
@@ -1,1006 +0,0 @@
1
- {
2
- "address": "0x05Aa229Aec102f78CE0E852A812a388F076Aa555",
3
- "abi": [
4
- {
5
- "inputs": [
6
- {
7
- "internalType": "address",
8
- "name": "_endpoint",
9
- "type": "address"
10
- }
11
- ],
12
- "stateMutability": "nonpayable",
13
- "type": "constructor"
14
- },
15
- {
16
- "inputs": [],
17
- "name": "LZ_MessageLib_OnlyEndpoint",
18
- "type": "error"
19
- },
20
- {
21
- "inputs": [],
22
- "name": "LZ_ULN_AtLeastOneDVN",
23
- "type": "error"
24
- },
25
- {
26
- "inputs": [
27
- {
28
- "internalType": "uint32",
29
- "name": "configType",
30
- "type": "uint32"
31
- }
32
- ],
33
- "name": "LZ_ULN_InvalidConfigType",
34
- "type": "error"
35
- },
36
- {
37
- "inputs": [],
38
- "name": "LZ_ULN_InvalidConfirmations",
39
- "type": "error"
40
- },
41
- {
42
- "inputs": [],
43
- "name": "LZ_ULN_InvalidEid",
44
- "type": "error"
45
- },
46
- {
47
- "inputs": [],
48
- "name": "LZ_ULN_InvalidOptionalDVNCount",
49
- "type": "error"
50
- },
51
- {
52
- "inputs": [],
53
- "name": "LZ_ULN_InvalidOptionalDVNThreshold",
54
- "type": "error"
55
- },
56
- {
57
- "inputs": [],
58
- "name": "LZ_ULN_InvalidPacketHeader",
59
- "type": "error"
60
- },
61
- {
62
- "inputs": [],
63
- "name": "LZ_ULN_InvalidPacketVersion",
64
- "type": "error"
65
- },
66
- {
67
- "inputs": [],
68
- "name": "LZ_ULN_InvalidRequiredDVNCount",
69
- "type": "error"
70
- },
71
- {
72
- "inputs": [],
73
- "name": "LZ_ULN_Unsorted",
74
- "type": "error"
75
- },
76
- {
77
- "inputs": [
78
- {
79
- "internalType": "uint32",
80
- "name": "eid",
81
- "type": "uint32"
82
- }
83
- ],
84
- "name": "LZ_ULN_UnsupportedEid",
85
- "type": "error"
86
- },
87
- {
88
- "inputs": [],
89
- "name": "LZ_ULN_Verifying",
90
- "type": "error"
91
- },
92
- {
93
- "anonymous": false,
94
- "inputs": [
95
- {
96
- "components": [
97
- {
98
- "internalType": "uint32",
99
- "name": "eid",
100
- "type": "uint32"
101
- },
102
- {
103
- "components": [
104
- {
105
- "internalType": "uint64",
106
- "name": "confirmations",
107
- "type": "uint64"
108
- },
109
- {
110
- "internalType": "uint8",
111
- "name": "requiredDVNCount",
112
- "type": "uint8"
113
- },
114
- {
115
- "internalType": "uint8",
116
- "name": "optionalDVNCount",
117
- "type": "uint8"
118
- },
119
- {
120
- "internalType": "uint8",
121
- "name": "optionalDVNThreshold",
122
- "type": "uint8"
123
- },
124
- {
125
- "internalType": "address[]",
126
- "name": "requiredDVNs",
127
- "type": "address[]"
128
- },
129
- {
130
- "internalType": "address[]",
131
- "name": "optionalDVNs",
132
- "type": "address[]"
133
- }
134
- ],
135
- "internalType": "struct UlnConfig",
136
- "name": "config",
137
- "type": "tuple"
138
- }
139
- ],
140
- "indexed": false,
141
- "internalType": "struct SetDefaultUlnConfigParam[]",
142
- "name": "params",
143
- "type": "tuple[]"
144
- }
145
- ],
146
- "name": "DefaultUlnConfigsSet",
147
- "type": "event"
148
- },
149
- {
150
- "anonymous": false,
151
- "inputs": [
152
- {
153
- "indexed": true,
154
- "internalType": "address",
155
- "name": "previousOwner",
156
- "type": "address"
157
- },
158
- {
159
- "indexed": true,
160
- "internalType": "address",
161
- "name": "newOwner",
162
- "type": "address"
163
- }
164
- ],
165
- "name": "OwnershipTransferred",
166
- "type": "event"
167
- },
168
- {
169
- "anonymous": false,
170
- "inputs": [
171
- {
172
- "indexed": false,
173
- "internalType": "address",
174
- "name": "dvn",
175
- "type": "address"
176
- },
177
- {
178
- "indexed": false,
179
- "internalType": "bytes",
180
- "name": "header",
181
- "type": "bytes"
182
- },
183
- {
184
- "indexed": false,
185
- "internalType": "uint256",
186
- "name": "confirmations",
187
- "type": "uint256"
188
- },
189
- {
190
- "indexed": false,
191
- "internalType": "bytes32",
192
- "name": "proofHash",
193
- "type": "bytes32"
194
- }
195
- ],
196
- "name": "PayloadVerified",
197
- "type": "event"
198
- },
199
- {
200
- "anonymous": false,
201
- "inputs": [
202
- {
203
- "indexed": false,
204
- "internalType": "address",
205
- "name": "oapp",
206
- "type": "address"
207
- },
208
- {
209
- "indexed": false,
210
- "internalType": "uint32",
211
- "name": "eid",
212
- "type": "uint32"
213
- },
214
- {
215
- "components": [
216
- {
217
- "internalType": "uint64",
218
- "name": "confirmations",
219
- "type": "uint64"
220
- },
221
- {
222
- "internalType": "uint8",
223
- "name": "requiredDVNCount",
224
- "type": "uint8"
225
- },
226
- {
227
- "internalType": "uint8",
228
- "name": "optionalDVNCount",
229
- "type": "uint8"
230
- },
231
- {
232
- "internalType": "uint8",
233
- "name": "optionalDVNThreshold",
234
- "type": "uint8"
235
- },
236
- {
237
- "internalType": "address[]",
238
- "name": "requiredDVNs",
239
- "type": "address[]"
240
- },
241
- {
242
- "internalType": "address[]",
243
- "name": "optionalDVNs",
244
- "type": "address[]"
245
- }
246
- ],
247
- "indexed": false,
248
- "internalType": "struct UlnConfig",
249
- "name": "config",
250
- "type": "tuple"
251
- }
252
- ],
253
- "name": "UlnConfigSet",
254
- "type": "event"
255
- },
256
- {
257
- "inputs": [
258
- {
259
- "internalType": "bytes",
260
- "name": "_packetHeader",
261
- "type": "bytes"
262
- },
263
- {
264
- "internalType": "uint32",
265
- "name": "_localEid",
266
- "type": "uint32"
267
- }
268
- ],
269
- "name": "assertHeader",
270
- "outputs": [],
271
- "stateMutability": "pure",
272
- "type": "function"
273
- },
274
- {
275
- "inputs": [
276
- {
277
- "internalType": "bytes",
278
- "name": "_packetHeader",
279
- "type": "bytes"
280
- },
281
- {
282
- "internalType": "bytes32",
283
- "name": "_payloadHash",
284
- "type": "bytes32"
285
- }
286
- ],
287
- "name": "commitVerification",
288
- "outputs": [],
289
- "stateMutability": "nonpayable",
290
- "type": "function"
291
- },
292
- {
293
- "inputs": [
294
- {
295
- "internalType": "address",
296
- "name": "_oapp",
297
- "type": "address"
298
- },
299
- {
300
- "internalType": "uint32",
301
- "name": "_remoteEid",
302
- "type": "uint32"
303
- }
304
- ],
305
- "name": "getAppUlnConfig",
306
- "outputs": [
307
- {
308
- "components": [
309
- {
310
- "internalType": "uint64",
311
- "name": "confirmations",
312
- "type": "uint64"
313
- },
314
- {
315
- "internalType": "uint8",
316
- "name": "requiredDVNCount",
317
- "type": "uint8"
318
- },
319
- {
320
- "internalType": "uint8",
321
- "name": "optionalDVNCount",
322
- "type": "uint8"
323
- },
324
- {
325
- "internalType": "uint8",
326
- "name": "optionalDVNThreshold",
327
- "type": "uint8"
328
- },
329
- {
330
- "internalType": "address[]",
331
- "name": "requiredDVNs",
332
- "type": "address[]"
333
- },
334
- {
335
- "internalType": "address[]",
336
- "name": "optionalDVNs",
337
- "type": "address[]"
338
- }
339
- ],
340
- "internalType": "struct UlnConfig",
341
- "name": "",
342
- "type": "tuple"
343
- }
344
- ],
345
- "stateMutability": "view",
346
- "type": "function"
347
- },
348
- {
349
- "inputs": [
350
- {
351
- "internalType": "uint32",
352
- "name": "_eid",
353
- "type": "uint32"
354
- },
355
- {
356
- "internalType": "address",
357
- "name": "_oapp",
358
- "type": "address"
359
- },
360
- {
361
- "internalType": "uint32",
362
- "name": "_configType",
363
- "type": "uint32"
364
- }
365
- ],
366
- "name": "getConfig",
367
- "outputs": [
368
- {
369
- "internalType": "bytes",
370
- "name": "",
371
- "type": "bytes"
372
- }
373
- ],
374
- "stateMutability": "view",
375
- "type": "function"
376
- },
377
- {
378
- "inputs": [
379
- {
380
- "internalType": "address",
381
- "name": "_oapp",
382
- "type": "address"
383
- },
384
- {
385
- "internalType": "uint32",
386
- "name": "_remoteEid",
387
- "type": "uint32"
388
- }
389
- ],
390
- "name": "getUlnConfig",
391
- "outputs": [
392
- {
393
- "components": [
394
- {
395
- "internalType": "uint64",
396
- "name": "confirmations",
397
- "type": "uint64"
398
- },
399
- {
400
- "internalType": "uint8",
401
- "name": "requiredDVNCount",
402
- "type": "uint8"
403
- },
404
- {
405
- "internalType": "uint8",
406
- "name": "optionalDVNCount",
407
- "type": "uint8"
408
- },
409
- {
410
- "internalType": "uint8",
411
- "name": "optionalDVNThreshold",
412
- "type": "uint8"
413
- },
414
- {
415
- "internalType": "address[]",
416
- "name": "requiredDVNs",
417
- "type": "address[]"
418
- },
419
- {
420
- "internalType": "address[]",
421
- "name": "optionalDVNs",
422
- "type": "address[]"
423
- }
424
- ],
425
- "internalType": "struct UlnConfig",
426
- "name": "rtnConfig",
427
- "type": "tuple"
428
- }
429
- ],
430
- "stateMutability": "view",
431
- "type": "function"
432
- },
433
- {
434
- "inputs": [
435
- {
436
- "internalType": "bytes32",
437
- "name": "headerHash",
438
- "type": "bytes32"
439
- },
440
- {
441
- "internalType": "bytes32",
442
- "name": "payloadHash",
443
- "type": "bytes32"
444
- },
445
- {
446
- "internalType": "address",
447
- "name": "dvn",
448
- "type": "address"
449
- }
450
- ],
451
- "name": "hashLookup",
452
- "outputs": [
453
- {
454
- "internalType": "bool",
455
- "name": "submitted",
456
- "type": "bool"
457
- },
458
- {
459
- "internalType": "uint64",
460
- "name": "confirmations",
461
- "type": "uint64"
462
- }
463
- ],
464
- "stateMutability": "view",
465
- "type": "function"
466
- },
467
- {
468
- "inputs": [
469
- {
470
- "internalType": "uint32",
471
- "name": "_eid",
472
- "type": "uint32"
473
- }
474
- ],
475
- "name": "isSupportedEid",
476
- "outputs": [
477
- {
478
- "internalType": "bool",
479
- "name": "",
480
- "type": "bool"
481
- }
482
- ],
483
- "stateMutability": "view",
484
- "type": "function"
485
- },
486
- {
487
- "inputs": [],
488
- "name": "messageLibType",
489
- "outputs": [
490
- {
491
- "internalType": "enum MessageLibType",
492
- "name": "",
493
- "type": "uint8"
494
- }
495
- ],
496
- "stateMutability": "pure",
497
- "type": "function"
498
- },
499
- {
500
- "inputs": [],
501
- "name": "owner",
502
- "outputs": [
503
- {
504
- "internalType": "address",
505
- "name": "",
506
- "type": "address"
507
- }
508
- ],
509
- "stateMutability": "view",
510
- "type": "function"
511
- },
512
- {
513
- "inputs": [],
514
- "name": "renounceOwnership",
515
- "outputs": [],
516
- "stateMutability": "nonpayable",
517
- "type": "function"
518
- },
519
- {
520
- "inputs": [
521
- {
522
- "internalType": "address",
523
- "name": "_oapp",
524
- "type": "address"
525
- },
526
- {
527
- "components": [
528
- {
529
- "internalType": "uint32",
530
- "name": "eid",
531
- "type": "uint32"
532
- },
533
- {
534
- "internalType": "uint32",
535
- "name": "configType",
536
- "type": "uint32"
537
- },
538
- {
539
- "internalType": "bytes",
540
- "name": "config",
541
- "type": "bytes"
542
- }
543
- ],
544
- "internalType": "struct SetConfigParam[]",
545
- "name": "_params",
546
- "type": "tuple[]"
547
- }
548
- ],
549
- "name": "setConfig",
550
- "outputs": [],
551
- "stateMutability": "nonpayable",
552
- "type": "function"
553
- },
554
- {
555
- "inputs": [
556
- {
557
- "components": [
558
- {
559
- "internalType": "uint32",
560
- "name": "eid",
561
- "type": "uint32"
562
- },
563
- {
564
- "components": [
565
- {
566
- "internalType": "uint64",
567
- "name": "confirmations",
568
- "type": "uint64"
569
- },
570
- {
571
- "internalType": "uint8",
572
- "name": "requiredDVNCount",
573
- "type": "uint8"
574
- },
575
- {
576
- "internalType": "uint8",
577
- "name": "optionalDVNCount",
578
- "type": "uint8"
579
- },
580
- {
581
- "internalType": "uint8",
582
- "name": "optionalDVNThreshold",
583
- "type": "uint8"
584
- },
585
- {
586
- "internalType": "address[]",
587
- "name": "requiredDVNs",
588
- "type": "address[]"
589
- },
590
- {
591
- "internalType": "address[]",
592
- "name": "optionalDVNs",
593
- "type": "address[]"
594
- }
595
- ],
596
- "internalType": "struct UlnConfig",
597
- "name": "config",
598
- "type": "tuple"
599
- }
600
- ],
601
- "internalType": "struct SetDefaultUlnConfigParam[]",
602
- "name": "_params",
603
- "type": "tuple[]"
604
- }
605
- ],
606
- "name": "setDefaultUlnConfigs",
607
- "outputs": [],
608
- "stateMutability": "nonpayable",
609
- "type": "function"
610
- },
611
- {
612
- "inputs": [
613
- {
614
- "internalType": "bytes4",
615
- "name": "_interfaceId",
616
- "type": "bytes4"
617
- }
618
- ],
619
- "name": "supportsInterface",
620
- "outputs": [
621
- {
622
- "internalType": "bool",
623
- "name": "",
624
- "type": "bool"
625
- }
626
- ],
627
- "stateMutability": "view",
628
- "type": "function"
629
- },
630
- {
631
- "inputs": [
632
- {
633
- "internalType": "address",
634
- "name": "newOwner",
635
- "type": "address"
636
- }
637
- ],
638
- "name": "transferOwnership",
639
- "outputs": [],
640
- "stateMutability": "nonpayable",
641
- "type": "function"
642
- },
643
- {
644
- "inputs": [
645
- {
646
- "components": [
647
- {
648
- "internalType": "uint64",
649
- "name": "confirmations",
650
- "type": "uint64"
651
- },
652
- {
653
- "internalType": "uint8",
654
- "name": "requiredDVNCount",
655
- "type": "uint8"
656
- },
657
- {
658
- "internalType": "uint8",
659
- "name": "optionalDVNCount",
660
- "type": "uint8"
661
- },
662
- {
663
- "internalType": "uint8",
664
- "name": "optionalDVNThreshold",
665
- "type": "uint8"
666
- },
667
- {
668
- "internalType": "address[]",
669
- "name": "requiredDVNs",
670
- "type": "address[]"
671
- },
672
- {
673
- "internalType": "address[]",
674
- "name": "optionalDVNs",
675
- "type": "address[]"
676
- }
677
- ],
678
- "internalType": "struct UlnConfig",
679
- "name": "_config",
680
- "type": "tuple"
681
- },
682
- {
683
- "internalType": "bytes32",
684
- "name": "_headerHash",
685
- "type": "bytes32"
686
- },
687
- {
688
- "internalType": "bytes32",
689
- "name": "_payloadHash",
690
- "type": "bytes32"
691
- }
692
- ],
693
- "name": "verifiable",
694
- "outputs": [
695
- {
696
- "internalType": "bool",
697
- "name": "",
698
- "type": "bool"
699
- }
700
- ],
701
- "stateMutability": "view",
702
- "type": "function"
703
- },
704
- {
705
- "inputs": [
706
- {
707
- "internalType": "bytes",
708
- "name": "_packetHeader",
709
- "type": "bytes"
710
- },
711
- {
712
- "internalType": "bytes32",
713
- "name": "_payloadHash",
714
- "type": "bytes32"
715
- },
716
- {
717
- "internalType": "uint64",
718
- "name": "_confirmations",
719
- "type": "uint64"
720
- }
721
- ],
722
- "name": "verify",
723
- "outputs": [],
724
- "stateMutability": "nonpayable",
725
- "type": "function"
726
- },
727
- {
728
- "inputs": [],
729
- "name": "version",
730
- "outputs": [
731
- {
732
- "internalType": "uint64",
733
- "name": "major",
734
- "type": "uint64"
735
- },
736
- {
737
- "internalType": "uint8",
738
- "name": "minor",
739
- "type": "uint8"
740
- },
741
- {
742
- "internalType": "uint8",
743
- "name": "endpointVersion",
744
- "type": "uint8"
745
- }
746
- ],
747
- "stateMutability": "pure",
748
- "type": "function"
749
- }
750
- ],
751
- "transactionHash": "0x797203f4ef377e85bef01f4d808940da09f580c58b84f90ed64c7395b94f2133",
752
- "receipt": {
753
- "to": null,
754
- "from": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
755
- "contractAddress": "0x05Aa229Aec102f78CE0E852A812a388F076Aa555",
756
- "transactionIndex": 0,
757
- "gasUsed": "2448542",
758
- "logsBloom": "0x00000000000000000002010000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000010000000000000000000000000800030000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000001000000000000000000000000000000",
759
- "blockHash": "0x379fcab0658b7134aed96ab81173bdd18c413256a58e8be1451e25a1d488a722",
760
- "transactionHash": "0x797203f4ef377e85bef01f4d808940da09f580c58b84f90ed64c7395b94f2133",
761
- "logs": [
762
- {
763
- "transactionIndex": 0,
764
- "blockNumber": 15,
765
- "transactionHash": "0x797203f4ef377e85bef01f4d808940da09f580c58b84f90ed64c7395b94f2133",
766
- "address": "0x05Aa229Aec102f78CE0E852A812a388F076Aa555",
767
- "topics": [
768
- "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0",
769
- "0x0000000000000000000000000000000000000000000000000000000000000000",
770
- "0x00000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c8"
771
- ],
772
- "data": "0x",
773
- "logIndex": 0,
774
- "blockHash": "0x379fcab0658b7134aed96ab81173bdd18c413256a58e8be1451e25a1d488a722"
775
- }
776
- ],
777
- "blockNumber": 15,
778
- "cumulativeGasUsed": "2448542",
779
- "status": 1,
780
- "byzantium": true
781
- },
782
- "args": [
783
- "0x59F2f1fCfE2474fD5F0b9BA1E73ca90b143Eb8d0"
784
- ],
785
- "numDeployments": 1,
786
- "solcInputHash": "a02895da4e26717c8c5ac06356be07de",
787
- "bytecode": "0x60c06040523480156200001157600080fd5b5060405162002c9f38038062002c9f833981016040819052620000349162000116565b8080816001600160a01b031663416ecebf6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000075573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009b919062000148565b620000a633620000c6565b6001600160a01b0390911660805263ffffffff1660a05250620001709050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156200012957600080fd5b81516001600160a01b03811681146200014157600080fd5b9392505050565b6000602082840312156200015b57600080fd5b815163ffffffff811681146200014157600080fd5b60805160a051612b026200019d600039600061036e01526000818161049201526104fb0152612b026000f3fe608060405234801561001057600080fd5b506004361061011b5760003560e01c806343ea4fa9116100b25780638da5cb5b11610081578063c40ff83511610066578063c40ff835146102c0578063e084d952146102d3578063f2fde38b146102e657600080fd5b80638da5cb5b146102785780639c33abf7146102a057600080fd5b806343ea4fa91461022a57806354fd4d501461023d5780636750cd4c1461025d578063715018a61461027057600080fd5b806320efd722116100ee57806320efd7221461017f57806329460b0b1461019257806339e3f938146101a55780633c782a52146101c557600080fd5b806301ffc9a7146101205780630223536e146101485780630894edf11461015d5780631881d94d14610170575b600080fd5b61013361012e366004611cc0565b6102f9565b60405190151581526020015b60405180910390f35b61015b610156366004611d68565b610355565b005b61015b61016b366004611dc5565b610367565b600160405161013f9190611e11565b61015b61018d366004611ebb565b6104f9565b61015b6101a0366004611f0e565b61065a565b6101b86101b3366004611f64565b61083f565b60405161013f919061205b565b61020a6101d336600461206e565b600260209081526000938452604080852082529284528284209052825290205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff90911660208301520161013f565b6101b8610238366004611f64565b6109e0565b60408051600381526000602082015260029181019190915260600161013f565b61013361026b3660046120a3565b610d9a565b61015b610da5565b60005460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161013f565b6102b36102ae3660046120be565b610db9565b60405161013f91906120f8565b61015b6102ce366004612165565b610e59565b6101336102e136600461238f565b610e69565b61015b6102f43660046123dd565b610e7e565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f0ab7be9f00000000000000000000000000000000000000000000000000000000148061034f575061034f82610f35565b92915050565b61036184848484610fcc565b50505050565b61039283837f00000000000000000000000000000000000000000000000000000000000000006110e0565b600061039e84846111ae565b905060006103ac85856111c0565b905060006103ba83836109e0565b90506103de8187876040516103d09291906123f8565b6040518091039020866111e3565b600060405180606001604052808463ffffffff1681526020016104018989611392565b815260200161041089896113ab565b67ffffffffffffffff908116909152604080517fa825d747000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152608482018890529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a825d7479060a401600060405180830381600087803b1580156104d857600080fd5b505af11580156104ec573d6000803e3d6000fd5b5050505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163314610568576040517f467409c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610361573683838381811061058657610586612408565b90506020028101906105989190612437565b90506105af6105aa60208301836120a3565b6113ce565b60026105c160408301602084016120a3565b63ffffffff1603610601576105fc6105dc60208301836120a3565b866105ea6040850185612475565b8101906105f791906124da565b611415565b610651565b61061160408201602083016120a3565b6040517fba97c1fa00000000000000000000000000000000000000000000000000000000815263ffffffff90911660048201526024015b60405180910390fd5b5060010161056b565b61066261146b565b60005b81811015610801573683838381811061068057610680612408565b9050602002810190610692919061250f565b905060ff6106a36020830183612543565b6106b4906040810190602001612577565b60ff16036106ee576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff6106fd6020830183612543565b61070e906060810190604001612577565b60ff1603610748576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff61075e6020830183612543565b61076c906020810190612592565b67ffffffffffffffff16036107ad576040517f503667ae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107cb6107bd6020830183612543565b6107c6906125ad565b6114ec565b6107f860006107dd60208401846120a3565b6107ea6020850185612543565b6107f3906125ad565b61153d565b50600101610665565b507faaf3aaa0c11056e86ac56eb653e25b005ca1a7d4dcd21ba24647f7ab63f3b5608282604051610833929190612669565b60405180910390a15050565b6040805160c0810182526000808252602082018190529181018290526060808201929092526080810182905260a081019190915273ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020835160c081018552815467ffffffffffffffff8116825260ff680100000000000000008204811683860152690100000000000000000082048116838801526a0100000000000000000000909104166060820152928101805485518185028101850190965280865293949193608086019383018282801561096057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610935575b50505050508152602001600282018054806020026020016040519081016040528092919081815260200182805480156109cf57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116109a4575b505050505081525050905092915050565b6040805160c0810182526000808252602080830182905282840182905260608084018390526080840181905260a084015263ffffffff85168083527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49825284832073ffffffffffffffffffffffffffffffffffffffff88168452600183528584209184529152929020805491929167ffffffffffffffff1680610a9057825467ffffffffffffffff168452610aaf565b67ffffffffffffffff81811614610aaf5767ffffffffffffffff811684525b815468010000000000000000900460ff16610b6557825468010000000000000000900460ff1615610b605782600101805480602002602001604051908101604052809291908181526020018280548015610b3f57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610b14575b50505050506080850152825468010000000000000000900460ff1660208501525b610c03565b815468010000000000000000900460ff90811614610c035781600101805480602002602001604051908101604052809291908181526020018280548015610be257602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610bb7575b50505050506080850152815468010000000000000000900460ff1660208501525b81546901000000000000000000900460ff16610cd25782546901000000000000000000900460ff1615610ccd5782600201805480602002602001604051908101604052809291908181526020018280548015610c9557602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610c6a575b505050505060a0850152825460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610d88565b81546901000000000000000000900460ff90811614610d885781600201805480602002602001604051908101604052809291908181526020018280548015610d5057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610d25575b505050505060a0850152815460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610d91846114ec565b50505092915050565b600061034f826118d1565b610dad61146b565b610db76000611938565b565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe63ffffffff831601610e1857610df283856109e0565b604051602001610e02919061205b565b6040516020818303038152906040529050610e52565b6040517fba97c1fa00000000000000000000000000000000000000000000000000000000815263ffffffff83166004820152602401610648565b9392505050565b610e648383836110e0565b505050565b6000610e768484846119ad565b949350505050565b610e8661146b565b73ffffffffffffffffffffffffffffffffffffffff8116610f29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610648565b610f3281611938565b50565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f97f0258400000000000000000000000000000000000000000000000000000000148061034f57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461034f565b6040805180820182526001815267ffffffffffffffff831660208201529051600290600090610ffe90889088906123f8565b6040805191829003909120825260208083019390935290810160009081208682528352818120338083529084529082902084518154959094015167ffffffffffffffff16610100027fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909516949094179290921790925590517f2cb0eed7538baeae4c6fde038c0fd0384d27de0dd55a228c65847bda6aa1ab56916110d2918790879086908890612806565b60405180910390a150505050565b6051821461111a576040517fc9bf37b700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016111268484611ab6565b60ff1614611160576040517f3a9ae7b900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8063ffffffff166111718484611ad8565b63ffffffff1614610e64576040517f42d2c97e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610e526111bd8484611ae8565b90565b60006111d0600d6009848661288b565b6111d9916128b5565b60e01c9392505050565b6111ee8383836119ad565b611224576040517f4c3118d400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602083015160ff16156112dc5760005b836020015160ff168160ff1610156112da57600083815260026020908152604080832085845290915281206080860151805191929160ff851690811061127c5761127c612408565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000169055600101611234565b505b604083015160ff1615610e645760005b836040015160ff168160ff161015610361576000838152600260209081526040808320858452909152812060a0860151805191929160ff851690811061133457611334612408565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000001690556001016112ec565b60006113a2602d600d848661288b565b610e52916128fd565b60006113bb60096001848661288b565b6113c491612939565b60c01c9392505050565b6113d7816118d1565b610f32576040517ff0c10d0400000000000000000000000000000000000000000000000000000000815263ffffffff82166004820152602401610648565b61142082848361153d565b61142a82846109e0565b507f82118522aa536ac0e96cc5c689407ae42b89d592aa133890a01f1509842f508182848360405161145e9392919061297f565b60405180910390a1505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610db7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610648565b602081015160ff161580156115065750606081015160ff16155b15610f32576040517fce2c375100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602081015160ff90811614806115585750602081015160ff16155b1561159f576080810151511561159a576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61161e565b806020015160ff168160800151511415806115da575060026115c3600160ff6129e9565b6115cd9190612a02565b60ff16816020015160ff16115b15611611576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61161e8160800151611af8565b604081015160ff90811614806116395750604081015160ff16155b156116bf5760a0810151511561167b576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff16156116ba576040517f38682fa900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611796565b806040015160ff168160a00151511415806116fa575060026116e3600160ff6129e9565b6116ed9190612a02565b60ff16816040015160ff16115b15611731576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff1615806117525750806040015160ff16816060015160ff16115b15611789576040517f38682fa900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6117968160a00151611af8565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020845181548684015195870151606088015167ffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909216919091176801000000000000000060ff97881602177fffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffff166901000000000000000000918716919091027fffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff16176a01000000000000000000009590911694909402939093178355608084015180518594936118ad93908501920190611c21565b5060a082015180516118c9916002840191602090910190611c21565b505050505050565b63ffffffff811660009081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4960205260408120805468010000000000000000900460ff16151580610e525750546a0100000000000000000000900460ff16151592915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b602083015160009060ff1615611a305760005b846020015160ff168160ff161015611a1857611a0285608001518260ff16815181106119ee576119ee612408565b602002602001015185858860000151611b92565b611a10576000915050610e52565b6001016119c0565b50836040015160ff16600003611a3057506001610e52565b606084015160005b856040015160ff168160ff161015611aaa57611a7a8660a001518260ff1681518110611a6657611a66612408565b602002602001015186868960000151611b92565b15611aa25781611a8981612a4b565b9250508160ff16600003611aa257600192505050610e52565b600101611a38565b50600095945050505050565b6000611ac5600182848661288b565b611ace91612a86565b60f81c9392505050565b60006111d06031602d848661288b565b60006113a260516031848661288b565b6000805b8251811015610e64576000838281518110611b1957611b19612408565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611b88576040517f447516e100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9150600101611afc565b6000838152600260209081526040808320858452825280832073ffffffffffffffffffffffffffffffffffffffff88168452825280832081518083019092525460ff811615801580845261010090920467ffffffffffffffff16938301939093529091611c1757508267ffffffffffffffff16816020015167ffffffffffffffff1610155b9695505050505050565b828054828255906000526020600020908101928215611c9b579160200282015b82811115611c9b57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611c41565b50611ca7929150611cab565b5090565b5b80821115611ca75760008155600101611cac565b600060208284031215611cd257600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610e5257600080fd5b60008083601f840112611d1457600080fd5b50813567ffffffffffffffff811115611d2c57600080fd5b602083019150836020828501011115611d4457600080fd5b9250929050565b803567ffffffffffffffff81168114611d6357600080fd5b919050565b60008060008060608587031215611d7e57600080fd5b843567ffffffffffffffff811115611d9557600080fd5b611da187828801611d02565b90955093505060208501359150611dba60408601611d4b565b905092959194509250565b600080600060408486031215611dda57600080fd5b833567ffffffffffffffff811115611df157600080fd5b611dfd86828701611d02565b909790965060209590950135949350505050565b6020810160038310611e4c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b803573ffffffffffffffffffffffffffffffffffffffff81168114611d6357600080fd5b60008083601f840112611e8857600080fd5b50813567ffffffffffffffff811115611ea057600080fd5b6020830191508360208260051b8501011115611d4457600080fd5b600080600060408486031215611ed057600080fd5b611ed984611e52565b9250602084013567ffffffffffffffff811115611ef557600080fd5b611f0186828701611e76565b9497909650939450505050565b60008060208385031215611f2157600080fd5b823567ffffffffffffffff811115611f3857600080fd5b611f4485828601611e76565b90969095509350505050565b803563ffffffff81168114611d6357600080fd5b60008060408385031215611f7757600080fd5b611f8083611e52565b9150611f8e60208401611f50565b90509250929050565b60008151808452602080850194506020840160005b83811015611fde57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611fac565b509495945050505050565b67ffffffffffffffff815116825260ff602082015116602083015260ff604082015116604083015260ff60608201511660608301526000608082015160c0608085015261203960c0850182611f97565b905060a083015184820360a08601526120528282611f97565b95945050505050565b602081526000610e526020830184611fe9565b60008060006060848603121561208357600080fd5b833592506020840135915061209a60408501611e52565b90509250925092565b6000602082840312156120b557600080fd5b610e5282611f50565b6000806000606084860312156120d357600080fd5b6120dc84611f50565b92506120ea60208501611e52565b915061209a60408501611f50565b60006020808352835180602085015260005b818110156121265785810183015185820160400152820161210a565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b60008060006040848603121561217a57600080fd5b833567ffffffffffffffff81111561219157600080fd5b61219d86828701611d02565b909450925061209a905060208501611f50565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715612202576122026121b0565b60405290565b803560ff81168114611d6357600080fd5b600082601f83011261222a57600080fd5b8135602067ffffffffffffffff80831115612247576122476121b0565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110848211171561228a5761228a6121b0565b60405293845260208187018101949081019250878511156122aa57600080fd5b6020870191505b848210156122d1576122c282611e52565b835291830191908301906122b1565b979650505050505050565b600060c082840312156122ee57600080fd5b6122f66121df565b905061230182611d4b565b815261230f60208301612208565b602082015261232060408301612208565b604082015261233160608301612208565b6060820152608082013567ffffffffffffffff8082111561235157600080fd5b61235d85838601612219565b608084015260a084013591508082111561237657600080fd5b5061238384828501612219565b60a08301525092915050565b6000806000606084860312156123a457600080fd5b833567ffffffffffffffff8111156123bb57600080fd5b6123c7868287016122dc565b9660208601359650604090950135949350505050565b6000602082840312156123ef57600080fd5b610e5282611e52565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa183360301811261246b57600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126124aa57600080fd5b83018035915067ffffffffffffffff8211156124c557600080fd5b602001915036819003821315611d4457600080fd5b6000602082840312156124ec57600080fd5b813567ffffffffffffffff81111561250357600080fd5b610e76848285016122dc565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261246b57600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261246b57600080fd5b60006020828403121561258957600080fd5b610e5282612208565b6000602082840312156125a457600080fd5b610e5282611d4b565b600061034f36836122dc565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126125ee57600080fd5b830160208101925035905067ffffffffffffffff81111561260e57600080fd5b8060051b3603821315611d4457600080fd5b8183526000602080850194508260005b85811015611fde5773ffffffffffffffffffffffffffffffffffffffff61265683611e52565b1687529582019590820190600101612630565b60208082528181018390526000906040808401600586901b8501820187855b888110156127f8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08089850301855282357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c36030181126126ea57600080fd5b8b0163ffffffff6126fa82611f50565b168552878101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4182360301811261273157600080fd5b8589018890520167ffffffffffffffff61274a82611d4b565b168786015261275a888201612208565b606060ff808316828901526127708a8501612208565b92506080818416818a0152612786838601612208565b935060a09250818416838a015261279f818601866125b9565b60c08b810152945091506127ba905061010089018483612620565b9250506127c9818401846125b9565b93509050838783030160e08801526127e2828483612620565b978a019796505050928701925050600101612688565b509098975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8616815260806020820152836080820152838560a0830137600060a08583010152600060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f870116830101905067ffffffffffffffff841660408301528260608301529695505050505050565b6000808585111561289b57600080fd5b838611156128a857600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156128f55780818660040360031b1b83161692505b505092915050565b8035602083101561034f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffffffffffffffff00000000000000000000000000000000000000000000000081358181169160088510156128f55760089490940360031b84901b1690921692915050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff831660208201526060604082015260006120526060830184611fe9565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff828116828216039081111561034f5761034f6129ba565b600060ff831680612a3c577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8060ff84160491505092915050565b600060ff821680612a5e57612a5e6129ba565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156128f55760019490940360031b84901b169092169291505056fea264697066735822122089779ddf355286c32eeb3fc47b72cbbd5c19a6abb67086e252341f8d077313bc64736f6c63430008160033",
788
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061011b5760003560e01c806343ea4fa9116100b25780638da5cb5b11610081578063c40ff83511610066578063c40ff835146102c0578063e084d952146102d3578063f2fde38b146102e657600080fd5b80638da5cb5b146102785780639c33abf7146102a057600080fd5b806343ea4fa91461022a57806354fd4d501461023d5780636750cd4c1461025d578063715018a61461027057600080fd5b806320efd722116100ee57806320efd7221461017f57806329460b0b1461019257806339e3f938146101a55780633c782a52146101c557600080fd5b806301ffc9a7146101205780630223536e146101485780630894edf11461015d5780631881d94d14610170575b600080fd5b61013361012e366004611cc0565b6102f9565b60405190151581526020015b60405180910390f35b61015b610156366004611d68565b610355565b005b61015b61016b366004611dc5565b610367565b600160405161013f9190611e11565b61015b61018d366004611ebb565b6104f9565b61015b6101a0366004611f0e565b61065a565b6101b86101b3366004611f64565b61083f565b60405161013f919061205b565b61020a6101d336600461206e565b600260209081526000938452604080852082529284528284209052825290205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff90911660208301520161013f565b6101b8610238366004611f64565b6109e0565b60408051600381526000602082015260029181019190915260600161013f565b61013361026b3660046120a3565b610d9a565b61015b610da5565b60005460405173ffffffffffffffffffffffffffffffffffffffff909116815260200161013f565b6102b36102ae3660046120be565b610db9565b60405161013f91906120f8565b61015b6102ce366004612165565b610e59565b6101336102e136600461238f565b610e69565b61015b6102f43660046123dd565b610e7e565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f0ab7be9f00000000000000000000000000000000000000000000000000000000148061034f575061034f82610f35565b92915050565b61036184848484610fcc565b50505050565b61039283837f00000000000000000000000000000000000000000000000000000000000000006110e0565b600061039e84846111ae565b905060006103ac85856111c0565b905060006103ba83836109e0565b90506103de8187876040516103d09291906123f8565b6040518091039020866111e3565b600060405180606001604052808463ffffffff1681526020016104018989611392565b815260200161041089896113ab565b67ffffffffffffffff908116909152604080517fa825d747000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152608482018890529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a825d7479060a401600060405180830381600087803b1580156104d857600080fd5b505af11580156104ec573d6000803e3d6000fd5b5050505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163314610568576040517f467409c300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610361573683838381811061058657610586612408565b90506020028101906105989190612437565b90506105af6105aa60208301836120a3565b6113ce565b60026105c160408301602084016120a3565b63ffffffff1603610601576105fc6105dc60208301836120a3565b866105ea6040850185612475565b8101906105f791906124da565b611415565b610651565b61061160408201602083016120a3565b6040517fba97c1fa00000000000000000000000000000000000000000000000000000000815263ffffffff90911660048201526024015b60405180910390fd5b5060010161056b565b61066261146b565b60005b81811015610801573683838381811061068057610680612408565b9050602002810190610692919061250f565b905060ff6106a36020830183612543565b6106b4906040810190602001612577565b60ff16036106ee576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff6106fd6020830183612543565b61070e906060810190604001612577565b60ff1603610748576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff61075e6020830183612543565b61076c906020810190612592565b67ffffffffffffffff16036107ad576040517f503667ae00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107cb6107bd6020830183612543565b6107c6906125ad565b6114ec565b6107f860006107dd60208401846120a3565b6107ea6020850185612543565b6107f3906125ad565b61153d565b50600101610665565b507faaf3aaa0c11056e86ac56eb653e25b005ca1a7d4dcd21ba24647f7ab63f3b5608282604051610833929190612669565b60405180910390a15050565b6040805160c0810182526000808252602082018190529181018290526060808201929092526080810182905260a081019190915273ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020835160c081018552815467ffffffffffffffff8116825260ff680100000000000000008204811683860152690100000000000000000082048116838801526a0100000000000000000000909104166060820152928101805485518185028101850190965280865293949193608086019383018282801561096057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610935575b50505050508152602001600282018054806020026020016040519081016040528092919081815260200182805480156109cf57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116109a4575b505050505081525050905092915050565b6040805160c0810182526000808252602080830182905282840182905260608084018390526080840181905260a084015263ffffffff85168083527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49825284832073ffffffffffffffffffffffffffffffffffffffff88168452600183528584209184529152929020805491929167ffffffffffffffff1680610a9057825467ffffffffffffffff168452610aaf565b67ffffffffffffffff81811614610aaf5767ffffffffffffffff811684525b815468010000000000000000900460ff16610b6557825468010000000000000000900460ff1615610b605782600101805480602002602001604051908101604052809291908181526020018280548015610b3f57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610b14575b50505050506080850152825468010000000000000000900460ff1660208501525b610c03565b815468010000000000000000900460ff90811614610c035781600101805480602002602001604051908101604052809291908181526020018280548015610be257602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610bb7575b50505050506080850152815468010000000000000000900460ff1660208501525b81546901000000000000000000900460ff16610cd25782546901000000000000000000900460ff1615610ccd5782600201805480602002602001604051908101604052809291908181526020018280548015610c9557602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610c6a575b505050505060a0850152825460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610d88565b81546901000000000000000000900460ff90811614610d885781600201805480602002602001604051908101604052809291908181526020018280548015610d5057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610d25575b505050505060a0850152815460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610d91846114ec565b50505092915050565b600061034f826118d1565b610dad61146b565b610db76000611938565b565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe63ffffffff831601610e1857610df283856109e0565b604051602001610e02919061205b565b6040516020818303038152906040529050610e52565b6040517fba97c1fa00000000000000000000000000000000000000000000000000000000815263ffffffff83166004820152602401610648565b9392505050565b610e648383836110e0565b505050565b6000610e768484846119ad565b949350505050565b610e8661146b565b73ffffffffffffffffffffffffffffffffffffffff8116610f29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610648565b610f3281611938565b50565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f97f0258400000000000000000000000000000000000000000000000000000000148061034f57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461034f565b6040805180820182526001815267ffffffffffffffff831660208201529051600290600090610ffe90889088906123f8565b6040805191829003909120825260208083019390935290810160009081208682528352818120338083529084529082902084518154959094015167ffffffffffffffff16610100027fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909516949094179290921790925590517f2cb0eed7538baeae4c6fde038c0fd0384d27de0dd55a228c65847bda6aa1ab56916110d2918790879086908890612806565b60405180910390a150505050565b6051821461111a576040517fc9bf37b700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60016111268484611ab6565b60ff1614611160576040517f3a9ae7b900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8063ffffffff166111718484611ad8565b63ffffffff1614610e64576040517f42d2c97e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610e526111bd8484611ae8565b90565b60006111d0600d6009848661288b565b6111d9916128b5565b60e01c9392505050565b6111ee8383836119ad565b611224576040517f4c3118d400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602083015160ff16156112dc5760005b836020015160ff168160ff1610156112da57600083815260026020908152604080832085845290915281206080860151805191929160ff851690811061127c5761127c612408565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000169055600101611234565b505b604083015160ff1615610e645760005b836040015160ff168160ff161015610361576000838152600260209081526040808320858452909152812060a0860151805191929160ff851690811061133457611334612408565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000001690556001016112ec565b60006113a2602d600d848661288b565b610e52916128fd565b60006113bb60096001848661288b565b6113c491612939565b60c01c9392505050565b6113d7816118d1565b610f32576040517ff0c10d0400000000000000000000000000000000000000000000000000000000815263ffffffff82166004820152602401610648565b61142082848361153d565b61142a82846109e0565b507f82118522aa536ac0e96cc5c689407ae42b89d592aa133890a01f1509842f508182848360405161145e9392919061297f565b60405180910390a1505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610db7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610648565b602081015160ff161580156115065750606081015160ff16155b15610f32576040517fce2c375100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602081015160ff90811614806115585750602081015160ff16155b1561159f576080810151511561159a576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61161e565b806020015160ff168160800151511415806115da575060026115c3600160ff6129e9565b6115cd9190612a02565b60ff16816020015160ff16115b15611611576040517f83aa17da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61161e8160800151611af8565b604081015160ff90811614806116395750604081015160ff16155b156116bf5760a0810151511561167b576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff16156116ba576040517f38682fa900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611796565b806040015160ff168160a00151511415806116fa575060026116e3600160ff6129e9565b6116ed9190612a02565b60ff16816040015160ff16115b15611731576040517f4221136600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff1615806117525750806040015160ff16816060015160ff16115b15611789576040517f38682fa900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6117968160a00151611af8565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020845181548684015195870151606088015167ffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909216919091176801000000000000000060ff97881602177fffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffff166901000000000000000000918716919091027fffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff16176a01000000000000000000009590911694909402939093178355608084015180518594936118ad93908501920190611c21565b5060a082015180516118c9916002840191602090910190611c21565b505050505050565b63ffffffff811660009081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4960205260408120805468010000000000000000900460ff16151580610e525750546a0100000000000000000000900460ff16151592915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b602083015160009060ff1615611a305760005b846020015160ff168160ff161015611a1857611a0285608001518260ff16815181106119ee576119ee612408565b602002602001015185858860000151611b92565b611a10576000915050610e52565b6001016119c0565b50836040015160ff16600003611a3057506001610e52565b606084015160005b856040015160ff168160ff161015611aaa57611a7a8660a001518260ff1681518110611a6657611a66612408565b602002602001015186868960000151611b92565b15611aa25781611a8981612a4b565b9250508160ff16600003611aa257600192505050610e52565b600101611a38565b50600095945050505050565b6000611ac5600182848661288b565b611ace91612a86565b60f81c9392505050565b60006111d06031602d848661288b565b60006113a260516031848661288b565b6000805b8251811015610e64576000838281518110611b1957611b19612408565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611b88576040517f447516e100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9150600101611afc565b6000838152600260209081526040808320858452825280832073ffffffffffffffffffffffffffffffffffffffff88168452825280832081518083019092525460ff811615801580845261010090920467ffffffffffffffff16938301939093529091611c1757508267ffffffffffffffff16816020015167ffffffffffffffff1610155b9695505050505050565b828054828255906000526020600020908101928215611c9b579160200282015b82811115611c9b57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611c41565b50611ca7929150611cab565b5090565b5b80821115611ca75760008155600101611cac565b600060208284031215611cd257600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610e5257600080fd5b60008083601f840112611d1457600080fd5b50813567ffffffffffffffff811115611d2c57600080fd5b602083019150836020828501011115611d4457600080fd5b9250929050565b803567ffffffffffffffff81168114611d6357600080fd5b919050565b60008060008060608587031215611d7e57600080fd5b843567ffffffffffffffff811115611d9557600080fd5b611da187828801611d02565b90955093505060208501359150611dba60408601611d4b565b905092959194509250565b600080600060408486031215611dda57600080fd5b833567ffffffffffffffff811115611df157600080fd5b611dfd86828701611d02565b909790965060209590950135949350505050565b6020810160038310611e4c577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b91905290565b803573ffffffffffffffffffffffffffffffffffffffff81168114611d6357600080fd5b60008083601f840112611e8857600080fd5b50813567ffffffffffffffff811115611ea057600080fd5b6020830191508360208260051b8501011115611d4457600080fd5b600080600060408486031215611ed057600080fd5b611ed984611e52565b9250602084013567ffffffffffffffff811115611ef557600080fd5b611f0186828701611e76565b9497909650939450505050565b60008060208385031215611f2157600080fd5b823567ffffffffffffffff811115611f3857600080fd5b611f4485828601611e76565b90969095509350505050565b803563ffffffff81168114611d6357600080fd5b60008060408385031215611f7757600080fd5b611f8083611e52565b9150611f8e60208401611f50565b90509250929050565b60008151808452602080850194506020840160005b83811015611fde57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611fac565b509495945050505050565b67ffffffffffffffff815116825260ff602082015116602083015260ff604082015116604083015260ff60608201511660608301526000608082015160c0608085015261203960c0850182611f97565b905060a083015184820360a08601526120528282611f97565b95945050505050565b602081526000610e526020830184611fe9565b60008060006060848603121561208357600080fd5b833592506020840135915061209a60408501611e52565b90509250925092565b6000602082840312156120b557600080fd5b610e5282611f50565b6000806000606084860312156120d357600080fd5b6120dc84611f50565b92506120ea60208501611e52565b915061209a60408501611f50565b60006020808352835180602085015260005b818110156121265785810183015185820160400152820161210a565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b60008060006040848603121561217a57600080fd5b833567ffffffffffffffff81111561219157600080fd5b61219d86828701611d02565b909450925061209a905060208501611f50565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715612202576122026121b0565b60405290565b803560ff81168114611d6357600080fd5b600082601f83011261222a57600080fd5b8135602067ffffffffffffffff80831115612247576122476121b0565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110848211171561228a5761228a6121b0565b60405293845260208187018101949081019250878511156122aa57600080fd5b6020870191505b848210156122d1576122c282611e52565b835291830191908301906122b1565b979650505050505050565b600060c082840312156122ee57600080fd5b6122f66121df565b905061230182611d4b565b815261230f60208301612208565b602082015261232060408301612208565b604082015261233160608301612208565b6060820152608082013567ffffffffffffffff8082111561235157600080fd5b61235d85838601612219565b608084015260a084013591508082111561237657600080fd5b5061238384828501612219565b60a08301525092915050565b6000806000606084860312156123a457600080fd5b833567ffffffffffffffff8111156123bb57600080fd5b6123c7868287016122dc565b9660208601359650604090950135949350505050565b6000602082840312156123ef57600080fd5b610e5282611e52565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa183360301811261246b57600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126124aa57600080fd5b83018035915067ffffffffffffffff8211156124c557600080fd5b602001915036819003821315611d4457600080fd5b6000602082840312156124ec57600080fd5b813567ffffffffffffffff81111561250357600080fd5b610e76848285016122dc565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261246b57600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261246b57600080fd5b60006020828403121561258957600080fd5b610e5282612208565b6000602082840312156125a457600080fd5b610e5282611d4b565b600061034f36836122dc565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126125ee57600080fd5b830160208101925035905067ffffffffffffffff81111561260e57600080fd5b8060051b3603821315611d4457600080fd5b8183526000602080850194508260005b85811015611fde5773ffffffffffffffffffffffffffffffffffffffff61265683611e52565b1687529582019590820190600101612630565b60208082528181018390526000906040808401600586901b8501820187855b888110156127f8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08089850301855282357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c36030181126126ea57600080fd5b8b0163ffffffff6126fa82611f50565b168552878101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4182360301811261273157600080fd5b8589018890520167ffffffffffffffff61274a82611d4b565b168786015261275a888201612208565b606060ff808316828901526127708a8501612208565b92506080818416818a0152612786838601612208565b935060a09250818416838a015261279f818601866125b9565b60c08b810152945091506127ba905061010089018483612620565b9250506127c9818401846125b9565b93509050838783030160e08801526127e2828483612620565b978a019796505050928701925050600101612688565b509098975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8616815260806020820152836080820152838560a0830137600060a08583010152600060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f870116830101905067ffffffffffffffff841660408301528260608301529695505050505050565b6000808585111561289b57600080fd5b838611156128a857600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156128f55780818660040360031b1b83161692505b505092915050565b8035602083101561034f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffffffffffffffff00000000000000000000000000000000000000000000000081358181169160088510156128f55760089490940360031b84901b1690921692915050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff831660208201526060604082015260006120526060830184611fe9565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff828116828216039081111561034f5761034f6129ba565b600060ff831680612a3c577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8060ff84160491505092915050565b600060ff821680612a5e57612a5e6129ba565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156128f55760019490940360031b84901b169092169291505056fea264697066735822122089779ddf355286c32eeb3fc47b72cbbd5c19a6abb67086e252341f8d077313bc64736f6c63430008160033",
789
- "devdoc": {
790
- "details": "This is a gluing contract. It simply parses the requests and forward to the super.impl() accordingly.In this case, it combines the logic of ReceiveUlnBase and ReceiveLibBaseE2",
791
- "kind": "dev",
792
- "methods": {
793
- "commitVerification(bytes,bytes32)": {
794
- "details": "dont need to check endpoint verifiable here to save gas, as it will reverts if not verifiable."
795
- },
796
- "getAppUlnConfig(address,uint32)": {
797
- "details": "Get the uln config without the default config for the given remoteEid."
798
- },
799
- "owner()": {
800
- "details": "Returns the address of the current owner."
801
- },
802
- "renounceOwnership()": {
803
- "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."
804
- },
805
- "setDefaultUlnConfigs((uint32,(uint64,uint8,uint8,uint8,address[],address[]))[])": {
806
- "details": "about the DEFAULT ULN config 1) its values are all LITERAL (e.g. 0 is 0). whereas in the oapp ULN config, 0 (default value) points to the default ULN config this design enables the oapp to point to DEFAULT config without explicitly setting the config 2) its configuration is more restrictive than the oapp ULN config that a) it must not use NIL value, where NIL is used only by oapps to indicate the LITERAL 0 b) it must have at least one DVN"
807
- },
808
- "transferOwnership(address)": {
809
- "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."
810
- },
811
- "verify(bytes,bytes32,uint64)": {
812
- "details": "for dvn to verify the payload"
813
- }
814
- },
815
- "stateVariables": {
816
- "CONFIG_TYPE_ULN": {
817
- "details": "CONFIG_TYPE_ULN=2 here to align with SendUln302/ReceiveUln302/ReceiveUln301"
818
- }
819
- },
820
- "version": 1
821
- },
822
- "userdoc": {
823
- "kind": "user",
824
- "methods": {},
825
- "version": 1
826
- },
827
- "storageLayout": {
828
- "storage": [
829
- {
830
- "astId": 7797,
831
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
832
- "label": "_owner",
833
- "offset": 0,
834
- "slot": "0",
835
- "type": "t_address"
836
- },
837
- {
838
- "astId": 19820,
839
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
840
- "label": "ulnConfigs",
841
- "offset": 0,
842
- "slot": "1",
843
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_struct(UlnConfig)19769_storage))"
844
- },
845
- {
846
- "astId": 18894,
847
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
848
- "label": "hashLookup",
849
- "offset": 0,
850
- "slot": "2",
851
- "type": "t_mapping(t_bytes32,t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)18879_storage)))"
852
- }
853
- ],
854
- "types": {
855
- "t_address": {
856
- "encoding": "inplace",
857
- "label": "address",
858
- "numberOfBytes": "20"
859
- },
860
- "t_array(t_address)dyn_storage": {
861
- "base": "t_address",
862
- "encoding": "dynamic_array",
863
- "label": "address[]",
864
- "numberOfBytes": "32"
865
- },
866
- "t_bool": {
867
- "encoding": "inplace",
868
- "label": "bool",
869
- "numberOfBytes": "1"
870
- },
871
- "t_bytes32": {
872
- "encoding": "inplace",
873
- "label": "bytes32",
874
- "numberOfBytes": "32"
875
- },
876
- "t_mapping(t_address,t_mapping(t_uint32,t_struct(UlnConfig)19769_storage))": {
877
- "encoding": "mapping",
878
- "key": "t_address",
879
- "label": "mapping(address => mapping(uint32 => struct UlnConfig))",
880
- "numberOfBytes": "32",
881
- "value": "t_mapping(t_uint32,t_struct(UlnConfig)19769_storage)"
882
- },
883
- "t_mapping(t_address,t_struct(Verification)18879_storage)": {
884
- "encoding": "mapping",
885
- "key": "t_address",
886
- "label": "mapping(address => struct Verification)",
887
- "numberOfBytes": "32",
888
- "value": "t_struct(Verification)18879_storage"
889
- },
890
- "t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)18879_storage))": {
891
- "encoding": "mapping",
892
- "key": "t_bytes32",
893
- "label": "mapping(bytes32 => mapping(address => struct Verification))",
894
- "numberOfBytes": "32",
895
- "value": "t_mapping(t_address,t_struct(Verification)18879_storage)"
896
- },
897
- "t_mapping(t_bytes32,t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)18879_storage)))": {
898
- "encoding": "mapping",
899
- "key": "t_bytes32",
900
- "label": "mapping(bytes32 => mapping(bytes32 => mapping(address => struct Verification)))",
901
- "numberOfBytes": "32",
902
- "value": "t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)18879_storage))"
903
- },
904
- "t_mapping(t_uint32,t_struct(UlnConfig)19769_storage)": {
905
- "encoding": "mapping",
906
- "key": "t_uint32",
907
- "label": "mapping(uint32 => struct UlnConfig)",
908
- "numberOfBytes": "32",
909
- "value": "t_struct(UlnConfig)19769_storage"
910
- },
911
- "t_struct(UlnConfig)19769_storage": {
912
- "encoding": "inplace",
913
- "label": "struct UlnConfig",
914
- "members": [
915
- {
916
- "astId": 19756,
917
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
918
- "label": "confirmations",
919
- "offset": 0,
920
- "slot": "0",
921
- "type": "t_uint64"
922
- },
923
- {
924
- "astId": 19758,
925
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
926
- "label": "requiredDVNCount",
927
- "offset": 8,
928
- "slot": "0",
929
- "type": "t_uint8"
930
- },
931
- {
932
- "astId": 19760,
933
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
934
- "label": "optionalDVNCount",
935
- "offset": 9,
936
- "slot": "0",
937
- "type": "t_uint8"
938
- },
939
- {
940
- "astId": 19762,
941
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
942
- "label": "optionalDVNThreshold",
943
- "offset": 10,
944
- "slot": "0",
945
- "type": "t_uint8"
946
- },
947
- {
948
- "astId": 19765,
949
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
950
- "label": "requiredDVNs",
951
- "offset": 0,
952
- "slot": "1",
953
- "type": "t_array(t_address)dyn_storage"
954
- },
955
- {
956
- "astId": 19768,
957
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
958
- "label": "optionalDVNs",
959
- "offset": 0,
960
- "slot": "2",
961
- "type": "t_array(t_address)dyn_storage"
962
- }
963
- ],
964
- "numberOfBytes": "96"
965
- },
966
- "t_struct(Verification)18879_storage": {
967
- "encoding": "inplace",
968
- "label": "struct Verification",
969
- "members": [
970
- {
971
- "astId": 18876,
972
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
973
- "label": "submitted",
974
- "offset": 0,
975
- "slot": "0",
976
- "type": "t_bool"
977
- },
978
- {
979
- "astId": 18878,
980
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
981
- "label": "confirmations",
982
- "offset": 1,
983
- "slot": "0",
984
- "type": "t_uint64"
985
- }
986
- ],
987
- "numberOfBytes": "32"
988
- },
989
- "t_uint32": {
990
- "encoding": "inplace",
991
- "label": "uint32",
992
- "numberOfBytes": "4"
993
- },
994
- "t_uint64": {
995
- "encoding": "inplace",
996
- "label": "uint64",
997
- "numberOfBytes": "8"
998
- },
999
- "t_uint8": {
1000
- "encoding": "inplace",
1001
- "label": "uint8",
1002
- "numberOfBytes": "1"
1003
- }
1004
- }
1005
- }
1006
- }