@wireio/stake 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/lib/stake.browser.js +11779 -2023
  2. package/lib/stake.browser.js.map +1 -1
  3. package/lib/stake.d.ts +94 -40
  4. package/lib/stake.js +11906 -2088
  5. package/lib/stake.js.map +1 -1
  6. package/lib/stake.m.js +11779 -2023
  7. package/lib/stake.m.js.map +1 -1
  8. package/package.json +1 -1
  9. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +1 -1
  10. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +26 -65
  11. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +1 -1
  12. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.json +24 -20
  13. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +1 -1
  14. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +1 -1
  15. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +1 -1
  16. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +1 -1
  17. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.json +0 -20
  18. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +1 -1
  19. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +1 -1
  20. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +1 -1
  21. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
  22. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.dbg.json +1 -1
  23. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.dbg.json +1 -1
  24. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +1 -1
  25. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +1 -1
  26. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +1 -1
  27. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.dbg.json +1 -1
  28. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.json +2 -2
  29. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.dbg.json +1 -1
  30. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.json +2 -2
  31. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +1 -1
  32. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json +2 -2
  33. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +1 -1
  34. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +31 -109
  35. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +1 -1
  36. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +2 -25
  37. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +1 -1
  38. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +30 -72
  39. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +1 -1
  40. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +2 -2
  41. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +1 -1
  42. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
  43. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +1 -1
  44. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +2 -2
  45. package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.dbg.json +4 -0
  46. package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.json +1856 -0
  47. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  48. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.json +1753 -0
  49. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  50. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  51. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  52. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +601 -0
  53. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.dbg.json +4 -0
  54. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.json +930 -0
  55. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  56. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.json +88 -0
  57. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  58. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  59. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  60. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.json +194 -0
  61. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  62. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  63. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  64. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.json +36 -0
  65. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  66. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.json +199 -0
  67. package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  68. package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.json +273 -0
  69. package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  70. package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +394 -0
  71. package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  72. package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +378 -0
  73. package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  74. package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.json +224 -0
  75. package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  76. package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.json +1010 -0
  77. package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  78. package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.json +291 -0
  79. package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  80. package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.json +298 -0
  81. package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  82. package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.json +473 -0
  83. package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  84. package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  85. package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  86. package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.json +730 -0
  87. package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  88. package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  89. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  90. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  91. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  92. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  93. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  94. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  95. package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  96. package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  97. package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.dbg.json +4 -0
  98. package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.json +921 -0
  99. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  100. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.json +2020 -0
  101. package/src/assets/ethereum/ABI/outpost/Warrant.sol/Warrant.dbg.json +4 -0
  102. package/src/assets/ethereum/ABI/outpost/Warrant.sol/Warrant.json +1650 -0
  103. package/src/assets/ethereum/ABI/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  104. package/src/assets/ethereum/ABI/{liqEth/LiqEthCommon.sol/ILiqEthMint.json → outpost/interfaces/IWarrant.sol/IWarrant.json} +6 -12
  105. package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  106. package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  107. package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  108. package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  109. package/src/networks/ethereum/clients/deposit.client.ts +82 -0
  110. package/src/networks/ethereum/clients/stake.client.ts +215 -0
  111. package/src/networks/ethereum/contract.ts +82 -23
  112. package/src/networks/ethereum/ethereum.ts +130 -66
  113. package/src/networks/ethereum/types.ts +74 -7
  114. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.dbg.json +0 -4
  115. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.json +0 -24
  116. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.dbg.json +0 -4
  117. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.dbg.json +0 -4
  118. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.json +0 -391
  119. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.dbg.json +0 -4
  120. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.json +0 -402
