@layerzerolabs/lz-evm-messagelib-v2 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/artifacts/contracts/Executor.sol/Executor.json +1156 -0
  2. package/artifacts/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +336 -0
  3. package/artifacts/contracts/MessageLibBase.sol/MessageLibBase.json +16 -0
  4. package/artifacts/contracts/PriceFeed.sol/PriceFeed.json +650 -0
  5. package/artifacts/contracts/ReceiveLibBaseE2.sol/ReceiveLibBaseE2.json +154 -0
  6. package/artifacts/contracts/SendLibBase.sol/SendLibBase.json +381 -0
  7. package/artifacts/contracts/SendLibBaseE2.sol/SendLibBaseE2.json +819 -0
  8. package/artifacts/contracts/Treasury.sol/Treasury.json +309 -0
  9. package/artifacts/contracts/Worker.sol/Worker.json +579 -0
  10. package/artifacts/contracts/interfaces/IExecutor.sol/IExecutor.json +429 -0
  11. package/artifacts/contracts/interfaces/IExecutorFeeLib.sol/IExecutorFeeLib.json +210 -0
  12. package/artifacts/contracts/interfaces/ILayerZeroExecutor.sol/ILayerZeroExecutor.json +79 -0
  13. package/artifacts/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +222 -0
  14. package/artifacts/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +79 -0
  15. package/artifacts/contracts/interfaces/IWorker.sol/IWorker.json +221 -0
  16. package/artifacts/contracts/libs/SafeCall.sol/SafeCall.json +10 -0
  17. package/artifacts/contracts/uln/LzExecutor.sol/LzExecutor.json +256 -0
  18. package/artifacts/contracts/uln/ReceiveUlnBase.sol/ReceiveUlnBase.json +472 -0
  19. package/artifacts/contracts/uln/SendUlnBase.sol/SendUlnBase.json +412 -0
  20. package/artifacts/contracts/uln/UlnBase.sol/UlnBase.json +387 -0
  21. package/artifacts/contracts/uln/dvn/DVN.sol/DVN.json +1370 -0
  22. package/artifacts/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +300 -0
  23. package/artifacts/contracts/uln/dvn/MultiSig.sol/MultiSig.json +164 -0
  24. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +742 -0
  25. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +50 -0
  26. package/artifacts/contracts/uln/dvn/adapters/DVNAdapterBase.sol/DVNAdapterBase.json +463 -0
  27. package/artifacts/contracts/uln/dvn/adapters/DVNAdapterFeeLibBase.sol/DVNAdapterFeeLibBase.json +50 -0
  28. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +804 -0
  29. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +50 -0
  30. package/artifacts/contracts/uln/interfaces/IDVN.sol/IDVN.json +370 -0
  31. package/artifacts/contracts/uln/interfaces/IDVNAdapterFeeLib.sol/IDVNAdapterFeeLib.json +50 -0
  32. package/artifacts/contracts/uln/interfaces/IDVNFeeLib.sol/IDVNFeeLib.json +178 -0
  33. package/artifacts/contracts/uln/interfaces/ILayerZeroDVN.sol/ILayerZeroDVN.json +96 -0
  34. package/artifacts/contracts/uln/interfaces/IReceiveUlnE2.sol/IReceiveUlnE2.json +76 -0
  35. package/artifacts/contracts/uln/libs/DVNOptions.sol/DVNOptions.json +27 -0
  36. package/artifacts/contracts/uln/libs/UlnOptions.sol/UlnOptions.json +54 -0
  37. package/artifacts/contracts/uln/uln301/AddressSizeConfig.sol/AddressSizeConfig.json +129 -0
  38. package/artifacts/contracts/uln/uln301/ReceiveLibBaseE1.sol/ILayerZeroReceiveLibrary.json +68 -0
  39. package/artifacts/contracts/uln/uln301/ReceiveLibBaseE1.sol/ReceiveLibBaseE1.json +416 -0
  40. package/artifacts/contracts/uln/uln301/ReceiveUln301.sol/ReceiveUln301.json +969 -0
  41. package/artifacts/contracts/uln/uln301/SendLibBaseE1.sol/SendLibBaseE1.json +804 -0
  42. package/artifacts/contracts/uln/uln301/SendUln301.sol/SendUln301.json +1278 -0
  43. package/artifacts/contracts/uln/uln301/TreasuryFeeHandler.sol/TreasuryFeeHandler.json +94 -0
  44. package/artifacts/contracts/uln/uln301/interfaces/IMessageLibE1.sol/IMessageLibE1.json +247 -0
  45. package/artifacts/contracts/uln/uln301/interfaces/INonceContract.sol/INonceContract.json +40 -0
  46. package/artifacts/contracts/uln/uln301/interfaces/ITreasuryFeeHandler.sol/ITreasuryFeeHandler.json +44 -0
  47. package/artifacts/contracts/uln/uln301/interfaces/IUltraLightNode301.sol/IUltraLightNode301.json +29 -0
  48. package/artifacts/contracts/uln/uln301/mocks/NonceContractMock.sol/NonceContractMock.json +93 -0
  49. package/artifacts/contracts/uln/uln302/ReceiveUln302.sol/ReceiveUln302.json +702 -0
  50. package/artifacts/contracts/uln/uln302/SendUln302.sol/SendUln302.json +1259 -0
  51. package/artifacts/contracts/upgradeable/WorkerUpgradeable.sol/WorkerUpgradeable.json +592 -0
  52. package/artifacts/contracts/upgradeable/proxy/ProxyAdmin.sol/ProxyAdmin.json +181 -0
  53. package/artifacts/contracts/upgradeable/proxy/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +160 -0
  54. package/contracts/Executor.sol +162 -0
  55. package/contracts/ExecutorFeeLib.sol +190 -0
  56. package/contracts/MessageLibBase.sol +21 -0
  57. package/contracts/PriceFeed.sol +257 -0
  58. package/contracts/ReceiveLibBaseE2.sol +54 -0
  59. package/contracts/SendLibBase.sol +258 -0
  60. package/contracts/SendLibBaseE2.sol +140 -0
  61. package/contracts/Treasury.sol +74 -0
  62. package/contracts/Worker.sol +167 -0
  63. package/contracts/interfaces/IExecutor.sol +44 -0
  64. package/contracts/interfaces/IExecutorFeeLib.sol +32 -0
  65. package/contracts/interfaces/ILayerZeroExecutor.sol +29 -0
  66. package/contracts/interfaces/ILayerZeroPriceFeed.sol +61 -0
  67. package/contracts/interfaces/ILayerZeroTreasury.sol +19 -0
  68. package/contracts/interfaces/IWorker.sol +29 -0
  69. package/contracts/libs/SafeCall.sol +123 -0
  70. package/contracts/uln/LzExecutor.sol +96 -0
  71. package/contracts/uln/ReceiveUlnBase.sol +118 -0
  72. package/contracts/uln/SendUlnBase.sol +129 -0
  73. package/contracts/uln/UlnBase.sol +195 -0
  74. package/contracts/uln/dvn/DVN.sol +349 -0
  75. package/contracts/uln/dvn/DVNFeeLib.sol +141 -0
  76. package/contracts/uln/dvn/MultiSig.sol +104 -0
  77. package/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol +152 -0
  78. package/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol +7 -0
  79. package/contracts/uln/dvn/adapters/DVNAdapterBase.sol +162 -0
  80. package/contracts/uln/dvn/adapters/DVNAdapterFeeLibBase.sol +20 -0
  81. package/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol +156 -0
  82. package/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol +7 -0
  83. package/contracts/uln/interfaces/IDVN.sol +25 -0
  84. package/contracts/uln/interfaces/IDVNAdapterFeeLib.sol +13 -0
  85. package/contracts/uln/interfaces/IDVNFeeLib.sol +30 -0
  86. package/contracts/uln/interfaces/ILayerZeroDVN.sol +34 -0
  87. package/contracts/uln/interfaces/IReceiveUlnE2.sol +18 -0
  88. package/contracts/uln/libs/DVNOptions.sol +181 -0
  89. package/contracts/uln/libs/UlnOptions.sol +176 -0
  90. package/contracts/uln/uln301/AddressSizeConfig.sol +22 -0
  91. package/contracts/uln/uln301/ReceiveLibBaseE1.sol +103 -0
  92. package/contracts/uln/uln301/ReceiveUln301.sol +120 -0
  93. package/contracts/uln/uln301/SendLibBaseE1.sol +194 -0
  94. package/contracts/uln/uln301/SendUln301.sol +99 -0
  95. package/contracts/uln/uln301/TreasuryFeeHandler.sol +41 -0
  96. package/contracts/uln/uln301/interfaces/IMessageLibE1.sol +22 -0
  97. package/contracts/uln/uln301/interfaces/INonceContract.sol +7 -0
  98. package/contracts/uln/uln301/interfaces/ITreasuryFeeHandler.sol +13 -0
  99. package/contracts/uln/uln301/interfaces/IUltraLightNode301.sol +7 -0
  100. package/contracts/uln/uln301/mocks/NonceContractMock.sol +23 -0
  101. package/contracts/uln/uln302/ReceiveUln302.sol +108 -0
  102. package/contracts/uln/uln302/SendUln302.sol +86 -0
  103. package/contracts/upgradeable/WorkerUpgradeable.sol +186 -0
  104. package/contracts/upgradeable/proxy/ProxyAdmin.sol +96 -0
  105. package/contracts/upgradeable/proxy/TransparentUpgradeableProxy.sol +131 -0
  106. package/package.json +51 -0
