@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,1448 +0,0 @@
1
- {
2
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
3
- "abi": [
4
- {
5
- "inputs": [
6
- {
7
- "internalType": "address[]",
8
- "name": "_messageLibs",
9
- "type": "address[]"
10
- },
11
- {
12
- "internalType": "address",
13
- "name": "_priceFeed",
14
- "type": "address"
15
- },
16
- {
17
- "internalType": "address[]",
18
- "name": "_signers",
19
- "type": "address[]"
20
- },
21
- {
22
- "internalType": "uint64",
23
- "name": "_quorum",
24
- "type": "uint64"
25
- },
26
- {
27
- "internalType": "address[]",
28
- "name": "_admins",
29
- "type": "address[]"
30
- }
31
- ],
32
- "stateMutability": "nonpayable",
33
- "type": "constructor"
34
- },
35
- {
36
- "anonymous": false,
37
- "inputs": [
38
- {
39
- "indexed": false,
40
- "internalType": "uint32",
41
- "name": "dstEid",
42
- "type": "uint32"
43
- },
44
- {
45
- "indexed": false,
46
- "internalType": "address",
47
- "name": "oapp",
48
- "type": "address"
49
- },
50
- {
51
- "indexed": false,
52
- "internalType": "uint64",
53
- "name": "confirmations",
54
- "type": "uint64"
55
- },
56
- {
57
- "indexed": false,
58
- "internalType": "uint256",
59
- "name": "totalFee",
60
- "type": "uint256"
61
- }
62
- ],
63
- "name": "AssignJob",
64
- "type": "event"
65
- },
66
- {
67
- "anonymous": false,
68
- "inputs": [
69
- {
70
- "indexed": false,
71
- "internalType": "uint256",
72
- "name": "_index",
73
- "type": "uint256"
74
- },
75
- {
76
- "indexed": false,
77
- "internalType": "bytes",
78
- "name": "_data",
79
- "type": "bytes"
80
- }
81
- ],
82
- "name": "ExecuteFailed",
83
- "type": "event"
84
- },
85
- {
86
- "anonymous": false,
87
- "inputs": [
88
- {
89
- "components": [
90
- {
91
- "internalType": "address",
92
- "name": "target",
93
- "type": "address"
94
- },
95
- {
96
- "internalType": "bytes",
97
- "name": "callData",
98
- "type": "bytes"
99
- },
100
- {
101
- "internalType": "uint256",
102
- "name": "expiration",
103
- "type": "uint256"
104
- },
105
- {
106
- "internalType": "bytes",
107
- "name": "signatures",
108
- "type": "bytes"
109
- }
110
- ],
111
- "indexed": false,
112
- "internalType": "struct ExecuteParam",
113
- "name": "param",
114
- "type": "tuple"
115
- },
116
- {
117
- "indexed": false,
118
- "internalType": "bytes32",
119
- "name": "_hash",
120
- "type": "bytes32"
121
- }
122
- ],
123
- "name": "HashAlreadyUsed",
124
- "type": "event"
125
- },
126
- {
127
- "anonymous": false,
128
- "inputs": [
129
- {
130
- "indexed": true,
131
- "internalType": "bytes32",
132
- "name": "role",
133
- "type": "bytes32"
134
- },
135
- {
136
- "indexed": true,
137
- "internalType": "bytes32",
138
- "name": "previousAdminRole",
139
- "type": "bytes32"
140
- },
141
- {
142
- "indexed": true,
143
- "internalType": "bytes32",
144
- "name": "newAdminRole",
145
- "type": "bytes32"
146
- }
147
- ],
148
- "name": "RoleAdminChanged",
149
- "type": "event"
150
- },
151
- {
152
- "anonymous": false,
153
- "inputs": [
154
- {
155
- "indexed": true,
156
- "internalType": "bytes32",
157
- "name": "role",
158
- "type": "bytes32"
159
- },
160
- {
161
- "indexed": true,
162
- "internalType": "address",
163
- "name": "account",
164
- "type": "address"
165
- },
166
- {
167
- "indexed": true,
168
- "internalType": "address",
169
- "name": "sender",
170
- "type": "address"
171
- }
172
- ],
173
- "name": "RoleGranted",
174
- "type": "event"
175
- },
176
- {
177
- "anonymous": false,
178
- "inputs": [
179
- {
180
- "indexed": true,
181
- "internalType": "bytes32",
182
- "name": "role",
183
- "type": "bytes32"
184
- },
185
- {
186
- "indexed": true,
187
- "internalType": "address",
188
- "name": "account",
189
- "type": "address"
190
- },
191
- {
192
- "indexed": true,
193
- "internalType": "address",
194
- "name": "sender",
195
- "type": "address"
196
- }
197
- ],
198
- "name": "RoleRevoked",
199
- "type": "event"
200
- },
201
- {
202
- "anonymous": false,
203
- "inputs": [
204
- {
205
- "indexed": false,
206
- "internalType": "uint16",
207
- "name": "multiplierBps",
208
- "type": "uint16"
209
- }
210
- ],
211
- "name": "SetDefaultMultiplierBps",
212
- "type": "event"
213
- },
214
- {
215
- "anonymous": false,
216
- "inputs": [
217
- {
218
- "components": [
219
- {
220
- "internalType": "uint32",
221
- "name": "dstEid",
222
- "type": "uint32"
223
- },
224
- {
225
- "internalType": "uint64",
226
- "name": "gas",
227
- "type": "uint64"
228
- },
229
- {
230
- "internalType": "uint16",
231
- "name": "multiplierBps",
232
- "type": "uint16"
233
- },
234
- {
235
- "internalType": "uint128",
236
- "name": "floorMarginUSD",
237
- "type": "uint128"
238
- }
239
- ],
240
- "indexed": false,
241
- "internalType": "struct IOracle.DstConfigParam[]",
242
- "name": "params",
243
- "type": "tuple[]"
244
- }
245
- ],
246
- "name": "SetDstConfig",
247
- "type": "event"
248
- },
249
- {
250
- "anonymous": false,
251
- "inputs": [
252
- {
253
- "indexed": false,
254
- "internalType": "address",
255
- "name": "priceFeed",
256
- "type": "address"
257
- }
258
- ],
259
- "name": "SetPriceFeed",
260
- "type": "event"
261
- },
262
- {
263
- "anonymous": false,
264
- "inputs": [
265
- {
266
- "indexed": false,
267
- "internalType": "address",
268
- "name": "workerLib",
269
- "type": "address"
270
- }
271
- ],
272
- "name": "SetWorkerLib",
273
- "type": "event"
274
- },
275
- {
276
- "anonymous": false,
277
- "inputs": [
278
- {
279
- "indexed": false,
280
- "internalType": "uint64",
281
- "name": "_quorum",
282
- "type": "uint64"
283
- }
284
- ],
285
- "name": "UpdateQuorum",
286
- "type": "event"
287
- },
288
- {
289
- "anonymous": false,
290
- "inputs": [
291
- {
292
- "indexed": false,
293
- "internalType": "address",
294
- "name": "_signer",
295
- "type": "address"
296
- },
297
- {
298
- "indexed": false,
299
- "internalType": "bool",
300
- "name": "_active",
301
- "type": "bool"
302
- }
303
- ],
304
- "name": "UpdateSigner",
305
- "type": "event"
306
- },
307
- {
308
- "anonymous": false,
309
- "inputs": [
310
- {
311
- "indexed": false,
312
- "internalType": "address",
313
- "name": "lib",
314
- "type": "address"
315
- },
316
- {
317
- "indexed": false,
318
- "internalType": "address",
319
- "name": "to",
320
- "type": "address"
321
- },
322
- {
323
- "indexed": false,
324
- "internalType": "uint256",
325
- "name": "amount",
326
- "type": "uint256"
327
- }
328
- ],
329
- "name": "Withdraw",
330
- "type": "event"
331
- },
332
- {
333
- "inputs": [],
334
- "name": "ADMIN_ROLE",
335
- "outputs": [
336
- {
337
- "internalType": "bytes32",
338
- "name": "",
339
- "type": "bytes32"
340
- }
341
- ],
342
- "stateMutability": "view",
343
- "type": "function"
344
- },
345
- {
346
- "inputs": [],
347
- "name": "ALLOWLIST",
348
- "outputs": [
349
- {
350
- "internalType": "bytes32",
351
- "name": "",
352
- "type": "bytes32"
353
- }
354
- ],
355
- "stateMutability": "view",
356
- "type": "function"
357
- },
358
- {
359
- "inputs": [],
360
- "name": "DEFAULT_ADMIN_ROLE",
361
- "outputs": [
362
- {
363
- "internalType": "bytes32",
364
- "name": "",
365
- "type": "bytes32"
366
- }
367
- ],
368
- "stateMutability": "view",
369
- "type": "function"
370
- },
371
- {
372
- "inputs": [],
373
- "name": "DENYLIST",
374
- "outputs": [
375
- {
376
- "internalType": "bytes32",
377
- "name": "",
378
- "type": "bytes32"
379
- }
380
- ],
381
- "stateMutability": "view",
382
- "type": "function"
383
- },
384
- {
385
- "inputs": [],
386
- "name": "MESSAGE_LIB_ROLE",
387
- "outputs": [
388
- {
389
- "internalType": "bytes32",
390
- "name": "",
391
- "type": "bytes32"
392
- }
393
- ],
394
- "stateMutability": "view",
395
- "type": "function"
396
- },
397
- {
398
- "inputs": [],
399
- "name": "allowlistSize",
400
- "outputs": [
401
- {
402
- "internalType": "uint64",
403
- "name": "",
404
- "type": "uint64"
405
- }
406
- ],
407
- "stateMutability": "view",
408
- "type": "function"
409
- },
410
- {
411
- "inputs": [
412
- {
413
- "internalType": "uint16",
414
- "name": "_dstEid",
415
- "type": "uint16"
416
- },
417
- {
418
- "internalType": "uint16",
419
- "name": "",
420
- "type": "uint16"
421
- },
422
- {
423
- "internalType": "uint64",
424
- "name": "_confirmations",
425
- "type": "uint64"
426
- },
427
- {
428
- "internalType": "address",
429
- "name": "_sender",
430
- "type": "address"
431
- }
432
- ],
433
- "name": "assignJob",
434
- "outputs": [
435
- {
436
- "internalType": "uint256",
437
- "name": "totalFee",
438
- "type": "uint256"
439
- }
440
- ],
441
- "stateMutability": "nonpayable",
442
- "type": "function"
443
- },
444
- {
445
- "inputs": [
446
- {
447
- "internalType": "uint32",
448
- "name": "_dstEid",
449
- "type": "uint32"
450
- },
451
- {
452
- "internalType": "uint64",
453
- "name": "_confirmations",
454
- "type": "uint64"
455
- },
456
- {
457
- "internalType": "address",
458
- "name": "_sender",
459
- "type": "address"
460
- },
461
- {
462
- "internalType": "bytes",
463
- "name": "_options",
464
- "type": "bytes"
465
- }
466
- ],
467
- "name": "assignJob",
468
- "outputs": [
469
- {
470
- "internalType": "uint256",
471
- "name": "totalFee",
472
- "type": "uint256"
473
- }
474
- ],
475
- "stateMutability": "payable",
476
- "type": "function"
477
- },
478
- {
479
- "inputs": [],
480
- "name": "defaultMultiplierBps",
481
- "outputs": [
482
- {
483
- "internalType": "uint16",
484
- "name": "",
485
- "type": "uint16"
486
- }
487
- ],
488
- "stateMutability": "view",
489
- "type": "function"
490
- },
491
- {
492
- "inputs": [
493
- {
494
- "internalType": "uint32",
495
- "name": "dstEid",
496
- "type": "uint32"
497
- }
498
- ],
499
- "name": "dstConfig",
500
- "outputs": [
501
- {
502
- "internalType": "uint64",
503
- "name": "gas",
504
- "type": "uint64"
505
- },
506
- {
507
- "internalType": "uint16",
508
- "name": "multiplierBps",
509
- "type": "uint16"
510
- },
511
- {
512
- "internalType": "uint128",
513
- "name": "floorMarginUSD",
514
- "type": "uint128"
515
- }
516
- ],
517
- "stateMutability": "view",
518
- "type": "function"
519
- },
520
- {
521
- "inputs": [
522
- {
523
- "components": [
524
- {
525
- "internalType": "address",
526
- "name": "target",
527
- "type": "address"
528
- },
529
- {
530
- "internalType": "bytes",
531
- "name": "callData",
532
- "type": "bytes"
533
- },
534
- {
535
- "internalType": "uint256",
536
- "name": "expiration",
537
- "type": "uint256"
538
- },
539
- {
540
- "internalType": "bytes",
541
- "name": "signatures",
542
- "type": "bytes"
543
- }
544
- ],
545
- "internalType": "struct ExecuteParam[]",
546
- "name": "_params",
547
- "type": "tuple[]"
548
- }
549
- ],
550
- "name": "execute",
551
- "outputs": [],
552
- "stateMutability": "nonpayable",
553
- "type": "function"
554
- },
555
- {
556
- "inputs": [
557
- {
558
- "internalType": "uint32",
559
- "name": "_dstEid",
560
- "type": "uint32"
561
- },
562
- {
563
- "internalType": "uint64",
564
- "name": "_confirmations",
565
- "type": "uint64"
566
- },
567
- {
568
- "internalType": "address",
569
- "name": "_sender",
570
- "type": "address"
571
- },
572
- {
573
- "internalType": "bytes",
574
- "name": "_options",
575
- "type": "bytes"
576
- }
577
- ],
578
- "name": "getFee",
579
- "outputs": [
580
- {
581
- "internalType": "uint256",
582
- "name": "fee",
583
- "type": "uint256"
584
- }
585
- ],
586
- "stateMutability": "view",
587
- "type": "function"
588
- },
589
- {
590
- "inputs": [
591
- {
592
- "internalType": "uint16",
593
- "name": "_dstEid",
594
- "type": "uint16"
595
- },
596
- {
597
- "internalType": "uint16",
598
- "name": "",
599
- "type": "uint16"
600
- },
601
- {
602
- "internalType": "uint64",
603
- "name": "_confirmations",
604
- "type": "uint64"
605
- },
606
- {
607
- "internalType": "address",
608
- "name": "_sender",
609
- "type": "address"
610
- }
611
- ],
612
- "name": "getFee",
613
- "outputs": [
614
- {
615
- "internalType": "uint256",
616
- "name": "fee",
617
- "type": "uint256"
618
- }
619
- ],
620
- "stateMutability": "view",
621
- "type": "function"
622
- },
623
- {
624
- "inputs": [
625
- {
626
- "internalType": "bytes32",
627
- "name": "role",
628
- "type": "bytes32"
629
- }
630
- ],
631
- "name": "getRoleAdmin",
632
- "outputs": [
633
- {
634
- "internalType": "bytes32",
635
- "name": "",
636
- "type": "bytes32"
637
- }
638
- ],
639
- "stateMutability": "view",
640
- "type": "function"
641
- },
642
- {
643
- "inputs": [
644
- {
645
- "internalType": "bytes32",
646
- "name": "role",
647
- "type": "bytes32"
648
- },
649
- {
650
- "internalType": "address",
651
- "name": "account",
652
- "type": "address"
653
- }
654
- ],
655
- "name": "grantRole",
656
- "outputs": [],
657
- "stateMutability": "nonpayable",
658
- "type": "function"
659
- },
660
- {
661
- "inputs": [
662
- {
663
- "internalType": "bytes32",
664
- "name": "role",
665
- "type": "bytes32"
666
- },
667
- {
668
- "internalType": "address",
669
- "name": "account",
670
- "type": "address"
671
- }
672
- ],
673
- "name": "hasRole",
674
- "outputs": [
675
- {
676
- "internalType": "bool",
677
- "name": "",
678
- "type": "bool"
679
- }
680
- ],
681
- "stateMutability": "view",
682
- "type": "function"
683
- },
684
- {
685
- "inputs": [
686
- {
687
- "internalType": "address",
688
- "name": "_target",
689
- "type": "address"
690
- },
691
- {
692
- "internalType": "bytes",
693
- "name": "_callData",
694
- "type": "bytes"
695
- },
696
- {
697
- "internalType": "uint256",
698
- "name": "_expiration",
699
- "type": "uint256"
700
- }
701
- ],
702
- "name": "hashCallData",
703
- "outputs": [
704
- {
705
- "internalType": "bytes32",
706
- "name": "",
707
- "type": "bytes32"
708
- }
709
- ],
710
- "stateMutability": "pure",
711
- "type": "function"
712
- },
713
- {
714
- "inputs": [],
715
- "name": "paused",
716
- "outputs": [
717
- {
718
- "internalType": "bool",
719
- "name": "",
720
- "type": "bool"
721
- }
722
- ],
723
- "stateMutability": "view",
724
- "type": "function"
725
- },
726
- {
727
- "inputs": [],
728
- "name": "priceFeed",
729
- "outputs": [
730
- {
731
- "internalType": "address",
732
- "name": "",
733
- "type": "address"
734
- }
735
- ],
736
- "stateMutability": "view",
737
- "type": "function"
738
- },
739
- {
740
- "inputs": [],
741
- "name": "quorum",
742
- "outputs": [
743
- {
744
- "internalType": "uint64",
745
- "name": "",
746
- "type": "uint64"
747
- }
748
- ],
749
- "stateMutability": "view",
750
- "type": "function"
751
- },
752
- {
753
- "inputs": [
754
- {
755
- "internalType": "bytes32",
756
- "name": "",
757
- "type": "bytes32"
758
- },
759
- {
760
- "internalType": "address",
761
- "name": "",
762
- "type": "address"
763
- }
764
- ],
765
- "name": "renounceRole",
766
- "outputs": [],
767
- "stateMutability": "nonpayable",
768
- "type": "function"
769
- },
770
- {
771
- "inputs": [
772
- {
773
- "internalType": "bytes32",
774
- "name": "role",
775
- "type": "bytes32"
776
- },
777
- {
778
- "internalType": "address",
779
- "name": "account",
780
- "type": "address"
781
- }
782
- ],
783
- "name": "revokeRole",
784
- "outputs": [],
785
- "stateMutability": "nonpayable",
786
- "type": "function"
787
- },
788
- {
789
- "inputs": [
790
- {
791
- "internalType": "uint16",
792
- "name": "_multiplierBps",
793
- "type": "uint16"
794
- }
795
- ],
796
- "name": "setDefaultMultiplierBps",
797
- "outputs": [],
798
- "stateMutability": "nonpayable",
799
- "type": "function"
800
- },
801
- {
802
- "inputs": [
803
- {
804
- "components": [
805
- {
806
- "internalType": "uint32",
807
- "name": "dstEid",
808
- "type": "uint32"
809
- },
810
- {
811
- "internalType": "uint64",
812
- "name": "gas",
813
- "type": "uint64"
814
- },
815
- {
816
- "internalType": "uint16",
817
- "name": "multiplierBps",
818
- "type": "uint16"
819
- },
820
- {
821
- "internalType": "uint128",
822
- "name": "floorMarginUSD",
823
- "type": "uint128"
824
- }
825
- ],
826
- "internalType": "struct IOracle.DstConfigParam[]",
827
- "name": "_params",
828
- "type": "tuple[]"
829
- }
830
- ],
831
- "name": "setDstConfig",
832
- "outputs": [],
833
- "stateMutability": "nonpayable",
834
- "type": "function"
835
- },
836
- {
837
- "inputs": [
838
- {
839
- "internalType": "bool",
840
- "name": "_paused",
841
- "type": "bool"
842
- }
843
- ],
844
- "name": "setPaused",
845
- "outputs": [],
846
- "stateMutability": "nonpayable",
847
- "type": "function"
848
- },
849
- {
850
- "inputs": [
851
- {
852
- "internalType": "address",
853
- "name": "_priceFeed",
854
- "type": "address"
855
- }
856
- ],
857
- "name": "setPriceFeed",
858
- "outputs": [],
859
- "stateMutability": "nonpayable",
860
- "type": "function"
861
- },
862
- {
863
- "inputs": [
864
- {
865
- "internalType": "uint64",
866
- "name": "_quorum",
867
- "type": "uint64"
868
- }
869
- ],
870
- "name": "setQuorum",
871
- "outputs": [],
872
- "stateMutability": "nonpayable",
873
- "type": "function"
874
- },
875
- {
876
- "inputs": [
877
- {
878
- "internalType": "address",
879
- "name": "_signer",
880
- "type": "address"
881
- },
882
- {
883
- "internalType": "bool",
884
- "name": "_active",
885
- "type": "bool"
886
- }
887
- ],
888
- "name": "setSigner",
889
- "outputs": [],
890
- "stateMutability": "nonpayable",
891
- "type": "function"
892
- },
893
- {
894
- "inputs": [
895
- {
896
- "internalType": "address",
897
- "name": "_workerFeeLib",
898
- "type": "address"
899
- }
900
- ],
901
- "name": "setWorkerFeeLib",
902
- "outputs": [],
903
- "stateMutability": "nonpayable",
904
- "type": "function"
905
- },
906
- {
907
- "inputs": [
908
- {
909
- "internalType": "contract IUltraLightNode",
910
- "name": "_uln",
911
- "type": "address"
912
- },
913
- {
914
- "internalType": "bytes",
915
- "name": "_packetHeader",
916
- "type": "bytes"
917
- },
918
- {
919
- "internalType": "bytes32",
920
- "name": "_payloadHash",
921
- "type": "bytes32"
922
- },
923
- {
924
- "internalType": "uint64",
925
- "name": "_confirmations",
926
- "type": "uint64"
927
- }
928
- ],
929
- "name": "signAndDeliver",
930
- "outputs": [],
931
- "stateMutability": "nonpayable",
932
- "type": "function"
933
- },
934
- {
935
- "inputs": [],
936
- "name": "signerSize",
937
- "outputs": [
938
- {
939
- "internalType": "uint64",
940
- "name": "",
941
- "type": "uint64"
942
- }
943
- ],
944
- "stateMutability": "view",
945
- "type": "function"
946
- },
947
- {
948
- "inputs": [
949
- {
950
- "internalType": "address",
951
- "name": "signer",
952
- "type": "address"
953
- }
954
- ],
955
- "name": "signers",
956
- "outputs": [
957
- {
958
- "internalType": "bool",
959
- "name": "active",
960
- "type": "bool"
961
- }
962
- ],
963
- "stateMutability": "view",
964
- "type": "function"
965
- },
966
- {
967
- "inputs": [
968
- {
969
- "internalType": "bytes4",
970
- "name": "interfaceId",
971
- "type": "bytes4"
972
- }
973
- ],
974
- "name": "supportsInterface",
975
- "outputs": [
976
- {
977
- "internalType": "bool",
978
- "name": "",
979
- "type": "bool"
980
- }
981
- ],
982
- "stateMutability": "view",
983
- "type": "function"
984
- },
985
- {
986
- "inputs": [
987
- {
988
- "internalType": "bytes32",
989
- "name": "executableHash",
990
- "type": "bytes32"
991
- }
992
- ],
993
- "name": "usedHashes",
994
- "outputs": [
995
- {
996
- "internalType": "bool",
997
- "name": "used",
998
- "type": "bool"
999
- }
1000
- ],
1001
- "stateMutability": "view",
1002
- "type": "function"
1003
- },
1004
- {
1005
- "inputs": [
1006
- {
1007
- "internalType": "bytes32",
1008
- "name": "_hash",
1009
- "type": "bytes32"
1010
- },
1011
- {
1012
- "internalType": "bytes",
1013
- "name": "_signatures",
1014
- "type": "bytes"
1015
- }
1016
- ],
1017
- "name": "verifySignatures",
1018
- "outputs": [
1019
- {
1020
- "internalType": "bool",
1021
- "name": "",
1022
- "type": "bool"
1023
- }
1024
- ],
1025
- "stateMutability": "view",
1026
- "type": "function"
1027
- },
1028
- {
1029
- "inputs": [
1030
- {
1031
- "internalType": "address",
1032
- "name": "_lib",
1033
- "type": "address"
1034
- },
1035
- {
1036
- "internalType": "address payable",
1037
- "name": "_to",
1038
- "type": "address"
1039
- },
1040
- {
1041
- "internalType": "uint256",
1042
- "name": "_amount",
1043
- "type": "uint256"
1044
- }
1045
- ],
1046
- "name": "withdrawFee",
1047
- "outputs": [],
1048
- "stateMutability": "nonpayable",
1049
- "type": "function"
1050
- },
1051
- {
1052
- "inputs": [
1053
- {
1054
- "internalType": "address",
1055
- "name": "_lib",
1056
- "type": "address"
1057
- },
1058
- {
1059
- "internalType": "address payable",
1060
- "name": "_to",
1061
- "type": "address"
1062
- },
1063
- {
1064
- "internalType": "uint256",
1065
- "name": "_amount",
1066
- "type": "uint256"
1067
- }
1068
- ],
1069
- "name": "withdrawFeeFromUlnV2",
1070
- "outputs": [],
1071
- "stateMutability": "nonpayable",
1072
- "type": "function"
1073
- },
1074
- {
1075
- "inputs": [],
1076
- "name": "workerFeeLib",
1077
- "outputs": [
1078
- {
1079
- "internalType": "address",
1080
- "name": "",
1081
- "type": "address"
1082
- }
1083
- ],
1084
- "stateMutability": "view",
1085
- "type": "function"
1086
- }
1087
- ],
1088
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1089
- "receipt": {
1090
- "to": null,
1091
- "from": "0xBcd4042DE499D14e55001CcbB24a551F3b954096",
1092
- "contractAddress": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1093
- "transactionIndex": 0,
1094
- "gasUsed": "3734032",
1095
- "logsBloom": "0x00000004000000000000000000000000000000000000000000000002000000000000400000000000000000020000000000000000000000000000020000000020000400000000000000000000000000000000080020000000000000000000000000000000030000000000000000000800000000000000000800000000000000000000000000000000000000000000004000000000080000000000000000000020008000000800000000000000000000400000000000000000001000000000000000000000000000000002010000000000000000000000000100010020800060000000000080000000000000000080000000000000000000000000000000000000",
1096
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1",
1097
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1098
- "logs": [
1099
- {
1100
- "transactionIndex": 0,
1101
- "blockNumber": 228,
1102
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1103
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1104
- "topics": [
1105
- "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1106
- "0x0000000000000000000000000000000000000000000000000000000000000000",
1107
- "0x0000000000000000000000000000000000000000000000000000000000000000",
1108
- "0x000000000000000000000000bcd4042de499d14e55001ccbb24a551f3b954096"
1109
- ],
1110
- "data": "0x",
1111
- "logIndex": 0,
1112
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1"
1113
- },
1114
- {
1115
- "transactionIndex": 0,
1116
- "blockNumber": 228,
1117
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1118
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1119
- "topics": [
1120
- "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1121
- "0x724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de",
1122
- "0x0000000000000000000000000f5d1ef48f12b6f691401bfe88c2037c690a6afe",
1123
- "0x000000000000000000000000bcd4042de499d14e55001ccbb24a551f3b954096"
1124
- ],
1125
- "data": "0x",
1126
- "logIndex": 1,
1127
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1"
1128
- },
1129
- {
1130
- "transactionIndex": 0,
1131
- "blockNumber": 228,
1132
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1133
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1134
- "topics": [
1135
- "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1136
- "0x724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de",
1137
- "0x000000000000000000000000381445710b5e73d34af196c53a3d5cda58edbf7a",
1138
- "0x000000000000000000000000bcd4042de499d14e55001ccbb24a551f3b954096"
1139
- ],
1140
- "data": "0x",
1141
- "logIndex": 2,
1142
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1"
1143
- },
1144
- {
1145
- "transactionIndex": 0,
1146
- "blockNumber": 228,
1147
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1148
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1149
- "topics": [
1150
- "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1151
- "0xa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775",
1152
- "0x000000000000000000000000c13b65f7c53cd6db2ea205a4b574b4a0858720a6",
1153
- "0x000000000000000000000000bcd4042de499d14e55001ccbb24a551f3b954096"
1154
- ],
1155
- "data": "0x",
1156
- "logIndex": 3,
1157
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1"
1158
- },
1159
- {
1160
- "transactionIndex": 0,
1161
- "blockNumber": 228,
1162
- "transactionHash": "0x0a2b2b8bf6194762ce3545a79f971215367f81717bd38cdf46fc96dcafa14620",
1163
- "address": "0xfbfbfDdd6e35dA57b7B0F9a2C10E34Be70B3A4E9",
1164
- "topics": [
1165
- "0x2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d",
1166
- "0xa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775",
1167
- "0x0000000000000000000000000e9971c0005d91336c1441b8f03c1c4fe5fb4584",
1168
- "0x000000000000000000000000bcd4042de499d14e55001ccbb24a551f3b954096"
1169
- ],
1170
- "data": "0x",
1171
- "logIndex": 4,
1172
- "blockHash": "0x81a293003643622aa3fec6e9a55f30968aa505c1109ec2387c4c8b97ffb5cfe1"
1173
- }
1174
- ],
1175
- "blockNumber": 228,
1176
- "cumulativeGasUsed": "3734032",
1177
- "status": 1,
1178
- "byzantium": true
1179
- },
1180
- "args": [
1181
- [
1182
- "0x0f5D1ef48f12b6f691401bfe88c2037c690a6afe",
1183
- "0x381445710b5e73d34aF196c53A3D5cDa58EDBf7A"
1184
- ],
1185
- "0x13D69Cf7d6CE4218F646B759Dcf334D82c023d8e",
1186
- [
1187
- "0x9c79357189d6aF261691ECF48de9A6bbF30438Fc",
1188
- "0xC4c81D5C1851702d27d602aA8ff830A7689F17cc"
1189
- ],
1190
- 1,
1191
- [
1192
- "0xc13b65f7c53Cd6db2EA205a4b574b4a0858720A6",
1193
- "0x0e9971c0005D91336c1441b8F03c1C4fe5FB4584"
1194
- ]
1195
- ],
1196
- "numDeployments": 1,
1197
- "solcInputHash": "5ffde9e3e6b2b0a4f1d21e15c800c066",
1198
- "bytecode": "0x60806040523480156200001157600080fd5b50604051620044813803806200448183398101604081905262000034916200050a565b6001805461ffff60e01b191661017760e51b179055600280546001600160a01b0319166001600160a01b03861617905582828686612ee06000866200007a8280620002d0565b60005b8551811015620000ea57620000d57f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de878381518110620000c157620000c1620005c8565b6020026020010151620002d060201b60201c565b80620000e181620005f4565b9150506200007d565b5060005b81518110156200014757620001327fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775838381518110620000c157620000c1620005c8565b806200013e81620005f4565b915050620000ee565b505050505050806001600160401b03168251101580156200017157506000816001600160401b0316115b620001c35760405162461bcd60e51b815260206004820152601960248201527f4d756c74695369673a207369676e65727320746f6f206665770000000000000060448201526064015b60405180910390fd5b6000805b83518110156200028f576000848281518110620001e857620001e8620005c8565b60200260200101519050826001600160a01b0316816001600160a01b031611620002555760405162461bcd60e51b815260206004820152601c60248201527f4d756c74695369673a207369676e657273206e6f7420736f72746564000000006044820152606401620001ba565b6001600160a01b0381166000908152600360205260409020805460ff191660011790559150806200028681620005f4565b915050620001c7565b50509051600480546001600160401b0393841668010000000000000000026001600160801b0319909116939092169290921717905550620006419350505050565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca821480156200032157506000828152602081815260408083206001600160a01b038516845290915290205460ff16155b156200036f5760018054600160a01b90046001600160401b0316906014620003498362000610565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550505b6200038682826200038a60201b620023111760201c565b5050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1662000386576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620003e63390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b03811681146200045857600080fd5b919050565b600082601f8301126200046f57600080fd5b815160206001600160401b03808311156200048e576200048e6200042a565b8260051b604051601f19603f83011681018181108482111715620004b657620004b66200042a565b604052938452858101830193838101925087851115620004d557600080fd5b83870191505b84821015620004ff57620004ef8262000440565b83529183019190830190620004db565b979650505050505050565b600080600080600060a086880312156200052357600080fd5b85516001600160401b03808211156200053b57600080fd5b6200054989838a016200045d565b9650620005596020890162000440565b955060408801519150808211156200057057600080fd5b6200057e89838a016200045d565b94506060880151915080821682146200059657600080fd5b608088015191935080821115620005ac57600080fd5b50620005bb888289016200045d565b9150509295509295909350565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201620006095762000609620005de565b5060010190565b60006001600160401b038281166002600160401b03198101620006375762000637620005de565b6001019392505050565b613e3080620006516000396000f3fe6080604052600436106102845760003560e01c806375b238fc11610153578063c5e193cd116100cb578063dafe0ccc1161007f578063e4fbd90311610064578063e4fbd903146108f7578063f3ad31f41461090a578063fd62e7501461092a57600080fd5b8063dafe0ccc146108b7578063de980a43146108d757600080fd5b8063c7b2370b116100b0578063c7b2370b1461083e578063d2ae21041461085e578063d547741f1461089757600080fd5b8063c5e193cd146107fe578063c7a823e01461081e57600080fd5b8063a217fddf11610122578063aef18bf711610107578063aef18bf714610781578063c358de0a146107b1578063c416aa51146107d157600080fd5b8063a217fddf14610738578063a98586e11461074d57600080fd5b806375b238fc146105ee5780638585c9451461062257806391d14854146106425780639e9449651461069357600080fd5b80632f2ff15d116102015780635553fb8e116101b5578063724e78da1161019a578063724e78da1461054c578063736c0d5b1461056c578063741bef1a1461059c57600080fd5b80635553fb8e146104fa5780635c975abb1461051a57600080fd5b806331cb6105116101e657806331cb61051461049a57806336568abe146104ba57806352d3b871146104da57600080fd5b80632f2ff15d1461045a57806330bb3aac1461047a57600080fd5b806316c38b3c116102585780631f3a6f041161023d5780631f3a6f04146103d6578063248a9ca31461040a5780632d80eb361461043a57600080fd5b806316c38b3c146103705780631703a0181461039057600080fd5b8062bf2e801461028957806301ffc9a7146102dc578063036c0a2c1461030c5780631095b6d71461034e575b600080fd5b34801561029557600080fd5b506001546102c4907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b3480156102e857600080fd5b506102fc6102f7366004612f1d565b61094b565b60405190151581526020016102d3565b34801561031857600080fd5b506103407f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481565b6040519081526020016102d3565b34801561035a57600080fd5b5061036e610369366004612f81565b6109e4565b005b34801561037c57600080fd5b5061036e61038b366004612fd0565b610ba8565b34801561039c57600080fd5b506004546103bd9068010000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016102d3565b3480156103e257600080fd5b506103407f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca81565b34801561041657600080fd5b50610340610425366004612fed565b60009081526020819052604090206001015490565b34801561044657600080fd5b5061036e610455366004613006565b610bfe565b34801561046657600080fd5b5061036e61047536600461307b565b610e43565b34801561048657600080fd5b50610340610495366004613183565b610fef565b3480156104a657600080fd5b5061036e6104b536600461326a565b6112ac565b3480156104c657600080fd5b5061036e6104d536600461307b565b611323565b3480156104e657600080fd5b5061036e6104f53660046132aa565b611385565b34801561050657600080fd5b506103406105153660046133c0565b61150b565b34801561052657600080fd5b506002546102fc9074010000000000000000000000000000000000000000900460ff1681565b34801561055857600080fd5b5061036e610567366004613416565b61171b565b34801561057857600080fd5b506102fc610587366004613416565b60036020526000908152604090205460ff1681565b3480156105a857600080fd5b506002546105c99073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102d3565b3480156105fa57600080fd5b506103407fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b34801561062e57600080fd5b5061036e61063d366004613433565b6117b8565b34801561064e57600080fd5b506102fc61065d36600461307b565b60009182526020828152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561069f57600080fd5b506106fd6106ae36600461344e565b60056020526000908152604090205467ffffffffffffffff81169068010000000000000000810461ffff16906a010000000000000000000090046fffffffffffffffffffffffffffffffff1683565b6040805167ffffffffffffffff909416845261ffff90921660208401526fffffffffffffffffffffffffffffffff16908201526060016102d3565b34801561074457600080fd5b50610340600081565b34801561075957600080fd5b506103407f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81565b34801561078d57600080fd5b506102fc61079c366004612fed565b60066020526000908152604090205460ff1681565b3480156107bd57600080fd5b5061036e6107cc366004613469565b61182d565b3480156107dd57600080fd5b506001546105c99073ffffffffffffffffffffffffffffffffffffffff1681565b34801561080a57600080fd5b506103406108193660046133c0565b6118da565b34801561082a57600080fd5b506102fc6108393660046134cd565b6119a3565b34801561084a57600080fd5b5061036e610859366004613416565b611bb9565b34801561086a57600080fd5b506001546103bd9074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b3480156108a357600080fd5b5061036e6108b236600461307b565b611c5f565b3480156108c357600080fd5b5061036e6108d2366004612f81565b611da4565b3480156108e357600080fd5b5061036e6108f2366004613519565b611f0a565b610340610905366004613589565b6121f1565b34801561091657600080fd5b50610340610925366004613601565b6122d8565b34801561093657600080fd5b506004546103bd9067ffffffffffffffff1681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b0000000000000000000000000000000000000000000000000000000014806109de57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775610a0e81612401565b73ffffffffffffffffffffffffffffffffffffffff841660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16610ac1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f576f726b65723a20496e76616c6964206d657373616765206c6962000000000060448201526064015b60405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b158015610b3157600080fd5b505af1158015610b45573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b6000610bb381612401565b506002805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775610c2881612401565b60005b82811015610e3d5736848483818110610c4657610c4661365d565b9050602002810190610c58919061368c565b905042816040013511610c6b5750610e2b565b6000610c94610c7d6020840184613416565b610c8a60208501856136ca565b85604001356122d8565b9050610cb4610ca660208401846136ca565b610caf9161372f565b61240b565b15610d485760008181526006602052604090205460ff1615610d10577f9c26528f222eb4f79639dea7fe30c7257c124af7ed741437170674ca68249e4e8282604051610d01929190613824565b60405180910390a15050610e2b565b600081815260066020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b610d598161083960608501856136ca565b15610e2857600080610d6e6020850185613416565b73ffffffffffffffffffffffffffffffffffffffff16610d9160208601866136ca565b604051610d9f9291906138d3565b6000604051808303816000865af19150503d8060008114610ddc576040519150601f19603f3d011682016040523d82523d6000602084013e610de1565b606091505b509150915081610e25577fdc8cdd96296241bbefda4a8e18ad2e0985a8da6495b34d409cfc4c886ee3b0cf8582604051610e1c929190613951565b60405180910390a15b50505b50505b80610e35816139a1565b915050610c2b565b50505050565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480610e9157507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80610ebb57507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15610f2e57303314610f29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b610fe0565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610f7e57610f297fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612401565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4f7261636c653a20696e76616c696420726f6c650000000000000000000000006044820152606401610ab8565b610fea83836124f4565b505050565b73ffffffffffffffffffffffffffffffffffffffff821660009081527f93c430521711328044ae92d0f1f1286cf040bc4a382f1642bd89984e866305536020526040812054839060ff16156110a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b60015474010000000000000000000000000000000000000000900467ffffffffffffffff161580611115575073ffffffffffffffffffffffffffffffffffffffff811660009081527f4ac82e3087b7dedf7f532cbc6915c722df8c1e31f1388c318a617b52760eaf8b602052604090205460ff165b15611241576040805160c08101825260025473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8916602080840182905267ffffffffffffffff808b1685870152898416606086015260048054680100000000000000009004909116608086015260015461ffff7c010000000000000000000000000000000000000000000000000000000082041660a0870152600093845260059092529185902094517f7bfa20a90000000000000000000000000000000000000000000000000000000081529394921692637bfa20a9926111f89286928a91016139d9565b602060405180830381865afa158015611215573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112399190613aa6565b9250506112a3565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b50949350505050565b303314611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b61131f82826125ba565b5050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f576f726b65723a2063616e6e6f742072656e6f756e636520726f6c65000000006044820152606401610ab8565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756113af81612401565b60005b82518110156114cf5760008382815181106113cf576113cf61365d565b60209081029190910181015160408051606080820183528385015167ffffffffffffffff90811683528385015161ffff908116848801908152928601516fffffffffffffffffffffffffffffffff908116858701908152965163ffffffff16600090815260059098529490962092518354925195519094166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590961668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff00000000000000000000909216931692909217919091179190911691909117905550806114c7816139a1565b9150506113b2565b507f7dd21e42791b013d1929e86f0c59085e4fca24251f0f1aa81917b3b1611766e0826040516114ff9190613abf565b60405180910390a15050565b73ffffffffffffffffffffffffffffffffffffffff811660009081527f93c430521711328044ae92d0f1f1286cf040bc4a382f1642bd89984e866305536020526040812054829060ff16156115bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b60015474010000000000000000000000000000000000000000900467ffffffffffffffff161580611631575073ffffffffffffffffffffffffffffffffffffffff811660009081527f4ac82e3087b7dedf7f532cbc6915c722df8c1e31f1388c318a617b52760eaf8b602052604090205460ff165b15611241576040805160c08101825260025473ffffffffffffffffffffffffffffffffffffffff908116825261ffff808a16602080850182905267ffffffffffffffff808b168688015289851660608701526004805468010000000000000000900490911660808701526001547c0100000000000000000000000000000000000000000000000000000000810490941660a08701526000928352600582528683208751928301885292825295517f7bfa20a900000000000000000000000000000000000000000000000000000000815294959290931693637bfa20a9936111f893879392016139d9565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561174581612401565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d906020016114ff565b303314611821576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b61182a81612824565b50565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561185781612401565b600180547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d906020016114ff565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61190681612401565b60008661ffff16905061192a81868660405180602001604052806000815250610fef565b6040805163ffffffff8416815273ffffffffffffffffffffffffffffffffffffffff8716602082015267ffffffffffffffff8816818301526060810183905290519194507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15050949350505050565b6004546000906119ca9068010000000000000000900467ffffffffffffffff166041613b49565b8210156119d957506000611bb2565b6000611a32856040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90506000805b60045468010000000000000000900467ffffffffffffffff16811015611baa576000806000611a9e89898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525088925061292f915050565b925092509250600060018785858560405160008152602001604052604051611ae2949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015611b04573d6000803e3d6000fd5b5050506020604051035190508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611b53576000975050505050505050611bb2565b73ffffffffffffffffffffffffffffffffffffffff811660009081526003602052604090205460ff16611b90576000975050505050505050611bb2565b809550505050508080611ba2906139a1565b915050611a38565b506001925050505b9392505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611be381612401565b611bec8261294d565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e0906020016114ff565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480611cad57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80611cd757507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15611d4a57303314611d45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b611d9a565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610f7e57611d457fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612401565b610fea8383612a87565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611dce81612401565b73ffffffffffffffffffffffffffffffffffffffff841660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16611e7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a20496e76616c6964206d657373616765206c696200000000006044820152606401610ab8565b6040517f07b18bde00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152602482018490528516906307b18bde90604401600060405180830381600087803b158015611eec57600080fd5b505af1158015611f00573d6000803e3d6000fd5b5050505050505050565b303314611f73576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b73ffffffffffffffffffffffffffffffffffffffff851660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16612021576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f7261636c653a20696e76616c696420756c6e000000000000000000000000006044820152606401610ab8565b6040517f7e09a8d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690637e09a8d690612079908790879087908790600401613b60565b600060405180830381600087803b15801561209357600080fd5b505af11580156120a7573d6000803e3d6000fd5b50600192506120b4915050565b6040517f7c0cf76300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690637c0cf7639061210a90889088908890600401613bc4565b602060405180830381865afa158015612127573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061214b9190613be8565b600381111561215c5761215c613b95565b036121ea576040517f5ed31c5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690635ed31c59906121b790879087908790600401613bc4565b600060405180830381600087803b1580156121d157600080fd5b505af11580156121e5573d6000803e3d6000fd5b505050505b5050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61221d81612401565b61225f87878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610fef92505050565b6040805163ffffffff8a16815273ffffffffffffffffffffffffffffffffffffffff8816602082015267ffffffffffffffff8916818301526060810183905290519193507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15095945050505050565b6000848285856040516020016122f19493929190613c09565b604051602081830303815290604052805190602001209050949350505050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661131f5760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556123a33390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61182a8133612b4c565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7e09a8d600000000000000000000000000000000000000000000000000000000148015906124a157507fffffffff0000000000000000000000000000000000000000000000000000000082167fde980a430000000000000000000000000000000000000000000000000000000014155b80156109de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f704316e500000000000000000000000000000000000000000000000000000000141592915050565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612551575060008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b156125b0576001805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461258883613c4f565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b61131f8282612311565b73ffffffffffffffffffffffffffffffffffffffff821660009081526003602052604090205481151560ff909116151503612677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4d756c74695369673a207369676e657220616c726561647920696e207468617460448201527f20737461746500000000000000000000000000000000000000000000000000006064820152608401610ab8565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260036020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016821515179055806126e9576004546126e49060019067ffffffffffffffff16613c76565b612701565b6004546127019067ffffffffffffffff166001613c9e565b600480547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff928316908117918290556801000000000000000090910490911611156127d7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4d756c74695369673a20636f6d6d69747465652073697a65203c20746872657360448201527f686f6c64000000000000000000000000000000000000000000000000000000006064820152608401610ab8565b6040805173ffffffffffffffffffffffffffffffffffffffff8416815282151560208201527f863d338cad74814b108a06288ad5e0e80d56495e0332238b1d2cdcfa0ca8e5ce91016114ff565b60045467ffffffffffffffff9081169082161180159061284e575060008167ffffffffffffffff16115b6128b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4d756c74695369673a20696e76616c69642071756f72756d00000000000000006044820152606401610ab8565b600480547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff8416908102919091179091556040519081527fb600f3cf7f38a4b49bb0c75f722ef69f7e3e39ef3bb4aa8207fd86e724a232499060200160405180910390a150565b60419081029190910160208101516040820151919092015160ff1692565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f7bfa20a900000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff8216906301ffc9a790602401602060405180830381865afa1580156129d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fb9190613cbf565b61182a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4f7261636c653a20776f726b657220666565206c696220646f6573206e6f742060448201527f696d706c656d656e7420494f7261636c654665654c69620000000000000000006064820152608401610ab8565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612ae3575060008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b15612b42576001805474010000000000000000000000000000000000000000900467ffffffffffffffff16906014612b1a83613cdc565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b61131f8282612c04565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661131f57612b8a81612cbb565b612b95836020612cda565b604051602001612ba6929190613d1e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a0000000000000000000000000000000000000000000000000000000008252610ab891600401613d9f565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561131f5760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60606109de73ffffffffffffffffffffffffffffffffffffffff831660145b60606000612ce9836002613b49565b612cf4906002613db2565b67ffffffffffffffff811115612d0c57612d0c6130dc565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110612d6d57612d6d61365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110612dd057612dd061365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000612e0c846002613b49565b612e17906001613db2565b90505b6001811115612eb4577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110612e5857612e5861365d565b1a60f81b828281518110612e6e57612e6e61365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c93612ead81613dc5565b9050612e1a565b508315611bb2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ab8565b600060208284031215612f2f57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611bb257600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461182a57600080fd5b600080600060608486031215612f9657600080fd5b8335612fa181612f5f565b92506020840135612fb181612f5f565b929592945050506040919091013590565b801515811461182a57600080fd5b600060208284031215612fe257600080fd5b8135611bb281612fc2565b600060208284031215612fff57600080fd5b5035919050565b6000806020838503121561301957600080fd5b823567ffffffffffffffff8082111561303157600080fd5b818501915085601f83011261304557600080fd5b81358181111561305457600080fd5b8660208260051b850101111561306957600080fd5b60209290920196919550909350505050565b6000806040838503121561308e57600080fd5b8235915060208301356130a081612f5f565b809150509250929050565b803563ffffffff811681146130bf57600080fd5b919050565b803567ffffffffffffffff811681146130bf57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561312e5761312e6130dc565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561317b5761317b6130dc565b604052919050565b6000806000806080858703121561319957600080fd5b6131a2856130ab565b935060206131b18187016130c4565b935060408601356131c181612f5f565b9250606086013567ffffffffffffffff808211156131de57600080fd5b818801915088601f8301126131f257600080fd5b813581811115613204576132046130dc565b613234847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601613134565b9150808252898482850101111561324a57600080fd5b808484018584013760008482840101525080935050505092959194509250565b6000806040838503121561327d57600080fd5b823561328881612f5f565b915060208301356130a081612fc2565b803561ffff811681146130bf57600080fd5b600060208083850312156132bd57600080fd5b823567ffffffffffffffff808211156132d557600080fd5b818501915085601f8301126132e957600080fd5b8135818111156132fb576132fb6130dc565b613309848260051b01613134565b818152848101925060079190911b83018401908782111561332957600080fd5b928401925b818410156133b557608084890312156133475760008081fd5b61334f61310b565b613358856130ab565b81526133658686016130c4565b868201526040613376818701613298565b908201526060858101356fffffffffffffffffffffffffffffffff8116811461339f5760008081fd5b908201528352608093909301929184019161332e565b979650505050505050565b600080600080608085870312156133d657600080fd5b6133df85613298565b93506133ed60208601613298565b92506133fb604086016130c4565b9150606085013561340b81612f5f565b939692955090935050565b60006020828403121561342857600080fd5b8135611bb281612f5f565b60006020828403121561344557600080fd5b611bb2826130c4565b60006020828403121561346057600080fd5b611bb2826130ab565b60006020828403121561347b57600080fd5b611bb282613298565b60008083601f84011261349657600080fd5b50813567ffffffffffffffff8111156134ae57600080fd5b6020830191508360208285010111156134c657600080fd5b9250929050565b6000806000604084860312156134e257600080fd5b83359250602084013567ffffffffffffffff81111561350057600080fd5b61350c86828701613484565b9497909650939450505050565b60008060008060006080868803121561353157600080fd5b853561353c81612f5f565b9450602086013567ffffffffffffffff81111561355857600080fd5b61356488828901613484565b9095509350506040860135915061357d606087016130c4565b90509295509295909350565b6000806000806000608086880312156135a157600080fd5b6135aa866130ab565b94506135b8602087016130c4565b935060408601356135c881612f5f565b9250606086013567ffffffffffffffff8111156135e457600080fd5b6135f088828901613484565b969995985093965092949392505050565b6000806000806060858703121561361757600080fd5b843561362281612f5f565b9350602085013567ffffffffffffffff81111561363e57600080fd5b61364a87828801613484565b9598909750949560400135949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff818336030181126136c057600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126136ff57600080fd5b83018035915067ffffffffffffffff82111561371a57600080fd5b6020019150368190038213156134c657600080fd5b7fffffffff00000000000000000000000000000000000000000000000000000000813581811691600485101561376f5780818660040360031b1b83161692505b505092915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126137ac57600080fd5b830160208101925035905067ffffffffffffffff8111156137cc57600080fd5b8036038213156134c657600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000833561383581612f5f565b73ffffffffffffffffffffffffffffffffffffffff16604083015261385d6020850185613777565b6080606085015261387260c0850182846137db565b9150506040850135608084015261388c6060860186613777565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08584030160a08601526138c18382846137db565b93505050508260208301529392505050565b8183823760009101908152919050565b60005b838110156138fe5781810151838201526020016138e6565b50506000910152565b6000815180845261391f8160208601602086016138e3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b82815260406020820152600061396a6040830184613907565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036139d2576139d2613972565b5060010190565b600061014073ffffffffffffffffffffffffffffffffffffffff80875116845263ffffffff6020880151166020850152604087015167ffffffffffffffff80821660408701528260608a01511660608701528060808a015116608087015250505061ffff60a08701511660a0840152613a8960c08401865467ffffffffffffffff81168252604081811c61ffff16602084015260509190911c6fffffffffffffffffffffffffffffffff16910152565b80610120840152613a9c81840185613907565b9695505050505050565b600060208284031215613ab857600080fd5b5051919050565b602080825282518282018190526000919060409081850190868401855b82811015613b3c578151805163ffffffff1685528681015167ffffffffffffffff16878601528581015161ffff16868601526060908101516fffffffffffffffffffffffffffffffff169085015260809093019290850190600101613adc565b5091979650505050505050565b80820281158282048414176109de576109de613972565b606081526000613b746060830186886137db565b905083602083015267ffffffffffffffff8316604083015295945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613bd86040830185876137db565b9050826020830152949350505050565b600060208284031215613bfa57600080fd5b815160048110611bb257600080fd5b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008560601b16815283601482015281836034830137600091016034019081529392505050565b600067ffffffffffffffff808316818103613c6c57613c6c613972565b6001019392505050565b67ffffffffffffffff828116828216039080821115613c9757613c97613972565b5092915050565b67ffffffffffffffff818116838216019080821115613c9757613c97613972565b600060208284031215613cd157600080fd5b8151611bb281612fc2565b600067ffffffffffffffff821680613cf657613cf6613972565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351613d568160178501602088016138e3565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351613d938160288401602088016138e3565b01602801949350505050565b602081526000611bb26020830184613907565b808201808211156109de576109de613972565b600081613dd457613dd4613972565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea2646970667358221220e817ab18a267a996bbdc1adf70f33cba24869bf3f7c98183293b2045b479422a64736f6c63430008120033",
1199
- "deployedBytecode": "0x6080604052600436106102845760003560e01c806375b238fc11610153578063c5e193cd116100cb578063dafe0ccc1161007f578063e4fbd90311610064578063e4fbd903146108f7578063f3ad31f41461090a578063fd62e7501461092a57600080fd5b8063dafe0ccc146108b7578063de980a43146108d757600080fd5b8063c7b2370b116100b0578063c7b2370b1461083e578063d2ae21041461085e578063d547741f1461089757600080fd5b8063c5e193cd146107fe578063c7a823e01461081e57600080fd5b8063a217fddf11610122578063aef18bf711610107578063aef18bf714610781578063c358de0a146107b1578063c416aa51146107d157600080fd5b8063a217fddf14610738578063a98586e11461074d57600080fd5b806375b238fc146105ee5780638585c9451461062257806391d14854146106425780639e9449651461069357600080fd5b80632f2ff15d116102015780635553fb8e116101b5578063724e78da1161019a578063724e78da1461054c578063736c0d5b1461056c578063741bef1a1461059c57600080fd5b80635553fb8e146104fa5780635c975abb1461051a57600080fd5b806331cb6105116101e657806331cb61051461049a57806336568abe146104ba57806352d3b871146104da57600080fd5b80632f2ff15d1461045a57806330bb3aac1461047a57600080fd5b806316c38b3c116102585780631f3a6f041161023d5780631f3a6f04146103d6578063248a9ca31461040a5780632d80eb361461043a57600080fd5b806316c38b3c146103705780631703a0181461039057600080fd5b8062bf2e801461028957806301ffc9a7146102dc578063036c0a2c1461030c5780631095b6d71461034e575b600080fd5b34801561029557600080fd5b506001546102c4907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b3480156102e857600080fd5b506102fc6102f7366004612f1d565b61094b565b60405190151581526020016102d3565b34801561031857600080fd5b506103407f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481565b6040519081526020016102d3565b34801561035a57600080fd5b5061036e610369366004612f81565b6109e4565b005b34801561037c57600080fd5b5061036e61038b366004612fd0565b610ba8565b34801561039c57600080fd5b506004546103bd9068010000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016102d3565b3480156103e257600080fd5b506103407f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca81565b34801561041657600080fd5b50610340610425366004612fed565b60009081526020819052604090206001015490565b34801561044657600080fd5b5061036e610455366004613006565b610bfe565b34801561046657600080fd5b5061036e61047536600461307b565b610e43565b34801561048657600080fd5b50610340610495366004613183565b610fef565b3480156104a657600080fd5b5061036e6104b536600461326a565b6112ac565b3480156104c657600080fd5b5061036e6104d536600461307b565b611323565b3480156104e657600080fd5b5061036e6104f53660046132aa565b611385565b34801561050657600080fd5b506103406105153660046133c0565b61150b565b34801561052657600080fd5b506002546102fc9074010000000000000000000000000000000000000000900460ff1681565b34801561055857600080fd5b5061036e610567366004613416565b61171b565b34801561057857600080fd5b506102fc610587366004613416565b60036020526000908152604090205460ff1681565b3480156105a857600080fd5b506002546105c99073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102d3565b3480156105fa57600080fd5b506103407fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b34801561062e57600080fd5b5061036e61063d366004613433565b6117b8565b34801561064e57600080fd5b506102fc61065d36600461307b565b60009182526020828152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561069f57600080fd5b506106fd6106ae36600461344e565b60056020526000908152604090205467ffffffffffffffff81169068010000000000000000810461ffff16906a010000000000000000000090046fffffffffffffffffffffffffffffffff1683565b6040805167ffffffffffffffff909416845261ffff90921660208401526fffffffffffffffffffffffffffffffff16908201526060016102d3565b34801561074457600080fd5b50610340600081565b34801561075957600080fd5b506103407f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81565b34801561078d57600080fd5b506102fc61079c366004612fed565b60066020526000908152604090205460ff1681565b3480156107bd57600080fd5b5061036e6107cc366004613469565b61182d565b3480156107dd57600080fd5b506001546105c99073ffffffffffffffffffffffffffffffffffffffff1681565b34801561080a57600080fd5b506103406108193660046133c0565b6118da565b34801561082a57600080fd5b506102fc6108393660046134cd565b6119a3565b34801561084a57600080fd5b5061036e610859366004613416565b611bb9565b34801561086a57600080fd5b506001546103bd9074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b3480156108a357600080fd5b5061036e6108b236600461307b565b611c5f565b3480156108c357600080fd5b5061036e6108d2366004612f81565b611da4565b3480156108e357600080fd5b5061036e6108f2366004613519565b611f0a565b610340610905366004613589565b6121f1565b34801561091657600080fd5b50610340610925366004613601565b6122d8565b34801561093657600080fd5b506004546103bd9067ffffffffffffffff1681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b0000000000000000000000000000000000000000000000000000000014806109de57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775610a0e81612401565b73ffffffffffffffffffffffffffffffffffffffff841660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16610ac1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f576f726b65723a20496e76616c6964206d657373616765206c6962000000000060448201526064015b60405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b158015610b3157600080fd5b505af1158015610b45573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b6000610bb381612401565b506002805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775610c2881612401565b60005b82811015610e3d5736848483818110610c4657610c4661365d565b9050602002810190610c58919061368c565b905042816040013511610c6b5750610e2b565b6000610c94610c7d6020840184613416565b610c8a60208501856136ca565b85604001356122d8565b9050610cb4610ca660208401846136ca565b610caf9161372f565b61240b565b15610d485760008181526006602052604090205460ff1615610d10577f9c26528f222eb4f79639dea7fe30c7257c124af7ed741437170674ca68249e4e8282604051610d01929190613824565b60405180910390a15050610e2b565b600081815260066020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b610d598161083960608501856136ca565b15610e2857600080610d6e6020850185613416565b73ffffffffffffffffffffffffffffffffffffffff16610d9160208601866136ca565b604051610d9f9291906138d3565b6000604051808303816000865af19150503d8060008114610ddc576040519150601f19603f3d011682016040523d82523d6000602084013e610de1565b606091505b509150915081610e25577fdc8cdd96296241bbefda4a8e18ad2e0985a8da6495b34d409cfc4c886ee3b0cf8582604051610e1c929190613951565b60405180910390a15b50505b50505b80610e35816139a1565b915050610c2b565b50505050565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480610e9157507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80610ebb57507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15610f2e57303314610f29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b610fe0565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610f7e57610f297fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612401565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4f7261636c653a20696e76616c696420726f6c650000000000000000000000006044820152606401610ab8565b610fea83836124f4565b505050565b73ffffffffffffffffffffffffffffffffffffffff821660009081527f93c430521711328044ae92d0f1f1286cf040bc4a382f1642bd89984e866305536020526040812054839060ff16156110a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b60015474010000000000000000000000000000000000000000900467ffffffffffffffff161580611115575073ffffffffffffffffffffffffffffffffffffffff811660009081527f4ac82e3087b7dedf7f532cbc6915c722df8c1e31f1388c318a617b52760eaf8b602052604090205460ff165b15611241576040805160c08101825260025473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8916602080840182905267ffffffffffffffff808b1685870152898416606086015260048054680100000000000000009004909116608086015260015461ffff7c010000000000000000000000000000000000000000000000000000000082041660a0870152600093845260059092529185902094517f7bfa20a90000000000000000000000000000000000000000000000000000000081529394921692637bfa20a9926111f89286928a91016139d9565b602060405180830381865afa158015611215573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112399190613aa6565b9250506112a3565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b50949350505050565b303314611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b61131f82826125ba565b5050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f576f726b65723a2063616e6e6f742072656e6f756e636520726f6c65000000006044820152606401610ab8565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756113af81612401565b60005b82518110156114cf5760008382815181106113cf576113cf61365d565b60209081029190910181015160408051606080820183528385015167ffffffffffffffff90811683528385015161ffff908116848801908152928601516fffffffffffffffffffffffffffffffff908116858701908152965163ffffffff16600090815260059098529490962092518354925195519094166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590961668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff00000000000000000000909216931692909217919091179190911691909117905550806114c7816139a1565b9150506113b2565b507f7dd21e42791b013d1929e86f0c59085e4fca24251f0f1aa81917b3b1611766e0826040516114ff9190613abf565b60405180910390a15050565b73ffffffffffffffffffffffffffffffffffffffff811660009081527f93c430521711328044ae92d0f1f1286cf040bc4a382f1642bd89984e866305536020526040812054829060ff16156115bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610ab8565b60015474010000000000000000000000000000000000000000900467ffffffffffffffff161580611631575073ffffffffffffffffffffffffffffffffffffffff811660009081527f4ac82e3087b7dedf7f532cbc6915c722df8c1e31f1388c318a617b52760eaf8b602052604090205460ff165b15611241576040805160c08101825260025473ffffffffffffffffffffffffffffffffffffffff908116825261ffff808a16602080850182905267ffffffffffffffff808b168688015289851660608701526004805468010000000000000000900490911660808701526001547c0100000000000000000000000000000000000000000000000000000000810490941660a08701526000928352600582528683208751928301885292825295517f7bfa20a900000000000000000000000000000000000000000000000000000000815294959290931693637bfa20a9936111f893879392016139d9565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561174581612401565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d906020016114ff565b303314611821576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b61182a81612824565b50565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561185781612401565b600180547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d906020016114ff565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61190681612401565b60008661ffff16905061192a81868660405180602001604052806000815250610fef565b6040805163ffffffff8416815273ffffffffffffffffffffffffffffffffffffffff8716602082015267ffffffffffffffff8816818301526060810183905290519194507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15050949350505050565b6004546000906119ca9068010000000000000000900467ffffffffffffffff166041613b49565b8210156119d957506000611bb2565b6000611a32856040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90506000805b60045468010000000000000000900467ffffffffffffffff16811015611baa576000806000611a9e89898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525088925061292f915050565b925092509250600060018785858560405160008152602001604052604051611ae2949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015611b04573d6000803e3d6000fd5b5050506020604051035190508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611b53576000975050505050505050611bb2565b73ffffffffffffffffffffffffffffffffffffffff811660009081526003602052604090205460ff16611b90576000975050505050505050611bb2565b809550505050508080611ba2906139a1565b915050611a38565b506001925050505b9392505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611be381612401565b611bec8261294d565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e0906020016114ff565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480611cad57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80611cd757507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15611d4a57303314611d45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b611d9a565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610f7e57611d457fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612401565b610fea8383612a87565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611dce81612401565b73ffffffffffffffffffffffffffffffffffffffff841660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16611e7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a20496e76616c6964206d657373616765206c696200000000006044820152606401610ab8565b6040517f07b18bde00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152602482018490528516906307b18bde90604401600060405180830381600087803b158015611eec57600080fd5b505af1158015611f00573d6000803e3d6000fd5b5050505050505050565b303314611f73576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610ab8565b73ffffffffffffffffffffffffffffffffffffffff851660009081527f9b50f4667d2d24216ccbf0dce3a90c0f620fa4d895e7b069d80ff6247fd25620602052604090205460ff16612021576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f7261636c653a20696e76616c696420756c6e000000000000000000000000006044820152606401610ab8565b6040517f7e09a8d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690637e09a8d690612079908790879087908790600401613b60565b600060405180830381600087803b15801561209357600080fd5b505af11580156120a7573d6000803e3d6000fd5b50600192506120b4915050565b6040517f7c0cf76300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690637c0cf7639061210a90889088908890600401613bc4565b602060405180830381865afa158015612127573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061214b9190613be8565b600381111561215c5761215c613b95565b036121ea576040517f5ed31c5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861690635ed31c59906121b790879087908790600401613bc4565b600060405180830381600087803b1580156121d157600080fd5b505af11580156121e5573d6000803e3d6000fd5b505050505b5050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61221d81612401565b61225f87878787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610fef92505050565b6040805163ffffffff8a16815273ffffffffffffffffffffffffffffffffffffffff8816602082015267ffffffffffffffff8916818301526060810183905290519193507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15095945050505050565b6000848285856040516020016122f19493929190613c09565b604051602081830303815290604052805190602001209050949350505050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661131f5760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556123a33390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b61182a8133612b4c565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7e09a8d600000000000000000000000000000000000000000000000000000000148015906124a157507fffffffff0000000000000000000000000000000000000000000000000000000082167fde980a430000000000000000000000000000000000000000000000000000000014155b80156109de57507fffffffff0000000000000000000000000000000000000000000000000000000082167f704316e500000000000000000000000000000000000000000000000000000000141592915050565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612551575060008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b156125b0576001805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461258883613c4f565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b61131f8282612311565b73ffffffffffffffffffffffffffffffffffffffff821660009081526003602052604090205481151560ff909116151503612677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4d756c74695369673a207369676e657220616c726561647920696e207468617460448201527f20737461746500000000000000000000000000000000000000000000000000006064820152608401610ab8565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260036020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016821515179055806126e9576004546126e49060019067ffffffffffffffff16613c76565b612701565b6004546127019067ffffffffffffffff166001613c9e565b600480547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff928316908117918290556801000000000000000090910490911611156127d7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4d756c74695369673a20636f6d6d69747465652073697a65203c20746872657360448201527f686f6c64000000000000000000000000000000000000000000000000000000006064820152608401610ab8565b6040805173ffffffffffffffffffffffffffffffffffffffff8416815282151560208201527f863d338cad74814b108a06288ad5e0e80d56495e0332238b1d2cdcfa0ca8e5ce91016114ff565b60045467ffffffffffffffff9081169082161180159061284e575060008167ffffffffffffffff16115b6128b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4d756c74695369673a20696e76616c69642071756f72756d00000000000000006044820152606401610ab8565b600480547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff8416908102919091179091556040519081527fb600f3cf7f38a4b49bb0c75f722ef69f7e3e39ef3bb4aa8207fd86e724a232499060200160405180910390a150565b60419081029190910160208101516040820151919092015160ff1692565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f7bfa20a900000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff8216906301ffc9a790602401602060405180830381865afa1580156129d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fb9190613cbf565b61182a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4f7261636c653a20776f726b657220666565206c696220646f6573206e6f742060448201527f696d706c656d656e7420494f7261636c654665654c69620000000000000000006064820152608401610ab8565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612ae3575060008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b15612b42576001805474010000000000000000000000000000000000000000900467ffffffffffffffff16906014612b1a83613cdc565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b61131f8282612c04565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661131f57612b8a81612cbb565b612b95836020612cda565b604051602001612ba6929190613d1e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a0000000000000000000000000000000000000000000000000000000008252610ab891600401613d9f565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561131f5760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60606109de73ffffffffffffffffffffffffffffffffffffffff831660145b60606000612ce9836002613b49565b612cf4906002613db2565b67ffffffffffffffff811115612d0c57612d0c6130dc565b6040519080825280601f01601f191660200182016040528015612d36576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110612d6d57612d6d61365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110612dd057612dd061365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000612e0c846002613b49565b612e17906001613db2565b90505b6001811115612eb4577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110612e5857612e5861365d565b1a60f81b828281518110612e6e57612e6e61365d565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c93612ead81613dc5565b9050612e1a565b508315611bb2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ab8565b600060208284031215612f2f57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114611bb257600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461182a57600080fd5b600080600060608486031215612f9657600080fd5b8335612fa181612f5f565b92506020840135612fb181612f5f565b929592945050506040919091013590565b801515811461182a57600080fd5b600060208284031215612fe257600080fd5b8135611bb281612fc2565b600060208284031215612fff57600080fd5b5035919050565b6000806020838503121561301957600080fd5b823567ffffffffffffffff8082111561303157600080fd5b818501915085601f83011261304557600080fd5b81358181111561305457600080fd5b8660208260051b850101111561306957600080fd5b60209290920196919550909350505050565b6000806040838503121561308e57600080fd5b8235915060208301356130a081612f5f565b809150509250929050565b803563ffffffff811681146130bf57600080fd5b919050565b803567ffffffffffffffff811681146130bf57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561312e5761312e6130dc565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561317b5761317b6130dc565b604052919050565b6000806000806080858703121561319957600080fd5b6131a2856130ab565b935060206131b18187016130c4565b935060408601356131c181612f5f565b9250606086013567ffffffffffffffff808211156131de57600080fd5b818801915088601f8301126131f257600080fd5b813581811115613204576132046130dc565b613234847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601613134565b9150808252898482850101111561324a57600080fd5b808484018584013760008482840101525080935050505092959194509250565b6000806040838503121561327d57600080fd5b823561328881612f5f565b915060208301356130a081612fc2565b803561ffff811681146130bf57600080fd5b600060208083850312156132bd57600080fd5b823567ffffffffffffffff808211156132d557600080fd5b818501915085601f8301126132e957600080fd5b8135818111156132fb576132fb6130dc565b613309848260051b01613134565b818152848101925060079190911b83018401908782111561332957600080fd5b928401925b818410156133b557608084890312156133475760008081fd5b61334f61310b565b613358856130ab565b81526133658686016130c4565b868201526040613376818701613298565b908201526060858101356fffffffffffffffffffffffffffffffff8116811461339f5760008081fd5b908201528352608093909301929184019161332e565b979650505050505050565b600080600080608085870312156133d657600080fd5b6133df85613298565b93506133ed60208601613298565b92506133fb604086016130c4565b9150606085013561340b81612f5f565b939692955090935050565b60006020828403121561342857600080fd5b8135611bb281612f5f565b60006020828403121561344557600080fd5b611bb2826130c4565b60006020828403121561346057600080fd5b611bb2826130ab565b60006020828403121561347b57600080fd5b611bb282613298565b60008083601f84011261349657600080fd5b50813567ffffffffffffffff8111156134ae57600080fd5b6020830191508360208285010111156134c657600080fd5b9250929050565b6000806000604084860312156134e257600080fd5b83359250602084013567ffffffffffffffff81111561350057600080fd5b61350c86828701613484565b9497909650939450505050565b60008060008060006080868803121561353157600080fd5b853561353c81612f5f565b9450602086013567ffffffffffffffff81111561355857600080fd5b61356488828901613484565b9095509350506040860135915061357d606087016130c4565b90509295509295909350565b6000806000806000608086880312156135a157600080fd5b6135aa866130ab565b94506135b8602087016130c4565b935060408601356135c881612f5f565b9250606086013567ffffffffffffffff8111156135e457600080fd5b6135f088828901613484565b969995985093965092949392505050565b6000806000806060858703121561361757600080fd5b843561362281612f5f565b9350602085013567ffffffffffffffff81111561363e57600080fd5b61364a87828801613484565b9598909750949560400135949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff818336030181126136c057600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126136ff57600080fd5b83018035915067ffffffffffffffff82111561371a57600080fd5b6020019150368190038213156134c657600080fd5b7fffffffff00000000000000000000000000000000000000000000000000000000813581811691600485101561376f5780818660040360031b1b83161692505b505092915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126137ac57600080fd5b830160208101925035905067ffffffffffffffff8111156137cc57600080fd5b8036038213156134c657600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000833561383581612f5f565b73ffffffffffffffffffffffffffffffffffffffff16604083015261385d6020850185613777565b6080606085015261387260c0850182846137db565b9150506040850135608084015261388c6060860186613777565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08584030160a08601526138c18382846137db565b93505050508260208301529392505050565b8183823760009101908152919050565b60005b838110156138fe5781810151838201526020016138e6565b50506000910152565b6000815180845261391f8160208601602086016138e3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b82815260406020820152600061396a6040830184613907565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036139d2576139d2613972565b5060010190565b600061014073ffffffffffffffffffffffffffffffffffffffff80875116845263ffffffff6020880151166020850152604087015167ffffffffffffffff80821660408701528260608a01511660608701528060808a015116608087015250505061ffff60a08701511660a0840152613a8960c08401865467ffffffffffffffff81168252604081811c61ffff16602084015260509190911c6fffffffffffffffffffffffffffffffff16910152565b80610120840152613a9c81840185613907565b9695505050505050565b600060208284031215613ab857600080fd5b5051919050565b602080825282518282018190526000919060409081850190868401855b82811015613b3c578151805163ffffffff1685528681015167ffffffffffffffff16878601528581015161ffff16868601526060908101516fffffffffffffffffffffffffffffffff169085015260809093019290850190600101613adc565b5091979650505050505050565b80820281158282048414176109de576109de613972565b606081526000613b746060830186886137db565b905083602083015267ffffffffffffffff8316604083015295945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613bd86040830185876137db565b9050826020830152949350505050565b600060208284031215613bfa57600080fd5b815160048110611bb257600080fd5b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008560601b16815283601482015281836034830137600091016034019081529392505050565b600067ffffffffffffffff808316818103613c6c57613c6c613972565b6001019392505050565b67ffffffffffffffff828116828216039080821115613c9757613c97613972565b5092915050565b67ffffffffffffffff818116838216019080821115613c9757613c97613972565b600060208284031215613cd157600080fd5b8151611bb281612fc2565b600067ffffffffffffffff821680613cf657613cf6613972565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351613d568160178501602088016138e3565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351613d938160288401602088016138e3565b01602801949350505050565b602081526000611bb26020830184613907565b808201808211156109de576109de613972565b600081613dd457613dd4613972565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea2646970667358221220e817ab18a267a996bbdc1adf70f33cba24869bf3f7c98183293b2045b479422a64736f6c63430008120033",
1200
- "devdoc": {
1201
- "events": {
1202
- "RoleAdminChanged(bytes32,bytes32,bytes32)": {
1203
- "details": "Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._"
1204
- },
1205
- "RoleGranted(bytes32,address,address)": {
1206
- "details": "Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}."
1207
- },
1208
- "RoleRevoked(bytes32,address,address)": {
1209
- "details": "Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)"
1210
- }
1211
- },
1212
- "kind": "dev",
1213
- "methods": {
1214
- "getRoleAdmin(bytes32)": {
1215
- "details": "Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."
1216
- },
1217
- "grantRole(bytes32,address)": {
1218
- "details": "Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."
1219
- },
1220
- "hasRole(bytes32,address)": {
1221
- "details": "Returns `true` if `account` has been granted `role`."
1222
- },
1223
- "revokeRole(bytes32,address)": {
1224
- "details": "Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."
1225
- },
1226
- "supportsInterface(bytes4)": {
1227
- "details": "See {IERC165-supportsInterface}."
1228
- }
1229
- },
1230
- "version": 1
1231
- },
1232
- "userdoc": {
1233
- "kind": "user",
1234
- "methods": {},
1235
- "version": 1
1236
- },
1237
- "storageLayout": {
1238
- "storage": [
1239
- {
1240
- "astId": 5255,
1241
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1242
- "label": "_roles",
1243
- "offset": 0,
1244
- "slot": "0",
1245
- "type": "t_mapping(t_bytes32,t_struct(RoleData)5250_storage)"
1246
- },
1247
- {
1248
- "astId": 11407,
1249
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1250
- "label": "workerFeeLib",
1251
- "offset": 0,
1252
- "slot": "1",
1253
- "type": "t_address"
1254
- },
1255
- {
1256
- "astId": 11409,
1257
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1258
- "label": "allowlistSize",
1259
- "offset": 20,
1260
- "slot": "1",
1261
- "type": "t_uint64"
1262
- },
1263
- {
1264
- "astId": 11411,
1265
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1266
- "label": "defaultMultiplierBps",
1267
- "offset": 28,
1268
- "slot": "1",
1269
- "type": "t_uint16"
1270
- },
1271
- {
1272
- "astId": 11413,
1273
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1274
- "label": "priceFeed",
1275
- "offset": 0,
1276
- "slot": "2",
1277
- "type": "t_address"
1278
- },
1279
- {
1280
- "astId": 11415,
1281
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1282
- "label": "paused",
1283
- "offset": 20,
1284
- "slot": "2",
1285
- "type": "t_bool"
1286
- },
1287
- {
1288
- "astId": 12289,
1289
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1290
- "label": "signers",
1291
- "offset": 0,
1292
- "slot": "3",
1293
- "type": "t_mapping(t_address,t_bool)"
1294
- },
1295
- {
1296
- "astId": 12291,
1297
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1298
- "label": "signerSize",
1299
- "offset": 0,
1300
- "slot": "4",
1301
- "type": "t_uint64"
1302
- },
1303
- {
1304
- "astId": 12293,
1305
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1306
- "label": "quorum",
1307
- "offset": 8,
1308
- "slot": "4",
1309
- "type": "t_uint64"
1310
- },
1311
- {
1312
- "astId": 12611,
1313
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1314
- "label": "dstConfig",
1315
- "offset": 0,
1316
- "slot": "5",
1317
- "type": "t_mapping(t_uint32,t_struct(DstConfig)14364_storage)"
1318
- },
1319
- {
1320
- "astId": 12615,
1321
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1322
- "label": "usedHashes",
1323
- "offset": 0,
1324
- "slot": "6",
1325
- "type": "t_mapping(t_bytes32,t_bool)"
1326
- }
1327
- ],
1328
- "types": {
1329
- "t_address": {
1330
- "encoding": "inplace",
1331
- "label": "address",
1332
- "numberOfBytes": "20"
1333
- },
1334
- "t_bool": {
1335
- "encoding": "inplace",
1336
- "label": "bool",
1337
- "numberOfBytes": "1"
1338
- },
1339
- "t_bytes32": {
1340
- "encoding": "inplace",
1341
- "label": "bytes32",
1342
- "numberOfBytes": "32"
1343
- },
1344
- "t_mapping(t_address,t_bool)": {
1345
- "encoding": "mapping",
1346
- "key": "t_address",
1347
- "label": "mapping(address => bool)",
1348
- "numberOfBytes": "32",
1349
- "value": "t_bool"
1350
- },
1351
- "t_mapping(t_bytes32,t_bool)": {
1352
- "encoding": "mapping",
1353
- "key": "t_bytes32",
1354
- "label": "mapping(bytes32 => bool)",
1355
- "numberOfBytes": "32",
1356
- "value": "t_bool"
1357
- },
1358
- "t_mapping(t_bytes32,t_struct(RoleData)5250_storage)": {
1359
- "encoding": "mapping",
1360
- "key": "t_bytes32",
1361
- "label": "mapping(bytes32 => struct AccessControl.RoleData)",
1362
- "numberOfBytes": "32",
1363
- "value": "t_struct(RoleData)5250_storage"
1364
- },
1365
- "t_mapping(t_uint32,t_struct(DstConfig)14364_storage)": {
1366
- "encoding": "mapping",
1367
- "key": "t_uint32",
1368
- "label": "mapping(uint32 => struct IOracle.DstConfig)",
1369
- "numberOfBytes": "32",
1370
- "value": "t_struct(DstConfig)14364_storage"
1371
- },
1372
- "t_struct(DstConfig)14364_storage": {
1373
- "encoding": "inplace",
1374
- "label": "struct IOracle.DstConfig",
1375
- "members": [
1376
- {
1377
- "astId": 14359,
1378
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1379
- "label": "gas",
1380
- "offset": 0,
1381
- "slot": "0",
1382
- "type": "t_uint64"
1383
- },
1384
- {
1385
- "astId": 14361,
1386
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1387
- "label": "multiplierBps",
1388
- "offset": 8,
1389
- "slot": "0",
1390
- "type": "t_uint16"
1391
- },
1392
- {
1393
- "astId": 14363,
1394
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1395
- "label": "floorMarginUSD",
1396
- "offset": 10,
1397
- "slot": "0",
1398
- "type": "t_uint128"
1399
- }
1400
- ],
1401
- "numberOfBytes": "32"
1402
- },
1403
- "t_struct(RoleData)5250_storage": {
1404
- "encoding": "inplace",
1405
- "label": "struct AccessControl.RoleData",
1406
- "members": [
1407
- {
1408
- "astId": 5247,
1409
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1410
- "label": "members",
1411
- "offset": 0,
1412
- "slot": "0",
1413
- "type": "t_mapping(t_address,t_bool)"
1414
- },
1415
- {
1416
- "astId": 5249,
1417
- "contract": "contracts/uln/MultiSigOracle.sol:MultiSigOracle",
1418
- "label": "adminRole",
1419
- "offset": 0,
1420
- "slot": "1",
1421
- "type": "t_bytes32"
1422
- }
1423
- ],
1424
- "numberOfBytes": "64"
1425
- },
1426
- "t_uint128": {
1427
- "encoding": "inplace",
1428
- "label": "uint128",
1429
- "numberOfBytes": "16"
1430
- },
1431
- "t_uint16": {
1432
- "encoding": "inplace",
1433
- "label": "uint16",
1434
- "numberOfBytes": "2"
1435
- },
1436
- "t_uint32": {
1437
- "encoding": "inplace",
1438
- "label": "uint32",
1439
- "numberOfBytes": "4"
1440
- },
1441
- "t_uint64": {
1442
- "encoding": "inplace",
1443
- "label": "uint64",
1444
- "numberOfBytes": "8"
1445
- }
1446
- }
1447
- }
1448
- }