@layerzerolabs/lz-evm-sdk-v2 2.0.8 → 2.0.10-tron

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 (117) hide show
  1. package/deployments/arbitrum-sandbox-local/DVN.json +1896 -0
  2. package/deployments/arbitrum-sandbox-local/DVNFeeLib.json +387 -0
  3. package/deployments/arbitrum-sandbox-local/EndpointV2.json +2955 -0
  4. package/deployments/{ethereum-sandbox-local/Oracle.json → arbitrum-sandbox-local/Executor.json} +656 -398
  5. package/deployments/arbitrum-sandbox-local/ExecutorFeeLib.json +407 -0
  6. package/deployments/arbitrum-sandbox-local/ExecutorProxyAdmin.json +283 -0
  7. package/deployments/arbitrum-sandbox-local/Executor_Implementation.json +1591 -0
  8. package/deployments/{ethereum-sandbox-local/Oracle_Proxy.json → arbitrum-sandbox-local/Executor_Proxy.json} +135 -60
  9. package/deployments/arbitrum-sandbox-local/NonceContractMock.json +163 -0
  10. package/deployments/{polygon-sandbox-local/Relayer.json → arbitrum-sandbox-local/PriceFeed.json} +339 -445
  11. package/deployments/arbitrum-sandbox-local/PriceFeedProxyAdmin.json +283 -0
  12. package/deployments/arbitrum-sandbox-local/PriceFeed_Implementation.json +912 -0
  13. package/deployments/{ethereum-sandbox-local/Relayer_Proxy.json → arbitrum-sandbox-local/PriceFeed_Proxy.json} +33 -64
  14. package/deployments/arbitrum-sandbox-local/ReceiveUln301.json +1264 -0
  15. package/deployments/arbitrum-sandbox-local/ReceiveUln302.json +954 -0
  16. package/deployments/arbitrum-sandbox-local/SendUln301.json +1569 -0
  17. package/deployments/arbitrum-sandbox-local/SendUln302.json +1527 -0
  18. package/deployments/arbitrum-sandbox-local/SimpleMessageLib.json +708 -0
  19. package/deployments/arbitrum-sandbox-local/Treasury.json +412 -0
  20. package/deployments/arbitrum-sandbox-local/TreasuryFeeHandler.json +125 -0
  21. package/deployments/ethereum-sandbox-local/DVN.json +5 -5
  22. package/deployments/ethereum-sandbox-local/DVNFeeLib.json +2 -2
  23. package/deployments/ethereum-sandbox-local/EndpointV2.json +4 -4
  24. package/deployments/ethereum-sandbox-local/Executor.json +14 -14
  25. package/deployments/ethereum-sandbox-local/ExecutorFeeLib.json +2 -2
  26. package/deployments/ethereum-sandbox-local/ExecutorProxyAdmin.json +3 -3
  27. package/deployments/ethereum-sandbox-local/Executor_Implementation.json +1 -1
  28. package/deployments/ethereum-sandbox-local/Executor_Proxy.json +14 -14
  29. package/deployments/ethereum-sandbox-local/NonceContractMock.json +1 -1
  30. package/deployments/ethereum-sandbox-local/PriceFeed.json +5 -5
  31. package/deployments/ethereum-sandbox-local/PriceFeedProxyAdmin.json +3 -3
  32. package/deployments/ethereum-sandbox-local/PriceFeed_Implementation.json +1 -1
  33. package/deployments/ethereum-sandbox-local/PriceFeed_Proxy.json +5 -5
  34. package/deployments/ethereum-sandbox-local/ReceiveUln301.json +2 -2
  35. package/deployments/ethereum-sandbox-local/ReceiveUln302.json +2 -2
  36. package/deployments/ethereum-sandbox-local/SendUln301.json +2 -2
  37. package/deployments/ethereum-sandbox-local/SendUln302.json +2 -2
  38. package/deployments/ethereum-sandbox-local/SimpleMessageLib.json +2 -2
  39. package/deployments/ethereum-sandbox-local/Treasury.json +2 -2
  40. package/deployments/ethereum-sandbox-local/TreasuryFeeHandler.json +1 -1
  41. package/deployments/polygon-sandbox-local/DVN.json +5 -5
  42. package/deployments/polygon-sandbox-local/DVNFeeLib.json +2 -2
  43. package/deployments/polygon-sandbox-local/EndpointV2.json +4 -4
  44. package/deployments/polygon-sandbox-local/Executor.json +14 -14
  45. package/deployments/polygon-sandbox-local/ExecutorFeeLib.json +2 -2
  46. package/deployments/polygon-sandbox-local/ExecutorProxyAdmin.json +3 -3
  47. package/deployments/polygon-sandbox-local/Executor_Implementation.json +1 -1
  48. package/deployments/polygon-sandbox-local/Executor_Proxy.json +14 -14
  49. package/deployments/polygon-sandbox-local/NonceContractMock.json +1 -1
  50. package/deployments/polygon-sandbox-local/PriceFeed.json +5 -5
  51. package/deployments/polygon-sandbox-local/PriceFeedProxyAdmin.json +3 -3
  52. package/deployments/polygon-sandbox-local/PriceFeed_Implementation.json +1 -1
  53. package/deployments/polygon-sandbox-local/PriceFeed_Proxy.json +5 -5
  54. package/deployments/polygon-sandbox-local/ReceiveUln301.json +2 -2
  55. package/deployments/polygon-sandbox-local/ReceiveUln302.json +2 -2
  56. package/deployments/polygon-sandbox-local/SendUln301.json +2 -2
  57. package/deployments/polygon-sandbox-local/SendUln302.json +2 -2
  58. package/deployments/polygon-sandbox-local/SimpleMessageLib.json +2 -2
  59. package/deployments/polygon-sandbox-local/Treasury.json +2 -2
  60. package/deployments/polygon-sandbox-local/TreasuryFeeHandler.json +1 -1
  61. package/deployments/tron-sandbox-local/DVN.json +1896 -0
  62. package/deployments/tron-sandbox-local/DVNFeeLib.json +387 -0
  63. package/deployments/tron-sandbox-local/EndpointV2.json +2955 -0
  64. package/deployments/{polygon-sandbox-local/Oracle.json → tron-sandbox-local/Executor.json} +656 -398
  65. package/deployments/tron-sandbox-local/ExecutorFeeLib.json +407 -0
  66. package/deployments/tron-sandbox-local/ExecutorProxyAdmin.json +283 -0
  67. package/deployments/tron-sandbox-local/Executor_Implementation.json +1591 -0
  68. package/deployments/{polygon-sandbox-local/Oracle_Proxy.json → tron-sandbox-local/Executor_Proxy.json} +135 -60
  69. package/deployments/tron-sandbox-local/NonceContractMock.json +163 -0
  70. package/deployments/{ethereum-sandbox-local/Relayer.json → tron-sandbox-local/PriceFeed.json} +339 -445
  71. package/deployments/tron-sandbox-local/PriceFeedProxyAdmin.json +283 -0
  72. package/deployments/tron-sandbox-local/PriceFeed_Implementation.json +912 -0
  73. package/deployments/{polygon-sandbox-local/Relayer_Proxy.json → tron-sandbox-local/PriceFeed_Proxy.json} +33 -64
  74. package/deployments/tron-sandbox-local/ReceiveUln301.json +1264 -0
  75. package/deployments/tron-sandbox-local/ReceiveUln302.json +954 -0
  76. package/deployments/tron-sandbox-local/SendUln301.json +1569 -0
  77. package/deployments/tron-sandbox-local/SendUln302.json +1527 -0
  78. package/deployments/tron-sandbox-local/SimpleMessageLib.json +708 -0
  79. package/deployments/tron-sandbox-local/Treasury.json +412 -0
  80. package/deployments/tron-sandbox-local/TreasuryFeeHandler.json +125 -0
  81. package/package.json +9 -20
  82. package/deployments/ethereum-sandbox-local/BlockedMessageLib.json +0 -90
  83. package/deployments/ethereum-sandbox-local/Endpoint.json +0 -2355
  84. package/deployments/ethereum-sandbox-local/MultiSigOracle.json +0 -1448
  85. package/deployments/ethereum-sandbox-local/NonceContract.json +0 -158
  86. package/deployments/ethereum-sandbox-local/OmniCounter.json +0 -1133
  87. package/deployments/ethereum-sandbox-local/OmniCounterPreCrime.json +0 -493
  88. package/deployments/ethereum-sandbox-local/OmniCounterPreCrimeView.json +0 -672
  89. package/deployments/ethereum-sandbox-local/OmniCounterViewer.json +0 -214
  90. package/deployments/ethereum-sandbox-local/OmniCounterWithPreCrime.json +0 -1646
  91. package/deployments/ethereum-sandbox-local/OracleFeeLib.json +0 -166
  92. package/deployments/ethereum-sandbox-local/OracleProxyAdmin.json +0 -272
  93. package/deployments/ethereum-sandbox-local/Oracle_Implementation.json +0 -1326
  94. package/deployments/ethereum-sandbox-local/RelayerFeeLib.json +0 -130
  95. package/deployments/ethereum-sandbox-local/RelayerProxyAdmin.json +0 -272
  96. package/deployments/ethereum-sandbox-local/Relayer_Implementation.json +0 -1014
  97. package/deployments/ethereum-sandbox-local/UlnConfig301.json +0 -1003
  98. package/deployments/ethereum-sandbox-local/UlnConfig302.json +0 -1003
  99. package/deployments/ethereum-sandbox-local/UltraLightNodeE302.json +0 -1696
  100. package/deployments/polygon-sandbox-local/BlockedMessageLib.json +0 -90
  101. package/deployments/polygon-sandbox-local/Endpoint.json +0 -2355
  102. package/deployments/polygon-sandbox-local/MultiSigOracle.json +0 -1448
  103. package/deployments/polygon-sandbox-local/NonceContract.json +0 -158
  104. package/deployments/polygon-sandbox-local/OmniCounter.json +0 -1133
  105. package/deployments/polygon-sandbox-local/OmniCounterPreCrime.json +0 -493
  106. package/deployments/polygon-sandbox-local/OmniCounterPreCrimeView.json +0 -672
  107. package/deployments/polygon-sandbox-local/OmniCounterViewer.json +0 -214
  108. package/deployments/polygon-sandbox-local/OmniCounterWithPreCrime.json +0 -1646
  109. package/deployments/polygon-sandbox-local/OracleFeeLib.json +0 -166
  110. package/deployments/polygon-sandbox-local/OracleProxyAdmin.json +0 -272
  111. package/deployments/polygon-sandbox-local/Oracle_Implementation.json +0 -1326
  112. package/deployments/polygon-sandbox-local/RelayerFeeLib.json +0 -130
  113. package/deployments/polygon-sandbox-local/RelayerProxyAdmin.json +0 -272
  114. package/deployments/polygon-sandbox-local/Relayer_Implementation.json +0 -1014
  115. package/deployments/polygon-sandbox-local/UlnConfig301.json +0 -1003
  116. package/deployments/polygon-sandbox-local/UlnConfig302.json +0 -1003
  117. package/deployments/polygon-sandbox-local/UltraLightNodeE302.json +0 -1696