@@ -0,0 +1,650 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "PriceFeed",
4
+ "sourceName": "contracts/PriceFeed.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint256",
10
+ "name": "provided",
11
+ "type": "uint256"
12
+ },
13
+ {
14
+ "internalType": "uint256",
15
+ "name": "required",
16
+ "type": "uint256"
17
+ }
18
+ ],
19
+ "name": "InsufficientFee",
20
+ "type": "error"
21
+ },
22
+ {
23
+ "inputs": [],
24
+ "name": "OnlyPriceUpdater",
25
+ "type": "error"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "ToAddressIsZero",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [
34
+ {
35
+ "internalType": "address",
36
+ "name": "_to",
37
+ "type": "address"
38
+ },
39
+ {
40
+ "internalType": "uint256",
41
+ "name": "_value",
42
+ "type": "uint256"
43
+ }
44
+ ],
45
+ "name": "TransferNativeFailed",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [
50
+ {
51
+ "internalType": "uint32",
52
+ "name": "l2Eid",
53
+ "type": "uint32"
54
+ }
55
+ ],
56
+ "name": "UnknownL2Eid",
57
+ "type": "error"
58
+ },
59
+ {
60
+ "anonymous": false,
61
+ "inputs": [
62
+ {
63
+ "indexed": false,
64
+ "internalType": "uint8",
65
+ "name": "version",
66
+ "type": "uint8"
67
+ }
68
+ ],
69
+ "name": "Initialized",
70
+ "type": "event"
71
+ },
72
+ {
73
+ "anonymous": false,
74
+ "inputs": [
75
+ {
76
+ "indexed": true,
77
+ "internalType": "address",
78
+ "name": "previousOwner",
79
+ "type": "address"
80
+ },
81
+ {
82
+ "indexed": true,
83
+ "internalType": "address",
84
+ "name": "newOwner",
85
+ "type": "address"
86
+ }
87
+ ],
88
+ "name": "OwnershipTransferred",
89
+ "type": "event"
90
+ },
91
+ {
92
+ "inputs": [],
93
+ "name": "ARBITRUM_COMPRESSION_PERCENT",
94
+ "outputs": [
95
+ {
96
+ "internalType": "uint128",
97
+ "name": "",
98
+ "type": "uint128"
99
+ }
100
+ ],
101
+ "stateMutability": "view",
102
+ "type": "function"
103
+ },
104
+ {
105
+ "inputs": [],
106
+ "name": "arbitrumPriceExt",
107
+ "outputs": [
108
+ {
109
+ "components": [
110
+ {
111
+ "internalType": "uint64",
112
+ "name": "gasPerL2Tx",
113
+ "type": "uint64"
114
+ },
115
+ {
116
+ "internalType": "uint32",
117
+ "name": "gasPerL1CallDataByte",
118
+ "type": "uint32"
119
+ }
120
+ ],
121
+ "internalType": "struct ILayerZeroPriceFeed.ArbitrumPriceExt",
122
+ "name": "",
123
+ "type": "tuple"
124
+ }
125
+ ],
126
+ "stateMutability": "view",
127
+ "type": "function"
128
+ },
129
+ {
130
+ "inputs": [],
131
+ "name": "endpoint",
132
+ "outputs": [
133
+ {
134
+ "internalType": "contract ILayerZeroEndpointV2",
135
+ "name": "",
136
+ "type": "address"
137
+ }
138
+ ],
139
+ "stateMutability": "view",
140
+ "type": "function"
141
+ },
142
+ {
143
+ "inputs": [
144
+ {
145
+ "internalType": "uint16",
146
+ "name": "_dstEid",
147
+ "type": "uint16"
148
+ },
149
+ {
150
+ "internalType": "uint256",
151
+ "name": "_callDataSize",
152
+ "type": "uint256"
153
+ },
154
+ {
155
+ "internalType": "uint256",
156
+ "name": "_gas",
157
+ "type": "uint256"
158
+ }
159
+ ],
160
+ "name": "estimateFeeByChain",
161
+ "outputs": [
162
+ {
163
+ "internalType": "uint256",
164
+ "name": "fee",
165
+ "type": "uint256"
166
+ },
167
+ {
168
+ "internalType": "uint128",
169
+ "name": "priceRatio",
170
+ "type": "uint128"
171
+ }
172
+ ],
173
+ "stateMutability": "view",
174
+ "type": "function"
175
+ },
176
+ {
177
+ "inputs": [
178
+ {
179
+ "internalType": "uint32",
180
+ "name": "_dstEid",
181
+ "type": "uint32"
182
+ },
183
+ {
184
+ "internalType": "uint256",
185
+ "name": "_callDataSize",
186
+ "type": "uint256"
187
+ },
188
+ {
189
+ "internalType": "uint256",
190
+ "name": "_gas",
191
+ "type": "uint256"
192
+ }
193
+ ],
194
+ "name": "estimateFeeByEid",
195
+ "outputs": [
196
+ {
197
+ "internalType": "uint256",
198
+ "name": "",
199
+ "type": "uint256"
200
+ },
201
+ {
202
+ "internalType": "uint128",
203
+ "name": "",
204
+ "type": "uint128"
205
+ },
206
+ {
207
+ "internalType": "uint128",
208
+ "name": "",
209
+ "type": "uint128"
210
+ },
211
+ {
212
+ "internalType": "uint128",
213
+ "name": "",
214
+ "type": "uint128"
215
+ }
216
+ ],
217
+ "stateMutability": "view",
218
+ "type": "function"
219
+ },
220
+ {
221
+ "inputs": [
222
+ {
223
+ "internalType": "uint32",
224
+ "name": "_dstEid",
225
+ "type": "uint32"
226
+ },
227
+ {
228
+ "internalType": "uint256",
229
+ "name": "_callDataSize",
230
+ "type": "uint256"
231
+ },
232
+ {
233
+ "internalType": "uint256",
234
+ "name": "_gas",
235
+ "type": "uint256"
236
+ }
237
+ ],
238
+ "name": "estimateFeeOnSend",
239
+ "outputs": [
240
+ {
241
+ "internalType": "uint256",
242
+ "name": "",
243
+ "type": "uint256"
244
+ },
245
+ {
246
+ "internalType": "uint128",
247
+ "name": "",
248
+ "type": "uint128"
249
+ },
250
+ {
251
+ "internalType": "uint128",
252
+ "name": "",
253
+ "type": "uint128"
254
+ },
255
+ {
256
+ "internalType": "uint128",
257
+ "name": "",
258
+ "type": "uint128"
259
+ }
260
+ ],
261
+ "stateMutability": "payable",
262
+ "type": "function"
263
+ },
264
+ {
265
+ "inputs": [
266
+ {
267
+ "internalType": "uint32",
268
+ "name": "",
269
+ "type": "uint32"
270
+ },
271
+ {
272
+ "internalType": "uint256",
273
+ "name": "",
274
+ "type": "uint256"
275
+ },
276
+ {
277
+ "internalType": "uint256",
278
+ "name": "",
279
+ "type": "uint256"
280
+ }
281
+ ],
282
+ "name": "getFee",
283
+ "outputs": [
284
+ {
285
+ "internalType": "uint256",
286
+ "name": "",
287
+ "type": "uint256"
288
+ }
289
+ ],
290
+ "stateMutability": "pure",
291
+ "type": "function"
292
+ },
293
+ {
294
+ "inputs": [
295
+ {
296
+ "internalType": "uint32",
297
+ "name": "_dstEid",
298
+ "type": "uint32"
299
+ }
300
+ ],
301
+ "name": "getPrice",
302
+ "outputs": [
303
+ {
304
+ "components": [
305
+ {
306
+ "internalType": "uint128",
307
+ "name": "priceRatio",
308
+ "type": "uint128"
309
+ },
310
+ {
311
+ "internalType": "uint64",
312
+ "name": "gasPriceInUnit",
313
+ "type": "uint64"
314
+ },
315
+ {
316
+ "internalType": "uint32",
317
+ "name": "gasPerByte",
318
+ "type": "uint32"
319
+ }
320
+ ],
321
+ "internalType": "struct ILayerZeroPriceFeed.Price",
322
+ "name": "price",
323
+ "type": "tuple"
324
+ }
325
+ ],
326
+ "stateMutability": "view",
327
+ "type": "function"
328
+ },
329
+ {
330
+ "inputs": [
331
+ {
332
+ "internalType": "uint16",
333
+ "name": "_dstEid",
334
+ "type": "uint16"
335
+ }
336
+ ],
337
+ "name": "getPrice",
338
+ "outputs": [
339
+ {
340
+ "components": [
341
+ {
342
+ "internalType": "uint128",
343
+ "name": "priceRatio",
344
+ "type": "uint128"
345
+ },
346
+ {
347
+ "internalType": "uint64",
348
+ "name": "gasPriceInUnit",
349
+ "type": "uint64"
350
+ },
351
+ {
352
+ "internalType": "uint32",
353
+ "name": "gasPerByte",
354
+ "type": "uint32"
355
+ }
356
+ ],
357
+ "internalType": "struct ILayerZeroPriceFeed.Price",
358
+ "name": "price",
359
+ "type": "tuple"
360
+ }
361
+ ],
362
+ "stateMutability": "view",
363
+ "type": "function"
364
+ },
365
+ {
366
+ "inputs": [],
367
+ "name": "getPriceRatioDenominator",
368
+ "outputs": [
369
+ {
370
+ "internalType": "uint128",
371
+ "name": "",
372
+ "type": "uint128"
373
+ }
374
+ ],
375
+ "stateMutability": "view",
376
+ "type": "function"
377
+ },
378
+ {
379
+ "inputs": [
380
+ {
381
+ "internalType": "address",
382
+ "name": "_priceUpdater",
383
+ "type": "address"
384
+ }
385
+ ],
386
+ "name": "initialize",
387
+ "outputs": [],
388
+ "stateMutability": "nonpayable",
389
+ "type": "function"
390
+ },
391
+ {
392
+ "inputs": [],
393
+ "name": "nativeTokenPriceUSD",
394
+ "outputs": [
395
+ {
396
+ "internalType": "uint128",
397
+ "name": "",
398
+ "type": "uint128"
399
+ }
400
+ ],
401
+ "stateMutability": "view",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [],
406
+ "name": "owner",
407
+ "outputs": [
408
+ {
409
+ "internalType": "address",
410
+ "name": "",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "stateMutability": "view",
415
+ "type": "function"
416
+ },
417
+ {
418
+ "inputs": [
419
+ {
420
+ "internalType": "address",
421
+ "name": "updater",
422
+ "type": "address"
423
+ }
424
+ ],
425
+ "name": "priceUpdater",
426
+ "outputs": [
427
+ {
428
+ "internalType": "bool",
429
+ "name": "active",
430
+ "type": "bool"
431
+ }
432
+ ],
433
+ "stateMutability": "view",
434
+ "type": "function"
435
+ },
436
+ {
437
+ "inputs": [],
438
+ "name": "renounceOwnership",
439
+ "outputs": [],
440
+ "stateMutability": "nonpayable",
441
+ "type": "function"
442
+ },
443
+ {
444
+ "inputs": [
445
+ {
446
+ "internalType": "uint128",
447
+ "name": "_compressionPercent",
448
+ "type": "uint128"
449
+ }
450
+ ],
451
+ "name": "setArbitrumCompressionPercent",
452
+ "outputs": [],
453
+ "stateMutability": "nonpayable",
454
+ "type": "function"
455
+ },
456
+ {
457
+ "inputs": [
458
+ {
459
+ "internalType": "address",
460
+ "name": "_endpoint",
461
+ "type": "address"
462
+ }
463
+ ],
464
+ "name": "setEndpoint",
465
+ "outputs": [],
466
+ "stateMutability": "nonpayable",
467
+ "type": "function"
468
+ },
469
+ {
470
+ "inputs": [
471
+ {
472
+ "internalType": "uint128",
473
+ "name": "_nativeTokenPriceUSD",
474
+ "type": "uint128"
475
+ }
476
+ ],
477
+ "name": "setNativeTokenPriceUSD",
478
+ "outputs": [],
479
+ "stateMutability": "nonpayable",
480
+ "type": "function"
481
+ },
482
+ {
483
+ "inputs": [
484
+ {
485
+ "components": [
486
+ {
487
+ "internalType": "uint32",
488
+ "name": "eid",
489
+ "type": "uint32"
490
+ },
491
+ {
492
+ "components": [
493
+ {
494
+ "internalType": "uint128",
495
+ "name": "priceRatio",
496
+ "type": "uint128"
497
+ },
498
+ {
499
+ "internalType": "uint64",
500
+ "name": "gasPriceInUnit",
501
+ "type": "uint64"
502
+ },
503
+ {
504
+ "internalType": "uint32",
505
+ "name": "gasPerByte",
506
+ "type": "uint32"
507
+ }
508
+ ],
509
+ "internalType": "struct ILayerZeroPriceFeed.Price",
510
+ "name": "price",
511
+ "type": "tuple"
512
+ }
513
+ ],
514
+ "internalType": "struct ILayerZeroPriceFeed.UpdatePrice[]",
515
+ "name": "_price",
516
+ "type": "tuple[]"
517
+ }
518
+ ],
519
+ "name": "setPrice",
520
+ "outputs": [],
521
+ "stateMutability": "nonpayable",
522
+ "type": "function"
523
+ },
524
+ {
525
+ "inputs": [
526
+ {
527
+ "components": [
528
+ {
529
+ "internalType": "uint32",
530
+ "name": "eid",
531
+ "type": "uint32"
532
+ },
533
+ {
534
+ "components": [
535
+ {
536
+ "internalType": "uint128",
537
+ "name": "priceRatio",
538
+ "type": "uint128"
539
+ },
540
+ {
541
+ "internalType": "uint64",
542
+ "name": "gasPriceInUnit",
543
+ "type": "uint64"
544
+ },
545
+ {
546
+ "internalType": "uint32",
547
+ "name": "gasPerByte",
548
+ "type": "uint32"
549
+ }
550
+ ],
551
+ "internalType": "struct ILayerZeroPriceFeed.Price",
552
+ "name": "price",
553
+ "type": "tuple"
554
+ },
555
+ {
556
+ "components": [
557
+ {
558
+ "internalType": "uint64",
559
+ "name": "gasPerL2Tx",
560
+ "type": "uint64"
561
+ },
562
+ {
563
+ "internalType": "uint32",
564
+ "name": "gasPerL1CallDataByte",
565
+ "type": "uint32"
566
+ }
567
+ ],
568
+ "internalType": "struct ILayerZeroPriceFeed.ArbitrumPriceExt",
569
+ "name": "extend",
570
+ "type": "tuple"
571
+ }
572
+ ],
573
+ "internalType": "struct ILayerZeroPriceFeed.UpdatePriceExt",
574
+ "name": "_update",
575
+ "type": "tuple"
576
+ }
577
+ ],
578
+ "name": "setPriceForArbitrum",
579
+ "outputs": [],
580
+ "stateMutability": "nonpayable",
581
+ "type": "function"
582
+ },
583
+ {
584
+ "inputs": [
585
+ {
586
+ "internalType": "uint128",
587
+ "name": "_denominator",
588
+ "type": "uint128"
589
+ }
590
+ ],
591
+ "name": "setPriceRatioDenominator",
592
+ "outputs": [],
593
+ "stateMutability": "nonpayable",
594
+ "type": "function"
595
+ },
596
+ {
597
+ "inputs": [
598
+ {
599
+ "internalType": "address",
600
+ "name": "_addr",
601
+ "type": "address"
602
+ },
603
+ {
604
+ "internalType": "bool",
605
+ "name": "_active",
606
+ "type": "bool"
607
+ }
608
+ ],
609
+ "name": "setPriceUpdater",
610
+ "outputs": [],
611
+ "stateMutability": "nonpayable",
612
+ "type": "function"
613
+ },
614
+ {
615
+ "inputs": [
616
+ {
617
+ "internalType": "address",
618
+ "name": "newOwner",
619
+ "type": "address"
620
+ }
621
+ ],
622
+ "name": "transferOwnership",
623
+ "outputs": [],
624
+ "stateMutability": "nonpayable",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [
629
+ {
630
+ "internalType": "address",
631
+ "name": "_to",
632
+ "type": "address"
633
+ },
634
+ {
635
+ "internalType": "uint256",
636
+ "name": "_amount",
637
+ "type": "uint256"
638
+ }
639
+ ],
640
+ "name": "withdrawFee",
641
+ "outputs": [],
642
+ "stateMutability": "nonpayable",
643
+ "type": "function"
644
+ }
645
+ ],
646
+ "bytecode": "0x608060405234801561001057600080fd5b50611d78806100206000396000f3fe60806040526004361061018b5760003560e01c80638da5cb5b116100d6578063d350ad251161007f578063e0ad121a11610059578063e0ad121a14610653578063f2fde38b14610708578063fd9be5221461072857600080fd5b8063d350ad251461051c578063da26663a1461053c578063dbbb41551461063357600080fd5b8063c1840327116100b0578063c184032714610498578063c4d66de8146104bf578063cd68b79b146104df57600080fd5b80638da5cb5b1461041657806392807f5814610441578063c1723a1d1461048557600080fd5b80635e280f11116101385780637dc438a4116101125780637dc438a41461035e57806388a4124c1461037e5780638ca2fb08146103d657600080fd5b80635e280f11146102b1578063715018a6146103035780637bc3c9ab1461031857600080fd5b806336a5beba1161016957806336a5beba1461020957806352a72510146102715780635d6d7ccb1461029157600080fd5b806311f2c343146101905780632f7cb0b4146101c75780633161b7f6146101e9575b600080fd5b34801561019c57600080fd5b506101b46101ab36600461197b565b60009392505050565b6040519081526020015b60405180910390f35b3480156101d357600080fd5b506101e76101e23660046119ce565b610748565b005b3480156101f557600080fd5b506101e76102043660046119f0565b610785565b34801561021557600080fd5b5060408051808201825260008082526020918201528151808301835260685467ffffffffffffffff811680835263ffffffff680100000000000000009092048216928401928352845190815291511691810191909152016101be565b34801561027d57600080fd5b506101e761028c366004611a89565b610955565b34801561029d57600080fd5b506101e76102ac3660046119ce565b6109b3565b3480156102bd57600080fd5b50606a546102de9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101be565b34801561030f57600080fd5b506101e7610a7a565b34801561032457600080fd5b50610338610333366004611ad7565b610a8e565b604080519283526fffffffffffffffffffffffffffffffff9091166020830152016101be565b34801561036a57600080fd5b506101e7610379366004611af5565b610b29565b34801561038a57600080fd5b5061039e61039936600461197b565b610c36565b604080519485526fffffffffffffffffffffffffffffffff9384166020860152918316918401919091521660608201526080016101be565b3480156103e257600080fd5b506104066103f1366004611b0d565b60666020526000908152604090205460ff1681565b60405190151581526020016101be565b34801561042257600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102de565b34801561044d57600080fd5b506069546fffffffffffffffffffffffffffffffff165b6040516fffffffffffffffffffffffffffffffff90911681526020016101be565b61039e61049336600461197b565b610c58565b3480156104a457600080fd5b506065546fffffffffffffffffffffffffffffffff16610464565b3480156104cb57600080fd5b506101e76104da366004611b0d565b610c89565b3480156104eb57600080fd5b506069546104649070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b34801561052857600080fd5b506101e76105373660046119ce565b610f70565b34801561054857600080fd5b506105ef610557366004611b28565b60408051606080820183526000808352602080840182905292840181905263ffffffff94851681526067835283902083519182018452546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff169282019290925278010000000000000000000000000000000000000000000000009091049092169082015290565b6040805182516fffffffffffffffffffffffffffffffff16815260208084015167ffffffffffffffff16908201529181015163ffffffff16908201526060016101be565b34801561063f57600080fd5b506101e761064e366004611b0d565b610fbb565b34801561065f57600080fd5b506105ef61066e366004611b43565b60408051606080820183526000808352602080840182905292840181905261ffff949094168452606782529282902082519384018352546fffffffffffffffffffffffffffffffff8116845267ffffffffffffffff700100000000000000000000000000000000820416918401919091527801000000000000000000000000000000000000000000000000900463ffffffff169082015290565b34801561071457600080fd5b506101e7610723366004611b0d565b61100a565b34801561073457600080fd5b506101e7610743366004611b5e565b6110c1565b6107506110d7565b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b336107a560335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610809573360009081526066602052604090205460ff16610809576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610950573683838381811061082757610827611b88565b60800291909101915061094790506108426020830183611b28565b61085436849003840160208501611bcf565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff9283168288019081529783166000908152606790955295909320925183549551965194167fffffffffffffffff000000000000000000000000000000000000000000000000909516949094177001000000000000000000000000000000009590911694909402939093177fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff1678010000000000000000000000000000000000000000000000009190921602179055565b5060010161080c565b505050565b61095d6110d7565b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b336109d360335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610a37573360009081526066602052604090205460ff16610a37576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610a826110d7565b610a8c6000611158565b565b6000808461ffff16606e1480610aa957508461ffff1661279f145b80610ab957508461ffff16614eaf145b15610ad657610acd8561ffff1685856111cf565b91509150610b21565b8461ffff16606f1480610aee57508461ffff16612794145b80610afe57508461ffff16614ea4145b15610b1257610acd8561ffff16858561132c565b610acd8561ffff1685856114dd565b935093915050565b33610b4960335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610bad573360009081526066602052604090205460ff16610bad576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bbd6108426020830183611b28565b6000610bcf60a0830160808401611c62565b90506000610be360c0840160a08501611b28565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090921667ffffffffffffffff90941693909317179091555050565b600080600080610c478787876115b2565b935093509350935093509350935093565b600080808080610c6c565b60405180910390fd5b610c778888886115b2565b94509450945094505093509350935093565b6000610cb37fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116610d0c5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610d2e565b3373ffffffffffffffffffffffffffffffffffffffff821614610d2e57600080fd5b600054610100900460ff1615808015610d4e5750600054600160ff909116105b80610d685750303b158015610d68575060005460ff166001145b610df4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610c63565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e5257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e5a611689565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055606580547fffffffffffffffffffffffffffffffff000000000000000000000000000000001668056bc75e2d6310000017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff91909116179055801561095057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610f786110d7565b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610fc36110d7565b606a80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6110126110d7565b73ffffffffffffffffffffffffffffffffffffffff81166110b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610c63565b6110be81611158565b50565b6110c96110d7565b6110d38282611728565b5050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610a8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c63565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b63ffffffff8381166000908152606760205260408120606854606954929384938492680100000000000000009004909116906064906112349070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1689611cac565b61123e9190611cf8565b6112489190611cac565b825490915060009061127c907801000000000000000000000000000000000000000000000000900463ffffffff1688611cac565b835460685491925060009167ffffffffffffffff700100000000000000000000000000000000909204821691849186916112b791168b611d0c565b6112c19190611d0c565b6112cb9190611d0c565b6112d59190611cac565b60655485549192506fffffffffffffffffffffffffffffffff908116916112fd911683611cac565b6113079190611cf8565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b600080600061133a8661182e565b63ffffffff8082166000908152606760205260408120805493945092909161137f91780100000000000000000000000000000000000000000000000090041688611cac565b61138b90610c74611d0c565b82549091506000906113bb90700100000000000000000000000000000000900467ffffffffffffffff1683611cac565b63ffffffff808b16600090815260676020526040812080549394509290916114009178010000000000000000000000000000000000000000000000009004168b611cac565b8254909150600090700100000000000000000000000000000000900467ffffffffffffffff166114308b84611d0c565b61143a9190611cac565b60655487549192506000916fffffffffffffffffffffffffffffffff91821691611465911687611cac565b61146f9190611cf8565b60655485549192506000916fffffffffffffffffffffffffffffffff9182169161149a911685611cac565b6114a49190611cf8565b905060006114b28284611d0c565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b63ffffffff8084166000908152606760205260408120805491928392839161152291780100000000000000000000000000000000000000000000000090041687611cac565b8254909150600090700100000000000000000000000000000000900467ffffffffffffffff166115528784611d0c565b61155c9190611cac565b60655484549192506fffffffffffffffffffffffffffffffff90811691611584911683611cac565b61158e9190611cf8565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b6000808080806115c461753089611d1f565b90508063ffffffff16606e14806115e257508063ffffffff1661279f145b806115f457508063ffffffff16614eaf145b1561160e576116048188886111cf565b909550935061165d565b8063ffffffff16606f148061162a57508063ffffffff16612794145b8061163c57508063ffffffff16614ea4145b1561164c5761160481888861132c565b6116578188886114dd565b90955093505b505060655460695493979296506fffffffffffffffffffffffffffffffff908116955090921692509050565b600054610100900460ff16611720576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610c63565b610a8c6118c2565b73ffffffffffffffffffffffffffffffffffffffff8216611775576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146117cf576040519150601f19603f3d011682016040523d82523d6000602084013e6117d4565b606091505b5050905080610950576040517f2c024f9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610c63565b60008061183d61753084611d1f565b90508063ffffffff16606f036118565750606592915050565b8063ffffffff166127940361186f575061278992915050565b8063ffffffff16614ea4036118885750614e9992915050565b6040517f8d2da58000000000000000000000000000000000000000000000000000000000815263ffffffff82166004820152602401610c63565b600054610100900460ff16611959576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610c63565b610a8c33611158565b803563ffffffff8116811461197657600080fd5b919050565b60008060006060848603121561199057600080fd5b61199984611962565b95602085013595506040909401359392505050565b80356fffffffffffffffffffffffffffffffff8116811461197657600080fd5b6000602082840312156119e057600080fd5b6119e9826119ae565b9392505050565b60008060208385031215611a0357600080fd5b823567ffffffffffffffff80821115611a1b57600080fd5b818501915085601f830112611a2f57600080fd5b813581811115611a3e57600080fd5b8660208260071b8501011115611a5357600080fd5b60209290920196919550909350505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461197657600080fd5b60008060408385031215611a9c57600080fd5b611aa583611a65565b915060208301358015158114611aba57600080fd5b809150509250929050565b803561ffff8116811461197657600080fd5b600080600060608486031215611aec57600080fd5b61199984611ac5565b600060c08284031215611b0757600080fd5b50919050565b600060208284031215611b1f57600080fd5b6119e982611a65565b600060208284031215611b3a57600080fd5b6119e982611962565b600060208284031215611b5557600080fd5b6119e982611ac5565b60008060408385031215611b7157600080fd5b611b7a83611a65565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff8116811461197657600080fd5b600060608284031215611be157600080fd5b6040516060810181811067ffffffffffffffff82111715611c2b577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604052611c37836119ae565b8152611c4560208401611bb7565b6020820152611c5660408401611962565b60408201529392505050565b600060208284031215611c7457600080fd5b6119e982611bb7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082028115828204841417611cc357611cc3611c7d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611d0757611d07611cc9565b500490565b80820180821115611cc357611cc3611c7d565b600063ffffffff80841680611d3657611d36611cc9565b9216919091069291505056fea2646970667358221220f846daa3c7157f24f9444f3c773ca921fbddff72a89f37acd7aae0e2fd7ffa8a64736f6c63430008160033",
647
+ "deployedBytecode": "0x60806040526004361061018b5760003560e01c80638da5cb5b116100d6578063d350ad251161007f578063e0ad121a11610059578063e0ad121a14610653578063f2fde38b14610708578063fd9be5221461072857600080fd5b8063d350ad251461051c578063da26663a1461053c578063dbbb41551461063357600080fd5b8063c1840327116100b0578063c184032714610498578063c4d66de8146104bf578063cd68b79b146104df57600080fd5b80638da5cb5b1461041657806392807f5814610441578063c1723a1d1461048557600080fd5b80635e280f11116101385780637dc438a4116101125780637dc438a41461035e57806388a4124c1461037e5780638ca2fb08146103d657600080fd5b80635e280f11146102b1578063715018a6146103035780637bc3c9ab1461031857600080fd5b806336a5beba1161016957806336a5beba1461020957806352a72510146102715780635d6d7ccb1461029157600080fd5b806311f2c343146101905780632f7cb0b4146101c75780633161b7f6146101e9575b600080fd5b34801561019c57600080fd5b506101b46101ab36600461197b565b60009392505050565b6040519081526020015b60405180910390f35b3480156101d357600080fd5b506101e76101e23660046119ce565b610748565b005b3480156101f557600080fd5b506101e76102043660046119f0565b610785565b34801561021557600080fd5b5060408051808201825260008082526020918201528151808301835260685467ffffffffffffffff811680835263ffffffff680100000000000000009092048216928401928352845190815291511691810191909152016101be565b34801561027d57600080fd5b506101e761028c366004611a89565b610955565b34801561029d57600080fd5b506101e76102ac3660046119ce565b6109b3565b3480156102bd57600080fd5b50606a546102de9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101be565b34801561030f57600080fd5b506101e7610a7a565b34801561032457600080fd5b50610338610333366004611ad7565b610a8e565b604080519283526fffffffffffffffffffffffffffffffff9091166020830152016101be565b34801561036a57600080fd5b506101e7610379366004611af5565b610b29565b34801561038a57600080fd5b5061039e61039936600461197b565b610c36565b604080519485526fffffffffffffffffffffffffffffffff9384166020860152918316918401919091521660608201526080016101be565b3480156103e257600080fd5b506104066103f1366004611b0d565b60666020526000908152604090205460ff1681565b60405190151581526020016101be565b34801561042257600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102de565b34801561044d57600080fd5b506069546fffffffffffffffffffffffffffffffff165b6040516fffffffffffffffffffffffffffffffff90911681526020016101be565b61039e61049336600461197b565b610c58565b3480156104a457600080fd5b506065546fffffffffffffffffffffffffffffffff16610464565b3480156104cb57600080fd5b506101e76104da366004611b0d565b610c89565b3480156104eb57600080fd5b506069546104649070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b34801561052857600080fd5b506101e76105373660046119ce565b610f70565b34801561054857600080fd5b506105ef610557366004611b28565b60408051606080820183526000808352602080840182905292840181905263ffffffff94851681526067835283902083519182018452546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff169282019290925278010000000000000000000000000000000000000000000000009091049092169082015290565b6040805182516fffffffffffffffffffffffffffffffff16815260208084015167ffffffffffffffff16908201529181015163ffffffff16908201526060016101be565b34801561063f57600080fd5b506101e761064e366004611b0d565b610fbb565b34801561065f57600080fd5b506105ef61066e366004611b43565b60408051606080820183526000808352602080840182905292840181905261ffff949094168452606782529282902082519384018352546fffffffffffffffffffffffffffffffff8116845267ffffffffffffffff700100000000000000000000000000000000820416918401919091527801000000000000000000000000000000000000000000000000900463ffffffff169082015290565b34801561071457600080fd5b506101e7610723366004611b0d565b61100a565b34801561073457600080fd5b506101e7610743366004611b5e565b6110c1565b6107506110d7565b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b336107a560335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610809573360009081526066602052604090205460ff16610809576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610950573683838381811061082757610827611b88565b60800291909101915061094790506108426020830183611b28565b61085436849003840160208501611bcf565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff9283168288019081529783166000908152606790955295909320925183549551965194167fffffffffffffffff000000000000000000000000000000000000000000000000909516949094177001000000000000000000000000000000009590911694909402939093177fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff1678010000000000000000000000000000000000000000000000009190921602179055565b5060010161080c565b505050565b61095d6110d7565b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b336109d360335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610a37573360009081526066602052604090205460ff16610a37576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610a826110d7565b610a8c6000611158565b565b6000808461ffff16606e1480610aa957508461ffff1661279f145b80610ab957508461ffff16614eaf145b15610ad657610acd8561ffff1685856111cf565b91509150610b21565b8461ffff16606f1480610aee57508461ffff16612794145b80610afe57508461ffff16614ea4145b15610b1257610acd8561ffff16858561132c565b610acd8561ffff1685856114dd565b935093915050565b33610b4960335473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614610bad573360009081526066602052604090205460ff16610bad576040517fa5138d7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bbd6108426020830183611b28565b6000610bcf60a0830160808401611c62565b90506000610be360c0840160a08501611b28565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090921667ffffffffffffffff90941693909317179091555050565b600080600080610c478787876115b2565b935093509350935093509350935093565b600080808080610c6c565b60405180910390fd5b610c778888886115b2565b94509450945094505093509350935093565b6000610cb37fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116610d0c5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610d2e565b3373ffffffffffffffffffffffffffffffffffffffff821614610d2e57600080fd5b600054610100900460ff1615808015610d4e5750600054600160ff909116105b80610d685750303b158015610d68575060005460ff166001145b610df4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610c63565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e5257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e5a611689565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055606580547fffffffffffffffffffffffffffffffff000000000000000000000000000000001668056bc75e2d6310000017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff91909116179055801561095057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b610f786110d7565b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610fc36110d7565b606a80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6110126110d7565b73ffffffffffffffffffffffffffffffffffffffff81166110b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610c63565b6110be81611158565b50565b6110c96110d7565b6110d38282611728565b5050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610a8c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610c63565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b63ffffffff8381166000908152606760205260408120606854606954929384938492680100000000000000009004909116906064906112349070010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1689611cac565b61123e9190611cf8565b6112489190611cac565b825490915060009061127c907801000000000000000000000000000000000000000000000000900463ffffffff1688611cac565b835460685491925060009167ffffffffffffffff700100000000000000000000000000000000909204821691849186916112b791168b611d0c565b6112c19190611d0c565b6112cb9190611d0c565b6112d59190611cac565b60655485549192506fffffffffffffffffffffffffffffffff908116916112fd911683611cac565b6113079190611cf8565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b600080600061133a8661182e565b63ffffffff8082166000908152606760205260408120805493945092909161137f91780100000000000000000000000000000000000000000000000090041688611cac565b61138b90610c74611d0c565b82549091506000906113bb90700100000000000000000000000000000000900467ffffffffffffffff1683611cac565b63ffffffff808b16600090815260676020526040812080549394509290916114009178010000000000000000000000000000000000000000000000009004168b611cac565b8254909150600090700100000000000000000000000000000000900467ffffffffffffffff166114308b84611d0c565b61143a9190611cac565b60655487549192506000916fffffffffffffffffffffffffffffffff91821691611465911687611cac565b61146f9190611cf8565b60655485549192506000916fffffffffffffffffffffffffffffffff9182169161149a911685611cac565b6114a49190611cf8565b905060006114b28284611d0c565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b63ffffffff8084166000908152606760205260408120805491928392839161152291780100000000000000000000000000000000000000000000000090041687611cac565b8254909150600090700100000000000000000000000000000000900467ffffffffffffffff166115528784611d0c565b61155c9190611cac565b60655484549192506fffffffffffffffffffffffffffffffff90811691611584911683611cac565b61158e9190611cf8565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b6000808080806115c461753089611d1f565b90508063ffffffff16606e14806115e257508063ffffffff1661279f145b806115f457508063ffffffff16614eaf145b1561160e576116048188886111cf565b909550935061165d565b8063ffffffff16606f148061162a57508063ffffffff16612794145b8061163c57508063ffffffff16614ea4145b1561164c5761160481888861132c565b6116578188886114dd565b90955093505b505060655460695493979296506fffffffffffffffffffffffffffffffff908116955090921692509050565b600054610100900460ff16611720576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610c63565b610a8c6118c2565b73ffffffffffffffffffffffffffffffffffffffff8216611775576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d80600081146117cf576040519150601f19603f3d011682016040523d82523d6000602084013e6117d4565b606091505b5050905080610950576040517f2c024f9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610c63565b60008061183d61753084611d1f565b90508063ffffffff16606f036118565750606592915050565b8063ffffffff166127940361186f575061278992915050565b8063ffffffff16614ea4036118885750614e9992915050565b6040517f8d2da58000000000000000000000000000000000000000000000000000000000815263ffffffff82166004820152602401610c63565b600054610100900460ff16611959576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610c63565b610a8c33611158565b803563ffffffff8116811461197657600080fd5b919050565b60008060006060848603121561199057600080fd5b61199984611962565b95602085013595506040909401359392505050565b80356fffffffffffffffffffffffffffffffff8116811461197657600080fd5b6000602082840312156119e057600080fd5b6119e9826119ae565b9392505050565b60008060208385031215611a0357600080fd5b823567ffffffffffffffff80821115611a1b57600080fd5b818501915085601f830112611a2f57600080fd5b813581811115611a3e57600080fd5b8660208260071b8501011115611a5357600080fd5b60209290920196919550909350505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461197657600080fd5b60008060408385031215611a9c57600080fd5b611aa583611a65565b915060208301358015158114611aba57600080fd5b809150509250929050565b803561ffff8116811461197657600080fd5b600080600060608486031215611aec57600080fd5b61199984611ac5565b600060c08284031215611b0757600080fd5b50919050565b600060208284031215611b1f57600080fd5b6119e982611a65565b600060208284031215611b3a57600080fd5b6119e982611962565b600060208284031215611b5557600080fd5b6119e982611ac5565b60008060408385031215611b7157600080fd5b611b7a83611a65565b946020939093013593505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff8116811461197657600080fd5b600060608284031215611be157600080fd5b6040516060810181811067ffffffffffffffff82111715611c2b577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604052611c37836119ae565b8152611c4560208401611bb7565b6020820152611c5660408401611962565b60408201529392505050565b600060208284031215611c7457600080fd5b6119e982611bb7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082028115828204841417611cc357611cc3611c7d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611d0757611d07611cc9565b500490565b80820180821115611cc357611cc3611c7d565b600063ffffffff80841680611d3657611d36611cc9565b9216919091069291505056fea2646970667358221220f846daa3c7157f24f9444f3c773ca921fbddff72a89f37acd7aae0e2fd7ffa8a64736f6c63430008160033",
648
+ "linkReferences": {},
649
+ "deployedLinkReferences": {}
650
+ }