@@ -0,0 +1,730 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "OutpostManager",
4
+ "sourceName": "contracts/outpost/OutpostManager.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "authority",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "AccessManagedInvalidAuthority",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "caller",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "internalType": "uint32",
26
+ "name": "delay",
27
+ "type": "uint32"
28
+ }
29
+ ],
30
+ "name": "AccessManagedRequiredDelay",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "address",
37
+ "name": "caller",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "AccessManagedUnauthorized",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "address",
48
+ "name": "target",
49
+ "type": "address"
50
+ }
51
+ ],
52
+ "name": "AddressEmptyCode",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [
57
+ {
58
+ "internalType": "address",
59
+ "name": "implementation",
60
+ "type": "address"
61
+ }
62
+ ],
63
+ "name": "ERC1967InvalidImplementation",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [],
68
+ "name": "ERC1967NonPayable",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "FailedCall",
74
+ "type": "error"
75
+ },
76
+ {
77
+ "inputs": [],
78
+ "name": "InvalidInitialization",
79
+ "type": "error"
80
+ },
81
+ {
82
+ "inputs": [],
83
+ "name": "NotInitializing",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [
88
+ {
89
+ "internalType": "bytes32",
90
+ "name": "expected",
91
+ "type": "bytes32"
92
+ },
93
+ {
94
+ "internalType": "bytes32",
95
+ "name": "actual",
96
+ "type": "bytes32"
97
+ }
98
+ ],
99
+ "name": "OPP_EpochHashMismatch",
100
+ "type": "error"
101
+ },
102
+ {
103
+ "inputs": [
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "required",
107
+ "type": "uint256"
108
+ },
109
+ {
110
+ "internalType": "uint256",
111
+ "name": "provided",
112
+ "type": "uint256"
113
+ }
114
+ ],
115
+ "name": "OPP_InsufficientSignatureWeight",
116
+ "type": "error"
117
+ },
118
+ {
119
+ "inputs": [
120
+ {
121
+ "internalType": "address",
122
+ "name": "caller",
123
+ "type": "address"
124
+ },
125
+ {
126
+ "internalType": "address",
127
+ "name": "expected",
128
+ "type": "address"
129
+ }
130
+ ],
131
+ "name": "OPP_InvalidOPPAddress",
132
+ "type": "error"
133
+ },
134
+ {
135
+ "inputs": [
136
+ {
137
+ "internalType": "bytes32",
138
+ "name": "expected",
139
+ "type": "bytes32"
140
+ },
141
+ {
142
+ "internalType": "bytes32",
143
+ "name": "actual",
144
+ "type": "bytes32"
145
+ }
146
+ ],
147
+ "name": "OPP_MessageIDMismatch",
148
+ "type": "error"
149
+ },
150
+ {
151
+ "inputs": [],
152
+ "name": "OPP_NoAssertionsSent",
153
+ "type": "error"
154
+ },
155
+ {
156
+ "inputs": [],
157
+ "name": "OPP_NoPendingAssertions",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [
162
+ {
163
+ "internalType": "uint32",
164
+ "name": "expected",
165
+ "type": "uint32"
166
+ },
167
+ {
168
+ "internalType": "uint32",
169
+ "name": "actual",
170
+ "type": "uint32"
171
+ }
172
+ ],
173
+ "name": "OPP_NonSequentialEpoch",
174
+ "type": "error"
175
+ },
176
+ {
177
+ "inputs": [],
178
+ "name": "OPP_NotSending",
179
+ "type": "error"
180
+ },
181
+ {
182
+ "inputs": [],
183
+ "name": "OPP_OPPAddressNotSet",
184
+ "type": "error"
185
+ },
186
+ {
187
+ "inputs": [
188
+ {
189
+ "internalType": "bytes32",
190
+ "name": "expected",
191
+ "type": "bytes32"
192
+ },
193
+ {
194
+ "internalType": "bytes32",
195
+ "name": "actual",
196
+ "type": "bytes32"
197
+ }
198
+ ],
199
+ "name": "OPP_PayloadHashMismatch",
200
+ "type": "error"
201
+ },
202
+ {
203
+ "inputs": [
204
+ {
205
+ "internalType": "uint32",
206
+ "name": "epochNumber",
207
+ "type": "uint32"
208
+ },
209
+ {
210
+ "internalType": "uint256",
211
+ "name": "messageCount",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "name": "OPP_PreviousEpochPendingMessages",
216
+ "type": "error"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "uint32",
222
+ "name": "epochNumber",
223
+ "type": "uint32"
224
+ }
225
+ ],
226
+ "name": "OPP_PreviousEpochSent",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "uint32",
233
+ "name": "epochNumber",
234
+ "type": "uint32"
235
+ }
236
+ ],
237
+ "name": "OPP_PreviousEpochUnsent",
238
+ "type": "error"
239
+ },
240
+ {
241
+ "inputs": [
242
+ {
243
+ "internalType": "uint256",
244
+ "name": "stack",
245
+ "type": "uint256"
246
+ }
247
+ ],
248
+ "name": "OPP_SendStackError",
249
+ "type": "error"
250
+ },
251
+ {
252
+ "inputs": [
253
+ {
254
+ "internalType": "uint256",
255
+ "name": "expectedMaxMessages",
256
+ "type": "uint256"
257
+ },
258
+ {
259
+ "internalType": "uint256",
260
+ "name": "actualMessages",
261
+ "type": "uint256"
262
+ }
263
+ ],
264
+ "name": "OPP_TooManyMessages",
265
+ "type": "error"
266
+ },
267
+ {
268
+ "inputs": [
269
+ {
270
+ "internalType": "address",
271
+ "name": "sender",
272
+ "type": "address"
273
+ },
274
+ {
275
+ "internalType": "uint16",
276
+ "name": "assertionType",
277
+ "type": "uint16"
278
+ }
279
+ ],
280
+ "name": "OPP_UnauthorizedAssertionType",
281
+ "type": "error"
282
+ },
283
+ {
284
+ "inputs": [
285
+ {
286
+ "internalType": "uint16",
287
+ "name": "assertionType",
288
+ "type": "uint16"
289
+ }
290
+ ],
291
+ "name": "OPP_UnhandledAssertionType",
292
+ "type": "error"
293
+ },
294
+ {
295
+ "inputs": [],
296
+ "name": "OPP_ZeroTag",
297
+ "type": "error"
298
+ },
299
+ {
300
+ "inputs": [],
301
+ "name": "UUPSUnauthorizedCallContext",
302
+ "type": "error"
303
+ },
304
+ {
305
+ "inputs": [
306
+ {
307
+ "internalType": "bytes32",
308
+ "name": "slot",
309
+ "type": "bytes32"
310
+ }
311
+ ],
312
+ "name": "UUPSUnsupportedProxiableUUID",
313
+ "type": "error"
314
+ },
315
+ {
316
+ "anonymous": false,
317
+ "inputs": [
318
+ {
319
+ "indexed": false,
320
+ "internalType": "address",
321
+ "name": "authority",
322
+ "type": "address"
323
+ }
324
+ ],
325
+ "name": "AuthorityUpdated",
326
+ "type": "event"
327
+ },
328
+ {
329
+ "anonymous": false,
330
+ "inputs": [
331
+ {
332
+ "indexed": false,
333
+ "internalType": "uint64",
334
+ "name": "version",
335
+ "type": "uint64"
336
+ }
337
+ ],
338
+ "name": "Initialized",
339
+ "type": "event"
340
+ },
341
+ {
342
+ "anonymous": false,
343
+ "inputs": [
344
+ {
345
+ "indexed": true,
346
+ "internalType": "address",
347
+ "name": "implementation",
348
+ "type": "address"
349
+ }
350
+ ],
351
+ "name": "Upgraded",
352
+ "type": "event"
353
+ },
354
+ {
355
+ "inputs": [],
356
+ "name": "CONFIGURATION_ROLE",
357
+ "outputs": [
358
+ {
359
+ "internalType": "uint64",
360
+ "name": "",
361
+ "type": "uint64"
362
+ }
363
+ ],
364
+ "stateMutability": "view",
365
+ "type": "function"
366
+ },
367
+ {
368
+ "inputs": [],
369
+ "name": "OPP_FINALIZER_ROLE",
370
+ "outputs": [
371
+ {
372
+ "internalType": "uint64",
373
+ "name": "",
374
+ "type": "uint64"
375
+ }
376
+ ],
377
+ "stateMutability": "view",
378
+ "type": "function"
379
+ },
380
+ {
381
+ "inputs": [],
382
+ "name": "OPP_INBOUND_ROLE",
383
+ "outputs": [
384
+ {
385
+ "internalType": "uint64",
386
+ "name": "",
387
+ "type": "uint64"
388
+ }
389
+ ],
390
+ "stateMutability": "view",
391
+ "type": "function"
392
+ },
393
+ {
394
+ "inputs": [],
395
+ "name": "OPP_RECEIVER_TYPE",
396
+ "outputs": [
397
+ {
398
+ "internalType": "uint64",
399
+ "name": "",
400
+ "type": "uint64"
401
+ }
402
+ ],
403
+ "stateMutability": "view",
404
+ "type": "function"
405
+ },
406
+ {
407
+ "inputs": [],
408
+ "name": "OPP_SENDER_ROLE",
409
+ "outputs": [
410
+ {
411
+ "internalType": "uint64",
412
+ "name": "",
413
+ "type": "uint64"
414
+ }
415
+ ],
416
+ "stateMutability": "view",
417
+ "type": "function"
418
+ },
419
+ {
420
+ "inputs": [],
421
+ "name": "OPP_SENDER_TYPE",
422
+ "outputs": [
423
+ {
424
+ "internalType": "uint64",
425
+ "name": "",
426
+ "type": "uint64"
427
+ }
428
+ ],
429
+ "stateMutability": "view",
430
+ "type": "function"
431
+ },
432
+ {
433
+ "inputs": [],
434
+ "name": "OPP_TESTER_ROLE",
435
+ "outputs": [
436
+ {
437
+ "internalType": "uint64",
438
+ "name": "",
439
+ "type": "uint64"
440
+ }
441
+ ],
442
+ "stateMutability": "view",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "inputs": [],
447
+ "name": "RECEIPT_BURNER_ROLE",
448
+ "outputs": [
449
+ {
450
+ "internalType": "uint64",
451
+ "name": "",
452
+ "type": "uint64"
453
+ }
454
+ ],
455
+ "stateMutability": "view",
456
+ "type": "function"
457
+ },
458
+ {
459
+ "inputs": [],
460
+ "name": "RECEIPT_MINTER_ROLE",
461
+ "outputs": [
462
+ {
463
+ "internalType": "uint64",
464
+ "name": "",
465
+ "type": "uint64"
466
+ }
467
+ ],
468
+ "stateMutability": "view",
469
+ "type": "function"
470
+ },
471
+ {
472
+ "inputs": [],
473
+ "name": "RECEIPT_TRANSFER_ROLE",
474
+ "outputs": [
475
+ {
476
+ "internalType": "uint64",
477
+ "name": "",
478
+ "type": "uint64"
479
+ }
480
+ ],
481
+ "stateMutability": "view",
482
+ "type": "function"
483
+ },
484
+ {
485
+ "inputs": [],
486
+ "name": "UPGRADE_INTERFACE_VERSION",
487
+ "outputs": [
488
+ {
489
+ "internalType": "string",
490
+ "name": "",
491
+ "type": "string"
492
+ }
493
+ ],
494
+ "stateMutability": "view",
495
+ "type": "function"
496
+ },
497
+ {
498
+ "inputs": [],
499
+ "name": "authority",
500
+ "outputs": [
501
+ {
502
+ "internalType": "address",
503
+ "name": "",
504
+ "type": "address"
505
+ }
506
+ ],
507
+ "stateMutability": "view",
508
+ "type": "function"
509
+ },
510
+ {
511
+ "inputs": [
512
+ {
513
+ "internalType": "uint16[]",
514
+ "name": "assertionTypes",
515
+ "type": "uint16[]"
516
+ }
517
+ ],
518
+ "name": "blackholeAssertionTypes",
519
+ "outputs": [],
520
+ "stateMutability": "nonpayable",
521
+ "type": "function"
522
+ },
523
+ {
524
+ "inputs": [
525
+ {
526
+ "internalType": "address",
527
+ "name": "endpoint",
528
+ "type": "address"
529
+ },
530
+ {
531
+ "internalType": "uint16[]",
532
+ "name": "assertionsGenerated",
533
+ "type": "uint16[]"
534
+ },
535
+ {
536
+ "internalType": "uint16[]",
537
+ "name": "assertionsHandled",
538
+ "type": "uint16[]"
539
+ }
540
+ ],
541
+ "name": "configureOPPEndpoint",
542
+ "outputs": [],
543
+ "stateMutability": "nonpayable",
544
+ "type": "function"
545
+ },
546
+ {
547
+ "inputs": [
548
+ {
549
+ "internalType": "address",
550
+ "name": "target",
551
+ "type": "address"
552
+ },
553
+ {
554
+ "internalType": "bytes",
555
+ "name": "data",
556
+ "type": "bytes"
557
+ }
558
+ ],
559
+ "name": "execute",
560
+ "outputs": [
561
+ {
562
+ "internalType": "uint32",
563
+ "name": "",
564
+ "type": "uint32"
565
+ }
566
+ ],
567
+ "stateMutability": "payable",
568
+ "type": "function"
569
+ },
570
+ {
571
+ "inputs": [
572
+ {
573
+ "internalType": "uint64",
574
+ "name": "role",
575
+ "type": "uint64"
576
+ },
577
+ {
578
+ "internalType": "address",
579
+ "name": "grantee",
580
+ "type": "address"
581
+ }
582
+ ],
583
+ "name": "grantRole",
584
+ "outputs": [],
585
+ "stateMutability": "nonpayable",
586
+ "type": "function"
587
+ },
588
+ {
589
+ "inputs": [
590
+ {
591
+ "internalType": "address",
592
+ "name": "_authority",
593
+ "type": "address"
594
+ }
595
+ ],
596
+ "name": "initialize",
597
+ "outputs": [],
598
+ "stateMutability": "nonpayable",
599
+ "type": "function"
600
+ },
601
+ {
602
+ "inputs": [],
603
+ "name": "isConsumingScheduledOp",
604
+ "outputs": [
605
+ {
606
+ "internalType": "bytes4",
607
+ "name": "",
608
+ "type": "bytes4"
609
+ }
610
+ ],
611
+ "stateMutability": "view",
612
+ "type": "function"
613
+ },
614
+ {
615
+ "inputs": [],
616
+ "name": "oppAddress",
617
+ "outputs": [
618
+ {
619
+ "internalType": "address",
620
+ "name": "",
621
+ "type": "address"
622
+ }
623
+ ],
624
+ "stateMutability": "view",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [],
629
+ "name": "oppInboundAddress",
630
+ "outputs": [
631
+ {
632
+ "internalType": "address",
633
+ "name": "",
634
+ "type": "address"
635
+ }
636
+ ],
637
+ "stateMutability": "view",
638
+ "type": "function"
639
+ },
640
+ {
641
+ "inputs": [],
642
+ "name": "proxiableUUID",
643
+ "outputs": [
644
+ {
645
+ "internalType": "bytes32",
646
+ "name": "",
647
+ "type": "bytes32"
648
+ }
649
+ ],
650
+ "stateMutability": "view",
651
+ "type": "function"
652
+ },
653
+ {
654
+ "inputs": [
655
+ {
656
+ "internalType": "address",
657
+ "name": "newAuthority",
658
+ "type": "address"
659
+ }
660
+ ],
661
+ "name": "setAuthority",
662
+ "outputs": [],
663
+ "stateMutability": "nonpayable",
664
+ "type": "function"
665
+ },
666
+ {
667
+ "inputs": [
668
+ {
669
+ "internalType": "address",
670
+ "name": "_oppAddress",
671
+ "type": "address"
672
+ },
673
+ {
674
+ "internalType": "address",
675
+ "name": "_oppInboundAddress",
676
+ "type": "address"
677
+ }
678
+ ],
679
+ "name": "setupOPPRoles",
680
+ "outputs": [],
681
+ "stateMutability": "nonpayable",
682
+ "type": "function"
683
+ },
684
+ {
685
+ "inputs": [
686
+ {
687
+ "internalType": "address",
688
+ "name": "proxyAddress",
689
+ "type": "address"
690
+ },
691
+ {
692
+ "internalType": "address",
693
+ "name": "newImplementation",
694
+ "type": "address"
695
+ },
696
+ {
697
+ "internalType": "bytes",
698
+ "name": "data",
699
+ "type": "bytes"
700
+ }
701
+ ],
702
+ "name": "upgradeContract",
703
+ "outputs": [],
704
+ "stateMutability": "nonpayable",
705
+ "type": "function"
706
+ },
707
+ {
708
+ "inputs": [
709
+ {
710
+ "internalType": "address",
711
+ "name": "newImplementation",
712
+ "type": "address"
713
+ },
714
+ {
715
+ "internalType": "bytes",
716
+ "name": "data",
717
+ "type": "bytes"
718
+ }
719
+ ],
720
+ "name": "upgradeToAndCall",
721
+ "outputs": [],
722
+ "stateMutability": "payable",
723
+ "type": "function"
724
+ }
725
+ ],
726
+ "bytecode": "0x60a0806040523460295730608052611707908161002f8239608051818181610adf01526115ab0152f35b600080fdfe6080604052600436101561001257600080fd5b6000803560e01c80631cff79cd146110b45780633a7016d4146110915780634db51f5e1461106e5780634f1ef28614610ea257806350faa43214610b4957806352d1902d14610acc5780636d1a747314610ab0578063743112cd14610a8d5780637a9e5e4b14610a0d5780638293ace0146109ea5780638668c5f4146109535780638fb36037146109005780639469df89146107ff578063a80e2a22146107dc578063ad3cb1cc14610792578063b12ed45e1461076f578063b428b0b0146106d3578063bf7e214f1461069d578063c4d66de814610549578063ca34df4714610522578063cd3c3f5e14610506578063cde78421146104dd578063d22a40d0146104ba578063efac7034146104975763f892e6e71461013057600080fd5b346103ad5760403660031901126103ad576101496111ac565b906101526111c7565b9161015d36336113cc565b60018060a01b039081806000805160206116b283398151915254169116916bffffffffffffffffffffffff60a01b9483868654161785551680600195865416178555604051926101ac846111f0565b60038452602080850192606093843682376327e935a160e01b6101ce8861139b565b5263f5786b4b60e01b6101e0886113a8565b52865160021015610481576327710fa960e11b87860152853b156103d8578760405180926308d6122d60e01b998a83526064830190886004850152896024850152518091526084830191908d6000905b8983831061045e575050505050819067054ed88267a0634560448301520381838a5af180156104535790889161043b575b5050604051908482018281106001600160401b038211176104255760405260028252828201906040368337630e260c6560e31b61029d8461139b565b52631eea7f8960e31b6102af846113a8565b52863b15610421579188916040519384928a8452606484019160048501528860248501525180915260848301919060005b8d888383106103ff575050505050819067c58ec56834342af56044830152038183895af180156103f4579087916103dc575b50506040516103208161120b565b878152818101938236863763e11418b760e01b61033c8361139b565b52853b156103d857604098949598939293519687526064870192600488015260248701525180915260848501939160005b8281106103bb5787808881818d8183818e67973871d7e74f3748604483015203925af180156103b05761039d5750f35b6103a6906111dd565b6103ad5780f35b80fd5b6040513d84823e3d90fd5b83516001600160e01b03191686529481019492810192840161036d565b8780fd5b6103e5906111dd565b6103f0578538610312565b8580fd5b6040513d89823e3d90fd5b84516001600160e01b03191686528e97508896509485019490930192016102e0565b8880fd5b634e487b7160e01b600052604160045260246000fd5b610444906111dd565b61044f578638610261565b8680fd5b6040513d8a823e3d90fd5b84516001600160e01b03191686528f97508896509485019490930192018e610230565b634e487b7160e01b600052603260045260246000fd5b50346103ad57806003193601126103ad57602060405167c58ec56834342af58152f35b50346103ad57806003193601126103ad57602060405167ae92c175e0db63cd8152f35b50346103ad57806003193601126103ad576001546040516001600160a01b039091168152602090f35b50346103ad57806003193601126103ad57602060405160018152f35b50346103ad57806003193601126103ad57546040516001600160a01b039091168152602090f35b50346103ad5760203660031901126103ad576105636111ac565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090815460ff8160401c1615916001600160401b03821680159081610695575b600114908161068b575b159081610682575b506106705767ffffffffffffffff19821660011784556105fb9183610651575b506105de61160d565b6105e661160d565b6105ee61160d565b6105f661160d565b611548565b61060361160d565b61060b61160d565b610613575080f35b68ff00000000000000001981541690557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b68ffffffffffffffffff191668010000000000000001178455386105d5565b60405163f92ee8a960e01b8152600490fd5b905015386105b5565b303b1591506105ad565b8491506105a3565b50346103ad57806003193601126103ad576000805160206116b2833981519152546040516001600160a01b039091168152602090f35b50346103ad5760403660031901126103ad57806004356001600160401b03811680910361076c576107026111c7565b9061070d36336113cc565b6000805160206116b2833981519152546001600160a01b0392908316803b1561076857849283606492604051968795869463012e238d60e51b865260048601521660248401528160448401525af180156103b05761039d5750f35b8480fd5b50fd5b50346103ad57806003193601126103ad576020604051670b49c88cd3d1ba3c8152f35b50346103ad57806003193601126103ad576107d86040516107b28161120b565b60058152640352e302e360dc1b602082015260405191829160208352602083019061131a565b0390f35b50346103ad57806003193601126103ad5760206040516711d8f2d2caa4286e8152f35b50346103ad5760203660031901126103ad576004356001600160401b0381116108fc576108309036906004016112a9565b61083a36336113cc565b6001805490916001600160a01b03918216156108ea57839182845b61085d578380f35b82518110156108e6578185541661ffff61087783866113b8565b5116813b156103f057859160448392604051988993849263163c71df60e01b8452600484015261dead60248401525af19485156108d95786956108c0575b505083018593610855565b6108cc919295506111dd565b61076857839285386108b5565b50604051903d90823e3d90fd5b8380f35b604051632ea0fec960e11b8152600490fd5b5080fd5b50346103ad57806003193601126103ad576000805160206116b28339815191525460a01c60ff161561094b57506020638fb3603760e01b5b6040516001600160e01b03199091168152f35b602090610938565b50346103ad5760603660031901126103ad578061096e6111ac565b6109766111c7565b6044356001600160401b0381116109e557610995903690600401611262565b916109a036336113cc565b6001600160a01b031691823b156109e5576109d49284928360405180968195829463278f794360e11b845260048401611376565b03925af180156103b05761039d5750f35b505050fd5b50346103ad57806003193601126103ad57602060405167973871d7e74f37488152f35b50346103ad5760203660031901126103ad57610a276111ac565b6000805160206116b2833981519152546001600160a01b039081163303610a7657813b15610a5c5750610a5990611548565b80f35b6040516361798f2f60e11b81529116600482015260249150fd5b60405162d1953b60e31b8152336004820152602490fd5b50346103ad57806003193601126103ad57602060405167054ed88267a063458152f35b50346103ad57806003193601126103ad57602060405160028152f35b50346103ad57806003193601126103ad577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610b375760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b50346103ad5760603660031901126103ad57610b636111ac565b6001600160401b0390602435828111610d1e57610b849036906004016112a9565b91604435908111610d1e57610b9d9036906004016112a9565b91610ba836336113cc565b83546001600160a01b031680158015610e8f575b6108ea578491610c2d602060018060a01b036000805160206116b283398151915254169360018060a01b03600154166040519163389613c160e11b848401526024830152604482015260448152610c12816111f0565b60405180938192631cff79cd60e01b83528960048401611376565b038187875af18015610de457610e60575b50805115610def57813b15610de05760405163012e238d60e51b815267054ed88267a0634560048201526001600160a01b038516602482015260448101849052838160648183875af1908115610de4578491610dcc575b50505b825b8151811015610d2d5761ffff610cb082846113b8565b5116833b156107685760405163012e238d60e51b8152620100009190911760048201526001600160a01b038616602482015260448101859052848160648183885af1908115610d22578591610d0a575b5050600101610c9a565b610d13906111dd565b610d1e578338610d00565b8380fd5b6040513d87823e3d90fd5b5050509182805b8251811015610dc8576001546001600160a01b031661ffff610d5683866113b8565b5116813b15610d1e5760405163163c71df60e01b815260048101919091526001600160a01b03861660248201529083908290604490829084905af1908115610dbd578391610da9575b5050600101610d34565b610db2906111dd565b6108fc578186610d9f565b6040513d85823e3d90fd5b5080f35b610dd5906111dd565b610de0578238610c95565b8280fd5b6040513d86823e3d90fd5b908092503b1561076857604051635be958b160e11b815267054ed88267a0634560048201526001600160a01b0384166024820152858160448183875af18015610e5557610e40575b50908491610c98565b610e4d90959192956111dd565b939038610e37565b6040513d88823e3d90fd5b610e819060203d602011610e88575b610e798183611226565b81019061135a565b5038610c3e565b503d610e6f565b506001546001600160a01b031615610bbc565b5060403660031901126103ad57610eb76111ac565b6024356001600160401b038111610de057610ed6903690600401611262565b610ede6115a1565b610ee836336113cc565b610ef06115a1565b6040516352d1902d60e01b81526001600160a01b038316926020918281600481885afa86918161103f575b50610f3957604051634c9c8ce360e01b815260048101869052602490fd5b9385947f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc908181036110275750823b1561100e5780546001600160a01b0319168217905560405185917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8380a2845115610ff15750808484610dc896519101845af4903d15610fe8573d610fcc81611247565b90610fda6040519283611226565b81528581943d92013e61164e565b6060925061164e565b935050505034610fff575080f35b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101839052602490fd5b60249060405190632a87526960e21b82526004820152fd5b9091508381813d8311611067575b6110578183611226565b8101031261044f57519038610f1b565b503d61104d565b50346103ad57806003193601126103ad57602060405167bf1faa41f651ca3a8152f35b50346103ad57806003193601126103ad57602060405167fcf45a9de1e9ce348152f35b5060403660031901126103ad576110c96111ac565b6001600160401b0390602435828111610d1e5736602382011215610d1e578060040135928311610d1e573660248483010111610d1e5760249260209261110f36336113cc565b606460018060a01b0391826000805160206116b28339815191525416938060405198899788968795631cff79cd60e01b875216600486015260408286015282604486015201848401378181018301899052601f01601f1916810103019134905af19081156103b0576020929161118f575b5063ffffffff60405191168152f35b6111a69150823d8411610e8857610e798183611226565b38611180565b600435906001600160a01b03821682036111c257565b600080fd5b602435906001600160a01b03821682036111c257565b6001600160401b03811161042557604052565b608081019081106001600160401b0382111761042557604052565b604081019081106001600160401b0382111761042557604052565b90601f801991011681019081106001600160401b0382111761042557604052565b6001600160401b03811161042557601f01601f191660200190565b81601f820112156111c25780359061127982611247565b926112876040519485611226565b828452602083830101116111c257816000926020809301838601378301015290565b81601f820112156111c2578035916020916001600160401b038411610425578360051b90604051946112dd85840187611226565b855283808601928201019283116111c2578301905b828210611300575050505090565b813561ffff811681036111c25781529083019083016112f2565b919082519283825260005b848110611346575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611325565b908160209103126111c2575163ffffffff811681036111c25790565b6001600160a01b0390911681526040602082018190526113989291019061131a565b90565b8051156104815760200190565b8051600110156104815760400190565b80518210156104815760209160051b010190565b6000805160206116b28339815191528054909290916001600160a01b0380841692600481106111c257600080604094855194602086019163b700961360e01b8352169485602482015230604482015263ffffffff60e01b84351660648201526064815260a081018181106001600160401b038211176115345791849188938452828052826020525190895afa611523575b1561146c575b50505050505050565b63ffffffff161561150d5760ff60a01b19948516600160a01b178655833b156111c257606493600092838551968780958194634a63ebf760e11b835260048301528860248301528060448301528084848401378181018301849052601f01601f191681010301925af190811561150357506114f4575b50815416905538808080808080611463565b6114fd906111dd565b386114e2565b513d6000823e3d90fd5b50602491519062d1953b60e31b82526004820152fd5b50516020518060201c15029061145d565b634e487b7160e01b85526041600452602485fd5b6000805160206116b283398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081163081149182156115df575b5050610b3757565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54161415905038806115d7565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c161561163c57565b604051631afcd79f60e31b8152600490fd5b90611675575080511561166357602081519101fd5b60405163d6bda27560e01b8152600490fd5b815115806116a8575b611686575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561167e56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220274c7f6a57c2b88302d14def80b8427cb4a5219d24fe479a6647092a094f8d0d64736f6c63430008190033",
727
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b6000803560e01c80631cff79cd146110b45780633a7016d4146110915780634db51f5e1461106e5780634f1ef28614610ea257806350faa43214610b4957806352d1902d14610acc5780636d1a747314610ab0578063743112cd14610a8d5780637a9e5e4b14610a0d5780638293ace0146109ea5780638668c5f4146109535780638fb36037146109005780639469df89146107ff578063a80e2a22146107dc578063ad3cb1cc14610792578063b12ed45e1461076f578063b428b0b0146106d3578063bf7e214f1461069d578063c4d66de814610549578063ca34df4714610522578063cd3c3f5e14610506578063cde78421146104dd578063d22a40d0146104ba578063efac7034146104975763f892e6e71461013057600080fd5b346103ad5760403660031901126103ad576101496111ac565b906101526111c7565b9161015d36336113cc565b60018060a01b039081806000805160206116b283398151915254169116916bffffffffffffffffffffffff60a01b9483868654161785551680600195865416178555604051926101ac846111f0565b60038452602080850192606093843682376327e935a160e01b6101ce8861139b565b5263f5786b4b60e01b6101e0886113a8565b52865160021015610481576327710fa960e11b87860152853b156103d8578760405180926308d6122d60e01b998a83526064830190886004850152896024850152518091526084830191908d6000905b8983831061045e575050505050819067054ed88267a0634560448301520381838a5af180156104535790889161043b575b5050604051908482018281106001600160401b038211176104255760405260028252828201906040368337630e260c6560e31b61029d8461139b565b52631eea7f8960e31b6102af846113a8565b52863b15610421579188916040519384928a8452606484019160048501528860248501525180915260848301919060005b8d888383106103ff575050505050819067c58ec56834342af56044830152038183895af180156103f4579087916103dc575b50506040516103208161120b565b878152818101938236863763e11418b760e01b61033c8361139b565b52853b156103d857604098949598939293519687526064870192600488015260248701525180915260848501939160005b8281106103bb5787808881818d8183818e67973871d7e74f3748604483015203925af180156103b05761039d5750f35b6103a6906111dd565b6103ad5780f35b80fd5b6040513d84823e3d90fd5b83516001600160e01b03191686529481019492810192840161036d565b8780fd5b6103e5906111dd565b6103f0578538610312565b8580fd5b6040513d89823e3d90fd5b84516001600160e01b03191686528e97508896509485019490930192016102e0565b8880fd5b634e487b7160e01b600052604160045260246000fd5b610444906111dd565b61044f578638610261565b8680fd5b6040513d8a823e3d90fd5b84516001600160e01b03191686528f97508896509485019490930192018e610230565b634e487b7160e01b600052603260045260246000fd5b50346103ad57806003193601126103ad57602060405167c58ec56834342af58152f35b50346103ad57806003193601126103ad57602060405167ae92c175e0db63cd8152f35b50346103ad57806003193601126103ad576001546040516001600160a01b039091168152602090f35b50346103ad57806003193601126103ad57602060405160018152f35b50346103ad57806003193601126103ad57546040516001600160a01b039091168152602090f35b50346103ad5760203660031901126103ad576105636111ac565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090815460ff8160401c1615916001600160401b03821680159081610695575b600114908161068b575b159081610682575b506106705767ffffffffffffffff19821660011784556105fb9183610651575b506105de61160d565b6105e661160d565b6105ee61160d565b6105f661160d565b611548565b61060361160d565b61060b61160d565b610613575080f35b68ff00000000000000001981541690557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b68ffffffffffffffffff191668010000000000000001178455386105d5565b60405163f92ee8a960e01b8152600490fd5b905015386105b5565b303b1591506105ad565b8491506105a3565b50346103ad57806003193601126103ad576000805160206116b2833981519152546040516001600160a01b039091168152602090f35b50346103ad5760403660031901126103ad57806004356001600160401b03811680910361076c576107026111c7565b9061070d36336113cc565b6000805160206116b2833981519152546001600160a01b0392908316803b1561076857849283606492604051968795869463012e238d60e51b865260048601521660248401528160448401525af180156103b05761039d5750f35b8480fd5b50fd5b50346103ad57806003193601126103ad576020604051670b49c88cd3d1ba3c8152f35b50346103ad57806003193601126103ad576107d86040516107b28161120b565b60058152640352e302e360dc1b602082015260405191829160208352602083019061131a565b0390f35b50346103ad57806003193601126103ad5760206040516711d8f2d2caa4286e8152f35b50346103ad5760203660031901126103ad576004356001600160401b0381116108fc576108309036906004016112a9565b61083a36336113cc565b6001805490916001600160a01b03918216156108ea57839182845b61085d578380f35b82518110156108e6578185541661ffff61087783866113b8565b5116813b156103f057859160448392604051988993849263163c71df60e01b8452600484015261dead60248401525af19485156108d95786956108c0575b505083018593610855565b6108cc919295506111dd565b61076857839285386108b5565b50604051903d90823e3d90fd5b8380f35b604051632ea0fec960e11b8152600490fd5b5080fd5b50346103ad57806003193601126103ad576000805160206116b28339815191525460a01c60ff161561094b57506020638fb3603760e01b5b6040516001600160e01b03199091168152f35b602090610938565b50346103ad5760603660031901126103ad578061096e6111ac565b6109766111c7565b6044356001600160401b0381116109e557610995903690600401611262565b916109a036336113cc565b6001600160a01b031691823b156109e5576109d49284928360405180968195829463278f794360e11b845260048401611376565b03925af180156103b05761039d5750f35b505050fd5b50346103ad57806003193601126103ad57602060405167973871d7e74f37488152f35b50346103ad5760203660031901126103ad57610a276111ac565b6000805160206116b2833981519152546001600160a01b039081163303610a7657813b15610a5c5750610a5990611548565b80f35b6040516361798f2f60e11b81529116600482015260249150fd5b60405162d1953b60e31b8152336004820152602490fd5b50346103ad57806003193601126103ad57602060405167054ed88267a063458152f35b50346103ad57806003193601126103ad57602060405160028152f35b50346103ad57806003193601126103ad577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610b375760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b50346103ad5760603660031901126103ad57610b636111ac565b6001600160401b0390602435828111610d1e57610b849036906004016112a9565b91604435908111610d1e57610b9d9036906004016112a9565b91610ba836336113cc565b83546001600160a01b031680158015610e8f575b6108ea578491610c2d602060018060a01b036000805160206116b283398151915254169360018060a01b03600154166040519163389613c160e11b848401526024830152604482015260448152610c12816111f0565b60405180938192631cff79cd60e01b83528960048401611376565b038187875af18015610de457610e60575b50805115610def57813b15610de05760405163012e238d60e51b815267054ed88267a0634560048201526001600160a01b038516602482015260448101849052838160648183875af1908115610de4578491610dcc575b50505b825b8151811015610d2d5761ffff610cb082846113b8565b5116833b156107685760405163012e238d60e51b8152620100009190911760048201526001600160a01b038616602482015260448101859052848160648183885af1908115610d22578591610d0a575b5050600101610c9a565b610d13906111dd565b610d1e578338610d00565b8380fd5b6040513d87823e3d90fd5b5050509182805b8251811015610dc8576001546001600160a01b031661ffff610d5683866113b8565b5116813b15610d1e5760405163163c71df60e01b815260048101919091526001600160a01b03861660248201529083908290604490829084905af1908115610dbd578391610da9575b5050600101610d34565b610db2906111dd565b6108fc578186610d9f565b6040513d85823e3d90fd5b5080f35b610dd5906111dd565b610de0578238610c95565b8280fd5b6040513d86823e3d90fd5b908092503b1561076857604051635be958b160e11b815267054ed88267a0634560048201526001600160a01b0384166024820152858160448183875af18015610e5557610e40575b50908491610c98565b610e4d90959192956111dd565b939038610e37565b6040513d88823e3d90fd5b610e819060203d602011610e88575b610e798183611226565b81019061135a565b5038610c3e565b503d610e6f565b506001546001600160a01b031615610bbc565b5060403660031901126103ad57610eb76111ac565b6024356001600160401b038111610de057610ed6903690600401611262565b610ede6115a1565b610ee836336113cc565b610ef06115a1565b6040516352d1902d60e01b81526001600160a01b038316926020918281600481885afa86918161103f575b50610f3957604051634c9c8ce360e01b815260048101869052602490fd5b9385947f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc908181036110275750823b1561100e5780546001600160a01b0319168217905560405185917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8380a2845115610ff15750808484610dc896519101845af4903d15610fe8573d610fcc81611247565b90610fda6040519283611226565b81528581943d92013e61164e565b6060925061164e565b935050505034610fff575080f35b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101839052602490fd5b60249060405190632a87526960e21b82526004820152fd5b9091508381813d8311611067575b6110578183611226565b8101031261044f57519038610f1b565b503d61104d565b50346103ad57806003193601126103ad57602060405167bf1faa41f651ca3a8152f35b50346103ad57806003193601126103ad57602060405167fcf45a9de1e9ce348152f35b5060403660031901126103ad576110c96111ac565b6001600160401b0390602435828111610d1e5736602382011215610d1e578060040135928311610d1e573660248483010111610d1e5760249260209261110f36336113cc565b606460018060a01b0391826000805160206116b28339815191525416938060405198899788968795631cff79cd60e01b875216600486015260408286015282604486015201848401378181018301899052601f01601f1916810103019134905af19081156103b0576020929161118f575b5063ffffffff60405191168152f35b6111a69150823d8411610e8857610e798183611226565b38611180565b600435906001600160a01b03821682036111c257565b600080fd5b602435906001600160a01b03821682036111c257565b6001600160401b03811161042557604052565b608081019081106001600160401b0382111761042557604052565b604081019081106001600160401b0382111761042557604052565b90601f801991011681019081106001600160401b0382111761042557604052565b6001600160401b03811161042557601f01601f191660200190565b81601f820112156111c25780359061127982611247565b926112876040519485611226565b828452602083830101116111c257816000926020809301838601378301015290565b81601f820112156111c2578035916020916001600160401b038411610425578360051b90604051946112dd85840187611226565b855283808601928201019283116111c2578301905b828210611300575050505090565b813561ffff811681036111c25781529083019083016112f2565b919082519283825260005b848110611346575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611325565b908160209103126111c2575163ffffffff811681036111c25790565b6001600160a01b0390911681526040602082018190526113989291019061131a565b90565b8051156104815760200190565b8051600110156104815760400190565b80518210156104815760209160051b010190565b6000805160206116b28339815191528054909290916001600160a01b0380841692600481106111c257600080604094855194602086019163b700961360e01b8352169485602482015230604482015263ffffffff60e01b84351660648201526064815260a081018181106001600160401b038211176115345791849188938452828052826020525190895afa611523575b1561146c575b50505050505050565b63ffffffff161561150d5760ff60a01b19948516600160a01b178655833b156111c257606493600092838551968780958194634a63ebf760e11b835260048301528860248301528060448301528084848401378181018301849052601f01601f191681010301925af190811561150357506114f4575b50815416905538808080808080611463565b6114fd906111dd565b386114e2565b513d6000823e3d90fd5b50602491519062d1953b60e31b82526004820152fd5b50516020518060201c15029061145d565b634e487b7160e01b85526041600452602485fd5b6000805160206116b283398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081163081149182156115df575b5050610b3757565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54161415905038806115d7565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c161561163c57565b604051631afcd79f60e31b8152600490fd5b90611675575080511561166357602081519101fd5b60405163d6bda27560e01b8152600490fd5b815115806116a8575b611686575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561167e56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220274c7f6a57c2b88302d14def80b8427cb4a5219d24fe479a6647092a094f8d0d64736f6c63430008190033",
728
+ "linkReferences": {},
729
+ "deployedLinkReferences": {}
730
+ }