@@ -1,2355 +0,0 @@
1
- {
2
- "address": "0x1275D096B9DBf2347bD2a131Fb6BDaB0B4882487",
3
- "abi": [
4
- {
5
- "inputs": [
6
- {
7
- "internalType": "uint32",
8
- "name": "_eid",
9
- "type": "uint32"
10
- },
11
- {
12
- "internalType": "address",
13
- "name": "_blockedLib",
14
- "type": "address"
15
- },
16
- {
17
- "internalType": "address",
18
- "name": "_altToken",
19
- "type": "address"
20
- }
21
- ],
22
- "stateMutability": "nonpayable",
23
- "type": "constructor"
24
- },
25
- {
26
- "anonymous": false,
27
- "inputs": [
28
- {
29
- "indexed": false,
30
- "internalType": "address",
31
- "name": "receiver",
32
- "type": "address"
33
- },
34
- {
35
- "indexed": false,
36
- "internalType": "address",
37
- "name": "composer",
38
- "type": "address"
39
- },
40
- {
41
- "indexed": false,
42
- "internalType": "bytes32",
43
- "name": "guid",
44
- "type": "bytes32"
45
- },
46
- {
47
- "indexed": false,
48
- "internalType": "bytes",
49
- "name": "message",
50
- "type": "bytes"
51
- }
52
- ],
53
- "name": "ComposedMessageDelivered",
54
- "type": "event"
55
- },
56
- {
57
- "anonymous": false,
58
- "inputs": [
59
- {
60
- "indexed": false,
61
- "internalType": "address",
62
- "name": "receiver",
63
- "type": "address"
64
- },
65
- {
66
- "indexed": false,
67
- "internalType": "address",
68
- "name": "composer",
69
- "type": "address"
70
- },
71
- {
72
- "indexed": false,
73
- "internalType": "bytes32",
74
- "name": "guid",
75
- "type": "bytes32"
76
- },
77
- {
78
- "indexed": false,
79
- "internalType": "bytes32",
80
- "name": "messageHash",
81
- "type": "bytes32"
82
- },
83
- {
84
- "indexed": false,
85
- "internalType": "address",
86
- "name": "caller",
87
- "type": "address"
88
- }
89
- ],
90
- "name": "ComposedMessageReceived",
91
- "type": "event"
92
- },
93
- {
94
- "anonymous": false,
95
- "inputs": [
96
- {
97
- "indexed": false,
98
- "internalType": "uint32",
99
- "name": "eid",
100
- "type": "uint32"
101
- },
102
- {
103
- "indexed": false,
104
- "internalType": "address",
105
- "name": "oldLib",
106
- "type": "address"
107
- },
108
- {
109
- "indexed": false,
110
- "internalType": "address",
111
- "name": "newLib",
112
- "type": "address"
113
- }
114
- ],
115
- "name": "DefaultReceiveLibrarySet",
116
- "type": "event"
117
- },
118
- {
119
- "anonymous": false,
120
- "inputs": [
121
- {
122
- "indexed": false,
123
- "internalType": "uint32",
124
- "name": "eid",
125
- "type": "uint32"
126
- },
127
- {
128
- "indexed": false,
129
- "internalType": "address",
130
- "name": "oldLib",
131
- "type": "address"
132
- },
133
- {
134
- "indexed": false,
135
- "internalType": "uint256",
136
- "name": "expiry",
137
- "type": "uint256"
138
- }
139
- ],
140
- "name": "DefaultReceiveLibraryTimeoutSet",
141
- "type": "event"
142
- },
143
- {
144
- "anonymous": false,
145
- "inputs": [
146
- {
147
- "indexed": false,
148
- "internalType": "uint32",
149
- "name": "eid",
150
- "type": "uint32"
151
- },
152
- {
153
- "indexed": false,
154
- "internalType": "address",
155
- "name": "newLib",
156
- "type": "address"
157
- }
158
- ],
159
- "name": "DefaultSendLibrarySet",
160
- "type": "event"
161
- },
162
- {
163
- "anonymous": false,
164
- "inputs": [
165
- {
166
- "indexed": false,
167
- "internalType": "address",
168
- "name": "sender",
169
- "type": "address"
170
- },
171
- {
172
- "indexed": false,
173
- "internalType": "uint256",
174
- "name": "nativeOrAltTokenFee",
175
- "type": "uint256"
176
- },
177
- {
178
- "indexed": false,
179
- "internalType": "uint256",
180
- "name": "lzTokenFee",
181
- "type": "uint256"
182
- }
183
- ],
184
- "name": "FeePaid",
185
- "type": "event"
186
- },
187
- {
188
- "anonymous": false,
189
- "inputs": [
190
- {
191
- "indexed": false,
192
- "internalType": "uint32",
193
- "name": "srcEid",
194
- "type": "uint32"
195
- },
196
- {
197
- "indexed": false,
198
- "internalType": "bytes32",
199
- "name": "sender",
200
- "type": "bytes32"
201
- },
202
- {
203
- "indexed": false,
204
- "internalType": "address",
205
- "name": "receiver",
206
- "type": "address"
207
- },
208
- {
209
- "indexed": false,
210
- "internalType": "uint64",
211
- "name": "nonce",
212
- "type": "uint64"
213
- }
214
- ],
215
- "name": "InboundNonceSkipped",
216
- "type": "event"
217
- },
218
- {
219
- "anonymous": false,
220
- "inputs": [
221
- {
222
- "indexed": false,
223
- "internalType": "address",
224
- "name": "token",
225
- "type": "address"
226
- }
227
- ],
228
- "name": "LayerZeroTokenSet",
229
- "type": "event"
230
- },
231
- {
232
- "anonymous": false,
233
- "inputs": [
234
- {
235
- "indexed": false,
236
- "internalType": "address",
237
- "name": "newLib",
238
- "type": "address"
239
- }
240
- ],
241
- "name": "LibraryRegistered",
242
- "type": "event"
243
- },
244
- {
245
- "anonymous": false,
246
- "inputs": [
247
- {
248
- "indexed": false,
249
- "internalType": "address",
250
- "name": "sender",
251
- "type": "address"
252
- },
253
- {
254
- "indexed": false,
255
- "internalType": "address",
256
- "name": "receiver",
257
- "type": "address"
258
- },
259
- {
260
- "indexed": false,
261
- "internalType": "bytes32",
262
- "name": "guid",
263
- "type": "bytes32"
264
- },
265
- {
266
- "indexed": false,
267
- "internalType": "bytes32",
268
- "name": "messageHash",
269
- "type": "bytes32"
270
- },
271
- {
272
- "indexed": false,
273
- "internalType": "address",
274
- "name": "caller",
275
- "type": "address"
276
- },
277
- {
278
- "indexed": false,
279
- "internalType": "bytes",
280
- "name": "reason",
281
- "type": "bytes"
282
- }
283
- ],
284
- "name": "LzComposeFailed",
285
- "type": "event"
286
- },
287
- {
288
- "anonymous": false,
289
- "inputs": [
290
- {
291
- "components": [
292
- {
293
- "internalType": "uint32",
294
- "name": "srcEid",
295
- "type": "uint32"
296
- },
297
- {
298
- "internalType": "bytes32",
299
- "name": "sender",
300
- "type": "bytes32"
301
- },
302
- {
303
- "internalType": "uint64",
304
- "name": "nonce",
305
- "type": "uint64"
306
- }
307
- ],
308
- "indexed": false,
309
- "internalType": "struct IMessageOrigin.MessageOrigin",
310
- "name": "origin",
311
- "type": "tuple"
312
- },
313
- {
314
- "indexed": false,
315
- "internalType": "address",
316
- "name": "receiver",
317
- "type": "address"
318
- },
319
- {
320
- "indexed": false,
321
- "internalType": "address",
322
- "name": "caller",
323
- "type": "address"
324
- },
325
- {
326
- "indexed": false,
327
- "internalType": "bytes",
328
- "name": "reason",
329
- "type": "bytes"
330
- }
331
- ],
332
- "name": "LzReceiveFailed",
333
- "type": "event"
334
- },
335
- {
336
- "anonymous": false,
337
- "inputs": [
338
- {
339
- "indexed": true,
340
- "internalType": "address",
341
- "name": "previousOwner",
342
- "type": "address"
343
- },
344
- {
345
- "indexed": true,
346
- "internalType": "address",
347
- "name": "newOwner",
348
- "type": "address"
349
- }
350
- ],
351
- "name": "OwnershipTransferred",
352
- "type": "event"
353
- },
354
- {
355
- "anonymous": false,
356
- "inputs": [
357
- {
358
- "components": [
359
- {
360
- "internalType": "uint32",
361
- "name": "srcEid",
362
- "type": "uint32"
363
- },
364
- {
365
- "internalType": "bytes32",
366
- "name": "sender",
367
- "type": "bytes32"
368
- },
369
- {
370
- "internalType": "uint64",
371
- "name": "nonce",
372
- "type": "uint64"
373
- }
374
- ],
375
- "indexed": false,
376
- "internalType": "struct IMessageOrigin.MessageOrigin",
377
- "name": "origin",
378
- "type": "tuple"
379
- },
380
- {
381
- "indexed": false,
382
- "internalType": "address",
383
- "name": "receiver",
384
- "type": "address"
385
- },
386
- {
387
- "indexed": false,
388
- "internalType": "bytes32",
389
- "name": "payloadHash",
390
- "type": "bytes32"
391
- },
392
- {
393
- "indexed": false,
394
- "internalType": "address",
395
- "name": "receiveLibrary",
396
- "type": "address"
397
- }
398
- ],
399
- "name": "PacketDelivered",
400
- "type": "event"
401
- },
402
- {
403
- "anonymous": false,
404
- "inputs": [
405
- {
406
- "components": [
407
- {
408
- "internalType": "uint32",
409
- "name": "srcEid",
410
- "type": "uint32"
411
- },
412
- {
413
- "internalType": "bytes32",
414
- "name": "sender",
415
- "type": "bytes32"
416
- },
417
- {
418
- "internalType": "uint64",
419
- "name": "nonce",
420
- "type": "uint64"
421
- }
422
- ],
423
- "indexed": false,
424
- "internalType": "struct IMessageOrigin.MessageOrigin",
425
- "name": "origin",
426
- "type": "tuple"
427
- },
428
- {
429
- "indexed": false,
430
- "internalType": "address",
431
- "name": "receiver",
432
- "type": "address"
433
- },
434
- {
435
- "indexed": false,
436
- "internalType": "address",
437
- "name": "caller",
438
- "type": "address"
439
- }
440
- ],
441
- "name": "PacketReceived",
442
- "type": "event"
443
- },
444
- {
445
- "anonymous": false,
446
- "inputs": [
447
- {
448
- "indexed": false,
449
- "internalType": "bytes",
450
- "name": "encodedPayload",
451
- "type": "bytes"
452
- },
453
- {
454
- "indexed": false,
455
- "internalType": "bytes",
456
- "name": "options",
457
- "type": "bytes"
458
- },
459
- {
460
- "indexed": false,
461
- "internalType": "address",
462
- "name": "sendLibrary",
463
- "type": "address"
464
- }
465
- ],
466
- "name": "PacketSent",
467
- "type": "event"
468
- },
469
- {
470
- "anonymous": false,
471
- "inputs": [
472
- {
473
- "indexed": false,
474
- "internalType": "address",
475
- "name": "receiver",
476
- "type": "address"
477
- },
478
- {
479
- "indexed": false,
480
- "internalType": "uint32",
481
- "name": "eid",
482
- "type": "uint32"
483
- },
484
- {
485
- "indexed": false,
486
- "internalType": "address",
487
- "name": "oldLib",
488
- "type": "address"
489
- },
490
- {
491
- "indexed": false,
492
- "internalType": "address",
493
- "name": "newLib",
494
- "type": "address"
495
- }
496
- ],
497
- "name": "ReceiveLibrarySet",
498
- "type": "event"
499
- },
500
- {
501
- "anonymous": false,
502
- "inputs": [
503
- {
504
- "indexed": false,
505
- "internalType": "address",
506
- "name": "receiver",
507
- "type": "address"
508
- },
509
- {
510
- "indexed": false,
511
- "internalType": "uint32",
512
- "name": "eid",
513
- "type": "uint32"
514
- },
515
- {
516
- "indexed": false,
517
- "internalType": "address",
518
- "name": "oldLib",
519
- "type": "address"
520
- },
521
- {
522
- "indexed": false,
523
- "internalType": "uint256",
524
- "name": "timeout",
525
- "type": "uint256"
526
- }
527
- ],
528
- "name": "ReceiveLibraryTimoutSet",
529
- "type": "event"
530
- },
531
- {
532
- "anonymous": false,
533
- "inputs": [
534
- {
535
- "indexed": false,
536
- "internalType": "address",
537
- "name": "sender",
538
- "type": "address"
539
- },
540
- {
541
- "indexed": false,
542
- "internalType": "uint32",
543
- "name": "eid",
544
- "type": "uint32"
545
- },
546
- {
547
- "indexed": false,
548
- "internalType": "address",
549
- "name": "newLib",
550
- "type": "address"
551
- }
552
- ],
553
- "name": "SendLibrarySet",
554
- "type": "event"
555
- },
556
- {
557
- "inputs": [],
558
- "name": "altFeeToken",
559
- "outputs": [
560
- {
561
- "internalType": "address",
562
- "name": "",
563
- "type": "address"
564
- }
565
- ],
566
- "stateMutability": "view",
567
- "type": "function"
568
- },
569
- {
570
- "inputs": [],
571
- "name": "blockedLibrary",
572
- "outputs": [
573
- {
574
- "internalType": "address",
575
- "name": "",
576
- "type": "address"
577
- }
578
- ],
579
- "stateMutability": "view",
580
- "type": "function"
581
- },
582
- {
583
- "inputs": [
584
- {
585
- "components": [
586
- {
587
- "internalType": "uint32",
588
- "name": "srcEid",
589
- "type": "uint32"
590
- },
591
- {
592
- "internalType": "bytes32",
593
- "name": "sender",
594
- "type": "bytes32"
595
- },
596
- {
597
- "internalType": "uint64",
598
- "name": "nonce",
599
- "type": "uint64"
600
- }
601
- ],
602
- "internalType": "struct IMessageOrigin.MessageOrigin",
603
- "name": "_origin",
604
- "type": "tuple"
605
- },
606
- {
607
- "internalType": "bytes32",
608
- "name": "_guid",
609
- "type": "bytes32"
610
- },
611
- {
612
- "internalType": "bytes",
613
- "name": "_message",
614
- "type": "bytes"
615
- }
616
- ],
617
- "name": "clear",
618
- "outputs": [
619
- {
620
- "internalType": "bytes32",
621
- "name": "payloadHash",
622
- "type": "bytes32"
623
- }
624
- ],
625
- "stateMutability": "nonpayable",
626
- "type": "function"
627
- },
628
- {
629
- "inputs": [
630
- {
631
- "internalType": "address",
632
- "name": "receiver",
633
- "type": "address"
634
- },
635
- {
636
- "internalType": "address",
637
- "name": "composer",
638
- "type": "address"
639
- },
640
- {
641
- "internalType": "bytes32",
642
- "name": "guid",
643
- "type": "bytes32"
644
- }
645
- ],
646
- "name": "composedMessages",
647
- "outputs": [
648
- {
649
- "internalType": "bytes32",
650
- "name": "messageHash",
651
- "type": "bytes32"
652
- }
653
- ],
654
- "stateMutability": "view",
655
- "type": "function"
656
- },
657
- {
658
- "inputs": [
659
- {
660
- "internalType": "address",
661
- "name": "_lib",
662
- "type": "address"
663
- },
664
- {
665
- "internalType": "uint32",
666
- "name": "_eid",
667
- "type": "uint32"
668
- },
669
- {
670
- "internalType": "uint32",
671
- "name": "_configType",
672
- "type": "uint32"
673
- }
674
- ],
675
- "name": "defaultConfig",
676
- "outputs": [
677
- {
678
- "internalType": "bytes",
679
- "name": "",
680
- "type": "bytes"
681
- }
682
- ],
683
- "stateMutability": "view",
684
- "type": "function"
685
- },
686
- {
687
- "inputs": [
688
- {
689
- "internalType": "uint32",
690
- "name": "srcEid",
691
- "type": "uint32"
692
- }
693
- ],
694
- "name": "defaultReceiveLibrary",
695
- "outputs": [
696
- {
697
- "internalType": "address",
698
- "name": "lib",
699
- "type": "address"
700
- }
701
- ],
702
- "stateMutability": "view",
703
- "type": "function"
704
- },
705
- {
706
- "inputs": [
707
- {
708
- "internalType": "uint32",
709
- "name": "srcEid",
710
- "type": "uint32"
711
- }
712
- ],
713
- "name": "defaultReceiveLibraryTimeout",
714
- "outputs": [
715
- {
716
- "internalType": "address",
717
- "name": "lib",
718
- "type": "address"
719
- },
720
- {
721
- "internalType": "uint256",
722
- "name": "expiry",
723
- "type": "uint256"
724
- }
725
- ],
726
- "stateMutability": "view",
727
- "type": "function"
728
- },
729
- {
730
- "inputs": [
731
- {
732
- "internalType": "uint32",
733
- "name": "dstEid",
734
- "type": "uint32"
735
- }
736
- ],
737
- "name": "defaultSendLibrary",
738
- "outputs": [
739
- {
740
- "internalType": "address",
741
- "name": "lib",
742
- "type": "address"
743
- }
744
- ],
745
- "stateMutability": "view",
746
- "type": "function"
747
- },
748
- {
749
- "inputs": [
750
- {
751
- "components": [
752
- {
753
- "internalType": "uint32",
754
- "name": "srcEid",
755
- "type": "uint32"
756
- },
757
- {
758
- "internalType": "bytes32",
759
- "name": "sender",
760
- "type": "bytes32"
761
- },
762
- {
763
- "internalType": "uint64",
764
- "name": "nonce",
765
- "type": "uint64"
766
- }
767
- ],
768
- "internalType": "struct IMessageOrigin.MessageOrigin",
769
- "name": "_origin",
770
- "type": "tuple"
771
- },
772
- {
773
- "internalType": "address",
774
- "name": "_receiver",
775
- "type": "address"
776
- },
777
- {
778
- "internalType": "bytes32",
779
- "name": "_payloadHash",
780
- "type": "bytes32"
781
- }
782
- ],
783
- "name": "deliver",
784
- "outputs": [],
785
- "stateMutability": "nonpayable",
786
- "type": "function"
787
- },
788
- {
789
- "inputs": [
790
- {
791
- "internalType": "address",
792
- "name": "_composer",
793
- "type": "address"
794
- },
795
- {
796
- "internalType": "bytes32",
797
- "name": "_guid",
798
- "type": "bytes32"
799
- },
800
- {
801
- "internalType": "bytes",
802
- "name": "_message",
803
- "type": "bytes"
804
- }
805
- ],
806
- "name": "deliverComposedMessage",
807
- "outputs": [],
808
- "stateMutability": "nonpayable",
809
- "type": "function"
810
- },
811
- {
812
- "inputs": [
813
- {
814
- "components": [
815
- {
816
- "internalType": "uint32",
817
- "name": "srcEid",
818
- "type": "uint32"
819
- },
820
- {
821
- "internalType": "bytes32",
822
- "name": "sender",
823
- "type": "bytes32"
824
- },
825
- {
826
- "internalType": "uint64",
827
- "name": "nonce",
828
- "type": "uint64"
829
- }
830
- ],
831
- "internalType": "struct IMessageOrigin.MessageOrigin",
832
- "name": "_origin",
833
- "type": "tuple"
834
- },
835
- {
836
- "internalType": "address",
837
- "name": "_receiveLib",
838
- "type": "address"
839
- },
840
- {
841
- "internalType": "address",
842
- "name": "_receiver",
843
- "type": "address"
844
- }
845
- ],
846
- "name": "deliverable",
847
- "outputs": [
848
- {
849
- "internalType": "bool",
850
- "name": "",
851
- "type": "bool"
852
- }
853
- ],
854
- "stateMutability": "view",
855
- "type": "function"
856
- },
857
- {
858
- "inputs": [],
859
- "name": "eid",
860
- "outputs": [
861
- {
862
- "internalType": "uint32",
863
- "name": "",
864
- "type": "uint32"
865
- }
866
- ],
867
- "stateMutability": "view",
868
- "type": "function"
869
- },
870
- {
871
- "inputs": [],
872
- "name": "getComposeContext",
873
- "outputs": [
874
- {
875
- "internalType": "address",
876
- "name": "",
877
- "type": "address"
878
- }
879
- ],
880
- "stateMutability": "view",
881
- "type": "function"
882
- },
883
- {
884
- "inputs": [
885
- {
886
- "internalType": "address",
887
- "name": "_oapp",
888
- "type": "address"
889
- },
890
- {
891
- "internalType": "address",
892
- "name": "_lib",
893
- "type": "address"
894
- },
895
- {
896
- "internalType": "uint32",
897
- "name": "_eid",
898
- "type": "uint32"
899
- },
900
- {
901
- "internalType": "uint32",
902
- "name": "_configType",
903
- "type": "uint32"
904
- }
905
- ],
906
- "name": "getConfig",
907
- "outputs": [
908
- {
909
- "internalType": "bytes",
910
- "name": "config",
911
- "type": "bytes"
912
- },
913
- {
914
- "internalType": "bool",
915
- "name": "isDefault",
916
- "type": "bool"
917
- }
918
- ],
919
- "stateMutability": "view",
920
- "type": "function"
921
- },
922
- {
923
- "inputs": [
924
- {
925
- "internalType": "address",
926
- "name": "_receiver",
927
- "type": "address"
928
- },
929
- {
930
- "internalType": "uint32",
931
- "name": "_srcEid",
932
- "type": "uint32"
933
- },
934
- {
935
- "internalType": "bytes32",
936
- "name": "_sender",
937
- "type": "bytes32"
938
- }
939
- ],
940
- "name": "getInboundNonce",
941
- "outputs": [
942
- {
943
- "internalType": "uint64",
944
- "name": "",
945
- "type": "uint64"
946
- }
947
- ],
948
- "stateMutability": "view",
949
- "type": "function"
950
- },
951
- {
952
- "inputs": [
953
- {
954
- "components": [
955
- {
956
- "internalType": "uint32",
957
- "name": "srcEid",
958
- "type": "uint32"
959
- },
960
- {
961
- "internalType": "bytes32",
962
- "name": "sender",
963
- "type": "bytes32"
964
- },
965
- {
966
- "internalType": "uint64",
967
- "name": "nonce",
968
- "type": "uint64"
969
- }
970
- ],
971
- "internalType": "struct IMessageOrigin.MessageOrigin",
972
- "name": "_origin",
973
- "type": "tuple"
974
- },
975
- {
976
- "internalType": "address",
977
- "name": "_receiver",
978
- "type": "address"
979
- }
980
- ],
981
- "name": "getInboundPayloadHash",
982
- "outputs": [
983
- {
984
- "internalType": "bytes32",
985
- "name": "",
986
- "type": "bytes32"
987
- }
988
- ],
989
- "stateMutability": "view",
990
- "type": "function"
991
- },
992
- {
993
- "inputs": [
994
- {
995
- "internalType": "address",
996
- "name": "_sender",
997
- "type": "address"
998
- },
999
- {
1000
- "internalType": "uint32",
1001
- "name": "_dstEid",
1002
- "type": "uint32"
1003
- },
1004
- {
1005
- "internalType": "bytes32",
1006
- "name": "_receiver",
1007
- "type": "bytes32"
1008
- }
1009
- ],
1010
- "name": "getNextGuid",
1011
- "outputs": [
1012
- {
1013
- "internalType": "bytes32",
1014
- "name": "",
1015
- "type": "bytes32"
1016
- }
1017
- ],
1018
- "stateMutability": "view",
1019
- "type": "function"
1020
- },
1021
- {
1022
- "inputs": [
1023
- {
1024
- "internalType": "address",
1025
- "name": "_sender",
1026
- "type": "address"
1027
- },
1028
- {
1029
- "internalType": "uint32",
1030
- "name": "_dstEid",
1031
- "type": "uint32"
1032
- },
1033
- {
1034
- "internalType": "bytes32",
1035
- "name": "_receiver",
1036
- "type": "bytes32"
1037
- }
1038
- ],
1039
- "name": "getOutboundNonce",
1040
- "outputs": [
1041
- {
1042
- "internalType": "uint64",
1043
- "name": "",
1044
- "type": "uint64"
1045
- }
1046
- ],
1047
- "stateMutability": "view",
1048
- "type": "function"
1049
- },
1050
- {
1051
- "inputs": [],
1052
- "name": "getReceiveContext",
1053
- "outputs": [
1054
- {
1055
- "internalType": "uint32",
1056
- "name": "",
1057
- "type": "uint32"
1058
- },
1059
- {
1060
- "internalType": "address",
1061
- "name": "",
1062
- "type": "address"
1063
- }
1064
- ],
1065
- "stateMutability": "view",
1066
- "type": "function"
1067
- },
1068
- {
1069
- "inputs": [
1070
- {
1071
- "internalType": "address",
1072
- "name": "_receiver",
1073
- "type": "address"
1074
- },
1075
- {
1076
- "internalType": "uint32",
1077
- "name": "_srcEid",
1078
- "type": "uint32"
1079
- }
1080
- ],
1081
- "name": "getReceiveLibrary",
1082
- "outputs": [
1083
- {
1084
- "internalType": "address",
1085
- "name": "lib",
1086
- "type": "address"
1087
- },
1088
- {
1089
- "internalType": "bool",
1090
- "name": "isDefault",
1091
- "type": "bool"
1092
- }
1093
- ],
1094
- "stateMutability": "view",
1095
- "type": "function"
1096
- },
1097
- {
1098
- "inputs": [],
1099
- "name": "getRegisteredLibraries",
1100
- "outputs": [
1101
- {
1102
- "internalType": "address[]",
1103
- "name": "",
1104
- "type": "address[]"
1105
- }
1106
- ],
1107
- "stateMutability": "view",
1108
- "type": "function"
1109
- },
1110
- {
1111
- "inputs": [],
1112
- "name": "getSendContext",
1113
- "outputs": [
1114
- {
1115
- "internalType": "uint32",
1116
- "name": "",
1117
- "type": "uint32"
1118
- },
1119
- {
1120
- "internalType": "address",
1121
- "name": "",
1122
- "type": "address"
1123
- }
1124
- ],
1125
- "stateMutability": "view",
1126
- "type": "function"
1127
- },
1128
- {
1129
- "inputs": [
1130
- {
1131
- "internalType": "address",
1132
- "name": "_sender",
1133
- "type": "address"
1134
- },
1135
- {
1136
- "internalType": "uint32",
1137
- "name": "_dstEid",
1138
- "type": "uint32"
1139
- }
1140
- ],
1141
- "name": "getSendLibrary",
1142
- "outputs": [
1143
- {
1144
- "internalType": "address",
1145
- "name": "lib",
1146
- "type": "address"
1147
- },
1148
- {
1149
- "internalType": "bool",
1150
- "name": "isDefault",
1151
- "type": "bool"
1152
- }
1153
- ],
1154
- "stateMutability": "view",
1155
- "type": "function"
1156
- },
1157
- {
1158
- "inputs": [
1159
- {
1160
- "components": [
1161
- {
1162
- "internalType": "uint32",
1163
- "name": "srcEid",
1164
- "type": "uint32"
1165
- },
1166
- {
1167
- "internalType": "bytes32",
1168
- "name": "sender",
1169
- "type": "bytes32"
1170
- },
1171
- {
1172
- "internalType": "uint64",
1173
- "name": "nonce",
1174
- "type": "uint64"
1175
- }
1176
- ],
1177
- "internalType": "struct IMessageOrigin.MessageOrigin",
1178
- "name": "_origin",
1179
- "type": "tuple"
1180
- },
1181
- {
1182
- "internalType": "address",
1183
- "name": "_receiver",
1184
- "type": "address"
1185
- }
1186
- ],
1187
- "name": "hasPayloadHash",
1188
- "outputs": [
1189
- {
1190
- "internalType": "bool",
1191
- "name": "",
1192
- "type": "bool"
1193
- }
1194
- ],
1195
- "stateMutability": "view",
1196
- "type": "function"
1197
- },
1198
- {
1199
- "inputs": [],
1200
- "name": "isComposingMessage",
1201
- "outputs": [
1202
- {
1203
- "internalType": "bool",
1204
- "name": "",
1205
- "type": "bool"
1206
- }
1207
- ],
1208
- "stateMutability": "view",
1209
- "type": "function"
1210
- },
1211
- {
1212
- "inputs": [],
1213
- "name": "isReceivingMessage",
1214
- "outputs": [
1215
- {
1216
- "internalType": "bool",
1217
- "name": "",
1218
- "type": "bool"
1219
- }
1220
- ],
1221
- "stateMutability": "view",
1222
- "type": "function"
1223
- },
1224
- {
1225
- "inputs": [
1226
- {
1227
- "internalType": "address",
1228
- "name": "lib",
1229
- "type": "address"
1230
- }
1231
- ],
1232
- "name": "isRegisteredLibrary",
1233
- "outputs": [
1234
- {
1235
- "internalType": "bool",
1236
- "name": "",
1237
- "type": "bool"
1238
- }
1239
- ],
1240
- "stateMutability": "view",
1241
- "type": "function"
1242
- },
1243
- {
1244
- "inputs": [],
1245
- "name": "isSendingMessage",
1246
- "outputs": [
1247
- {
1248
- "internalType": "bool",
1249
- "name": "",
1250
- "type": "bool"
1251
- }
1252
- ],
1253
- "stateMutability": "view",
1254
- "type": "function"
1255
- },
1256
- {
1257
- "inputs": [
1258
- {
1259
- "internalType": "uint32",
1260
- "name": "_eid",
1261
- "type": "uint32"
1262
- }
1263
- ],
1264
- "name": "isSupportedEid",
1265
- "outputs": [
1266
- {
1267
- "internalType": "bool",
1268
- "name": "",
1269
- "type": "bool"
1270
- }
1271
- ],
1272
- "stateMutability": "view",
1273
- "type": "function"
1274
- },
1275
- {
1276
- "inputs": [
1277
- {
1278
- "internalType": "address",
1279
- "name": "_receiver",
1280
- "type": "address"
1281
- },
1282
- {
1283
- "internalType": "uint32",
1284
- "name": "_srcEid",
1285
- "type": "uint32"
1286
- },
1287
- {
1288
- "internalType": "address",
1289
- "name": "_actualReceiveLib",
1290
- "type": "address"
1291
- }
1292
- ],
1293
- "name": "isValidReceiveLibrary",
1294
- "outputs": [
1295
- {
1296
- "internalType": "bool",
1297
- "name": "",
1298
- "type": "bool"
1299
- }
1300
- ],
1301
- "stateMutability": "view",
1302
- "type": "function"
1303
- },
1304
- {
1305
- "inputs": [],
1306
- "name": "layerZeroToken",
1307
- "outputs": [
1308
- {
1309
- "internalType": "address",
1310
- "name": "",
1311
- "type": "address"
1312
- }
1313
- ],
1314
- "stateMutability": "view",
1315
- "type": "function"
1316
- },
1317
- {
1318
- "inputs": [
1319
- {
1320
- "internalType": "address",
1321
- "name": "_receiver",
1322
- "type": "address"
1323
- },
1324
- {
1325
- "internalType": "address",
1326
- "name": "_composer",
1327
- "type": "address"
1328
- },
1329
- {
1330
- "internalType": "bytes32",
1331
- "name": "_guid",
1332
- "type": "bytes32"
1333
- },
1334
- {
1335
- "internalType": "bytes",
1336
- "name": "_message",
1337
- "type": "bytes"
1338
- },
1339
- {
1340
- "internalType": "bytes",
1341
- "name": "_callerParams",
1342
- "type": "bytes"
1343
- }
1344
- ],
1345
- "name": "lzCompose",
1346
- "outputs": [
1347
- {
1348
- "internalType": "bool",
1349
- "name": "success",
1350
- "type": "bool"
1351
- },
1352
- {
1353
- "internalType": "bytes",
1354
- "name": "reason",
1355
- "type": "bytes"
1356
- }
1357
- ],
1358
- "stateMutability": "payable",
1359
- "type": "function"
1360
- },
1361
- {
1362
- "inputs": [
1363
- {
1364
- "components": [
1365
- {
1366
- "internalType": "uint32",
1367
- "name": "srcEid",
1368
- "type": "uint32"
1369
- },
1370
- {
1371
- "internalType": "bytes32",
1372
- "name": "sender",
1373
- "type": "bytes32"
1374
- },
1375
- {
1376
- "internalType": "uint64",
1377
- "name": "nonce",
1378
- "type": "uint64"
1379
- }
1380
- ],
1381
- "internalType": "struct IMessageOrigin.MessageOrigin",
1382
- "name": "_origin",
1383
- "type": "tuple"
1384
- },
1385
- {
1386
- "internalType": "address",
1387
- "name": "_receiver",
1388
- "type": "address"
1389
- },
1390
- {
1391
- "internalType": "bytes32",
1392
- "name": "_guid",
1393
- "type": "bytes32"
1394
- },
1395
- {
1396
- "internalType": "bytes",
1397
- "name": "_message",
1398
- "type": "bytes"
1399
- },
1400
- {
1401
- "internalType": "bytes",
1402
- "name": "_callerParams",
1403
- "type": "bytes"
1404
- }
1405
- ],
1406
- "name": "lzReceive",
1407
- "outputs": [
1408
- {
1409
- "internalType": "bool",
1410
- "name": "success",
1411
- "type": "bool"
1412
- },
1413
- {
1414
- "internalType": "bytes",
1415
- "name": "reason",
1416
- "type": "bytes"
1417
- }
1418
- ],
1419
- "stateMutability": "payable",
1420
- "type": "function"
1421
- },
1422
- {
1423
- "inputs": [],
1424
- "name": "owner",
1425
- "outputs": [
1426
- {
1427
- "internalType": "address",
1428
- "name": "",
1429
- "type": "address"
1430
- }
1431
- ],
1432
- "stateMutability": "view",
1433
- "type": "function"
1434
- },
1435
- {
1436
- "inputs": [
1437
- {
1438
- "internalType": "address",
1439
- "name": "_sender",
1440
- "type": "address"
1441
- },
1442
- {
1443
- "internalType": "uint32",
1444
- "name": "_dstEid",
1445
- "type": "uint32"
1446
- },
1447
- {
1448
- "internalType": "bytes",
1449
- "name": "_message",
1450
- "type": "bytes"
1451
- },
1452
- {
1453
- "internalType": "bool",
1454
- "name": "_payInLzToken",
1455
- "type": "bool"
1456
- },
1457
- {
1458
- "internalType": "bytes",
1459
- "name": "_options",
1460
- "type": "bytes"
1461
- }
1462
- ],
1463
- "name": "quote",
1464
- "outputs": [
1465
- {
1466
- "components": [
1467
- {
1468
- "internalType": "uint256",
1469
- "name": "nativeFee",
1470
- "type": "uint256"
1471
- },
1472
- {
1473
- "internalType": "uint256",
1474
- "name": "lzTokenFee",
1475
- "type": "uint256"
1476
- }
1477
- ],
1478
- "internalType": "struct ILayerZeroEndpoint.MessagingFee",
1479
- "name": "",
1480
- "type": "tuple"
1481
- }
1482
- ],
1483
- "stateMutability": "view",
1484
- "type": "function"
1485
- },
1486
- {
1487
- "inputs": [
1488
- {
1489
- "internalType": "address",
1490
- "name": "receiver",
1491
- "type": "address"
1492
- },
1493
- {
1494
- "internalType": "uint32",
1495
- "name": "srcEid",
1496
- "type": "uint32"
1497
- }
1498
- ],
1499
- "name": "receiveLibraryTimeout",
1500
- "outputs": [
1501
- {
1502
- "internalType": "address",
1503
- "name": "lib",
1504
- "type": "address"
1505
- },
1506
- {
1507
- "internalType": "uint256",
1508
- "name": "expiry",
1509
- "type": "uint256"
1510
- }
1511
- ],
1512
- "stateMutability": "view",
1513
- "type": "function"
1514
- },
1515
- {
1516
- "inputs": [
1517
- {
1518
- "internalType": "address",
1519
- "name": "_token",
1520
- "type": "address"
1521
- },
1522
- {
1523
- "internalType": "address",
1524
- "name": "_to",
1525
- "type": "address"
1526
- },
1527
- {
1528
- "internalType": "uint256",
1529
- "name": "_amount",
1530
- "type": "uint256"
1531
- }
1532
- ],
1533
- "name": "recoverToken",
1534
- "outputs": [],
1535
- "stateMutability": "nonpayable",
1536
- "type": "function"
1537
- },
1538
- {
1539
- "inputs": [
1540
- {
1541
- "internalType": "address",
1542
- "name": "_lib",
1543
- "type": "address"
1544
- }
1545
- ],
1546
- "name": "registerLibrary",
1547
- "outputs": [],
1548
- "stateMutability": "nonpayable",
1549
- "type": "function"
1550
- },
1551
- {
1552
- "inputs": [],
1553
- "name": "renounceOwnership",
1554
- "outputs": [],
1555
- "stateMutability": "nonpayable",
1556
- "type": "function"
1557
- },
1558
- {
1559
- "inputs": [
1560
- {
1561
- "internalType": "address",
1562
- "name": "_lib",
1563
- "type": "address"
1564
- },
1565
- {
1566
- "internalType": "uint32[]",
1567
- "name": "_eids",
1568
- "type": "uint32[]"
1569
- }
1570
- ],
1571
- "name": "resetConfig",
1572
- "outputs": [],
1573
- "stateMutability": "nonpayable",
1574
- "type": "function"
1575
- },
1576
- {
1577
- "inputs": [
1578
- {
1579
- "components": [
1580
- {
1581
- "internalType": "uint32",
1582
- "name": "dstEid",
1583
- "type": "uint32"
1584
- },
1585
- {
1586
- "internalType": "bytes32",
1587
- "name": "receiver",
1588
- "type": "bytes32"
1589
- },
1590
- {
1591
- "internalType": "bytes",
1592
- "name": "message",
1593
- "type": "bytes"
1594
- },
1595
- {
1596
- "internalType": "bytes",
1597
- "name": "options",
1598
- "type": "bytes"
1599
- }
1600
- ],
1601
- "internalType": "struct ILayerZeroEndpoint.MessagingParams",
1602
- "name": "_params",
1603
- "type": "tuple"
1604
- },
1605
- {
1606
- "internalType": "uint256",
1607
- "name": "_lzTokenFee",
1608
- "type": "uint256"
1609
- },
1610
- {
1611
- "internalType": "address payable",
1612
- "name": "_refundAddress",
1613
- "type": "address"
1614
- }
1615
- ],
1616
- "name": "send",
1617
- "outputs": [
1618
- {
1619
- "components": [
1620
- {
1621
- "internalType": "bytes32",
1622
- "name": "guid",
1623
- "type": "bytes32"
1624
- },
1625
- {
1626
- "internalType": "uint64",
1627
- "name": "nonce",
1628
- "type": "uint64"
1629
- },
1630
- {
1631
- "components": [
1632
- {
1633
- "internalType": "uint256",
1634
- "name": "nativeFee",
1635
- "type": "uint256"
1636
- },
1637
- {
1638
- "internalType": "uint256",
1639
- "name": "lzTokenFee",
1640
- "type": "uint256"
1641
- }
1642
- ],
1643
- "internalType": "struct ILayerZeroEndpoint.MessagingFee",
1644
- "name": "fee",
1645
- "type": "tuple"
1646
- }
1647
- ],
1648
- "internalType": "struct ILayerZeroEndpoint.MessagingReceipt",
1649
- "name": "",
1650
- "type": "tuple"
1651
- }
1652
- ],
1653
- "stateMutability": "payable",
1654
- "type": "function"
1655
- },
1656
- {
1657
- "inputs": [
1658
- {
1659
- "components": [
1660
- {
1661
- "internalType": "uint32",
1662
- "name": "dstEid",
1663
- "type": "uint32"
1664
- },
1665
- {
1666
- "internalType": "bytes32",
1667
- "name": "receiver",
1668
- "type": "bytes32"
1669
- },
1670
- {
1671
- "internalType": "bytes",
1672
- "name": "message",
1673
- "type": "bytes"
1674
- },
1675
- {
1676
- "internalType": "bytes",
1677
- "name": "options",
1678
- "type": "bytes"
1679
- }
1680
- ],
1681
- "internalType": "struct ILayerZeroEndpoint.MessagingParams",
1682
- "name": "_params",
1683
- "type": "tuple"
1684
- },
1685
- {
1686
- "internalType": "uint256",
1687
- "name": "_lzTokenFee",
1688
- "type": "uint256"
1689
- },
1690
- {
1691
- "internalType": "uint256",
1692
- "name": "_altTokenFee",
1693
- "type": "uint256"
1694
- }
1695
- ],
1696
- "name": "sendWithAlt",
1697
- "outputs": [
1698
- {
1699
- "components": [
1700
- {
1701
- "internalType": "bytes32",
1702
- "name": "guid",
1703
- "type": "bytes32"
1704
- },
1705
- {
1706
- "internalType": "uint64",
1707
- "name": "nonce",
1708
- "type": "uint64"
1709
- },
1710
- {
1711
- "components": [
1712
- {
1713
- "internalType": "uint256",
1714
- "name": "nativeFee",
1715
- "type": "uint256"
1716
- },
1717
- {
1718
- "internalType": "uint256",
1719
- "name": "lzTokenFee",
1720
- "type": "uint256"
1721
- }
1722
- ],
1723
- "internalType": "struct ILayerZeroEndpoint.MessagingFee",
1724
- "name": "fee",
1725
- "type": "tuple"
1726
- }
1727
- ],
1728
- "internalType": "struct ILayerZeroEndpoint.MessagingReceipt",
1729
- "name": "",
1730
- "type": "tuple"
1731
- }
1732
- ],
1733
- "stateMutability": "nonpayable",
1734
- "type": "function"
1735
- },
1736
- {
1737
- "inputs": [
1738
- {
1739
- "internalType": "address",
1740
- "name": "_lib",
1741
- "type": "address"
1742
- },
1743
- {
1744
- "internalType": "uint32",
1745
- "name": "_eid",
1746
- "type": "uint32"
1747
- },
1748
- {
1749
- "components": [
1750
- {
1751
- "internalType": "uint32",
1752
- "name": "configType",
1753
- "type": "uint32"
1754
- },
1755
- {
1756
- "internalType": "bytes",
1757
- "name": "config",
1758
- "type": "bytes"
1759
- }
1760
- ],
1761
- "internalType": "struct IMessageLibManager.ConfigParam[]",
1762
- "name": "_params",
1763
- "type": "tuple[]"
1764
- }
1765
- ],
1766
- "name": "setConfig",
1767
- "outputs": [],
1768
- "stateMutability": "nonpayable",
1769
- "type": "function"
1770
- },
1771
- {
1772
- "inputs": [
1773
- {
1774
- "internalType": "uint32",
1775
- "name": "_eid",
1776
- "type": "uint32"
1777
- },
1778
- {
1779
- "internalType": "address",
1780
- "name": "_newLib",
1781
- "type": "address"
1782
- },
1783
- {
1784
- "internalType": "uint256",
1785
- "name": "_gracePeriod",
1786
- "type": "uint256"
1787
- }
1788
- ],
1789
- "name": "setDefaultReceiveLibrary",
1790
- "outputs": [],
1791
- "stateMutability": "nonpayable",
1792
- "type": "function"
1793
- },
1794
- {
1795
- "inputs": [
1796
- {
1797
- "internalType": "uint32",
1798
- "name": "_eid",
1799
- "type": "uint32"
1800
- },
1801
- {
1802
- "internalType": "address",
1803
- "name": "_lib",
1804
- "type": "address"
1805
- },
1806
- {
1807
- "internalType": "uint256",
1808
- "name": "_expiry",
1809
- "type": "uint256"
1810
- }
1811
- ],
1812
- "name": "setDefaultReceiveLibraryTimeout",
1813
- "outputs": [],
1814
- "stateMutability": "nonpayable",
1815
- "type": "function"
1816
- },
1817
- {
1818
- "inputs": [
1819
- {
1820
- "internalType": "uint32",
1821
- "name": "_eid",
1822
- "type": "uint32"
1823
- },
1824
- {
1825
- "internalType": "address",
1826
- "name": "_newLib",
1827
- "type": "address"
1828
- }
1829
- ],
1830
- "name": "setDefaultSendLibrary",
1831
- "outputs": [],
1832
- "stateMutability": "nonpayable",
1833
- "type": "function"
1834
- },
1835
- {
1836
- "inputs": [
1837
- {
1838
- "internalType": "address",
1839
- "name": "_layerZeroToken",
1840
- "type": "address"
1841
- }
1842
- ],
1843
- "name": "setLayerZeroToken",
1844
- "outputs": [],
1845
- "stateMutability": "nonpayable",
1846
- "type": "function"
1847
- },
1848
- {
1849
- "inputs": [
1850
- {
1851
- "internalType": "uint32",
1852
- "name": "_eid",
1853
- "type": "uint32"
1854
- },
1855
- {
1856
- "internalType": "address",
1857
- "name": "_newLib",
1858
- "type": "address"
1859
- },
1860
- {
1861
- "internalType": "uint256",
1862
- "name": "_gracePeriod",
1863
- "type": "uint256"
1864
- }
1865
- ],
1866
- "name": "setReceiveLibrary",
1867
- "outputs": [],
1868
- "stateMutability": "nonpayable",
1869
- "type": "function"
1870
- },
1871
- {
1872
- "inputs": [
1873
- {
1874
- "internalType": "uint32",
1875
- "name": "_eid",
1876
- "type": "uint32"
1877
- },
1878
- {
1879
- "internalType": "address",
1880
- "name": "_lib",
1881
- "type": "address"
1882
- },
1883
- {
1884
- "internalType": "uint256",
1885
- "name": "_expiry",
1886
- "type": "uint256"
1887
- }
1888
- ],
1889
- "name": "setReceiveLibraryTimeout",
1890
- "outputs": [],
1891
- "stateMutability": "nonpayable",
1892
- "type": "function"
1893
- },
1894
- {
1895
- "inputs": [
1896
- {
1897
- "internalType": "uint32",
1898
- "name": "_eid",
1899
- "type": "uint32"
1900
- },
1901
- {
1902
- "internalType": "address",
1903
- "name": "_newLib",
1904
- "type": "address"
1905
- }
1906
- ],
1907
- "name": "setSendLibrary",
1908
- "outputs": [],
1909
- "stateMutability": "nonpayable",
1910
- "type": "function"
1911
- },
1912
- {
1913
- "inputs": [
1914
- {
1915
- "internalType": "uint32",
1916
- "name": "_srcEid",
1917
- "type": "uint32"
1918
- },
1919
- {
1920
- "internalType": "bytes32",
1921
- "name": "_sender",
1922
- "type": "bytes32"
1923
- },
1924
- {
1925
- "internalType": "uint64",
1926
- "name": "_nonce",
1927
- "type": "uint64"
1928
- }
1929
- ],
1930
- "name": "skip",
1931
- "outputs": [],
1932
- "stateMutability": "nonpayable",
1933
- "type": "function"
1934
- },
1935
- {
1936
- "inputs": [
1937
- {
1938
- "internalType": "address",
1939
- "name": "_lib",
1940
- "type": "address"
1941
- },
1942
- {
1943
- "internalType": "uint32[]",
1944
- "name": "_eids",
1945
- "type": "uint32[]"
1946
- }
1947
- ],
1948
- "name": "snapshotConfig",
1949
- "outputs": [],
1950
- "stateMutability": "nonpayable",
1951
- "type": "function"
1952
- },
1953
- {
1954
- "inputs": [
1955
- {
1956
- "internalType": "address",
1957
- "name": "newOwner",
1958
- "type": "address"
1959
- }
1960
- ],
1961
- "name": "transferOwnership",
1962
- "outputs": [],
1963
- "stateMutability": "nonpayable",
1964
- "type": "function"
1965
- }
1966
- ],
1967
- "transactionHash": "0x6655751f330b44c5fac01bd0a54e211b65c137b542399e7aeadf8dfbca6c9b2b",
1968
- "receipt": {
1969
- "to": null,
1970
- "from": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
1971
- "contractAddress": "0x1275D096B9DBf2347bD2a131Fb6BDaB0B4882487",
1972
- "transactionIndex": 0,
1973
- "gasUsed": "5323606",
1974
- "logsBloom": "0x00000000000000000002000000000000000000000200000020800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000808020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000040000000000000000000000020000000000000000000000008000000000001000000000000000000000000000000",
1975
- "blockHash": "0xba027e210b5b94929f7f56504ecabde5f6a2e01e1b4a2abf29eb9c296d98845f",
1976
- "transactionHash": "0x6655751f330b44c5fac01bd0a54e211b65c137b542399e7aeadf8dfbca6c9b2b",
1977
- "logs": [
1978
- {
1979
- "transactionIndex": 0,
1980
- "blockNumber": 117,
1981
- "transactionHash": "0x6655751f330b44c5fac01bd0a54e211b65c137b542399e7aeadf8dfbca6c9b2b",
1982
- "address": "0x1275D096B9DBf2347bD2a131Fb6BDaB0B4882487",
1983
- "topics": [
1984
- "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0",
1985
- "0x0000000000000000000000000000000000000000000000000000000000000000",
1986
- "0x00000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c8"
1987
- ],
1988
- "data": "0x",
1989
- "logIndex": 0,
1990
- "blockHash": "0xba027e210b5b94929f7f56504ecabde5f6a2e01e1b4a2abf29eb9c296d98845f"
1991
- },
1992
- {
1993
- "transactionIndex": 0,
1994
- "blockNumber": 117,
1995
- "transactionHash": "0x6655751f330b44c5fac01bd0a54e211b65c137b542399e7aeadf8dfbca6c9b2b",
1996
- "address": "0x1275D096B9DBf2347bD2a131Fb6BDaB0B4882487",
1997
- "topics": [
1998
- "0x6b374d56679ca9463f27c85c6311e2bb7fde69bf201d3da39d53f10bd9d78af5"
1999
- ],
2000
- "data": "0x000000000000000000000000c6ba8c3233ecf65b761049ef63466945c362edd2",
2001
- "logIndex": 1,
2002
- "blockHash": "0xba027e210b5b94929f7f56504ecabde5f6a2e01e1b4a2abf29eb9c296d98845f"
2003
- }
2004
- ],
2005
- "blockNumber": 117,
2006
- "cumulativeGasUsed": "5323606",
2007
- "status": 1,
2008
- "byzantium": true
2009
- },
2010
- "args": [
2011
- 50121,
2012
- "0xC6bA8C3233eCF65B761049ef63466945c362EdD2",
2013
- "0x0000000000000000000000000000000000000000"
2014
- ],
2015
- "numDeployments": 1,
2016
- "solcInputHash": "483627349c521129e59b207c5348a8fb",
2017
- "bytecode": "0x60e0604052600e80546001600160a01b0319166001908117909155600f8190556010553480156200002f57600080fd5b506040516200608d3803806200608d833981016040819052620000529162000309565b80826200005f3362000095565b6001600160a01b0381166080526200007781620000e5565b506001600160a01b031660a052505063ffffffff1660c05262000388565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b620000ef6200028e565b6040516301ffc9a760e01b8152635c61fbbf60e11b60048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa1580156200013b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016191906200035d565b6200019d5760405162461bcd60e51b81526020600482015260076024820152664c5a433030303160c81b60448201526064015b60405180910390fd5b6001600160a01b03811660009081526005602052604090205460ff1615620001f25760405162461bcd60e51b815260206004820152600760248201526604c5a38303030360cc1b604482015260640162000194565b6001600160a01b0381166000818152600560209081526040808320805460ff191660019081179091556004805491820181559093527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90920180546001600160a01b0319168417905590519182527f6b374d56679ca9463f27c85c6311e2bb7fde69bf201d3da39d53f10bd9d78af5910160405180910390a150565b6000546001600160a01b03163314620002ea5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000194565b565b80516001600160a01b03811681146200030457600080fd5b919050565b6000806000606084860312156200031f57600080fd5b835163ffffffff811681146200033457600080fd5b92506200034460208501620002ec565b91506200035460408501620002ec565b90509250925092565b6000602082840312156200037057600080fd5b815180151581146200038157600080fd5b9392505050565b60805160a05160c051615cb2620003db600039600081816104f3015281816138ee0152613f8d015260008181610b7f015281816141600152818161423101526143ed015260006107050152615cb26000f3fe6080604052600436106103495760003560e01c80639132e5c3116101bb578063b96a277f116100f7578063ef57458d11610095578063f405c8591161006f578063f405c85914610b27578063f64be4c714610b3a578063f936112b14610b70578063fd894a5314610ba357600080fd5b8063ef57458d14610a99578063ef667aa114610abc578063f2fde38b14610b0757600080fd5b8063dc706a62116100d1578063dc706a6214610a09578063e16f964d14610a39578063e8964e8114610a59578063eaeacd6314610a7957600080fd5b8063b96a277f146109a9578063ce3cac0e146109c9578063d4b4ec8f146109e957600080fd5b80639e7fffcc11610164578063aafea3121161013e578063aafea31214610936578063aca1b45a14610956578063b8007ff614610969578063b8849ac91461098957600080fd5b80639e7fffcc146108d6578063a718531b146108f6578063a7229fd91461091657600080fd5b80639b86cb4d116101955780639b86cb4d1461081a5780639c9dd91d146108785780639d7f9775146108b657600080fd5b80639132e5c3146107ab578063965183d4146107cd5780639731526b146107ed57600080fd5b806351c85b6b1161028a5780636f50a80311610233578063754d3b9c1161020d578063754d3b9c1461072757806379624ca91461074757806383c47559146107605780638da5cb5b1461078d57600080fd5b80636f50a803146106a8578063715018a6146106de57806373318091146106f357600080fd5b80636750cd4c116102645780636750cd4c1461061057806369e55fb8146106305780636e83f5bb1461064957600080fd5b806351c85b6b146105a357806352d3b500146105d057806366bf43d6146105f057600080fd5b80632b3197b9116102f7578063416ecebf116102d1578063416ecebf146104e1578063418ba3511461052a578063447605761461054a57806345c6dcc41461058357600080fd5b80632b3197b91461045f5780633fa446751461048d578063402f8468146104a257600080fd5b806307b9ca7c1161032857806307b9ca7c146103d35780630c0c389e1461040557806314f651a91461042657600080fd5b80624afd471461034e57806303719a84146103815780630678327f146103b1575b600080fd5b34801561035a57600080fd5b5061036e610369366004614a2b565b610bb8565b6040519081526020015b60405180910390f35b34801561038d57600080fd5b506103a161039c366004614a81565b610c1a565b6040519015158152602001610378565b3480156103bd57600080fd5b506103d16103cc366004614afe565b610c99565b005b3480156103df57600080fd5b50600c546001600160a01b03165b6040516001600160a01b039091168152602001610378565b610418610413366004614b95565b610d89565b604051610378929190614ca1565b34801561043257600080fd5b5061043b611067565b6040805163ffffffff90931683526001600160a01b03909116602083015201610378565b34801561046b57600080fd5b5061047f61047a366004614cbc565b611096565b604051610378929190614d14565b34801561049957600080fd5b506103ed6111cc565b3480156104ae57600080fd5b506104c26104bd366004614d38565b6111fe565b604080516001600160a01b039093168352901515602083015201610378565b3480156104ed57600080fd5b506105157f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610378565b34801561053657600080fd5b506103a1610545366004614d6d565b6112ab565b34801561055657600080fd5b5061056a610565366004614a2b565b611322565b60405167ffffffffffffffff9091168152602001610378565b34801561058f57600080fd5b506103d161059e366004614db7565b61132f565b3480156105af57600080fd5b506105c36105be366004614df7565b6113df565b6040516103789190614e3c565b3480156105dc57600080fd5b506103d16105eb366004614e4f565b6115ec565b3480156105fc57600080fd5b506103d161060b366004614e6c565b611667565b34801561061c57600080fd5b506103a161062b366004614eab565b611972565b34801561063c57600080fd5b50601054600114156103a1565b34801561065557600080fd5b50610689610664366004614eab565b600b60205260009081526040902080546001909101546001600160a01b039091169082565b604080516001600160a01b039093168352602083019190915201610378565b3480156106b457600080fd5b506103ed6106c3366004614eab565b600a602052600090815260409020546001600160a01b031681565b3480156106ea57600080fd5b506103d16119be565b3480156106ff57600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b34801561073357600080fd5b506103d1610742366004614ec6565b6119d2565b34801561075357600080fd5b50600f54600114156103a1565b34801561076c57600080fd5b5061078061077b366004614f30565b611ad2565b6040516103789190614fb8565b34801561079957600080fd5b506000546001600160a01b03166103ed565b3480156107b757600080fd5b506107c0611c54565b6040516103789190614fcf565b3480156107d957600080fd5b5061036e6107e836600461501c565b611cb6565b3480156107f957600080fd5b5061080d610808366004615071565b611d30565b60405161037891906150bf565b34801561082657600080fd5b5061056a610835366004614a2b565b6001600160a01b038316600090815260036020908152604080832063ffffffff86168452825280832084845290915290205467ffffffffffffffff169392505050565b34801561088457600080fd5b5061036e610893366004615102565b600d60209081526000938452604080852082529284528284209052825290205481565b3480156108c257600080fd5b506103a16108d1366004615122565b611e64565b3480156108e257600080fd5b506103d16108f1366004614afe565b611f4e565b34801561090257600080fd5b506103d1610911366004614e6c565b612001565b34801561092257600080fd5b506103d1610931366004615102565b612345565b34801561094257600080fd5b506103d1610951366004615160565b6123b0565b61080d61096436600461518c565b612602565b34801561097557600080fd5b506103d16109843660046151dc565b6126be565b34801561099557600080fd5b506103d16109a4366004614e6c565b6127ac565b3480156109b557600080fd5b506104c26109c4366004614d38565b612bc6565b3480156109d557600080fd5b5061036e6109e4366004614a81565b612c68565b3480156109f557600080fd5b506103d1610a04366004614e6c565b612cf7565b348015610a1557600080fd5b506103a1610a24366004614e4f565b60056020526000908152604090205460ff1681565b348015610a4557600080fd5b506103d1610a54366004615160565b612f81565b348015610a6557600080fd5b506103d1610a74366004614e4f565b6131ef565b348015610a8557600080fd5b506103d1610a94366004615249565b613419565b348015610aa557600080fd5b506103a1600e546001600160a01b03166001141590565b348015610ac857600080fd5b50610689610ad7366004614d38565b6008602090815260009283526040808420909152908252902080546001909101546001600160a01b039091169082565b348015610b1357600080fd5b506103d1610b22366004614e4f565b61347b565b610418610b3536600461527e565b61350b565b348015610b4657600080fd5b506103ed610b55366004614eab565b6009602052600090815260409020546001600160a01b031681565b348015610b7c57600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006103ed565b348015610baf57600080fd5b5061043b61389f565b6001600160a01b038316600090815260036020908152604080832063ffffffff8616845282528083208484529091528120548190610c019067ffffffffffffffff16600161532c565b9050610c0f818686866138c8565b9150505b9392505050565b6000610c9082610c2d6020860186614eab565b6020860135610c42606088016040890161534d565b6001600160a01b038416600090815260026020908152604080832063ffffffff871684528252808320858452825280832067ffffffffffffffff851684529091529020541515949350505050565b90505b92915050565b6001600160a01b038316600090815260056020526040902054839060ff16610d085760405162461bcd60e51b815260206004820152600760248201527f4c5a31303030310000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6040517f1c63e3b60000000000000000000000000000000000000000000000000000000081526001600160a01b03851690631c63e3b690610d519086908690339060040161536a565b600060405180830381600087803b158015610d6b57600080fd5b505af1158015610d7f573d6000803e3d6000fd5b5050505050505050565b60006060610d9a60208a018a614eab565b88600160105414610ded5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303032000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b038216176010556040516000907f13137d650000000000000000000000000000000000000000000000000000000090610e5c908e908d908d908d9033908e908e9060240161544c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091529050610ef35a6001600160a01b038d169034609685613985565b9095509350508315610f74576000898989604051602001610f1693929190615495565b6040516020818303038152906040529050610f328c8c83613a10565b507f9808b7d96088a8872d5a22ac23ef6914c35f2f0c2393266f8d5aed00c5f166068c8c33604051610f66939291906154af565b60405180910390a150611052565b341561101457604051600090339034908381818185875af1925050503d8060008114610fbc576040519150601f19603f3d011682016040523d82523d6000602084013e610fc1565b606091505b50509050806110125760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b7f5f36cc57ed48e4b998e0ae0107830e550ebfd81dff305f8ab5c1ca624464f1f28b8b338660405161104994939291906154de565b60405180910390a15b50506001601055909890975095505050505050565b600080611077600f546001141590565b6110835760008061108e565b60a0600f54901c600f545b915091509091565b6001600160a01b03831660009081526005602052604081205460609190859060ff166111045760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517f9c33abf700000000000000000000000000000000000000000000000000000000815263ffffffff80871660048301526001600160a01b0389811660248401529086166044830152871690639c33abf790606401600060405180830381865afa158015611178573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526111be91908101906155ec565b925092505094509492505050565b60006111e4600e546001600160a01b03166001141590565b6111ee5750600090565b50600e546001600160a01b031690565b6001600160a01b03808316600090815260076020908152604080832063ffffffff8616845290915281205490911690816112a45763ffffffff83166000908152600a60205260409020546001600160a01b03169150816112a05760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303034000000000000000000000000000000000000000000000000006044820152606401610cff565b5060015b9250929050565b60006112c4826112be6020870187614eab565b85611e64565b6113105760405162461bcd60e51b815260206004820152600760248201527f4c5a3530303030000000000000000000000000000000000000000000000000006044820152606401610cff565b61131a8483613ca8565b949350505050565b600061131a848484613d27565b611346826113406020860186614eab565b33611e64565b6113925760405162461bcd60e51b815260206004820152600760248201527f4c5a3530303030000000000000000000000000000000000000000000000000006044820152606401610cff565b61139d838383613d8a565b7f6f3339aff819ce511cfb1094545c3db99dc7f490fe40518933c129a17c538322838383336040516113d29493929190615633565b60405180910390a1505050565b6001600160a01b038316600090815260056020526040902054606090849060ff1661144c5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b84846001600160a01b03821615611530576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa1580156114c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e49190615669565b6115305760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517f690c655500000000000000000000000000000000000000000000000000000000815263ffffffff8088166004830152861660248201526001600160a01b0388169063690c655590604401600060405180830381865afa15801561159b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526115e19190810190615686565b979650505050505050565b6115f4613e6e565b600c80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790556040516001600160a01b03821681527ff66b6c5fcba13210e695e203c62d584c85a4193f8a279598609bb6af760b17c1906020015b60405180910390a150565b6001600160a01b038216600090815260056020526040902054829060ff166116d15760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b038216156117b5576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015611745573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117699190615669565b6117b55760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b60006117c133886111fe565b91505080156118125760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303130000000000000000000000000000000000000000000000000006044820152606401610cff565b846000036118695733600090815260086020908152604080832063ffffffff8b168452909152812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560010155611910565b4285116118b85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303030000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260086020908152604080832063ffffffff8b168452909152902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0388161781556001018590555b6040805133815263ffffffff891660208201526001600160a01b03881691810191909152606081018690527f661366f82fca66289bddc34462b3ab39d252b761599537d722a632d1bb066b8e906080015b60405180910390a150505050505050565b63ffffffff81166000908152600960205260408120546001600160a01b031615801590610c9357505063ffffffff166000908152600a60205260409020546001600160a01b0316151590565b6119c6613e6e565b6119d06000613ec8565b565b336000908152600d602090815260408083206001600160a01b0388168452825280832086845290915290205415611a4b5760405162461bcd60e51b815260206004820152600760248201527f4c5a3830303030000000000000000000000000000000000000000000000000006044820152606401610cff565b8181604051611a5b9291906156bb565b60408051918290038220336000818152600d60209081528482206001600160a01b038b1683528152848220898352905292909220557f7c0503be82d6ab0d4ea200b69f9930b82aec3c92ed138ed1a28f60cd9c3626db91611ac4919087908790879087906156cb565b60405180910390a150505050565b6040805180820190915260008082526020820152831580611afd5750600c546001600160a01b031615155b611b495760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303033000000000000000000000000000000000000000000000000006044820152606401610cff565b6000611b558989612bc6565b509050600060405180606001604052808b6001600160a01b031681526020018a63ffffffff16815260200189898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050509152506040517f07d7b2f90000000000000000000000000000000000000000000000000000000081529091506001600160a01b038316906307d7b2f990611c069084908a908a908a906004016156fe565b6040805180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c4691906157a9565b9a9950505050505050505050565b60606004805480602002602001604051908101604052809291908181526020018280548015611cac57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c8e575b5050505050905090565b600080848484604051602001611cce93929190615495565b6040516020818303038152906040529050611cea863383613a10565b91507f9808b7d96088a8872d5a22ac23ef6914c35f2f0c2393266f8d5aed00c5f16606863333604051611d1f939291906154af565b60405180910390a150949350505050565b611d386149b5565b611d456020850185614eab565b336001600f5414611d985760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b03821617600f5533600080611dd4838a8a613f30565b91509150611dec838360400151600001518984614158565b611e00838360400151602001518a84614259565b604082810151805160209182015183516001600160a01b0388168152928301919091528183015290517ff3816d9cce3442fbfe3e4d36ad047b3362efdc9f2e283e77b0ecd768a0a01ef29181900360600190a1506001600f55979650505050505050565b6000806000611e7386866111fe565b91509150816001600160a01b0316846001600160a01b031603611e9b57600192505050610c13565b600081611ed0576001600160a01b038716600090815260086020908152604080832063ffffffff8a1684529091529020611ee6565b63ffffffff86166000908152600b602052604090205b6040805180820190915281546001600160a01b0390811680835260019093015460208301529092508616148015611f21575060008160200151115b8015611f305750428160200151115b15611f415760019350505050610c13565b5060009695505050505050565b6001600160a01b038316600090815260056020526040902054839060ff16611fb85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517fd2d287f00000000000000000000000000000000000000000000000000000000081526001600160a01b0385169063d2d287f090610d519086908690339060040161536a565b612009613e6e565b6001600160a01b038216600090815260056020526040902054829060ff166120735760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b03821615612157576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa1580156120e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061210b9190615669565b6121575760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff86166000908152600a60205260409020546001600160a01b0390811690861681036121c95760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b841561227a5763ffffffff87166000908152600b6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03831617815561221f86426157c5565b600182018190556040805163ffffffff8b1681526001600160a01b038516602082015280820192909252517f55b28633cdb29709386f555dfc54418592ad475ce7a65a78ac5928af60ffb8f89181900360600190a1506122ba565b63ffffffff87166000908152600b6020526040812080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155600101555b63ffffffff87166000818152600a602090815260409182902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116918217909255835194855290851691840191909152908201527f9914edfad6b7eac2e388f49bae232bd0e1954fbe92f5ed1ab975fc270f27cea590606001611961565b61234d613e6e565b6001600160a01b038316612397576040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612391573d6000803e3d6000fd5b50505050565b6123ab6001600160a01b0384168383614324565b505050565b6123b8613e6e565b6001600160a01b038116600090815260056020526040902054819060ff166124225760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b81836001600160a01b03821615612506576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015612496573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124ba9190615669565b6125065760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff85166000908152600960205260409020546001600160a01b0390811690851681036125785760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff861660008181526009602090815260409182902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a169081179091558251938452908301527f16aa0f528038ab41019e95bae5b418a50ba8532c5800e3b7ea2f517d3fa625f591015b60405180910390a1505050505050565b61260a6149b5565b6126176020850185614eab565b336001600f541461266a5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b03821617600f55336000806126a6838a8a613f30565b91509150611dec82604001516000015134838a6143eb565b6001600160a01b038416600090815260056020526040902054849060ff166127285760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517fb8007ff60000000000000000000000000000000000000000000000000000000081526001600160a01b0386169063b8007ff6906127739033908890889088906004016157d8565b600060405180830381600087803b15801561278d57600080fd5b505af11580156127a1573d6000803e3d6000fd5b505050505050505050565b6001600160a01b038216600090815260056020526040902054829060ff16806127dc57506001600160a01b038116155b6128285760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303032000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b0382161561290c576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa15801561289c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128c09190615669565b61290c5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260076020908152604080832063ffffffff8a1684529091529020546001600160a01b0390811690861681036129895760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b33600081815260076020908152604080832063ffffffff8c168085529083529281902080546001600160a01b038c81167fffffffffffffffffffffffff00000000000000000000000000000000000000009092168217909255825195865292850193909352918416838301526060830152517fc0833c35bb1d0beadca36bed54c7098819e109542a6d233d33c7c2039c8ec9aa9181900360800190a18415612b72576001600160a01b03811615801590612a4b57506001600160a01b03861615155b612a975760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303130000000000000000000000000000000000000000000000000006044820152606401610cff565b60006040518060400160405280836001600160a01b031681526020018742612abf91906157c5565b905233600081815260086020908152604080832063ffffffff8e1680855290835292819020855181547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039182161782558684015160019092018290558251958652928501939093529086169083015260608201529091507f661366f82fca66289bddc34462b3ab39d252b761599537d722a632d1bb066b8e9060800160405180910390a150612bbd565b33600090815260086020908152604080832063ffffffff8b168452909152812080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155600101555b50505050505050565b6001600160a01b03808316600090815260066020908152604080832063ffffffff8616845290915281205490911690816112a45763ffffffff83166000908152600960205260409020546001600160a01b03169150816112a05760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03811660009081526002602090815260408220908290612c9190860186614eab565b63ffffffff1663ffffffff1681526020019081526020016000206000846020013581526020019081526020016000206000846040016020810190612cd5919061534d565b67ffffffffffffffff1681526020810191909152604001600020549392505050565b6001600160a01b038216600090815260056020526040902054829060ff16612d615760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b03821615612e45576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015612dd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df99190615669565b612e455760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b612e4d613e6e565b83600003612e995763ffffffff86166000908152600b6020526040812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560010155612f35565b428411612ee85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303030000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff86166000908152600b6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0387161781556001018490555b6040805163ffffffff881681526001600160a01b03871660208201529081018590527f55b28633cdb29709386f555dfc54418592ad475ce7a65a78ac5928af60ffb8f8906060016125f2565b6001600160a01b038116600090815260056020526040902054819060ff1680612fb157506001600160a01b038116155b612ffd5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303032000000000000000000000000000000000000000000000000006044820152606401610cff565b81836001600160a01b038216156130e1576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015613071573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130959190615669565b6130e15760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260066020908152604080832063ffffffff891684529091529020546001600160a01b03908116908516810361315e5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b33600081815260066020908152604080832063ffffffff8b168085529083529281902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b16908117909155815194855291840192909252908201527f4cff966ebee29a156dcb34cf72c1d06231fb1777f6bdf6e8089819232f002b1c906060016125f2565b6131f7613e6e565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527fb8c3f77e0000000000000000000000000000000000000000000000000000000060048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa158015613274573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132989190615669565b6132e45760405162461bcd60e51b815260206004820152600760248201527f4c5a4330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03811660009081526005602052604090205460ff161561334d5760405162461bcd60e51b815260206004820152600760248201527f4c5a3830303030000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b038116600081815260056020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091556004805491820181559093527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90920180547fffffffffffffffffffffffff0000000000000000000000000000000000000000168417905590519182527f6b374d56679ca9463f27c85c6311e2bb7fde69bf201d3da39d53f10bd9d78af5910161165c565b6134253384848461460d565b6040805163ffffffff8516815260208101849052339181019190915267ffffffffffffffff821660608201527f28f40053783033ef755556a0c3315379141f51a33aed8334174ffbadd90bde48906080016113d2565b613483613e6e565b6001600160a01b0381166134ff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610cff565b61350881613ec8565b50565b600e5460009060609089906001600160a01b031660011461356e5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303033000000000000000000000000000000000000000000000000006044820152606401610cff565b600e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03838116919091179091558a81166000908152600d60209081526040808320938d1683529281528282208b835290528190205490516135dd90899089906156bb565b604051809103902081146136335760405162461bcd60e51b815260206004820152600760248201527f4c5a3630303030000000000000000000000000000000000000000000000000006044820152606401610cff565b600063d0a1026060e01b8c8b8b8b338c8c60405160240161365a979695949392919061591e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915290506136f15a6001600160a01b038d169034609685613985565b9095509350508315613782576001600160a01b038b81166000818152600d60209081526040808320948f168084529482528083208e84528252918290206001905581519283528201929092529081018a9052606081018290523360808201527fe8de892dbb4fd705fc4c154fd784700f6f24789e8ffea6922947d082606887949060a00160405180910390a1613864565b341561382257604051600090339034908381818185875af1925050503d80600081146137ca576040519150601f19603f3d011682016040523d82523d6000602084013e6137cf565b606091505b50509050806138205760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b7f8054fc0b1a2df897569746b52a49553918b57ffcedcd0a35f0e8553d5ebba6768b8b8b84338860405161385b96959493929190615972565b60405180910390a15b5050600e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001179055909890975095505050505050565b6000806138af6010546001141590565b6138bb5760008061108e565b505060105460a081901c91565b6040517fffffffff000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060e090811b821660208401526001600160a01b038616602484015284901b166044820152604881018290526000908190606801604051602081830303815290604052905085816040516020016139649291906159be565b60405160208183030381529060405280519060200120915050949350505050565b6000606060008060008661ffff1667ffffffffffffffff8111156139ab576139ab615521565b6040519080825280601f01601f1916602001820160405280156139d5576020820181803683370190505b5090506000808751602089018b8e8ef191503d9250868311156139f6578692505b828152826000602083013e90999098509650505050505050565b600080613a206020860186614eab565b905060208501356000613a39606088016040890161534d565b6001600160a01b038716600090815260016020908152604080832063ffffffff88168452825280832086845290915290205490915067ffffffffffffffff908116908216811015613bb4576000613a9182600161532c565b90505b8267ffffffffffffffff168167ffffffffffffffff1611613b4f576001600160a01b038816600090815260026020908152604080832063ffffffff891684528252808320878452825280832067ffffffffffffffff85168452909152902054613b3f5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b613b4881615a09565b9050613a94565b506001600160a01b038716600090815260016020908152604080832063ffffffff881684528252808320868452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff84161790555b85516020808801919091206001600160a01b038916600090815260028352604080822063ffffffff891683528452808220878352845280822067ffffffffffffffff871683529093529190912054909550808614613c545760405162461bcd60e51b815260206004820152600760248201527f4c5a3630303030000000000000000000000000000000000000000000000000006044820152606401610cff565b50506001600160a01b03909516600090815260026020908152604080832063ffffffff909516835293815283822092825291825282812067ffffffffffffffff909616815294905283209290925550919050565b6001600160a01b03811660009081526001602090815260408220908290613cd190860186614eab565b63ffffffff16815260208082019290925260409081016000908120868401358252909252908190205467ffffffffffffffff1690613d15906060860190860161534d565b67ffffffffffffffff16119392505050565b6001600160a01b038316600090815260016020908152604080832063ffffffff86168452825280832084845290915281205467ffffffffffffffff165b613d75858585610c4285600161532c565b1561131a57613d8381615a09565b9050613d64565b613d948383613ca8565b613de05760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b0382166000908152600260209081526040822083929091613e0a90870187614eab565b63ffffffff1663ffffffff1681526020019081526020016000206000856020013581526020019081526020016000206000856040016020810190613e4e919061534d565b67ffffffffffffffff168152602081019190915260400160002055505050565b6000546001600160a01b031633146119d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cff565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613f386149b5565b600080613f5686613f4c6020880188614eab565b87602001356146f3565b90506000613f6b876109c46020890189614eab565b50905060006040518060e001604052808467ffffffffffffffff1681526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff168152602001896001600160a01b03168152602001886000016020810190613fd99190614eab565b63ffffffff16815260200188602001358152602001614010858b8b60000160208101906140069190614eab565b8c602001356138c8565b815260200161402260408a018a615a30565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093909452509293508815159250905080806001600160a01b038616634389e58f8661408060608f018f615a30565b886040518563ffffffff1660e01b81526004016140a09493929190615a95565b6000604051808303816000875af11580156140bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526141059190810190615b46565b9250925092507f1ab700d4ced0c005b164c0f789fd09fcbb0156d4c2041b8a3bfbcd961cd1567f82828860405161413e93929190615c0e565b60405180910390a150909a93995092975050505050505050565b8215612391577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166141d45760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303032000000000000000000000000000000000000000000000000006044820152606401610cff565b818311156142245760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b6123916001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016858386614769565b821561239157600c546001600160a01b0316806142b85760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303033000000000000000000000000000000000000000000000000006044820152606401610cff565b828411156143085760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b61431d6001600160a01b038216868487614769565b5050505050565b6040516001600160a01b0383166024820152604481018290526123ab9084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526147ba565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316156144625760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303031000000000000000000000000000000000000000000000000006044820152606401610cff565b828411156144b25760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b831561455d576000826001600160a01b03168560405160006040518083038185875af1925050503d8060008114614505576040519150601f19603f3d011682016040523d82523d6000602084013e61450a565b606091505b505090508061455b5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b828410156123915760006001600160a01b03821661457b8686615c4d565b604051600081818185875af1925050503d80600081146145b7576040519150601f19603f3d011682016040523d82523d6000602084013e6145bc565b606091505b505090508061431d5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b614618848484613d27565b61462390600161532c565b67ffffffffffffffff168167ffffffffffffffff16146146855760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03909316600090815260016020908152604080832063ffffffff90951683529381528382209282529190915220805467ffffffffffffffff9092167fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000909216919091179055565b6001600160a01b038316600090815260036020908152604080832063ffffffff86168452825280832084845290915281208054829061473b9067ffffffffffffffff16615a09565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905590509392505050565b6040516001600160a01b03808516602483015283166044820152606481018290526123919085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401614369565b600061480f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166148a29092919063ffffffff16565b90508051600014806148305750808060200190518101906148309190615669565b6123ab5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610cff565b606061131a848460008585600080866001600160a01b031685876040516148c99190615c60565b60006040518083038185875af1925050503d8060008114614906576040519150601f19603f3d011682016040523d82523d6000602084013e61490b565b606091505b50915091506115e1878383876060831561498657825160000361497f576001600160a01b0385163b61497f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610cff565b508161131a565b61131a838381511561499b5781518083602001fd5b8060405162461bcd60e51b8152600401610cff9190614e3c565b604051806060016040528060008019168152602001600067ffffffffffffffff1681526020016149f8604051806040016040528060008152602001600081525090565b905290565b6001600160a01b038116811461350857600080fd5b803563ffffffff81168114614a2657600080fd5b919050565b600080600060608486031215614a4057600080fd5b8335614a4b816149fd565b9250614a5960208501614a12565b9150604084013590509250925092565b600060608284031215614a7b57600080fd5b50919050565b60008060808385031215614a9457600080fd5b614a9e8484614a69565b91506060830135614aae816149fd565b809150509250929050565b60008083601f840112614acb57600080fd5b50813567ffffffffffffffff811115614ae357600080fd5b6020830191508360208260051b85010111156112a457600080fd5b600080600060408486031215614b1357600080fd5b8335614b1e816149fd565b9250602084013567ffffffffffffffff811115614b3a57600080fd5b614b4686828701614ab9565b9497909650939450505050565b60008083601f840112614b6557600080fd5b50813567ffffffffffffffff811115614b7d57600080fd5b6020830191508360208285010111156112a457600080fd5b600080600080600080600060e0888a031215614bb057600080fd5b614bba8989614a69565b96506060880135614bca816149fd565b95506080880135945060a088013567ffffffffffffffff80821115614bee57600080fd5b614bfa8b838c01614b53565b909650945060c08a0135915080821115614c1357600080fd5b50614c208a828b01614b53565b989b979a50959850939692959293505050565b60005b83811015614c4e578181015183820152602001614c36565b50506000910152565b60008151808452614c6f816020860160208601614c33565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b821515815260406020820152600061131a6040830184614c57565b60008060008060808587031215614cd257600080fd5b8435614cdd816149fd565b93506020850135614ced816149fd565b9250614cfb60408601614a12565b9150614d0960608601614a12565b905092959194509250565b604081526000614d276040830185614c57565b905082151560208301529392505050565b60008060408385031215614d4b57600080fd5b8235614d56816149fd565b9150614d6460208401614a12565b90509250929050565b600080600060a08486031215614d8257600080fd5b614d8c8585614a69565b92506060840135614d9c816149fd565b91506080840135614dac816149fd565b809150509250925092565b600080600060a08486031215614dcc57600080fd5b614dd68585614a69565b92506060840135614de6816149fd565b929592945050506080919091013590565b600080600060608486031215614e0c57600080fd5b8335614e17816149fd565b9250614e2560208501614a12565b9150614e3360408501614a12565b90509250925092565b602081526000610c906020830184614c57565b600060208284031215614e6157600080fd5b8135610c13816149fd565b600080600060608486031215614e8157600080fd5b614e8a84614a12565b92506020840135614e9a816149fd565b929592945050506040919091013590565b600060208284031215614ebd57600080fd5b610c9082614a12565b60008060008060608587031215614edc57600080fd5b8435614ee7816149fd565b935060208501359250604085013567ffffffffffffffff811115614f0a57600080fd5b614f1687828801614b53565b95989497509550505050565b801515811461350857600080fd5b600080600080600080600060a0888a031215614f4b57600080fd5b8735614f56816149fd565b9650614f6460208901614a12565b9550604088013567ffffffffffffffff80821115614f8157600080fd5b614f8d8b838c01614b53565b909750955060608a01359150614fa282614f22565b90935060808901359080821115614c1357600080fd5b815181526020808301519082015260408101610c93565b6020808252825182820181905260009190848201906040850190845b818110156150105783516001600160a01b031683529284019291840191600101614feb565b50909695505050505050565b60008060008060a0858703121561503257600080fd5b61503c8686614a69565b935060608501359250608085013567ffffffffffffffff811115614f0a57600080fd5b600060808284031215614a7b57600080fd5b60008060006060848603121561508657600080fd5b833567ffffffffffffffff81111561509d57600080fd5b6150a98682870161505f565b9660208601359650604090950135949350505050565b60006080820190508251825267ffffffffffffffff602084015116602083015260408301516150fb604084018280518252602090810151910152565b5092915050565b60008060006060848603121561511757600080fd5b8335614e8a816149fd565b60008060006060848603121561513757600080fd5b8335615142816149fd565b925061515060208501614a12565b91506040840135614dac816149fd565b6000806040838503121561517357600080fd5b61517c83614a12565b91506020830135614aae816149fd565b6000806000606084860312156151a157600080fd5b833567ffffffffffffffff8111156151b857600080fd5b6151c48682870161505f565b935050602084013591506040840135614dac816149fd565b600080600080606085870312156151f257600080fd5b84356151fd816149fd565b935061520b60208601614a12565b9250604085013567ffffffffffffffff81111561522757600080fd5b614f1687828801614ab9565b67ffffffffffffffff8116811461350857600080fd5b60008060006060848603121561525e57600080fd5b61526784614a12565b9250602084013591506040840135614dac81615233565b600080600080600080600060a0888a03121561529957600080fd5b87356152a4816149fd565b965060208801356152b4816149fd565b955060408801359450606088013567ffffffffffffffff808211156152d857600080fd5b6152e48b838c01614b53565b909650945060808a0135915080821115614c1357600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b67ffffffffffffffff8181168382160190808211156150fb576150fb6152fd565b60006020828403121561535f57600080fd5b8135610c1381615233565b6040808252810183905260008460608301825b868110156153a85763ffffffff61539384614a12565b1682526020928301929091019060010161537d565b5080925050506001600160a01b0383166020830152949350505050565b63ffffffff6153d382614a12565b1682526020810135602083015260408101356153ee81615233565b67ffffffffffffffff81166040840152505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b61545681896153c5565b86606082015260e06080820152600061547360e083018789615403565b6001600160a01b03861660a084015282810360c0840152611c46818587615403565b838152818360208301376000910160200190815292915050565b60a081016154bd82866153c5565b6001600160a01b038085166060840152808416608084015250949350505050565b6154e881866153c5565b60006001600160a01b03808616606084015280851660808401525060c060a083015261551760c0830184614c57565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261556157600080fd5b815167ffffffffffffffff8082111561557c5761557c615521565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019082821181831017156155c2576155c2615521565b816040528381528660208588010111156155db57600080fd5b615517846020830160208901614c33565b600080604083850312156155ff57600080fd5b825167ffffffffffffffff81111561561657600080fd5b61562285828601615550565b9250506020830151614aae81614f22565b60c0810161564182876153c5565b6001600160a01b03808616606084015284608084015280841660a08401525095945050505050565b60006020828403121561567b57600080fd5b8151610c1381614f22565b60006020828403121561569857600080fd5b815167ffffffffffffffff8111156156af57600080fd5b61131a84828501615550565b8183823760009101908152919050565b60006001600160a01b038088168352808716602084015250846040830152608060608301526115e1608083018486615403565b606081526001600160a01b03855116606082015263ffffffff602086015116608082015260006040860151606060a084015261573d60c0840182614c57565b9050851515602084015282810360408401526115e1818587615403565b60006040828403121561576c57600080fd5b6040516040810181811067ffffffffffffffff8211171561578f5761578f615521565b604052825181526020928301519281019290925250919050565b6000604082840312156157bb57600080fd5b610c90838361575a565b80820180821115610c9357610c936152fd565b6000606082016001600160a01b0387168352602063ffffffff8088168286015260406060818701528387855260808701905060808860051b88010194508860005b8981101561590d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8089880301835281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c360301811261587a57600080fd5b8b018561588682614a12565b168852868101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18236030181126158bd57600080fd5b01868101903567ffffffffffffffff8111156158d857600080fd5b8036038213156158e757600080fd5b85888a01526158f9868a018284615403565b985050509185019190850190600101615819565b50949b9a5050505050505050505050565b60006001600160a01b03808a16835288602084015260a0604084015261594860a08401888a615403565b81871660608501528381036080850152615963818688615403565b9b9a5050505050505050505050565b60006001600160a01b038089168352808816602084015286604084015285606084015280851660808401525060c060a08301526159b260c0830184614c57565b98975050505050505050565b7fffffffffffffffff0000000000000000000000000000000000000000000000008360c01b168152600082516159fb816008850160208701614c33565b919091016008019392505050565b600067ffffffffffffffff808316818103615a2657615a266152fd565b6001019392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615a6557600080fd5b83018035915067ffffffffffffffff821115615a8057600080fd5b6020019150368190038213156112a457600080fd5b6060815267ffffffffffffffff855116606082015263ffffffff60208601511660808201526001600160a01b0360408601511660a082015260006060860151615ae660c084018263ffffffff169052565b50608086015160e083015260a086015161010083015260c086015160e0610120840152615b17610140840182614c57565b90508281036020840152615b2c818688615403565b915050615b3d604083018415159052565b95945050505050565b600080600083850360c0811215615b5c57600080fd5b6080811215615b6a57600080fd5b506040516060810167ffffffffffffffff8282108183111715615b8f57615b8f615521565b816040528651835260208701519150615ba782615233565b816020840152615bba886040890161575a565b6040840152608087015192955080831115615bd457600080fd5b615be088848901615550565b945060a0870151925080831115615bf657600080fd5b5050615c0486828701615550565b9150509250925092565b606081526000615c216060830186614c57565b8281036020840152615c338186614c57565b9150506001600160a01b0383166040830152949350505050565b81810381811115610c9357610c936152fd565b60008251615c72818460208701614c33565b919091019291505056fea26469706673582212209684b845f949f6267b62dbd062bb58a67cfbeaf5b5e1a09a941e6435cffb98ba64736f6c63430008120033",
2018
- "deployedBytecode": "0x6080604052600436106103495760003560e01c80639132e5c3116101bb578063b96a277f116100f7578063ef57458d11610095578063f405c8591161006f578063f405c85914610b27578063f64be4c714610b3a578063f936112b14610b70578063fd894a5314610ba357600080fd5b8063ef57458d14610a99578063ef667aa114610abc578063f2fde38b14610b0757600080fd5b8063dc706a62116100d1578063dc706a6214610a09578063e16f964d14610a39578063e8964e8114610a59578063eaeacd6314610a7957600080fd5b8063b96a277f146109a9578063ce3cac0e146109c9578063d4b4ec8f146109e957600080fd5b80639e7fffcc11610164578063aafea3121161013e578063aafea31214610936578063aca1b45a14610956578063b8007ff614610969578063b8849ac91461098957600080fd5b80639e7fffcc146108d6578063a718531b146108f6578063a7229fd91461091657600080fd5b80639b86cb4d116101955780639b86cb4d1461081a5780639c9dd91d146108785780639d7f9775146108b657600080fd5b80639132e5c3146107ab578063965183d4146107cd5780639731526b146107ed57600080fd5b806351c85b6b1161028a5780636f50a80311610233578063754d3b9c1161020d578063754d3b9c1461072757806379624ca91461074757806383c47559146107605780638da5cb5b1461078d57600080fd5b80636f50a803146106a8578063715018a6146106de57806373318091146106f357600080fd5b80636750cd4c116102645780636750cd4c1461061057806369e55fb8146106305780636e83f5bb1461064957600080fd5b806351c85b6b146105a357806352d3b500146105d057806366bf43d6146105f057600080fd5b80632b3197b9116102f7578063416ecebf116102d1578063416ecebf146104e1578063418ba3511461052a578063447605761461054a57806345c6dcc41461058357600080fd5b80632b3197b91461045f5780633fa446751461048d578063402f8468146104a257600080fd5b806307b9ca7c1161032857806307b9ca7c146103d35780630c0c389e1461040557806314f651a91461042657600080fd5b80624afd471461034e57806303719a84146103815780630678327f146103b1575b600080fd5b34801561035a57600080fd5b5061036e610369366004614a2b565b610bb8565b6040519081526020015b60405180910390f35b34801561038d57600080fd5b506103a161039c366004614a81565b610c1a565b6040519015158152602001610378565b3480156103bd57600080fd5b506103d16103cc366004614afe565b610c99565b005b3480156103df57600080fd5b50600c546001600160a01b03165b6040516001600160a01b039091168152602001610378565b610418610413366004614b95565b610d89565b604051610378929190614ca1565b34801561043257600080fd5b5061043b611067565b6040805163ffffffff90931683526001600160a01b03909116602083015201610378565b34801561046b57600080fd5b5061047f61047a366004614cbc565b611096565b604051610378929190614d14565b34801561049957600080fd5b506103ed6111cc565b3480156104ae57600080fd5b506104c26104bd366004614d38565b6111fe565b604080516001600160a01b039093168352901515602083015201610378565b3480156104ed57600080fd5b506105157f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610378565b34801561053657600080fd5b506103a1610545366004614d6d565b6112ab565b34801561055657600080fd5b5061056a610565366004614a2b565b611322565b60405167ffffffffffffffff9091168152602001610378565b34801561058f57600080fd5b506103d161059e366004614db7565b61132f565b3480156105af57600080fd5b506105c36105be366004614df7565b6113df565b6040516103789190614e3c565b3480156105dc57600080fd5b506103d16105eb366004614e4f565b6115ec565b3480156105fc57600080fd5b506103d161060b366004614e6c565b611667565b34801561061c57600080fd5b506103a161062b366004614eab565b611972565b34801561063c57600080fd5b50601054600114156103a1565b34801561065557600080fd5b50610689610664366004614eab565b600b60205260009081526040902080546001909101546001600160a01b039091169082565b604080516001600160a01b039093168352602083019190915201610378565b3480156106b457600080fd5b506103ed6106c3366004614eab565b600a602052600090815260409020546001600160a01b031681565b3480156106ea57600080fd5b506103d16119be565b3480156106ff57600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b34801561073357600080fd5b506103d1610742366004614ec6565b6119d2565b34801561075357600080fd5b50600f54600114156103a1565b34801561076c57600080fd5b5061078061077b366004614f30565b611ad2565b6040516103789190614fb8565b34801561079957600080fd5b506000546001600160a01b03166103ed565b3480156107b757600080fd5b506107c0611c54565b6040516103789190614fcf565b3480156107d957600080fd5b5061036e6107e836600461501c565b611cb6565b3480156107f957600080fd5b5061080d610808366004615071565b611d30565b60405161037891906150bf565b34801561082657600080fd5b5061056a610835366004614a2b565b6001600160a01b038316600090815260036020908152604080832063ffffffff86168452825280832084845290915290205467ffffffffffffffff169392505050565b34801561088457600080fd5b5061036e610893366004615102565b600d60209081526000938452604080852082529284528284209052825290205481565b3480156108c257600080fd5b506103a16108d1366004615122565b611e64565b3480156108e257600080fd5b506103d16108f1366004614afe565b611f4e565b34801561090257600080fd5b506103d1610911366004614e6c565b612001565b34801561092257600080fd5b506103d1610931366004615102565b612345565b34801561094257600080fd5b506103d1610951366004615160565b6123b0565b61080d61096436600461518c565b612602565b34801561097557600080fd5b506103d16109843660046151dc565b6126be565b34801561099557600080fd5b506103d16109a4366004614e6c565b6127ac565b3480156109b557600080fd5b506104c26109c4366004614d38565b612bc6565b3480156109d557600080fd5b5061036e6109e4366004614a81565b612c68565b3480156109f557600080fd5b506103d1610a04366004614e6c565b612cf7565b348015610a1557600080fd5b506103a1610a24366004614e4f565b60056020526000908152604090205460ff1681565b348015610a4557600080fd5b506103d1610a54366004615160565b612f81565b348015610a6557600080fd5b506103d1610a74366004614e4f565b6131ef565b348015610a8557600080fd5b506103d1610a94366004615249565b613419565b348015610aa557600080fd5b506103a1600e546001600160a01b03166001141590565b348015610ac857600080fd5b50610689610ad7366004614d38565b6008602090815260009283526040808420909152908252902080546001909101546001600160a01b039091169082565b348015610b1357600080fd5b506103d1610b22366004614e4f565b61347b565b610418610b3536600461527e565b61350b565b348015610b4657600080fd5b506103ed610b55366004614eab565b6009602052600090815260409020546001600160a01b031681565b348015610b7c57600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006103ed565b348015610baf57600080fd5b5061043b61389f565b6001600160a01b038316600090815260036020908152604080832063ffffffff8616845282528083208484529091528120548190610c019067ffffffffffffffff16600161532c565b9050610c0f818686866138c8565b9150505b9392505050565b6000610c9082610c2d6020860186614eab565b6020860135610c42606088016040890161534d565b6001600160a01b038416600090815260026020908152604080832063ffffffff871684528252808320858452825280832067ffffffffffffffff851684529091529020541515949350505050565b90505b92915050565b6001600160a01b038316600090815260056020526040902054839060ff16610d085760405162461bcd60e51b815260206004820152600760248201527f4c5a31303030310000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6040517f1c63e3b60000000000000000000000000000000000000000000000000000000081526001600160a01b03851690631c63e3b690610d519086908690339060040161536a565b600060405180830381600087803b158015610d6b57600080fd5b505af1158015610d7f573d6000803e3d6000fd5b5050505050505050565b60006060610d9a60208a018a614eab565b88600160105414610ded5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303032000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b038216176010556040516000907f13137d650000000000000000000000000000000000000000000000000000000090610e5c908e908d908d908d9033908e908e9060240161544c565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091529050610ef35a6001600160a01b038d169034609685613985565b9095509350508315610f74576000898989604051602001610f1693929190615495565b6040516020818303038152906040529050610f328c8c83613a10565b507f9808b7d96088a8872d5a22ac23ef6914c35f2f0c2393266f8d5aed00c5f166068c8c33604051610f66939291906154af565b60405180910390a150611052565b341561101457604051600090339034908381818185875af1925050503d8060008114610fbc576040519150601f19603f3d011682016040523d82523d6000602084013e610fc1565b606091505b50509050806110125760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b7f5f36cc57ed48e4b998e0ae0107830e550ebfd81dff305f8ab5c1ca624464f1f28b8b338660405161104994939291906154de565b60405180910390a15b50506001601055909890975095505050505050565b600080611077600f546001141590565b6110835760008061108e565b60a0600f54901c600f545b915091509091565b6001600160a01b03831660009081526005602052604081205460609190859060ff166111045760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517f9c33abf700000000000000000000000000000000000000000000000000000000815263ffffffff80871660048301526001600160a01b0389811660248401529086166044830152871690639c33abf790606401600060405180830381865afa158015611178573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526111be91908101906155ec565b925092505094509492505050565b60006111e4600e546001600160a01b03166001141590565b6111ee5750600090565b50600e546001600160a01b031690565b6001600160a01b03808316600090815260076020908152604080832063ffffffff8616845290915281205490911690816112a45763ffffffff83166000908152600a60205260409020546001600160a01b03169150816112a05760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303034000000000000000000000000000000000000000000000000006044820152606401610cff565b5060015b9250929050565b60006112c4826112be6020870187614eab565b85611e64565b6113105760405162461bcd60e51b815260206004820152600760248201527f4c5a3530303030000000000000000000000000000000000000000000000000006044820152606401610cff565b61131a8483613ca8565b949350505050565b600061131a848484613d27565b611346826113406020860186614eab565b33611e64565b6113925760405162461bcd60e51b815260206004820152600760248201527f4c5a3530303030000000000000000000000000000000000000000000000000006044820152606401610cff565b61139d838383613d8a565b7f6f3339aff819ce511cfb1094545c3db99dc7f490fe40518933c129a17c538322838383336040516113d29493929190615633565b60405180910390a1505050565b6001600160a01b038316600090815260056020526040902054606090849060ff1661144c5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b84846001600160a01b03821615611530576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa1580156114c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e49190615669565b6115305760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517f690c655500000000000000000000000000000000000000000000000000000000815263ffffffff8088166004830152861660248201526001600160a01b0388169063690c655590604401600060405180830381865afa15801561159b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526115e19190810190615686565b979650505050505050565b6115f4613e6e565b600c80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383161790556040516001600160a01b03821681527ff66b6c5fcba13210e695e203c62d584c85a4193f8a279598609bb6af760b17c1906020015b60405180910390a150565b6001600160a01b038216600090815260056020526040902054829060ff166116d15760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b038216156117b5576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015611745573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117699190615669565b6117b55760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b60006117c133886111fe565b91505080156118125760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303130000000000000000000000000000000000000000000000000006044820152606401610cff565b846000036118695733600090815260086020908152604080832063ffffffff8b168452909152812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560010155611910565b4285116118b85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303030000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260086020908152604080832063ffffffff8b168452909152902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0388161781556001018590555b6040805133815263ffffffff891660208201526001600160a01b03881691810191909152606081018690527f661366f82fca66289bddc34462b3ab39d252b761599537d722a632d1bb066b8e906080015b60405180910390a150505050505050565b63ffffffff81166000908152600960205260408120546001600160a01b031615801590610c9357505063ffffffff166000908152600a60205260409020546001600160a01b0316151590565b6119c6613e6e565b6119d06000613ec8565b565b336000908152600d602090815260408083206001600160a01b0388168452825280832086845290915290205415611a4b5760405162461bcd60e51b815260206004820152600760248201527f4c5a3830303030000000000000000000000000000000000000000000000000006044820152606401610cff565b8181604051611a5b9291906156bb565b60408051918290038220336000818152600d60209081528482206001600160a01b038b1683528152848220898352905292909220557f7c0503be82d6ab0d4ea200b69f9930b82aec3c92ed138ed1a28f60cd9c3626db91611ac4919087908790879087906156cb565b60405180910390a150505050565b6040805180820190915260008082526020820152831580611afd5750600c546001600160a01b031615155b611b495760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303033000000000000000000000000000000000000000000000000006044820152606401610cff565b6000611b558989612bc6565b509050600060405180606001604052808b6001600160a01b031681526020018a63ffffffff16815260200189898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050509152506040517f07d7b2f90000000000000000000000000000000000000000000000000000000081529091506001600160a01b038316906307d7b2f990611c069084908a908a908a906004016156fe565b6040805180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c4691906157a9565b9a9950505050505050505050565b60606004805480602002602001604051908101604052809291908181526020018280548015611cac57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611c8e575b5050505050905090565b600080848484604051602001611cce93929190615495565b6040516020818303038152906040529050611cea863383613a10565b91507f9808b7d96088a8872d5a22ac23ef6914c35f2f0c2393266f8d5aed00c5f16606863333604051611d1f939291906154af565b60405180910390a150949350505050565b611d386149b5565b611d456020850185614eab565b336001600f5414611d985760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b03821617600f5533600080611dd4838a8a613f30565b91509150611dec838360400151600001518984614158565b611e00838360400151602001518a84614259565b604082810151805160209182015183516001600160a01b0388168152928301919091528183015290517ff3816d9cce3442fbfe3e4d36ad047b3362efdc9f2e283e77b0ecd768a0a01ef29181900360600190a1506001600f55979650505050505050565b6000806000611e7386866111fe565b91509150816001600160a01b0316846001600160a01b031603611e9b57600192505050610c13565b600081611ed0576001600160a01b038716600090815260086020908152604080832063ffffffff8a1684529091529020611ee6565b63ffffffff86166000908152600b602052604090205b6040805180820190915281546001600160a01b0390811680835260019093015460208301529092508616148015611f21575060008160200151115b8015611f305750428160200151115b15611f415760019350505050610c13565b5060009695505050505050565b6001600160a01b038316600090815260056020526040902054839060ff16611fb85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517fd2d287f00000000000000000000000000000000000000000000000000000000081526001600160a01b0385169063d2d287f090610d519086908690339060040161536a565b612009613e6e565b6001600160a01b038216600090815260056020526040902054829060ff166120735760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b03821615612157576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa1580156120e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061210b9190615669565b6121575760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff86166000908152600a60205260409020546001600160a01b0390811690861681036121c95760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b841561227a5763ffffffff87166000908152600b6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03831617815561221f86426157c5565b600182018190556040805163ffffffff8b1681526001600160a01b038516602082015280820192909252517f55b28633cdb29709386f555dfc54418592ad475ce7a65a78ac5928af60ffb8f89181900360600190a1506122ba565b63ffffffff87166000908152600b6020526040812080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155600101555b63ffffffff87166000818152600a602090815260409182902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b8116918217909255835194855290851691840191909152908201527f9914edfad6b7eac2e388f49bae232bd0e1954fbe92f5ed1ab975fc270f27cea590606001611961565b61234d613e6e565b6001600160a01b038316612397576040516001600160a01b0383169082156108fc029083906000818181858888f19350505050158015612391573d6000803e3d6000fd5b50505050565b6123ab6001600160a01b0384168383614324565b505050565b6123b8613e6e565b6001600160a01b038116600090815260056020526040902054819060ff166124225760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b81836001600160a01b03821615612506576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015612496573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124ba9190615669565b6125065760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff85166000908152600960205260409020546001600160a01b0390811690851681036125785760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff861660008181526009602090815260409182902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038a169081179091558251938452908301527f16aa0f528038ab41019e95bae5b418a50ba8532c5800e3b7ea2f517d3fa625f591015b60405180910390a1505050505050565b61260a6149b5565b6126176020850185614eab565b336001600f541461266a5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b77ffffffff000000000000000000000000000000000000000060a083901b166001600160a01b03821617600f55336000806126a6838a8a613f30565b91509150611dec82604001516000015134838a6143eb565b6001600160a01b038416600090815260056020526040902054849060ff166127285760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6040517fb8007ff60000000000000000000000000000000000000000000000000000000081526001600160a01b0386169063b8007ff6906127739033908890889088906004016157d8565b600060405180830381600087803b15801561278d57600080fd5b505af11580156127a1573d6000803e3d6000fd5b505050505050505050565b6001600160a01b038216600090815260056020526040902054829060ff16806127dc57506001600160a01b038116155b6128285760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303032000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b0382161561290c576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa15801561289c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128c09190615669565b61290c5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260076020908152604080832063ffffffff8a1684529091529020546001600160a01b0390811690861681036129895760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b33600081815260076020908152604080832063ffffffff8c168085529083529281902080546001600160a01b038c81167fffffffffffffffffffffffff00000000000000000000000000000000000000009092168217909255825195865292850193909352918416838301526060830152517fc0833c35bb1d0beadca36bed54c7098819e109542a6d233d33c7c2039c8ec9aa9181900360800190a18415612b72576001600160a01b03811615801590612a4b57506001600160a01b03861615155b612a975760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303130000000000000000000000000000000000000000000000000006044820152606401610cff565b60006040518060400160405280836001600160a01b031681526020018742612abf91906157c5565b905233600081815260086020908152604080832063ffffffff8e1680855290835292819020855181547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039182161782558684015160019092018290558251958652928501939093529086169083015260608201529091507f661366f82fca66289bddc34462b3ab39d252b761599537d722a632d1bb066b8e9060800160405180910390a150612bbd565b33600090815260086020908152604080832063ffffffff8b168452909152812080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155600101555b50505050505050565b6001600160a01b03808316600090815260066020908152604080832063ffffffff8616845290915281205490911690816112a45763ffffffff83166000908152600960205260409020546001600160a01b03169150816112a05760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03811660009081526002602090815260408220908290612c9190860186614eab565b63ffffffff1663ffffffff1681526020019081526020016000206000846020013581526020019081526020016000206000846040016020810190612cd5919061534d565b67ffffffffffffffff1681526020810191909152604001600020549392505050565b6001600160a01b038216600090815260056020526040902054829060ff16612d615760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303031000000000000000000000000000000000000000000000000006044820152606401610cff565b82846001600160a01b03821615612e45576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015612dd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df99190615669565b612e455760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b612e4d613e6e565b83600003612e995763ffffffff86166000908152600b6020526040812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815560010155612f35565b428411612ee85760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303030000000000000000000000000000000000000000000000000006044820152606401610cff565b63ffffffff86166000908152600b6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0387161781556001018490555b6040805163ffffffff881681526001600160a01b03871660208201529081018590527f55b28633cdb29709386f555dfc54418592ad475ce7a65a78ac5928af60ffb8f8906060016125f2565b6001600160a01b038116600090815260056020526040902054819060ff1680612fb157506001600160a01b038116155b612ffd5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303032000000000000000000000000000000000000000000000000006044820152606401610cff565b81836001600160a01b038216156130e1576040517f6750cd4c00000000000000000000000000000000000000000000000000000000815263ffffffff821660048201526001600160a01b03831690636750cd4c90602401602060405180830381865afa158015613071573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130959190615669565b6130e15760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303038000000000000000000000000000000000000000000000000006044820152606401610cff565b33600090815260066020908152604080832063ffffffff891684529091529020546001600160a01b03908116908516810361315e5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303035000000000000000000000000000000000000000000000000006044820152606401610cff565b33600081815260066020908152604080832063ffffffff8b168085529083529281902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038b16908117909155815194855291840192909252908201527f4cff966ebee29a156dcb34cf72c1d06231fb1777f6bdf6e8089819232f002b1c906060016125f2565b6131f7613e6e565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527fb8c3f77e0000000000000000000000000000000000000000000000000000000060048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa158015613274573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132989190615669565b6132e45760405162461bcd60e51b815260206004820152600760248201527f4c5a4330303031000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03811660009081526005602052604090205460ff161561334d5760405162461bcd60e51b815260206004820152600760248201527f4c5a3830303030000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b038116600081815260056020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091556004805491820181559093527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90920180547fffffffffffffffffffffffff0000000000000000000000000000000000000000168417905590519182527f6b374d56679ca9463f27c85c6311e2bb7fde69bf201d3da39d53f10bd9d78af5910161165c565b6134253384848461460d565b6040805163ffffffff8516815260208101849052339181019190915267ffffffffffffffff821660608201527f28f40053783033ef755556a0c3315379141f51a33aed8334174ffbadd90bde48906080016113d2565b613483613e6e565b6001600160a01b0381166134ff5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610cff565b61350881613ec8565b50565b600e5460009060609089906001600160a01b031660011461356e5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303033000000000000000000000000000000000000000000000000006044820152606401610cff565b600e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03838116919091179091558a81166000908152600d60209081526040808320938d1683529281528282208b835290528190205490516135dd90899089906156bb565b604051809103902081146136335760405162461bcd60e51b815260206004820152600760248201527f4c5a3630303030000000000000000000000000000000000000000000000000006044820152606401610cff565b600063d0a1026060e01b8c8b8b8b338c8c60405160240161365a979695949392919061591e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915290506136f15a6001600160a01b038d169034609685613985565b9095509350508315613782576001600160a01b038b81166000818152600d60209081526040808320948f168084529482528083208e84528252918290206001905581519283528201929092529081018a9052606081018290523360808201527fe8de892dbb4fd705fc4c154fd784700f6f24789e8ffea6922947d082606887949060a00160405180910390a1613864565b341561382257604051600090339034908381818185875af1925050503d80600081146137ca576040519150601f19603f3d011682016040523d82523d6000602084013e6137cf565b606091505b50509050806138205760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b7f8054fc0b1a2df897569746b52a49553918b57ffcedcd0a35f0e8553d5ebba6768b8b8b84338860405161385b96959493929190615972565b60405180910390a15b5050600e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001179055909890975095505050505050565b6000806138af6010546001141590565b6138bb5760008061108e565b505060105460a081901c91565b6040517fffffffff000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060e090811b821660208401526001600160a01b038616602484015284901b166044820152604881018290526000908190606801604051602081830303815290604052905085816040516020016139649291906159be565b60405160208183030381529060405280519060200120915050949350505050565b6000606060008060008661ffff1667ffffffffffffffff8111156139ab576139ab615521565b6040519080825280601f01601f1916602001820160405280156139d5576020820181803683370190505b5090506000808751602089018b8e8ef191503d9250868311156139f6578692505b828152826000602083013e90999098509650505050505050565b600080613a206020860186614eab565b905060208501356000613a39606088016040890161534d565b6001600160a01b038716600090815260016020908152604080832063ffffffff88168452825280832086845290915290205490915067ffffffffffffffff908116908216811015613bb4576000613a9182600161532c565b90505b8267ffffffffffffffff168167ffffffffffffffff1611613b4f576001600160a01b038816600090815260026020908152604080832063ffffffff891684528252808320878452825280832067ffffffffffffffff85168452909152902054613b3f5760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b613b4881615a09565b9050613a94565b506001600160a01b038716600090815260016020908152604080832063ffffffff881684528252808320868452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff84161790555b85516020808801919091206001600160a01b038916600090815260028352604080822063ffffffff891683528452808220878352845280822067ffffffffffffffff871683529093529190912054909550808614613c545760405162461bcd60e51b815260206004820152600760248201527f4c5a3630303030000000000000000000000000000000000000000000000000006044820152606401610cff565b50506001600160a01b03909516600090815260026020908152604080832063ffffffff909516835293815283822092825291825282812067ffffffffffffffff909616815294905283209290925550919050565b6001600160a01b03811660009081526001602090815260408220908290613cd190860186614eab565b63ffffffff16815260208082019290925260409081016000908120868401358252909252908190205467ffffffffffffffff1690613d15906060860190860161534d565b67ffffffffffffffff16119392505050565b6001600160a01b038316600090815260016020908152604080832063ffffffff86168452825280832084845290915281205467ffffffffffffffff165b613d75858585610c4285600161532c565b1561131a57613d8381615a09565b9050613d64565b613d948383613ca8565b613de05760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b0382166000908152600260209081526040822083929091613e0a90870187614eab565b63ffffffff1663ffffffff1681526020019081526020016000206000856020013581526020019081526020016000206000856040016020810190613e4e919061534d565b67ffffffffffffffff168152602081019190915260400160002055505050565b6000546001600160a01b031633146119d05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610cff565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613f386149b5565b600080613f5686613f4c6020880188614eab565b87602001356146f3565b90506000613f6b876109c46020890189614eab565b50905060006040518060e001604052808467ffffffffffffffff1681526020017f000000000000000000000000000000000000000000000000000000000000000063ffffffff168152602001896001600160a01b03168152602001886000016020810190613fd99190614eab565b63ffffffff16815260200188602001358152602001614010858b8b60000160208101906140069190614eab565b8c602001356138c8565b815260200161402260408a018a615a30565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093909452509293508815159250905080806001600160a01b038616634389e58f8661408060608f018f615a30565b886040518563ffffffff1660e01b81526004016140a09493929190615a95565b6000604051808303816000875af11580156140bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526141059190810190615b46565b9250925092507f1ab700d4ced0c005b164c0f789fd09fcbb0156d4c2041b8a3bfbcd961cd1567f82828860405161413e93929190615c0e565b60405180910390a150909a93995092975050505050505050565b8215612391577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166141d45760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303032000000000000000000000000000000000000000000000000006044820152606401610cff565b818311156142245760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b6123916001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016858386614769565b821561239157600c546001600160a01b0316806142b85760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303033000000000000000000000000000000000000000000000000006044820152606401610cff565b828411156143085760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b61431d6001600160a01b038216868487614769565b5050505050565b6040516001600160a01b0383166024820152604481018290526123ab9084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909316929092179091526147ba565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316156144625760405162461bcd60e51b815260206004820152600760248201527f4c5a4430303031000000000000000000000000000000000000000000000000006044820152606401610cff565b828411156144b25760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303033000000000000000000000000000000000000000000000000006044820152606401610cff565b831561455d576000826001600160a01b03168560405160006040518083038185875af1925050503d8060008114614505576040519150601f19603f3d011682016040523d82523d6000602084013e61450a565b606091505b505090508061455b5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b505b828410156123915760006001600160a01b03821661457b8686615c4d565b604051600081818185875af1925050503d80600081146145b7576040519150601f19603f3d011682016040523d82523d6000602084013e6145bc565b606091505b505090508061431d5760405162461bcd60e51b815260206004820152600760248201527f4c5a3330303030000000000000000000000000000000000000000000000000006044820152606401610cff565b614618848484613d27565b61462390600161532c565b67ffffffffffffffff168167ffffffffffffffff16146146855760405162461bcd60e51b815260206004820152600760248201527f4c5a3130303034000000000000000000000000000000000000000000000000006044820152606401610cff565b6001600160a01b03909316600090815260016020908152604080832063ffffffff90951683529381528382209282529190915220805467ffffffffffffffff9092167fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000909216919091179055565b6001600160a01b038316600090815260036020908152604080832063ffffffff86168452825280832084845290915281208054829061473b9067ffffffffffffffff16615a09565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905590509392505050565b6040516001600160a01b03808516602483015283166044820152606481018290526123919085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401614369565b600061480f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166148a29092919063ffffffff16565b90508051600014806148305750808060200190518101906148309190615669565b6123ab5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610cff565b606061131a848460008585600080866001600160a01b031685876040516148c99190615c60565b60006040518083038185875af1925050503d8060008114614906576040519150601f19603f3d011682016040523d82523d6000602084013e61490b565b606091505b50915091506115e1878383876060831561498657825160000361497f576001600160a01b0385163b61497f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610cff565b508161131a565b61131a838381511561499b5781518083602001fd5b8060405162461bcd60e51b8152600401610cff9190614e3c565b604051806060016040528060008019168152602001600067ffffffffffffffff1681526020016149f8604051806040016040528060008152602001600081525090565b905290565b6001600160a01b038116811461350857600080fd5b803563ffffffff81168114614a2657600080fd5b919050565b600080600060608486031215614a4057600080fd5b8335614a4b816149fd565b9250614a5960208501614a12565b9150604084013590509250925092565b600060608284031215614a7b57600080fd5b50919050565b60008060808385031215614a9457600080fd5b614a9e8484614a69565b91506060830135614aae816149fd565b809150509250929050565b60008083601f840112614acb57600080fd5b50813567ffffffffffffffff811115614ae357600080fd5b6020830191508360208260051b85010111156112a457600080fd5b600080600060408486031215614b1357600080fd5b8335614b1e816149fd565b9250602084013567ffffffffffffffff811115614b3a57600080fd5b614b4686828701614ab9565b9497909650939450505050565b60008083601f840112614b6557600080fd5b50813567ffffffffffffffff811115614b7d57600080fd5b6020830191508360208285010111156112a457600080fd5b600080600080600080600060e0888a031215614bb057600080fd5b614bba8989614a69565b96506060880135614bca816149fd565b95506080880135945060a088013567ffffffffffffffff80821115614bee57600080fd5b614bfa8b838c01614b53565b909650945060c08a0135915080821115614c1357600080fd5b50614c208a828b01614b53565b989b979a50959850939692959293505050565b60005b83811015614c4e578181015183820152602001614c36565b50506000910152565b60008151808452614c6f816020860160208601614c33565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b821515815260406020820152600061131a6040830184614c57565b60008060008060808587031215614cd257600080fd5b8435614cdd816149fd565b93506020850135614ced816149fd565b9250614cfb60408601614a12565b9150614d0960608601614a12565b905092959194509250565b604081526000614d276040830185614c57565b905082151560208301529392505050565b60008060408385031215614d4b57600080fd5b8235614d56816149fd565b9150614d6460208401614a12565b90509250929050565b600080600060a08486031215614d8257600080fd5b614d8c8585614a69565b92506060840135614d9c816149fd565b91506080840135614dac816149fd565b809150509250925092565b600080600060a08486031215614dcc57600080fd5b614dd68585614a69565b92506060840135614de6816149fd565b929592945050506080919091013590565b600080600060608486031215614e0c57600080fd5b8335614e17816149fd565b9250614e2560208501614a12565b9150614e3360408501614a12565b90509250925092565b602081526000610c906020830184614c57565b600060208284031215614e6157600080fd5b8135610c13816149fd565b600080600060608486031215614e8157600080fd5b614e8a84614a12565b92506020840135614e9a816149fd565b929592945050506040919091013590565b600060208284031215614ebd57600080fd5b610c9082614a12565b60008060008060608587031215614edc57600080fd5b8435614ee7816149fd565b935060208501359250604085013567ffffffffffffffff811115614f0a57600080fd5b614f1687828801614b53565b95989497509550505050565b801515811461350857600080fd5b600080600080600080600060a0888a031215614f4b57600080fd5b8735614f56816149fd565b9650614f6460208901614a12565b9550604088013567ffffffffffffffff80821115614f8157600080fd5b614f8d8b838c01614b53565b909750955060608a01359150614fa282614f22565b90935060808901359080821115614c1357600080fd5b815181526020808301519082015260408101610c93565b6020808252825182820181905260009190848201906040850190845b818110156150105783516001600160a01b031683529284019291840191600101614feb565b50909695505050505050565b60008060008060a0858703121561503257600080fd5b61503c8686614a69565b935060608501359250608085013567ffffffffffffffff811115614f0a57600080fd5b600060808284031215614a7b57600080fd5b60008060006060848603121561508657600080fd5b833567ffffffffffffffff81111561509d57600080fd5b6150a98682870161505f565b9660208601359650604090950135949350505050565b60006080820190508251825267ffffffffffffffff602084015116602083015260408301516150fb604084018280518252602090810151910152565b5092915050565b60008060006060848603121561511757600080fd5b8335614e8a816149fd565b60008060006060848603121561513757600080fd5b8335615142816149fd565b925061515060208501614a12565b91506040840135614dac816149fd565b6000806040838503121561517357600080fd5b61517c83614a12565b91506020830135614aae816149fd565b6000806000606084860312156151a157600080fd5b833567ffffffffffffffff8111156151b857600080fd5b6151c48682870161505f565b935050602084013591506040840135614dac816149fd565b600080600080606085870312156151f257600080fd5b84356151fd816149fd565b935061520b60208601614a12565b9250604085013567ffffffffffffffff81111561522757600080fd5b614f1687828801614ab9565b67ffffffffffffffff8116811461350857600080fd5b60008060006060848603121561525e57600080fd5b61526784614a12565b9250602084013591506040840135614dac81615233565b600080600080600080600060a0888a03121561529957600080fd5b87356152a4816149fd565b965060208801356152b4816149fd565b955060408801359450606088013567ffffffffffffffff808211156152d857600080fd5b6152e48b838c01614b53565b909650945060808a0135915080821115614c1357600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b67ffffffffffffffff8181168382160190808211156150fb576150fb6152fd565b60006020828403121561535f57600080fd5b8135610c1381615233565b6040808252810183905260008460608301825b868110156153a85763ffffffff61539384614a12565b1682526020928301929091019060010161537d565b5080925050506001600160a01b0383166020830152949350505050565b63ffffffff6153d382614a12565b1682526020810135602083015260408101356153ee81615233565b67ffffffffffffffff81166040840152505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b61545681896153c5565b86606082015260e06080820152600061547360e083018789615403565b6001600160a01b03861660a084015282810360c0840152611c46818587615403565b838152818360208301376000910160200190815292915050565b60a081016154bd82866153c5565b6001600160a01b038085166060840152808416608084015250949350505050565b6154e881866153c5565b60006001600160a01b03808616606084015280851660808401525060c060a083015261551760c0830184614c57565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261556157600080fd5b815167ffffffffffffffff8082111561557c5761557c615521565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019082821181831017156155c2576155c2615521565b816040528381528660208588010111156155db57600080fd5b615517846020830160208901614c33565b600080604083850312156155ff57600080fd5b825167ffffffffffffffff81111561561657600080fd5b61562285828601615550565b9250506020830151614aae81614f22565b60c0810161564182876153c5565b6001600160a01b03808616606084015284608084015280841660a08401525095945050505050565b60006020828403121561567b57600080fd5b8151610c1381614f22565b60006020828403121561569857600080fd5b815167ffffffffffffffff8111156156af57600080fd5b61131a84828501615550565b8183823760009101908152919050565b60006001600160a01b038088168352808716602084015250846040830152608060608301526115e1608083018486615403565b606081526001600160a01b03855116606082015263ffffffff602086015116608082015260006040860151606060a084015261573d60c0840182614c57565b9050851515602084015282810360408401526115e1818587615403565b60006040828403121561576c57600080fd5b6040516040810181811067ffffffffffffffff8211171561578f5761578f615521565b604052825181526020928301519281019290925250919050565b6000604082840312156157bb57600080fd5b610c90838361575a565b80820180821115610c9357610c936152fd565b6000606082016001600160a01b0387168352602063ffffffff8088168286015260406060818701528387855260808701905060808860051b88010194508860005b8981101561590d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8089880301835281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c360301811261587a57600080fd5b8b018561588682614a12565b168852868101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18236030181126158bd57600080fd5b01868101903567ffffffffffffffff8111156158d857600080fd5b8036038213156158e757600080fd5b85888a01526158f9868a018284615403565b985050509185019190850190600101615819565b50949b9a5050505050505050505050565b60006001600160a01b03808a16835288602084015260a0604084015261594860a08401888a615403565b81871660608501528381036080850152615963818688615403565b9b9a5050505050505050505050565b60006001600160a01b038089168352808816602084015286604084015285606084015280851660808401525060c060a08301526159b260c0830184614c57565b98975050505050505050565b7fffffffffffffffff0000000000000000000000000000000000000000000000008360c01b168152600082516159fb816008850160208701614c33565b919091016008019392505050565b600067ffffffffffffffff808316818103615a2657615a266152fd565b6001019392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112615a6557600080fd5b83018035915067ffffffffffffffff821115615a8057600080fd5b6020019150368190038213156112a457600080fd5b6060815267ffffffffffffffff855116606082015263ffffffff60208601511660808201526001600160a01b0360408601511660a082015260006060860151615ae660c084018263ffffffff169052565b50608086015160e083015260a086015161010083015260c086015160e0610120840152615b17610140840182614c57565b90508281036020840152615b2c818688615403565b915050615b3d604083018415159052565b95945050505050565b600080600083850360c0811215615b5c57600080fd5b6080811215615b6a57600080fd5b506040516060810167ffffffffffffffff8282108183111715615b8f57615b8f615521565b816040528651835260208701519150615ba782615233565b816020840152615bba886040890161575a565b6040840152608087015192955080831115615bd457600080fd5b615be088848901615550565b945060a0870151925080831115615bf657600080fd5b5050615c0486828701615550565b9150509250925092565b606081526000615c216060830186614c57565b8281036020840152615c338186614c57565b9150506001600160a01b0383166040830152949350505050565b81810381811115610c9357610c936152fd565b60008251615c72818460208701614c33565b919091019291505056fea26469706673582212209684b845f949f6267b62dbd062bb58a67cfbeaf5b5e1a09a941e6435cffb98ba64736f6c63430008120033",
2019
- "devdoc": {
2020
- "kind": "dev",
2021
- "methods": {
2022
- "owner()": {
2023
- "details": "Returns the address of the current owner."
2024
- },
2025
- "renounceOwnership()": {
2026
- "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."
2027
- },
2028
- "transferOwnership(address)": {
2029
- "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."
2030
- }
2031
- },
2032
- "version": 1
2033
- },
2034
- "userdoc": {
2035
- "kind": "user",
2036
- "methods": {
2037
- "deliverable((uint32,bytes32,uint64),address,address)": {
2038
- "notice": "check if a message is deliverable. if false, the message is delivered. otherwise, it is deliverable."
2039
- },
2040
- "recoverToken(address,address,uint256)": {
2041
- "notice": "recover the token sent to this contract by mistake"
2042
- },
2043
- "setSendLibrary(uint32,address)": {
2044
- "notice": "------------------- OApp interfaces -------------------"
2045
- }
2046
- },
2047
- "version": 1
2048
- },
2049
- "storageLayout": {
2050
- "storage": [
2051
- {
2052
- "astId": 7,
2053
- "contract": "contracts/Endpoint.sol:Endpoint",
2054
- "label": "_owner",
2055
- "offset": 0,
2056
- "slot": "0",
2057
- "type": "t_address"
2058
- },
2059
- {
2060
- "astId": 2875,
2061
- "contract": "contracts/Endpoint.sol:Endpoint",
2062
- "label": "lazyInboundNonce",
2063
- "offset": 0,
2064
- "slot": "1",
2065
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_mapping(t_bytes32,t_uint64)))"
2066
- },
2067
- {
2068
- "astId": 2885,
2069
- "contract": "contracts/Endpoint.sol:Endpoint",
2070
- "label": "inboundPayloadHash",
2071
- "offset": 0,
2072
- "slot": "2",
2073
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32))))"
2074
- },
2075
- {
2076
- "astId": 2893,
2077
- "contract": "contracts/Endpoint.sol:Endpoint",
2078
- "label": "outboundNonce",
2079
- "offset": 0,
2080
- "slot": "3",
2081
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_mapping(t_bytes32,t_uint64)))"
2082
- },
2083
- {
2084
- "astId": 1981,
2085
- "contract": "contracts/Endpoint.sol:Endpoint",
2086
- "label": "registeredLibraries",
2087
- "offset": 0,
2088
- "slot": "4",
2089
- "type": "t_array(t_address)dyn_storage"
2090
- },
2091
- {
2092
- "astId": 1985,
2093
- "contract": "contracts/Endpoint.sol:Endpoint",
2094
- "label": "isRegisteredLibrary",
2095
- "offset": 0,
2096
- "slot": "5",
2097
- "type": "t_mapping(t_address,t_bool)"
2098
- },
2099
- {
2100
- "astId": 1991,
2101
- "contract": "contracts/Endpoint.sol:Endpoint",
2102
- "label": "sendLibrary",
2103
- "offset": 0,
2104
- "slot": "6",
2105
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_address))"
2106
- },
2107
- {
2108
- "astId": 1997,
2109
- "contract": "contracts/Endpoint.sol:Endpoint",
2110
- "label": "receiveLibrary",
2111
- "offset": 0,
2112
- "slot": "7",
2113
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_address))"
2114
- },
2115
- {
2116
- "astId": 2004,
2117
- "contract": "contracts/Endpoint.sol:Endpoint",
2118
- "label": "receiveLibraryTimeout",
2119
- "offset": 0,
2120
- "slot": "8",
2121
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_struct(Timeout)4126_storage))"
2122
- },
2123
- {
2124
- "astId": 2008,
2125
- "contract": "contracts/Endpoint.sol:Endpoint",
2126
- "label": "defaultSendLibrary",
2127
- "offset": 0,
2128
- "slot": "9",
2129
- "type": "t_mapping(t_uint32,t_address)"
2130
- },
2131
- {
2132
- "astId": 2012,
2133
- "contract": "contracts/Endpoint.sol:Endpoint",
2134
- "label": "defaultReceiveLibrary",
2135
- "offset": 0,
2136
- "slot": "10",
2137
- "type": "t_mapping(t_uint32,t_address)"
2138
- },
2139
- {
2140
- "astId": 2017,
2141
- "contract": "contracts/Endpoint.sol:Endpoint",
2142
- "label": "defaultReceiveLibraryTimeout",
2143
- "offset": 0,
2144
- "slot": "11",
2145
- "type": "t_mapping(t_uint32,t_struct(Timeout)4126_storage)"
2146
- },
2147
- {
2148
- "astId": 3463,
2149
- "contract": "contracts/Endpoint.sol:Endpoint",
2150
- "label": "lzToken",
2151
- "offset": 0,
2152
- "slot": "12",
2153
- "type": "t_address"
2154
- },
2155
- {
2156
- "astId": 3229,
2157
- "contract": "contracts/Endpoint.sol:Endpoint",
2158
- "label": "composedMessages",
2159
- "offset": 0,
2160
- "slot": "13",
2161
- "type": "t_mapping(t_address,t_mapping(t_address,t_mapping(t_bytes32,t_bytes32)))"
2162
- },
2163
- {
2164
- "astId": 3232,
2165
- "contract": "contracts/Endpoint.sol:Endpoint",
2166
- "label": "_composeContext",
2167
- "offset": 0,
2168
- "slot": "14",
2169
- "type": "t_address"
2170
- },
2171
- {
2172
- "astId": 1024,
2173
- "contract": "contracts/Endpoint.sol:Endpoint",
2174
- "label": "_sendContext",
2175
- "offset": 0,
2176
- "slot": "15",
2177
- "type": "t_uint256"
2178
- },
2179
- {
2180
- "astId": 1027,
2181
- "contract": "contracts/Endpoint.sol:Endpoint",
2182
- "label": "_receiveContext",
2183
- "offset": 0,
2184
- "slot": "16",
2185
- "type": "t_uint256"
2186
- }
2187
- ],
2188
- "types": {
2189
- "t_address": {
2190
- "encoding": "inplace",
2191
- "label": "address",
2192
- "numberOfBytes": "20"
2193
- },
2194
- "t_array(t_address)dyn_storage": {
2195
- "base": "t_address",
2196
- "encoding": "dynamic_array",
2197
- "label": "address[]",
2198
- "numberOfBytes": "32"
2199
- },
2200
- "t_bool": {
2201
- "encoding": "inplace",
2202
- "label": "bool",
2203
- "numberOfBytes": "1"
2204
- },
2205
- "t_bytes32": {
2206
- "encoding": "inplace",
2207
- "label": "bytes32",
2208
- "numberOfBytes": "32"
2209
- },
2210
- "t_mapping(t_address,t_bool)": {
2211
- "encoding": "mapping",
2212
- "key": "t_address",
2213
- "label": "mapping(address => bool)",
2214
- "numberOfBytes": "32",
2215
- "value": "t_bool"
2216
- },
2217
- "t_mapping(t_address,t_mapping(t_address,t_mapping(t_bytes32,t_bytes32)))": {
2218
- "encoding": "mapping",
2219
- "key": "t_address",
2220
- "label": "mapping(address => mapping(address => mapping(bytes32 => bytes32)))",
2221
- "numberOfBytes": "32",
2222
- "value": "t_mapping(t_address,t_mapping(t_bytes32,t_bytes32))"
2223
- },
2224
- "t_mapping(t_address,t_mapping(t_bytes32,t_bytes32))": {
2225
- "encoding": "mapping",
2226
- "key": "t_address",
2227
- "label": "mapping(address => mapping(bytes32 => bytes32))",
2228
- "numberOfBytes": "32",
2229
- "value": "t_mapping(t_bytes32,t_bytes32)"
2230
- },
2231
- "t_mapping(t_address,t_mapping(t_uint32,t_address))": {
2232
- "encoding": "mapping",
2233
- "key": "t_address",
2234
- "label": "mapping(address => mapping(uint32 => address))",
2235
- "numberOfBytes": "32",
2236
- "value": "t_mapping(t_uint32,t_address)"
2237
- },
2238
- "t_mapping(t_address,t_mapping(t_uint32,t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32))))": {
2239
- "encoding": "mapping",
2240
- "key": "t_address",
2241
- "label": "mapping(address => mapping(uint32 => mapping(bytes32 => mapping(uint64 => bytes32))))",
2242
- "numberOfBytes": "32",
2243
- "value": "t_mapping(t_uint32,t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32)))"
2244
- },
2245
- "t_mapping(t_address,t_mapping(t_uint32,t_mapping(t_bytes32,t_uint64)))": {
2246
- "encoding": "mapping",
2247
- "key": "t_address",
2248
- "label": "mapping(address => mapping(uint32 => mapping(bytes32 => uint64)))",
2249
- "numberOfBytes": "32",
2250
- "value": "t_mapping(t_uint32,t_mapping(t_bytes32,t_uint64))"
2251
- },
2252
- "t_mapping(t_address,t_mapping(t_uint32,t_struct(Timeout)4126_storage))": {
2253
- "encoding": "mapping",
2254
- "key": "t_address",
2255
- "label": "mapping(address => mapping(uint32 => struct IMessageLibManager.Timeout))",
2256
- "numberOfBytes": "32",
2257
- "value": "t_mapping(t_uint32,t_struct(Timeout)4126_storage)"
2258
- },
2259
- "t_mapping(t_bytes32,t_bytes32)": {
2260
- "encoding": "mapping",
2261
- "key": "t_bytes32",
2262
- "label": "mapping(bytes32 => bytes32)",
2263
- "numberOfBytes": "32",
2264
- "value": "t_bytes32"
2265
- },
2266
- "t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32))": {
2267
- "encoding": "mapping",
2268
- "key": "t_bytes32",
2269
- "label": "mapping(bytes32 => mapping(uint64 => bytes32))",
2270
- "numberOfBytes": "32",
2271
- "value": "t_mapping(t_uint64,t_bytes32)"
2272
- },
2273
- "t_mapping(t_bytes32,t_uint64)": {
2274
- "encoding": "mapping",
2275
- "key": "t_bytes32",
2276
- "label": "mapping(bytes32 => uint64)",
2277
- "numberOfBytes": "32",
2278
- "value": "t_uint64"
2279
- },
2280
- "t_mapping(t_uint32,t_address)": {
2281
- "encoding": "mapping",
2282
- "key": "t_uint32",
2283
- "label": "mapping(uint32 => address)",
2284
- "numberOfBytes": "32",
2285
- "value": "t_address"
2286
- },
2287
- "t_mapping(t_uint32,t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32)))": {
2288
- "encoding": "mapping",
2289
- "key": "t_uint32",
2290
- "label": "mapping(uint32 => mapping(bytes32 => mapping(uint64 => bytes32)))",
2291
- "numberOfBytes": "32",
2292
- "value": "t_mapping(t_bytes32,t_mapping(t_uint64,t_bytes32))"
2293
- },
2294
- "t_mapping(t_uint32,t_mapping(t_bytes32,t_uint64))": {
2295
- "encoding": "mapping",
2296
- "key": "t_uint32",
2297
- "label": "mapping(uint32 => mapping(bytes32 => uint64))",
2298
- "numberOfBytes": "32",
2299
- "value": "t_mapping(t_bytes32,t_uint64)"
2300
- },
2301
- "t_mapping(t_uint32,t_struct(Timeout)4126_storage)": {
2302
- "encoding": "mapping",
2303
- "key": "t_uint32",
2304
- "label": "mapping(uint32 => struct IMessageLibManager.Timeout)",
2305
- "numberOfBytes": "32",
2306
- "value": "t_struct(Timeout)4126_storage"
2307
- },
2308
- "t_mapping(t_uint64,t_bytes32)": {
2309
- "encoding": "mapping",
2310
- "key": "t_uint64",
2311
- "label": "mapping(uint64 => bytes32)",
2312
- "numberOfBytes": "32",
2313
- "value": "t_bytes32"
2314
- },
2315
- "t_struct(Timeout)4126_storage": {
2316
- "encoding": "inplace",
2317
- "label": "struct IMessageLibManager.Timeout",
2318
- "members": [
2319
- {
2320
- "astId": 4123,
2321
- "contract": "contracts/Endpoint.sol:Endpoint",
2322
- "label": "lib",
2323
- "offset": 0,
2324
- "slot": "0",
2325
- "type": "t_address"
2326
- },
2327
- {
2328
- "astId": 4125,
2329
- "contract": "contracts/Endpoint.sol:Endpoint",
2330
- "label": "expiry",
2331
- "offset": 0,
2332
- "slot": "1",
2333
- "type": "t_uint256"
2334
- }
2335
- ],
2336
- "numberOfBytes": "64"
2337
- },
2338
- "t_uint256": {
2339
- "encoding": "inplace",
2340
- "label": "uint256",
2341
- "numberOfBytes": "32"
2342
- },
2343
- "t_uint32": {
2344
- "encoding": "inplace",
2345
- "label": "uint32",
2346
- "numberOfBytes": "4"
2347
- },
2348
- "t_uint64": {
2349
- "encoding": "inplace",
2350
- "label": "uint64",
2351
- "numberOfBytes": "8"
2352
- }
2353
- }
2354
- }
2355
- }