@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,1432 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "OutpostManagerAuthority",
4
+ "sourceName": "contracts/outpost/OutpostManagerAuthority.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "bytes32",
10
+ "name": "operationId",
11
+ "type": "bytes32"
12
+ }
13
+ ],
14
+ "name": "AccessManagerAlreadyScheduled",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [],
19
+ "name": "AccessManagerBadConfirmation",
20
+ "type": "error"
21
+ },
22
+ {
23
+ "inputs": [
24
+ {
25
+ "internalType": "bytes32",
26
+ "name": "operationId",
27
+ "type": "bytes32"
28
+ }
29
+ ],
30
+ "name": "AccessManagerExpired",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "address",
37
+ "name": "initialAdmin",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "AccessManagerInvalidInitialAdmin",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "uint64",
48
+ "name": "roleId",
49
+ "type": "uint64"
50
+ }
51
+ ],
52
+ "name": "AccessManagerLockedRole",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [
57
+ {
58
+ "internalType": "bytes32",
59
+ "name": "operationId",
60
+ "type": "bytes32"
61
+ }
62
+ ],
63
+ "name": "AccessManagerNotReady",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [
68
+ {
69
+ "internalType": "bytes32",
70
+ "name": "operationId",
71
+ "type": "bytes32"
72
+ }
73
+ ],
74
+ "name": "AccessManagerNotScheduled",
75
+ "type": "error"
76
+ },
77
+ {
78
+ "inputs": [
79
+ {
80
+ "internalType": "address",
81
+ "name": "msgsender",
82
+ "type": "address"
83
+ },
84
+ {
85
+ "internalType": "uint64",
86
+ "name": "roleId",
87
+ "type": "uint64"
88
+ }
89
+ ],
90
+ "name": "AccessManagerUnauthorizedAccount",
91
+ "type": "error"
92
+ },
93
+ {
94
+ "inputs": [
95
+ {
96
+ "internalType": "address",
97
+ "name": "caller",
98
+ "type": "address"
99
+ },
100
+ {
101
+ "internalType": "address",
102
+ "name": "target",
103
+ "type": "address"
104
+ },
105
+ {
106
+ "internalType": "bytes4",
107
+ "name": "selector",
108
+ "type": "bytes4"
109
+ }
110
+ ],
111
+ "name": "AccessManagerUnauthorizedCall",
112
+ "type": "error"
113
+ },
114
+ {
115
+ "inputs": [
116
+ {
117
+ "internalType": "address",
118
+ "name": "msgsender",
119
+ "type": "address"
120
+ },
121
+ {
122
+ "internalType": "address",
123
+ "name": "caller",
124
+ "type": "address"
125
+ },
126
+ {
127
+ "internalType": "address",
128
+ "name": "target",
129
+ "type": "address"
130
+ },
131
+ {
132
+ "internalType": "bytes4",
133
+ "name": "selector",
134
+ "type": "bytes4"
135
+ }
136
+ ],
137
+ "name": "AccessManagerUnauthorizedCancel",
138
+ "type": "error"
139
+ },
140
+ {
141
+ "inputs": [
142
+ {
143
+ "internalType": "address",
144
+ "name": "target",
145
+ "type": "address"
146
+ }
147
+ ],
148
+ "name": "AccessManagerUnauthorizedConsume",
149
+ "type": "error"
150
+ },
151
+ {
152
+ "inputs": [
153
+ {
154
+ "internalType": "address",
155
+ "name": "target",
156
+ "type": "address"
157
+ }
158
+ ],
159
+ "name": "AddressEmptyCode",
160
+ "type": "error"
161
+ },
162
+ {
163
+ "inputs": [
164
+ {
165
+ "internalType": "address",
166
+ "name": "implementation",
167
+ "type": "address"
168
+ }
169
+ ],
170
+ "name": "ERC1967InvalidImplementation",
171
+ "type": "error"
172
+ },
173
+ {
174
+ "inputs": [],
175
+ "name": "ERC1967NonPayable",
176
+ "type": "error"
177
+ },
178
+ {
179
+ "inputs": [],
180
+ "name": "FailedCall",
181
+ "type": "error"
182
+ },
183
+ {
184
+ "inputs": [
185
+ {
186
+ "internalType": "uint256",
187
+ "name": "balance",
188
+ "type": "uint256"
189
+ },
190
+ {
191
+ "internalType": "uint256",
192
+ "name": "needed",
193
+ "type": "uint256"
194
+ }
195
+ ],
196
+ "name": "InsufficientBalance",
197
+ "type": "error"
198
+ },
199
+ {
200
+ "inputs": [],
201
+ "name": "InvalidInitialization",
202
+ "type": "error"
203
+ },
204
+ {
205
+ "inputs": [],
206
+ "name": "NotInitializing",
207
+ "type": "error"
208
+ },
209
+ {
210
+ "inputs": [
211
+ {
212
+ "internalType": "uint8",
213
+ "name": "bits",
214
+ "type": "uint8"
215
+ },
216
+ {
217
+ "internalType": "uint256",
218
+ "name": "value",
219
+ "type": "uint256"
220
+ }
221
+ ],
222
+ "name": "SafeCastOverflowedUintDowncast",
223
+ "type": "error"
224
+ },
225
+ {
226
+ "inputs": [],
227
+ "name": "UUPSUnauthorizedCallContext",
228
+ "type": "error"
229
+ },
230
+ {
231
+ "inputs": [
232
+ {
233
+ "internalType": "bytes32",
234
+ "name": "slot",
235
+ "type": "bytes32"
236
+ }
237
+ ],
238
+ "name": "UUPSUnsupportedProxiableUUID",
239
+ "type": "error"
240
+ },
241
+ {
242
+ "anonymous": false,
243
+ "inputs": [
244
+ {
245
+ "indexed": false,
246
+ "internalType": "uint64",
247
+ "name": "version",
248
+ "type": "uint64"
249
+ }
250
+ ],
251
+ "name": "Initialized",
252
+ "type": "event"
253
+ },
254
+ {
255
+ "anonymous": false,
256
+ "inputs": [
257
+ {
258
+ "indexed": true,
259
+ "internalType": "bytes32",
260
+ "name": "operationId",
261
+ "type": "bytes32"
262
+ },
263
+ {
264
+ "indexed": true,
265
+ "internalType": "uint32",
266
+ "name": "nonce",
267
+ "type": "uint32"
268
+ }
269
+ ],
270
+ "name": "OperationCanceled",
271
+ "type": "event"
272
+ },
273
+ {
274
+ "anonymous": false,
275
+ "inputs": [
276
+ {
277
+ "indexed": true,
278
+ "internalType": "bytes32",
279
+ "name": "operationId",
280
+ "type": "bytes32"
281
+ },
282
+ {
283
+ "indexed": true,
284
+ "internalType": "uint32",
285
+ "name": "nonce",
286
+ "type": "uint32"
287
+ }
288
+ ],
289
+ "name": "OperationExecuted",
290
+ "type": "event"
291
+ },
292
+ {
293
+ "anonymous": false,
294
+ "inputs": [
295
+ {
296
+ "indexed": true,
297
+ "internalType": "bytes32",
298
+ "name": "operationId",
299
+ "type": "bytes32"
300
+ },
301
+ {
302
+ "indexed": true,
303
+ "internalType": "uint32",
304
+ "name": "nonce",
305
+ "type": "uint32"
306
+ },
307
+ {
308
+ "indexed": false,
309
+ "internalType": "uint48",
310
+ "name": "schedule",
311
+ "type": "uint48"
312
+ },
313
+ {
314
+ "indexed": false,
315
+ "internalType": "address",
316
+ "name": "caller",
317
+ "type": "address"
318
+ },
319
+ {
320
+ "indexed": false,
321
+ "internalType": "address",
322
+ "name": "target",
323
+ "type": "address"
324
+ },
325
+ {
326
+ "indexed": false,
327
+ "internalType": "bytes",
328
+ "name": "data",
329
+ "type": "bytes"
330
+ }
331
+ ],
332
+ "name": "OperationScheduled",
333
+ "type": "event"
334
+ },
335
+ {
336
+ "anonymous": false,
337
+ "inputs": [
338
+ {
339
+ "indexed": true,
340
+ "internalType": "uint64",
341
+ "name": "roleId",
342
+ "type": "uint64"
343
+ },
344
+ {
345
+ "indexed": true,
346
+ "internalType": "uint64",
347
+ "name": "admin",
348
+ "type": "uint64"
349
+ }
350
+ ],
351
+ "name": "RoleAdminChanged",
352
+ "type": "event"
353
+ },
354
+ {
355
+ "anonymous": false,
356
+ "inputs": [
357
+ {
358
+ "indexed": true,
359
+ "internalType": "uint64",
360
+ "name": "roleId",
361
+ "type": "uint64"
362
+ },
363
+ {
364
+ "indexed": false,
365
+ "internalType": "uint32",
366
+ "name": "delay",
367
+ "type": "uint32"
368
+ },
369
+ {
370
+ "indexed": false,
371
+ "internalType": "uint48",
372
+ "name": "since",
373
+ "type": "uint48"
374
+ }
375
+ ],
376
+ "name": "RoleGrantDelayChanged",
377
+ "type": "event"
378
+ },
379
+ {
380
+ "anonymous": false,
381
+ "inputs": [
382
+ {
383
+ "indexed": true,
384
+ "internalType": "uint64",
385
+ "name": "roleId",
386
+ "type": "uint64"
387
+ },
388
+ {
389
+ "indexed": true,
390
+ "internalType": "address",
391
+ "name": "account",
392
+ "type": "address"
393
+ },
394
+ {
395
+ "indexed": false,
396
+ "internalType": "uint32",
397
+ "name": "delay",
398
+ "type": "uint32"
399
+ },
400
+ {
401
+ "indexed": false,
402
+ "internalType": "uint48",
403
+ "name": "since",
404
+ "type": "uint48"
405
+ },
406
+ {
407
+ "indexed": false,
408
+ "internalType": "bool",
409
+ "name": "newMember",
410
+ "type": "bool"
411
+ }
412
+ ],
413
+ "name": "RoleGranted",
414
+ "type": "event"
415
+ },
416
+ {
417
+ "anonymous": false,
418
+ "inputs": [
419
+ {
420
+ "indexed": true,
421
+ "internalType": "uint64",
422
+ "name": "roleId",
423
+ "type": "uint64"
424
+ },
425
+ {
426
+ "indexed": true,
427
+ "internalType": "uint64",
428
+ "name": "guardian",
429
+ "type": "uint64"
430
+ }
431
+ ],
432
+ "name": "RoleGuardianChanged",
433
+ "type": "event"
434
+ },
435
+ {
436
+ "anonymous": false,
437
+ "inputs": [
438
+ {
439
+ "indexed": true,
440
+ "internalType": "uint64",
441
+ "name": "roleId",
442
+ "type": "uint64"
443
+ },
444
+ {
445
+ "indexed": false,
446
+ "internalType": "string",
447
+ "name": "label",
448
+ "type": "string"
449
+ }
450
+ ],
451
+ "name": "RoleLabel",
452
+ "type": "event"
453
+ },
454
+ {
455
+ "anonymous": false,
456
+ "inputs": [
457
+ {
458
+ "indexed": true,
459
+ "internalType": "uint64",
460
+ "name": "roleId",
461
+ "type": "uint64"
462
+ },
463
+ {
464
+ "indexed": true,
465
+ "internalType": "address",
466
+ "name": "account",
467
+ "type": "address"
468
+ }
469
+ ],
470
+ "name": "RoleRevoked",
471
+ "type": "event"
472
+ },
473
+ {
474
+ "anonymous": false,
475
+ "inputs": [
476
+ {
477
+ "indexed": true,
478
+ "internalType": "address",
479
+ "name": "target",
480
+ "type": "address"
481
+ },
482
+ {
483
+ "indexed": false,
484
+ "internalType": "uint32",
485
+ "name": "delay",
486
+ "type": "uint32"
487
+ },
488
+ {
489
+ "indexed": false,
490
+ "internalType": "uint48",
491
+ "name": "since",
492
+ "type": "uint48"
493
+ }
494
+ ],
495
+ "name": "TargetAdminDelayUpdated",
496
+ "type": "event"
497
+ },
498
+ {
499
+ "anonymous": false,
500
+ "inputs": [
501
+ {
502
+ "indexed": true,
503
+ "internalType": "address",
504
+ "name": "target",
505
+ "type": "address"
506
+ },
507
+ {
508
+ "indexed": false,
509
+ "internalType": "bool",
510
+ "name": "closed",
511
+ "type": "bool"
512
+ }
513
+ ],
514
+ "name": "TargetClosed",
515
+ "type": "event"
516
+ },
517
+ {
518
+ "anonymous": false,
519
+ "inputs": [
520
+ {
521
+ "indexed": true,
522
+ "internalType": "address",
523
+ "name": "target",
524
+ "type": "address"
525
+ },
526
+ {
527
+ "indexed": false,
528
+ "internalType": "bytes4",
529
+ "name": "selector",
530
+ "type": "bytes4"
531
+ },
532
+ {
533
+ "indexed": true,
534
+ "internalType": "uint64",
535
+ "name": "roleId",
536
+ "type": "uint64"
537
+ }
538
+ ],
539
+ "name": "TargetFunctionRoleUpdated",
540
+ "type": "event"
541
+ },
542
+ {
543
+ "anonymous": false,
544
+ "inputs": [
545
+ {
546
+ "indexed": true,
547
+ "internalType": "address",
548
+ "name": "implementation",
549
+ "type": "address"
550
+ }
551
+ ],
552
+ "name": "Upgraded",
553
+ "type": "event"
554
+ },
555
+ {
556
+ "inputs": [],
557
+ "name": "ADMIN_ROLE",
558
+ "outputs": [
559
+ {
560
+ "internalType": "uint64",
561
+ "name": "",
562
+ "type": "uint64"
563
+ }
564
+ ],
565
+ "stateMutability": "view",
566
+ "type": "function"
567
+ },
568
+ {
569
+ "inputs": [],
570
+ "name": "CONFIGURATION_ROLE",
571
+ "outputs": [
572
+ {
573
+ "internalType": "uint64",
574
+ "name": "",
575
+ "type": "uint64"
576
+ }
577
+ ],
578
+ "stateMutability": "view",
579
+ "type": "function"
580
+ },
581
+ {
582
+ "inputs": [],
583
+ "name": "OPP_FINALIZER_ROLE",
584
+ "outputs": [
585
+ {
586
+ "internalType": "uint64",
587
+ "name": "",
588
+ "type": "uint64"
589
+ }
590
+ ],
591
+ "stateMutability": "view",
592
+ "type": "function"
593
+ },
594
+ {
595
+ "inputs": [],
596
+ "name": "OPP_INBOUND_ROLE",
597
+ "outputs": [
598
+ {
599
+ "internalType": "uint64",
600
+ "name": "",
601
+ "type": "uint64"
602
+ }
603
+ ],
604
+ "stateMutability": "view",
605
+ "type": "function"
606
+ },
607
+ {
608
+ "inputs": [],
609
+ "name": "OPP_RECEIVER_TYPE",
610
+ "outputs": [
611
+ {
612
+ "internalType": "uint64",
613
+ "name": "",
614
+ "type": "uint64"
615
+ }
616
+ ],
617
+ "stateMutability": "view",
618
+ "type": "function"
619
+ },
620
+ {
621
+ "inputs": [],
622
+ "name": "OPP_SENDER_ROLE",
623
+ "outputs": [
624
+ {
625
+ "internalType": "uint64",
626
+ "name": "",
627
+ "type": "uint64"
628
+ }
629
+ ],
630
+ "stateMutability": "view",
631
+ "type": "function"
632
+ },
633
+ {
634
+ "inputs": [],
635
+ "name": "OPP_SENDER_TYPE",
636
+ "outputs": [
637
+ {
638
+ "internalType": "uint64",
639
+ "name": "",
640
+ "type": "uint64"
641
+ }
642
+ ],
643
+ "stateMutability": "view",
644
+ "type": "function"
645
+ },
646
+ {
647
+ "inputs": [],
648
+ "name": "OPP_TESTER_ROLE",
649
+ "outputs": [
650
+ {
651
+ "internalType": "uint64",
652
+ "name": "",
653
+ "type": "uint64"
654
+ }
655
+ ],
656
+ "stateMutability": "view",
657
+ "type": "function"
658
+ },
659
+ {
660
+ "inputs": [],
661
+ "name": "PUBLIC_ROLE",
662
+ "outputs": [
663
+ {
664
+ "internalType": "uint64",
665
+ "name": "",
666
+ "type": "uint64"
667
+ }
668
+ ],
669
+ "stateMutability": "view",
670
+ "type": "function"
671
+ },
672
+ {
673
+ "inputs": [],
674
+ "name": "RECEIPT_BURNER_ROLE",
675
+ "outputs": [
676
+ {
677
+ "internalType": "uint64",
678
+ "name": "",
679
+ "type": "uint64"
680
+ }
681
+ ],
682
+ "stateMutability": "view",
683
+ "type": "function"
684
+ },
685
+ {
686
+ "inputs": [],
687
+ "name": "RECEIPT_MINTER_ROLE",
688
+ "outputs": [
689
+ {
690
+ "internalType": "uint64",
691
+ "name": "",
692
+ "type": "uint64"
693
+ }
694
+ ],
695
+ "stateMutability": "view",
696
+ "type": "function"
697
+ },
698
+ {
699
+ "inputs": [],
700
+ "name": "RECEIPT_TRANSFER_ROLE",
701
+ "outputs": [
702
+ {
703
+ "internalType": "uint64",
704
+ "name": "",
705
+ "type": "uint64"
706
+ }
707
+ ],
708
+ "stateMutability": "view",
709
+ "type": "function"
710
+ },
711
+ {
712
+ "inputs": [],
713
+ "name": "UPGRADE_INTERFACE_VERSION",
714
+ "outputs": [
715
+ {
716
+ "internalType": "string",
717
+ "name": "",
718
+ "type": "string"
719
+ }
720
+ ],
721
+ "stateMutability": "view",
722
+ "type": "function"
723
+ },
724
+ {
725
+ "inputs": [
726
+ {
727
+ "internalType": "address",
728
+ "name": "caller",
729
+ "type": "address"
730
+ },
731
+ {
732
+ "internalType": "address",
733
+ "name": "target",
734
+ "type": "address"
735
+ },
736
+ {
737
+ "internalType": "bytes4",
738
+ "name": "selector",
739
+ "type": "bytes4"
740
+ }
741
+ ],
742
+ "name": "canCall",
743
+ "outputs": [
744
+ {
745
+ "internalType": "bool",
746
+ "name": "immediate",
747
+ "type": "bool"
748
+ },
749
+ {
750
+ "internalType": "uint32",
751
+ "name": "delay",
752
+ "type": "uint32"
753
+ }
754
+ ],
755
+ "stateMutability": "view",
756
+ "type": "function"
757
+ },
758
+ {
759
+ "inputs": [
760
+ {
761
+ "internalType": "address",
762
+ "name": "caller",
763
+ "type": "address"
764
+ },
765
+ {
766
+ "internalType": "address",
767
+ "name": "target",
768
+ "type": "address"
769
+ },
770
+ {
771
+ "internalType": "bytes",
772
+ "name": "data",
773
+ "type": "bytes"
774
+ }
775
+ ],
776
+ "name": "cancel",
777
+ "outputs": [
778
+ {
779
+ "internalType": "uint32",
780
+ "name": "",
781
+ "type": "uint32"
782
+ }
783
+ ],
784
+ "stateMutability": "nonpayable",
785
+ "type": "function"
786
+ },
787
+ {
788
+ "inputs": [
789
+ {
790
+ "internalType": "address",
791
+ "name": "caller",
792
+ "type": "address"
793
+ },
794
+ {
795
+ "internalType": "bytes",
796
+ "name": "data",
797
+ "type": "bytes"
798
+ }
799
+ ],
800
+ "name": "consumeScheduledOp",
801
+ "outputs": [],
802
+ "stateMutability": "nonpayable",
803
+ "type": "function"
804
+ },
805
+ {
806
+ "inputs": [
807
+ {
808
+ "internalType": "address",
809
+ "name": "target",
810
+ "type": "address"
811
+ },
812
+ {
813
+ "internalType": "bytes",
814
+ "name": "data",
815
+ "type": "bytes"
816
+ }
817
+ ],
818
+ "name": "execute",
819
+ "outputs": [
820
+ {
821
+ "internalType": "uint32",
822
+ "name": "",
823
+ "type": "uint32"
824
+ }
825
+ ],
826
+ "stateMutability": "payable",
827
+ "type": "function"
828
+ },
829
+ {
830
+ "inputs": [],
831
+ "name": "expiration",
832
+ "outputs": [
833
+ {
834
+ "internalType": "uint32",
835
+ "name": "",
836
+ "type": "uint32"
837
+ }
838
+ ],
839
+ "stateMutability": "view",
840
+ "type": "function"
841
+ },
842
+ {
843
+ "inputs": [
844
+ {
845
+ "internalType": "uint64",
846
+ "name": "roleId",
847
+ "type": "uint64"
848
+ },
849
+ {
850
+ "internalType": "address",
851
+ "name": "account",
852
+ "type": "address"
853
+ }
854
+ ],
855
+ "name": "getAccess",
856
+ "outputs": [
857
+ {
858
+ "internalType": "uint48",
859
+ "name": "since",
860
+ "type": "uint48"
861
+ },
862
+ {
863
+ "internalType": "uint32",
864
+ "name": "currentDelay",
865
+ "type": "uint32"
866
+ },
867
+ {
868
+ "internalType": "uint32",
869
+ "name": "pendingDelay",
870
+ "type": "uint32"
871
+ },
872
+ {
873
+ "internalType": "uint48",
874
+ "name": "effect",
875
+ "type": "uint48"
876
+ }
877
+ ],
878
+ "stateMutability": "view",
879
+ "type": "function"
880
+ },
881
+ {
882
+ "inputs": [
883
+ {
884
+ "internalType": "bytes32",
885
+ "name": "id",
886
+ "type": "bytes32"
887
+ }
888
+ ],
889
+ "name": "getNonce",
890
+ "outputs": [
891
+ {
892
+ "internalType": "uint32",
893
+ "name": "",
894
+ "type": "uint32"
895
+ }
896
+ ],
897
+ "stateMutability": "view",
898
+ "type": "function"
899
+ },
900
+ {
901
+ "inputs": [
902
+ {
903
+ "internalType": "uint64",
904
+ "name": "roleId",
905
+ "type": "uint64"
906
+ }
907
+ ],
908
+ "name": "getRoleAdmin",
909
+ "outputs": [
910
+ {
911
+ "internalType": "uint64",
912
+ "name": "",
913
+ "type": "uint64"
914
+ }
915
+ ],
916
+ "stateMutability": "view",
917
+ "type": "function"
918
+ },
919
+ {
920
+ "inputs": [
921
+ {
922
+ "internalType": "uint64",
923
+ "name": "roleId",
924
+ "type": "uint64"
925
+ }
926
+ ],
927
+ "name": "getRoleGrantDelay",
928
+ "outputs": [
929
+ {
930
+ "internalType": "uint32",
931
+ "name": "",
932
+ "type": "uint32"
933
+ }
934
+ ],
935
+ "stateMutability": "view",
936
+ "type": "function"
937
+ },
938
+ {
939
+ "inputs": [
940
+ {
941
+ "internalType": "uint64",
942
+ "name": "roleId",
943
+ "type": "uint64"
944
+ }
945
+ ],
946
+ "name": "getRoleGuardian",
947
+ "outputs": [
948
+ {
949
+ "internalType": "uint64",
950
+ "name": "",
951
+ "type": "uint64"
952
+ }
953
+ ],
954
+ "stateMutability": "view",
955
+ "type": "function"
956
+ },
957
+ {
958
+ "inputs": [
959
+ {
960
+ "internalType": "bytes32",
961
+ "name": "id",
962
+ "type": "bytes32"
963
+ }
964
+ ],
965
+ "name": "getSchedule",
966
+ "outputs": [
967
+ {
968
+ "internalType": "uint48",
969
+ "name": "",
970
+ "type": "uint48"
971
+ }
972
+ ],
973
+ "stateMutability": "view",
974
+ "type": "function"
975
+ },
976
+ {
977
+ "inputs": [
978
+ {
979
+ "internalType": "address",
980
+ "name": "target",
981
+ "type": "address"
982
+ }
983
+ ],
984
+ "name": "getTargetAdminDelay",
985
+ "outputs": [
986
+ {
987
+ "internalType": "uint32",
988
+ "name": "",
989
+ "type": "uint32"
990
+ }
991
+ ],
992
+ "stateMutability": "view",
993
+ "type": "function"
994
+ },
995
+ {
996
+ "inputs": [
997
+ {
998
+ "internalType": "address",
999
+ "name": "target",
1000
+ "type": "address"
1001
+ },
1002
+ {
1003
+ "internalType": "bytes4",
1004
+ "name": "selector",
1005
+ "type": "bytes4"
1006
+ }
1007
+ ],
1008
+ "name": "getTargetFunctionRole",
1009
+ "outputs": [
1010
+ {
1011
+ "internalType": "uint64",
1012
+ "name": "",
1013
+ "type": "uint64"
1014
+ }
1015
+ ],
1016
+ "stateMutability": "view",
1017
+ "type": "function"
1018
+ },
1019
+ {
1020
+ "inputs": [
1021
+ {
1022
+ "internalType": "uint64",
1023
+ "name": "roleId",
1024
+ "type": "uint64"
1025
+ },
1026
+ {
1027
+ "internalType": "address",
1028
+ "name": "account",
1029
+ "type": "address"
1030
+ },
1031
+ {
1032
+ "internalType": "uint32",
1033
+ "name": "executionDelay",
1034
+ "type": "uint32"
1035
+ }
1036
+ ],
1037
+ "name": "grantRole",
1038
+ "outputs": [],
1039
+ "stateMutability": "nonpayable",
1040
+ "type": "function"
1041
+ },
1042
+ {
1043
+ "inputs": [
1044
+ {
1045
+ "internalType": "uint64",
1046
+ "name": "roleId",
1047
+ "type": "uint64"
1048
+ },
1049
+ {
1050
+ "internalType": "address",
1051
+ "name": "account",
1052
+ "type": "address"
1053
+ }
1054
+ ],
1055
+ "name": "hasRole",
1056
+ "outputs": [
1057
+ {
1058
+ "internalType": "bool",
1059
+ "name": "isMember",
1060
+ "type": "bool"
1061
+ },
1062
+ {
1063
+ "internalType": "uint32",
1064
+ "name": "executionDelay",
1065
+ "type": "uint32"
1066
+ }
1067
+ ],
1068
+ "stateMutability": "view",
1069
+ "type": "function"
1070
+ },
1071
+ {
1072
+ "inputs": [
1073
+ {
1074
+ "internalType": "address",
1075
+ "name": "caller",
1076
+ "type": "address"
1077
+ },
1078
+ {
1079
+ "internalType": "address",
1080
+ "name": "target",
1081
+ "type": "address"
1082
+ },
1083
+ {
1084
+ "internalType": "bytes",
1085
+ "name": "data",
1086
+ "type": "bytes"
1087
+ }
1088
+ ],
1089
+ "name": "hashOperation",
1090
+ "outputs": [
1091
+ {
1092
+ "internalType": "bytes32",
1093
+ "name": "",
1094
+ "type": "bytes32"
1095
+ }
1096
+ ],
1097
+ "stateMutability": "view",
1098
+ "type": "function"
1099
+ },
1100
+ {
1101
+ "inputs": [
1102
+ {
1103
+ "internalType": "address",
1104
+ "name": "initialAdmin",
1105
+ "type": "address"
1106
+ }
1107
+ ],
1108
+ "name": "initialize",
1109
+ "outputs": [],
1110
+ "stateMutability": "nonpayable",
1111
+ "type": "function"
1112
+ },
1113
+ {
1114
+ "inputs": [
1115
+ {
1116
+ "internalType": "address",
1117
+ "name": "target",
1118
+ "type": "address"
1119
+ }
1120
+ ],
1121
+ "name": "isTargetClosed",
1122
+ "outputs": [
1123
+ {
1124
+ "internalType": "bool",
1125
+ "name": "",
1126
+ "type": "bool"
1127
+ }
1128
+ ],
1129
+ "stateMutability": "view",
1130
+ "type": "function"
1131
+ },
1132
+ {
1133
+ "inputs": [
1134
+ {
1135
+ "internalType": "uint64",
1136
+ "name": "roleId",
1137
+ "type": "uint64"
1138
+ },
1139
+ {
1140
+ "internalType": "string",
1141
+ "name": "label",
1142
+ "type": "string"
1143
+ }
1144
+ ],
1145
+ "name": "labelRole",
1146
+ "outputs": [],
1147
+ "stateMutability": "nonpayable",
1148
+ "type": "function"
1149
+ },
1150
+ {
1151
+ "inputs": [
1152
+ {
1153
+ "internalType": "address",
1154
+ "name": "_outpostManager",
1155
+ "type": "address"
1156
+ }
1157
+ ],
1158
+ "name": "managerHandoff",
1159
+ "outputs": [],
1160
+ "stateMutability": "nonpayable",
1161
+ "type": "function"
1162
+ },
1163
+ {
1164
+ "inputs": [],
1165
+ "name": "minSetback",
1166
+ "outputs": [
1167
+ {
1168
+ "internalType": "uint32",
1169
+ "name": "",
1170
+ "type": "uint32"
1171
+ }
1172
+ ],
1173
+ "stateMutability": "view",
1174
+ "type": "function"
1175
+ },
1176
+ {
1177
+ "inputs": [
1178
+ {
1179
+ "internalType": "bytes[]",
1180
+ "name": "data",
1181
+ "type": "bytes[]"
1182
+ }
1183
+ ],
1184
+ "name": "multicall",
1185
+ "outputs": [
1186
+ {
1187
+ "internalType": "bytes[]",
1188
+ "name": "results",
1189
+ "type": "bytes[]"
1190
+ }
1191
+ ],
1192
+ "stateMutability": "nonpayable",
1193
+ "type": "function"
1194
+ },
1195
+ {
1196
+ "inputs": [],
1197
+ "name": "proxiableUUID",
1198
+ "outputs": [
1199
+ {
1200
+ "internalType": "bytes32",
1201
+ "name": "",
1202
+ "type": "bytes32"
1203
+ }
1204
+ ],
1205
+ "stateMutability": "view",
1206
+ "type": "function"
1207
+ },
1208
+ {
1209
+ "inputs": [
1210
+ {
1211
+ "internalType": "uint64",
1212
+ "name": "roleId",
1213
+ "type": "uint64"
1214
+ },
1215
+ {
1216
+ "internalType": "address",
1217
+ "name": "callerConfirmation",
1218
+ "type": "address"
1219
+ }
1220
+ ],
1221
+ "name": "renounceRole",
1222
+ "outputs": [],
1223
+ "stateMutability": "nonpayable",
1224
+ "type": "function"
1225
+ },
1226
+ {
1227
+ "inputs": [
1228
+ {
1229
+ "internalType": "uint64",
1230
+ "name": "roleId",
1231
+ "type": "uint64"
1232
+ },
1233
+ {
1234
+ "internalType": "address",
1235
+ "name": "account",
1236
+ "type": "address"
1237
+ }
1238
+ ],
1239
+ "name": "revokeRole",
1240
+ "outputs": [],
1241
+ "stateMutability": "nonpayable",
1242
+ "type": "function"
1243
+ },
1244
+ {
1245
+ "inputs": [
1246
+ {
1247
+ "internalType": "address",
1248
+ "name": "target",
1249
+ "type": "address"
1250
+ },
1251
+ {
1252
+ "internalType": "bytes",
1253
+ "name": "data",
1254
+ "type": "bytes"
1255
+ },
1256
+ {
1257
+ "internalType": "uint48",
1258
+ "name": "when",
1259
+ "type": "uint48"
1260
+ }
1261
+ ],
1262
+ "name": "schedule",
1263
+ "outputs": [
1264
+ {
1265
+ "internalType": "bytes32",
1266
+ "name": "operationId",
1267
+ "type": "bytes32"
1268
+ },
1269
+ {
1270
+ "internalType": "uint32",
1271
+ "name": "nonce",
1272
+ "type": "uint32"
1273
+ }
1274
+ ],
1275
+ "stateMutability": "nonpayable",
1276
+ "type": "function"
1277
+ },
1278
+ {
1279
+ "inputs": [
1280
+ {
1281
+ "internalType": "uint64",
1282
+ "name": "roleId",
1283
+ "type": "uint64"
1284
+ },
1285
+ {
1286
+ "internalType": "uint32",
1287
+ "name": "newDelay",
1288
+ "type": "uint32"
1289
+ }
1290
+ ],
1291
+ "name": "setGrantDelay",
1292
+ "outputs": [],
1293
+ "stateMutability": "nonpayable",
1294
+ "type": "function"
1295
+ },
1296
+ {
1297
+ "inputs": [
1298
+ {
1299
+ "internalType": "uint64",
1300
+ "name": "roleId",
1301
+ "type": "uint64"
1302
+ },
1303
+ {
1304
+ "internalType": "uint64",
1305
+ "name": "admin",
1306
+ "type": "uint64"
1307
+ }
1308
+ ],
1309
+ "name": "setRoleAdmin",
1310
+ "outputs": [],
1311
+ "stateMutability": "nonpayable",
1312
+ "type": "function"
1313
+ },
1314
+ {
1315
+ "inputs": [
1316
+ {
1317
+ "internalType": "uint64",
1318
+ "name": "roleId",
1319
+ "type": "uint64"
1320
+ },
1321
+ {
1322
+ "internalType": "uint64",
1323
+ "name": "guardian",
1324
+ "type": "uint64"
1325
+ }
1326
+ ],
1327
+ "name": "setRoleGuardian",
1328
+ "outputs": [],
1329
+ "stateMutability": "nonpayable",
1330
+ "type": "function"
1331
+ },
1332
+ {
1333
+ "inputs": [
1334
+ {
1335
+ "internalType": "address",
1336
+ "name": "target",
1337
+ "type": "address"
1338
+ },
1339
+ {
1340
+ "internalType": "uint32",
1341
+ "name": "newDelay",
1342
+ "type": "uint32"
1343
+ }
1344
+ ],
1345
+ "name": "setTargetAdminDelay",
1346
+ "outputs": [],
1347
+ "stateMutability": "nonpayable",
1348
+ "type": "function"
1349
+ },
1350
+ {
1351
+ "inputs": [
1352
+ {
1353
+ "internalType": "address",
1354
+ "name": "target",
1355
+ "type": "address"
1356
+ },
1357
+ {
1358
+ "internalType": "bool",
1359
+ "name": "closed",
1360
+ "type": "bool"
1361
+ }
1362
+ ],
1363
+ "name": "setTargetClosed",
1364
+ "outputs": [],
1365
+ "stateMutability": "nonpayable",
1366
+ "type": "function"
1367
+ },
1368
+ {
1369
+ "inputs": [
1370
+ {
1371
+ "internalType": "address",
1372
+ "name": "target",
1373
+ "type": "address"
1374
+ },
1375
+ {
1376
+ "internalType": "bytes4[]",
1377
+ "name": "selectors",
1378
+ "type": "bytes4[]"
1379
+ },
1380
+ {
1381
+ "internalType": "uint64",
1382
+ "name": "roleId",
1383
+ "type": "uint64"
1384
+ }
1385
+ ],
1386
+ "name": "setTargetFunctionRole",
1387
+ "outputs": [],
1388
+ "stateMutability": "nonpayable",
1389
+ "type": "function"
1390
+ },
1391
+ {
1392
+ "inputs": [
1393
+ {
1394
+ "internalType": "address",
1395
+ "name": "target",
1396
+ "type": "address"
1397
+ },
1398
+ {
1399
+ "internalType": "address",
1400
+ "name": "newAuthority",
1401
+ "type": "address"
1402
+ }
1403
+ ],
1404
+ "name": "updateAuthority",
1405
+ "outputs": [],
1406
+ "stateMutability": "nonpayable",
1407
+ "type": "function"
1408
+ },
1409
+ {
1410
+ "inputs": [
1411
+ {
1412
+ "internalType": "address",
1413
+ "name": "newImplementation",
1414
+ "type": "address"
1415
+ },
1416
+ {
1417
+ "internalType": "bytes",
1418
+ "name": "data",
1419
+ "type": "bytes"
1420
+ }
1421
+ ],
1422
+ "name": "upgradeToAndCall",
1423
+ "outputs": [],
1424
+ "stateMutability": "payable",
1425
+ "type": "function"
1426
+ }
1427
+ ],
1428
+ "bytecode": "0x60a0806040523460295730608052613017908161002f82396080518181816113120152612df70152f35b600080fdfe6040608081526004908136101561001557600080fd5b600090813560e01c806308d6122d14611d045780630b0a93ba14611cd757806312be872714611c9b578063167bd39514611c0457806318ff183c14611b655780631cff79cd14611a4a57806325c471a0146118085780633078f114146117af57806330cae187146117015780633a7016d4146116df5780633adc277a146116b85780633ca7c02a146116975780634136a33c146116595780634665096d1461163c5780634c1da1e21461160a5780634db51f5e146115e85780634f1ef28614611438578063529629521461137657806352d1902d146112fd578063530dd456146112c45780636d1a7473146112a95780636d5115bd1461123e578063743112cd1461121c57806375b238fc146112025780638293ace0146111e0578063853551b81461112957806394c7d7ee14611068578063a166aa8914611017578063a64d95ce14610f10578063a80e2a2214610eee578063abd9bd2a14610ec9578063ac3136c814610bf9578063ac9650d814610a46578063ad3cb1cc14610a02578063b12ed45e146109e0578063b700961314610994578063b7d2b16214610963578063c4d66de8146107f5578063cc1b6c81146107d8578063cd3c3f5e146107bd578063d1f856ee1461076d578063d22a40d01461074b578063d22b598914610676578063d6bb62c61461049f578063efac70341461047d578063f801a698146102795763fe0776f51461022657600080fd5b3461027557806003193601126102755761023e611e50565b610246611e0a565b91336001600160a01b0384160361026657509061026291612733565b5080f35b51635f159e6360e01b81528490fd5b5080fd5b5091903461047657606036600319011261047657610295611df4565b6024356001600160401b038111610479576102b39036908501611e7c565b92906044359365ffffffffffff92838616809603610476576102d782848733612819565b9690506102e342612f0f565b6102f563ffffffff80991680926122ef565b90158015610461575b610413579085809216908180821191180218169361031e8385883361215b565b97888352600080516020612f6283398151915291826020528a842054168015159081610402575b506103eb57507f82a2da5dee54ea8021c6545b4444620291e07ee83be6dd57edb175062715f3b49369ffffffff0000000000009796938a846103dc948c809a97526020522080548560018b8360301c16019a8b169b8c9b60301b169169ffffffffffffffffffff1916171790558a51948594855233602086015260018060a01b03168b85015260806060850152608084019161213a565b0390a382519182526020820152f35b895163813e945960e01b8152908101899052602490fd5b61040c9150612586565b1538610345565b868961045d8c610423888a612803565b90516381c6f24b60e01b8152339381019384526001600160a01b0390941660208401526001600160e01b0319166040830152829160600190565b0390fd5b5081151580156102fe575085811682106102fe565b80fd5b8280fd5b50346102755781600319360112610275576020905167c58ec56834342af58152f35b50829034610479576104cc906104b436611fa3565b6104c48183979399949599612803565b95848961215b565b93848252600080516020612f628339815191529060209382855265ffffffffffff988987862054161560001461051357865163060a299b60e41b8152808a01899052602490fd5b94979396949293926001600160a01b0390811691338303610584575b50505050507fbd9ac67a6e2f6463b80927326310338bcbb4bdb7936ce1365ea3e01067e7b9f793949550818552855263ffffffff82852080549065ffffffffffff198216905560301c16928392519480a38152f35b60008052600080516020612fa28339815191528a5287600020336000528a5287600020546105c06001600160701b038d83169260301c1661254b565b5050508015159b8c61065e575b50501698898852600080516020612fc283398151915289528688209263ffffffff60e01b16928389528952610616336106116001600160401b038a8c20541661205e565b612297565b5090159081610655575b5061062c57808061052f565b608493508890865193630ff89d4760e21b85523390850152602484015260448301526064820152fd5b9050158a610620565b90919b5061066b42612f0f565b161015998b806105cd565b50346102755780600319360112610275577fa56b76017453f399ec2327ba00375dbfb1fd070ff854341ad6191e6a2e2de19c6106b0611df4565b916106b9611eec565b926106c261231f565b60018060a01b031692838552610745600080516020612fc283398151915292836020526001600160701b039361070084866001858c20015416612cfe565b959091888a526020526001838a200191166001600160701b0319825416179055519283928390929165ffffffffffff60209163ffffffff604085019616845216910152565b0390a280f35b50346102755781600319360112610275576020905167ae92c175e0db63cd8152f35b50346102755780600319360112610275576107b99061079b61078d611e50565b610795611e0a565b90612297565b9151901515815263ffffffff90911660208201529081906040820190565b0390f35b50346102755781600319360112610275576020905160018152f35b503461027557816003193601126102755760209051620697808152f35b50823461047957602036600319011261047957610810611df4565b907ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009182549160ff83861c1615926001600160401b0381168015908161095b575b6001149081610951575b159081610948575b506109395767ffffffffffffffff19811660011785558361091a575b50610888612ece565b610890612ece565b610898612ece565b6001600160a01b0382161561090357506108b1906123f5565b506108ba612ece565b6108c2578280f35b805468ff00000000000000001916905551600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a181808280f35b8451630409d6d160e11b8152908101869052602490fd5b68ffffffffffffffffff1916680100000000000000011784558661087f565b50845163f92ee8a960e01b8152fd5b90501588610863565b303b15915061085b565b859150610851565b5034610275573660031901126104765761026261097e611e50565b610986611e0a565b9061098f61231f565b612733565b50903461047657606036600319011261047657506109b0611df4565b906109b9611e0a565b916044356001600160e01b0319811681036109db576107b99361079b926121e6565b600080fd5b503461027557816003193601126102755760209051670b49c88cd3d1ba3c8152f35b503461027557816003193601126102755780516107b991610a2282611eff565b60058252640352e302e360dc1b602083015251918291602083526020830190612013565b5091346102755760209182600319360112610476576001600160401b03823581811161047957610a799036908501611e20565b9190938651908682019082821084831117610be45750808852848252610a9e846121a5565b95610aab89519788611f30565b848752610ab7856121a5565b601f190188875b828110610bd457505050855b858110610b305750505050505083519280840190808552835180925280868601968360051b870101940192955b828710610b045785850386f35b909192938280610b20600193603f198a82030186528851612013565b9601920196019592919092610af7565b8060051b820135601e1983360301811215610bd0578201803590868211610bcc578a01908036038213610bcc57888060019493610b908f8f610bb0968c8c610b9c945195838794868601998a37840191858301938a855251938491611ff0565b01038084520182611f30565b5190305af4610ba96127d3565b9030612e6b565b610bba828b6121bc565b52610bc5818a6121bc565b5001610aca565b8880fd5b8780fd5b606082828c010152018990610abe565b604190634e487b7160e01b6000525260246000fd5b508290346104795760209182600319360112610ec557610c17611df4565b91610c2061231f565b610d9960018060a01b0384169384600052600080516020612fc2833981519152808752858780866000209363f892e6e760e01b948560005282528760002090670b49c88cd3d1ba3c809b81976001600160401b03199483868254161790558b519081527f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151968791a384600052808352858585858c60002063287d521960e11b908160005282528d60002085888254161790558d51908152a384600052808352858585858c600020639469df8960e01b908160005282528d60002085888254161790558d51908152a384600052808352858585858c600020630b428b0b60e41b908160005282528d60002085888254161790558d51908152a384600052808352858585858c60002063219a317d60e21b908160005282528d60002085888254161790558d51908152a38460005282528760002090631cff79cd60e01b918260005283528589600020918254161790558751908152a36123f5565b5082600052600080516020612fa2833981519152938481528160002033600052815265ffffffffffff808360002054161593600085600014610e7d575081610de042612f0f565b1690828211610e685750806001600160701b03610e3c9298865192610e0484611eff565b8352858301906000825289600052865286600020336000528652848760002093511665ffffffffffff198454161783555116906123c9565b825195600087521690850152830152600080516020612f8283398151915260603393a36102623361269a565b601190634e487b7160e01b6000525260246000fd5b96610ec09150868852808452848820338952845284610eaa6001600160701b03828b205460301c16612d84565b99909289825286528181203382528652206123c9565b610e3c565b8380fd5b503461027557602090610ee7610ede36611fa3565b9291909161215b565b9051908152f35b5034610275578160031936011261027557602090516711d8f2d2caa4286e8152f35b50829034610479578060031936011261047957610f2b611e50565b90610f34611eec565b91610f3d61231f565b6001600160401b0393848216948514611000575091610745610fa692846001610f9e856001600160701b0383610f937ffeb69018ee8b8fd50ea86348f1267d07673379f72cffdeccec63853ee8ce8b489b612038565b015460801c16612cfe565b969092612038565b0180546dffffffffffffffffffffffffffff60801b191660809290921b6dffffffffffffffffffffffffffff60801b169190911790555163ffffffff909216825265ffffffffffff90921660208201529081906040820190565b825163061c6a4360e21b8152908101859052602490fd5b50346102755760203660031901126102755760209160ff9060019083906001600160a01b03611044611df4565b168152600080516020612fc2833981519152865220015460701c1690519015158152f35b508290346104795761107936611ea9565b9390928051638fb3603760e01b908181526020818581335afa90811561111f5788916110dc575b506001600160e01b031916036110c557856102626110c08787338861215b565b6125af565b602492505190630641fee960e31b82523390820152fd5b90506020813d602011611117575b816110f760209383611f30565b81010312610bd057516001600160e01b031981168103610bd057886110a0565b3d91506110ea565b83513d8a823e3d90fd5b509134610275578260031936011261027557611143611e50565b6001600160401b03916024358381116111dc5790611165849236908301611e7c565b92909361117061231f565b169384159081156111d2575b506111bb57506107457f1256f5b5ecb89caec12db449738f2fbcd1ba5806cf38f35413f4e5c15bf6a4509394955192839260208452602084019161213a565b855163061c6a4360e21b8152908101849052602490fd5b905084143861117c565b8480fd5b50346102755781600319360112610275576020905167973871d7e74f37488152f35b503461027557816003193601126102755751908152602090f35b50346102755781600319360112610275576020905167054ed88267a063458152f35b5034610275578060031936011261027557611257611df4565b6024359063ffffffff60e01b82168092036109db576020936001600160401b0392849260018060a01b0316600052600080516020612fc283398151915286528260002090825285522054169051908152f35b50346102755781600319360112610275576020905160028152f35b5034610275576020366003190112610275576020906001600160401b0360016112f36112ee611e50565b612038565b0154169051908152f35b509034610476578060031936011261047657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300361136957602090517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b5163703e46dd60e11b8152fd5b50829034610479578060031936011261047957611391611e50565b9061139a611e66565b906113a361231f565b6001600160401b0392838116948515801561142f575b61141857506113c9600191612038565b019067ffffffffffffffff60401b838354921b169067ffffffffffffffff60401b191617905516907f7a8059630b897b5de4c08ade69f8b90c3ead1f8596d62d10b6c4d14a0afb4ae28380a380f35b825163061c6a4360e21b8152908101869052602490fd5b508486146113b9565b508083916003193601126104795761144e611df4565b906024356001600160401b0381116111dc57366023820112156111dc5761147e9036906024818701359101611f6c565b611486612ded565b61148e61231f565b611496612ded565b81516352d1902d60e01b81526001600160a01b03841693906020818781885afa8791816115b4575b506114da578351634c9c8ce360e01b8152808701869052602490fd5b84879487927f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc9081810361159e5750843b156115885780546001600160a01b03191683179055518592917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a284511561156d5750508083602061026295519101845af46115676127d3565b91612e6b565b92509250503461157c57505080f35b63b398979f60e01b8152fd5b5051634c9c8ce360e01b81529182015260249150fd5b84602491845191632a87526960e21b8352820152fd5b9091506020813d6020116115e0575b816115d060209383611f30565b81010312610bd0575190886114be565b3d91506115c3565b50346102755781600319360112610275576020905167bf1faa41f651ca3a8152f35b50346102755760203660031901126102755760209063ffffffff61163461162f611df4565b6120fb565b915191168152f35b50346102755781600319360112610275576020905162093a808152f35b508234610479576020366003190112610479578160209363ffffffff92358152600080516020612f628339815191528552205460301c169051908152f35b5034610275578160031936011261027557602090516001600160401b038152f35b509034610476576020366003190112610476575065ffffffffffff611634602093356120c1565b50346102755781600319360112610275576020905167fcf45a9de1e9ce348152f35b5082903461047957806003193601126104795761171c611e50565b91611725611e66565b9261172e61231f565b6001600160401b039182821693841580156117a6575b611790575050611755600191612038565b01921691826001600160401b03198254161790557f1fd6dd7631312dfac2205b52913f99de03b4d7e381d5d27d3dbfe0713e6e63408380a380f35b5163061c6a4360e21b8152908101849052602490fd5b50838514611744565b50346102755780600319360112610275576080906117dc6117ce611e50565b6117d6611e0a565b9061207a565b91849194519465ffffffffffff809516865263ffffffff80921660208701521690840152166060820152f35b5082903461047957606036600319011261047957611824611e50565b9061182d611e0a565b926044359163ffffffff948584168094036109db5761184a61231f565b6001600160701b039561186d87600161186289612038565b015460801c1661254b565b5050966001600160401b0396878116978814611a335761188c81612038565b9360018060a01b03169889600052602094855265ffffffffffff93848760002054161597600089600014611944575050600080516020612f82833981519152989694926118ed606099979593611933936118e542612f0f565b9116906122ef565b928651916118fa83611eff565b85851683528d61190f888501928c8452612038565b906000528752858860002093511665ffffffffffff198454161783555116906123c9565b83519586521690840152820152a380f35b9250936119669061195485612038565b8d855288528884205460301c1661254b565b5050938185168c8b8211600014611a0457508a9003908282116119f1575092876060999795938d6119c06119ba6119ec96600080516020612f828339815191529f9d9b995b166119b542612f0f565b6122ef565b94612038565b9082528752209065ffffffffffff60401b67ffffffff000000008295881b1691881b16178817906123c9565b611933565b634e487b7160e01b845260119052602483fd5b8997959250600080516020612f828339815191529b9991509360609a9896946119c06119ba6119ec96846119ab565b845163061c6a4360e21b8152808701899052602490fd5b509190611a5636611ea9565b90611a6295929561231f565b611a6e82828833612819565b94901580611b57575b611b4757611a878383893361215b565b95819663ffffffff80971615801590611b2e575b611b1c575b50611ad3600080516020612f4283398151915293845495611aca611ac48284612803565b8c612cb7565b86553691611f6c565b90344710611aff57509681611af692896020809b51910134855af16115676127d3565b50555191168152f35b604490864790519163cf47918160e01b8352820152346024820152fd5b611b279197506125af565b9538611aa0565b5065ffffffffffff611b3f826120c1565b161515611a9b565b5061045d93509061042391612803565b5063ffffffff851615611a77565b50829034610479578060031936011261047957611b80611df4565b9183611b8a611e0a565b93611b9361231f565b6001600160a01b0390811694853b15610479576024908386519788948593637a9e5e4b60e01b855216878401525af18015611bfa57611bd0578380f35b6001600160401b038311611be75750528180808380f35b634e487b7160e01b845260419052602483fd5b82513d86823e3d90fd5b5034610275578060031936011261027557611c1d611df4565b60243590811515809203610ec5577f90d4e7bb7e5d933792b3562e1741306f8be94837e1348dacef9b6f1df56eb13891602091611c5861231f565b6001600160a01b0316808652600080516020612fc28339815191528352848620600101805460ff60701b1916607084901b60ff60701b161790559351908152a280f35b50346102755760203660031901126102755760209063ffffffff611ccd6001600160701b0360016118626112ee611e50565b5050915191168152f35b5034610275576020366003190112610275576020906001600160401b03611634611cff611e50565b61205e565b50823461047957606036600319011261047957611d1f611df4565b916024356001600160401b0392838211611df057611d3f91369101611e20565b9190604435938416809403611df057611d5994929461231f565b6001600160a01b0390921691855b858110611d72578680f35b8060051b8201359063ffffffff60e01b8216809203610bd05785857f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151600194828c52602090600080516020612fc283398151915282528c818a822091528252888d20856001600160401b03198254161790558851908152a301611d67565b8580fd5b600435906001600160a01b03821682036109db57565b602435906001600160a01b03821682036109db57565b9181601f840112156109db578235916001600160401b0383116109db576020808501948460051b0101116109db57565b600435906001600160401b03821682036109db57565b602435906001600160401b03821682036109db57565b9181601f840112156109db578235916001600160401b0383116109db57602083818601950101116109db57565b9060406003198301126109db576004356001600160a01b03811681036109db5791602435906001600160401b0382116109db57611ee891600401611e7c565b9091565b6024359063ffffffff821682036109db57565b604081019081106001600160401b03821117611f1a57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b03821117611f1a57604052565b6001600160401b038111611f1a57601f01601f191660200190565b929192611f7882611f51565b91611f866040519384611f30565b8294818452818301116109db578281602093846000960137010152565b60606003198201126109db576001600160a01b039160043583811681036109db579260243590811681036109db5791604435906001600160401b0382116109db57611ee891600401611e7c565b60005b8381106120035750506000910152565b8181015183820152602001611ff3565b9060209161202c81518092818552858086019101611ff0565b601f01601f1916010190565b6001600160401b0316600052600080516020612fa2833981519152602052604060002090565b60016120716001600160401b0392612038565b015460401c1690565b9061208c65ffffffffffff9392612038565b9060018060a01b0316600052602052604060002054906120b76001600160701b038360301c1661254b565b9490931693909291565b600052600080516020612f6283398151915260205265ffffffffffff604060002054166120ed81612586565b156120f85750600090565b90565b6001600160a01b03166000908152600080516020612fc28339815191526020526040902060010154612135906001600160701b031661254b565b505090565b908060209392818452848401376000828201840152601f01601f1916010190565b61219161219f929493604051948593602085019760018060a01b038092168952166040850152606080850152608084019161213a565b03601f198101835282611f30565b51902090565b6001600160401b038111611f1a5760051b60200190565b80518210156121d05760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038281166000908152600080516020612fc28339815191526020526040812060018101549196959392909160701c60ff161561222c5750505050508190565b8216300361225557505061225090600080516020612f428339815191525492612cb7565b149190565b909161227d935063ffffffff60e01b1685526020526001600160401b03604085205416612297565b929015612291575063ffffffff8216159190565b91508190565b906001600160401b03808316036122b2575050600190600090565b6122bb9161207a565b5050919065ffffffffffff80911680151591826122d9575b50509190565b9091506122e542612f0f565b16101538806122d3565b91909165ffffffffffff8080941691160191821161230957565b634e487b7160e01b600052601160045260246000fd5b6123293633612862565b90156123325750565b63ffffffff1661236f5760446123473661297b565b5060405163f07e038f60e01b81523360048201526001600160401b0390911660248201529050fd5b6123c6604051602081019033825230604082015260608082015236608082015236600060a0830137600060a036830101526123be60a082601f19601f3601168101036080810184520182611f30565b5190206125af565b50565b906601000000000000600160a01b0382549160301b16906601000000000000600160a01b031916179055565b6001600160a01b031660008181527f7b4501b7c347294b6ab7642a0f3ba6ad26efef1601fdfb1d54a7ff5bc6709097602090815260408083205465ffffffffffff90811615949392600080516020612fa283398151915292918680156124f157508061246042612f0f565b168181116124dd5792600080516020612f82833981519152949288926124cb866001600160701b036060989786519261249884611eff565b8352858301908c82528c80528652868c208d8d52865284878d2093511665ffffffffffff198454161783555116906123c9565b8251948886521690840152820152a390565b634e487b7160e01b86526011600452602486fd5b9092600080516020612f82833981519152949260609487805284825282882089895282526125466125306001600160701b03858b205460301c16612d84565b968a80528452848a208b8b528452848a206123c9565b6124cb565b61255442612f0f565b63ffffffff8281169265ffffffffffff604082901c81169316831161257f5750919260009250829150565b60201c1692565b62093a8065ffffffffffff809216019080821161230957806125a742612f0f565b169116111590565b6000818152600080516020612f62833981519152908160205260408120549165ffffffffffff9263ffffffff8482169160301c169381156000146126065760405163060a299b60e41b815260048101879052602490fd5b61260f42612f0f565b1681111561263057604051630c65b5bd60e11b815260048101869052602490fd5b61263c90949394612586565b6126815782825260205260408120805465ffffffffffff191690558291907f76a2a46953689d4861a5d3f6ed883ad7e6af674a21f8e162707159fc9dde614d9080a390565b604051631e2975b960e21b815260048101849052602490fd5b6001600160a01b031660008181527f7b4501b7c347294b6ab7642a0f3ba6ad26efef1601fdfb1d54a7ff5bc67090976020526040812054600080516020612fa28339815191529065ffffffffffff161561272d57818052602052604081208282526020528060408120557ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c1668180a3600190565b50905090565b906001600160401b03908183169182146127ba5761275083612038565b9060018060a01b03169260009184835260205265ffffffffffff604083205416156127b357906127a07ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c16692612038565b84825260205280604081205580a3600190565b5091505090565b60405163061c6a4360e21b815260048101839052602490fd5b3d156127fe573d906127e482611f51565b916127f26040519384611f30565b82523d6000602084013e565b606090565b906004116109db57356001600160e01b03191690565b909291906001600160a01b038416300361283757611ee89350612933565b919290600484101561284f5750505050600090600090565b611ee89361285c91612803565b916121e6565b90600481106128bd576001600160a01b03821630146128fd576128849061297b565b92909115806128d2575b6128c75761289b91612297565b90156128bd5763ffffffff808093169116908180821191180218169081159190565b5050600090600090565b505050600090600090565b5030600052600080516020612fc283398151915260205260ff60016040600020015460701c1661288e565b90506004116109db57600080516020612f428339815191525461292c6000356001600160e01b03191630612cb7565b1490600090565b9190600482106128c7576001600160a01b0383163014612957579061288491612b13565b6129619250612803565b61292c600080516020612f42833981519152549130612cb7565b60048110612b0757806004116109db5760009081356001600160e01b031916906310a6aa3760e31b82148015612af7575b8015612ae7575b8015612ad7575b8015612ac7575b612abe5763063fc60f60e21b82148015612aae575b8015612a9e575b612a6e5763012e238d60e51b82148015612a5e575b612a2b5750308252600080516020612fc2833981519152602052604082209082526020526001600160401b036040822054169181929190565b9050602411610476576001600160401b03600435818116810361047957612a53600191612038565b015416916001929190565b50635be958b160e11b82146129f2565b9050602492919211610275576004356001600160a01b0381169081900361047957612a98906120fb565b60019291565b506308d6122d60e01b82146129dd565b5063167bd39560e01b82146129d6565b50506001918190565b5063d22b598960e01b82146129c1565b50635326cae760e11b82146129ba565b5063294b14a960e11b82146129b3565b506330cae18760e01b82146129ac565b50600090600090600090565b60048210612caa576001600160e01b0319612b2e8383612803565b16916310a6aa3760e31b83148015612c9a575b8015612c8a575b8015612c7a575b8015612c6a575b612c5c5763063fc60f60e21b83148015612c4c575b8015612c3c575b612c0c5763012e238d60e51b83148015612bfc575b612bc4575050600090308252600080516020612fc2833981519152602052604082209082526020526001600160401b036040822054169181929190565b9091506024116109db57600401356001600160401b039081811681036109db57612bef600191612038565b0154169060019190600090565b50635be958b160e11b8314612b87565b9091506024116109db576004013560018060a01b0381168091036109db57612c33906120fb565b60019160009190565b506308d6122d60e01b8314612b72565b5063167bd39560e01b8314612b6b565b505050600190600090600090565b5063d22b598960e01b8314612b56565b50635326cae760e11b8314612b4f565b5063294b14a960e11b8314612b48565b506330cae18760e01b8314612b41565b5050600090600090600090565b604080516001600160a01b03909216602083019081526001600160e01b0319909316828201528152606081016001600160401b03811182821017611f1a5760405251902090565b612d0a9092919261254b565b50509163ffffffff8091169081818516818111600014612d6d5703818111612309578167ffffffff0000000092612d53925b16620697808180821191180218166119b542612f0f565b9360201b1665ffffffffffff60401b8460401b1617179190565b5050612d538167ffffffff00000000926000612d3c565b612d8d9061254b565b509091905063ffffffff8083168015612dd8578181116123095767ffffffff0000000091612dbf91166119b542612f0f565b9260201b1665ffffffffffff60401b8360401b16179190565b50612dbf67ffffffff000000009160006119ab565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612e3d575b5050612e2b57565b60405163703e46dd60e11b8152600490fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141590503880612e23565b90612e925750805115612e8057602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580612ec5575b612ea3575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b15612e9b565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c1615612efd57565b604051631afcd79f60e31b8152600490fd5b65ffffffffffff90818111612f22571690565b604490604051906306dfcc6560e41b8252603060048301526024820152fdfe40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0340c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad02f98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0140c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad00a26469706673582212201432eae2de0e5d397c8cf58cb805b5aa753b4c03766a6db11b4621e640599f9164736f6c63430008190033",
1429
+ "deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600090813560e01c806308d6122d14611d045780630b0a93ba14611cd757806312be872714611c9b578063167bd39514611c0457806318ff183c14611b655780631cff79cd14611a4a57806325c471a0146118085780633078f114146117af57806330cae187146117015780633a7016d4146116df5780633adc277a146116b85780633ca7c02a146116975780634136a33c146116595780634665096d1461163c5780634c1da1e21461160a5780634db51f5e146115e85780634f1ef28614611438578063529629521461137657806352d1902d146112fd578063530dd456146112c45780636d1a7473146112a95780636d5115bd1461123e578063743112cd1461121c57806375b238fc146112025780638293ace0146111e0578063853551b81461112957806394c7d7ee14611068578063a166aa8914611017578063a64d95ce14610f10578063a80e2a2214610eee578063abd9bd2a14610ec9578063ac3136c814610bf9578063ac9650d814610a46578063ad3cb1cc14610a02578063b12ed45e146109e0578063b700961314610994578063b7d2b16214610963578063c4d66de8146107f5578063cc1b6c81146107d8578063cd3c3f5e146107bd578063d1f856ee1461076d578063d22a40d01461074b578063d22b598914610676578063d6bb62c61461049f578063efac70341461047d578063f801a698146102795763fe0776f51461022657600080fd5b3461027557806003193601126102755761023e611e50565b610246611e0a565b91336001600160a01b0384160361026657509061026291612733565b5080f35b51635f159e6360e01b81528490fd5b5080fd5b5091903461047657606036600319011261047657610295611df4565b6024356001600160401b038111610479576102b39036908501611e7c565b92906044359365ffffffffffff92838616809603610476576102d782848733612819565b9690506102e342612f0f565b6102f563ffffffff80991680926122ef565b90158015610461575b610413579085809216908180821191180218169361031e8385883361215b565b97888352600080516020612f6283398151915291826020528a842054168015159081610402575b506103eb57507f82a2da5dee54ea8021c6545b4444620291e07ee83be6dd57edb175062715f3b49369ffffffff0000000000009796938a846103dc948c809a97526020522080548560018b8360301c16019a8b169b8c9b60301b169169ffffffffffffffffffff1916171790558a51948594855233602086015260018060a01b03168b85015260806060850152608084019161213a565b0390a382519182526020820152f35b895163813e945960e01b8152908101899052602490fd5b61040c9150612586565b1538610345565b868961045d8c610423888a612803565b90516381c6f24b60e01b8152339381019384526001600160a01b0390941660208401526001600160e01b0319166040830152829160600190565b0390fd5b5081151580156102fe575085811682106102fe565b80fd5b8280fd5b50346102755781600319360112610275576020905167c58ec56834342af58152f35b50829034610479576104cc906104b436611fa3565b6104c48183979399949599612803565b95848961215b565b93848252600080516020612f628339815191529060209382855265ffffffffffff988987862054161560001461051357865163060a299b60e41b8152808a01899052602490fd5b94979396949293926001600160a01b0390811691338303610584575b50505050507fbd9ac67a6e2f6463b80927326310338bcbb4bdb7936ce1365ea3e01067e7b9f793949550818552855263ffffffff82852080549065ffffffffffff198216905560301c16928392519480a38152f35b60008052600080516020612fa28339815191528a5287600020336000528a5287600020546105c06001600160701b038d83169260301c1661254b565b5050508015159b8c61065e575b50501698898852600080516020612fc283398151915289528688209263ffffffff60e01b16928389528952610616336106116001600160401b038a8c20541661205e565b612297565b5090159081610655575b5061062c57808061052f565b608493508890865193630ff89d4760e21b85523390850152602484015260448301526064820152fd5b9050158a610620565b90919b5061066b42612f0f565b161015998b806105cd565b50346102755780600319360112610275577fa56b76017453f399ec2327ba00375dbfb1fd070ff854341ad6191e6a2e2de19c6106b0611df4565b916106b9611eec565b926106c261231f565b60018060a01b031692838552610745600080516020612fc283398151915292836020526001600160701b039361070084866001858c20015416612cfe565b959091888a526020526001838a200191166001600160701b0319825416179055519283928390929165ffffffffffff60209163ffffffff604085019616845216910152565b0390a280f35b50346102755781600319360112610275576020905167ae92c175e0db63cd8152f35b50346102755780600319360112610275576107b99061079b61078d611e50565b610795611e0a565b90612297565b9151901515815263ffffffff90911660208201529081906040820190565b0390f35b50346102755781600319360112610275576020905160018152f35b503461027557816003193601126102755760209051620697808152f35b50823461047957602036600319011261047957610810611df4565b907ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009182549160ff83861c1615926001600160401b0381168015908161095b575b6001149081610951575b159081610948575b506109395767ffffffffffffffff19811660011785558361091a575b50610888612ece565b610890612ece565b610898612ece565b6001600160a01b0382161561090357506108b1906123f5565b506108ba612ece565b6108c2578280f35b805468ff00000000000000001916905551600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a181808280f35b8451630409d6d160e11b8152908101869052602490fd5b68ffffffffffffffffff1916680100000000000000011784558661087f565b50845163f92ee8a960e01b8152fd5b90501588610863565b303b15915061085b565b859150610851565b5034610275573660031901126104765761026261097e611e50565b610986611e0a565b9061098f61231f565b612733565b50903461047657606036600319011261047657506109b0611df4565b906109b9611e0a565b916044356001600160e01b0319811681036109db576107b99361079b926121e6565b600080fd5b503461027557816003193601126102755760209051670b49c88cd3d1ba3c8152f35b503461027557816003193601126102755780516107b991610a2282611eff565b60058252640352e302e360dc1b602083015251918291602083526020830190612013565b5091346102755760209182600319360112610476576001600160401b03823581811161047957610a799036908501611e20565b9190938651908682019082821084831117610be45750808852848252610a9e846121a5565b95610aab89519788611f30565b848752610ab7856121a5565b601f190188875b828110610bd457505050855b858110610b305750505050505083519280840190808552835180925280868601968360051b870101940192955b828710610b045785850386f35b909192938280610b20600193603f198a82030186528851612013565b9601920196019592919092610af7565b8060051b820135601e1983360301811215610bd0578201803590868211610bcc578a01908036038213610bcc57888060019493610b908f8f610bb0968c8c610b9c945195838794868601998a37840191858301938a855251938491611ff0565b01038084520182611f30565b5190305af4610ba96127d3565b9030612e6b565b610bba828b6121bc565b52610bc5818a6121bc565b5001610aca565b8880fd5b8780fd5b606082828c010152018990610abe565b604190634e487b7160e01b6000525260246000fd5b508290346104795760209182600319360112610ec557610c17611df4565b91610c2061231f565b610d9960018060a01b0384169384600052600080516020612fc2833981519152808752858780866000209363f892e6e760e01b948560005282528760002090670b49c88cd3d1ba3c809b81976001600160401b03199483868254161790558b519081527f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151968791a384600052808352858585858c60002063287d521960e11b908160005282528d60002085888254161790558d51908152a384600052808352858585858c600020639469df8960e01b908160005282528d60002085888254161790558d51908152a384600052808352858585858c600020630b428b0b60e41b908160005282528d60002085888254161790558d51908152a384600052808352858585858c60002063219a317d60e21b908160005282528d60002085888254161790558d51908152a38460005282528760002090631cff79cd60e01b918260005283528589600020918254161790558751908152a36123f5565b5082600052600080516020612fa2833981519152938481528160002033600052815265ffffffffffff808360002054161593600085600014610e7d575081610de042612f0f565b1690828211610e685750806001600160701b03610e3c9298865192610e0484611eff565b8352858301906000825289600052865286600020336000528652848760002093511665ffffffffffff198454161783555116906123c9565b825195600087521690850152830152600080516020612f8283398151915260603393a36102623361269a565b601190634e487b7160e01b6000525260246000fd5b96610ec09150868852808452848820338952845284610eaa6001600160701b03828b205460301c16612d84565b99909289825286528181203382528652206123c9565b610e3c565b8380fd5b503461027557602090610ee7610ede36611fa3565b9291909161215b565b9051908152f35b5034610275578160031936011261027557602090516711d8f2d2caa4286e8152f35b50829034610479578060031936011261047957610f2b611e50565b90610f34611eec565b91610f3d61231f565b6001600160401b0393848216948514611000575091610745610fa692846001610f9e856001600160701b0383610f937ffeb69018ee8b8fd50ea86348f1267d07673379f72cffdeccec63853ee8ce8b489b612038565b015460801c16612cfe565b969092612038565b0180546dffffffffffffffffffffffffffff60801b191660809290921b6dffffffffffffffffffffffffffff60801b169190911790555163ffffffff909216825265ffffffffffff90921660208201529081906040820190565b825163061c6a4360e21b8152908101859052602490fd5b50346102755760203660031901126102755760209160ff9060019083906001600160a01b03611044611df4565b168152600080516020612fc2833981519152865220015460701c1690519015158152f35b508290346104795761107936611ea9565b9390928051638fb3603760e01b908181526020818581335afa90811561111f5788916110dc575b506001600160e01b031916036110c557856102626110c08787338861215b565b6125af565b602492505190630641fee960e31b82523390820152fd5b90506020813d602011611117575b816110f760209383611f30565b81010312610bd057516001600160e01b031981168103610bd057886110a0565b3d91506110ea565b83513d8a823e3d90fd5b509134610275578260031936011261027557611143611e50565b6001600160401b03916024358381116111dc5790611165849236908301611e7c565b92909361117061231f565b169384159081156111d2575b506111bb57506107457f1256f5b5ecb89caec12db449738f2fbcd1ba5806cf38f35413f4e5c15bf6a4509394955192839260208452602084019161213a565b855163061c6a4360e21b8152908101849052602490fd5b905084143861117c565b8480fd5b50346102755781600319360112610275576020905167973871d7e74f37488152f35b503461027557816003193601126102755751908152602090f35b50346102755781600319360112610275576020905167054ed88267a063458152f35b5034610275578060031936011261027557611257611df4565b6024359063ffffffff60e01b82168092036109db576020936001600160401b0392849260018060a01b0316600052600080516020612fc283398151915286528260002090825285522054169051908152f35b50346102755781600319360112610275576020905160028152f35b5034610275576020366003190112610275576020906001600160401b0360016112f36112ee611e50565b612038565b0154169051908152f35b509034610476578060031936011261047657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300361136957602090517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b5163703e46dd60e11b8152fd5b50829034610479578060031936011261047957611391611e50565b9061139a611e66565b906113a361231f565b6001600160401b0392838116948515801561142f575b61141857506113c9600191612038565b019067ffffffffffffffff60401b838354921b169067ffffffffffffffff60401b191617905516907f7a8059630b897b5de4c08ade69f8b90c3ead1f8596d62d10b6c4d14a0afb4ae28380a380f35b825163061c6a4360e21b8152908101869052602490fd5b508486146113b9565b508083916003193601126104795761144e611df4565b906024356001600160401b0381116111dc57366023820112156111dc5761147e9036906024818701359101611f6c565b611486612ded565b61148e61231f565b611496612ded565b81516352d1902d60e01b81526001600160a01b03841693906020818781885afa8791816115b4575b506114da578351634c9c8ce360e01b8152808701869052602490fd5b84879487927f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc9081810361159e5750843b156115885780546001600160a01b03191683179055518592917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a284511561156d5750508083602061026295519101845af46115676127d3565b91612e6b565b92509250503461157c57505080f35b63b398979f60e01b8152fd5b5051634c9c8ce360e01b81529182015260249150fd5b84602491845191632a87526960e21b8352820152fd5b9091506020813d6020116115e0575b816115d060209383611f30565b81010312610bd0575190886114be565b3d91506115c3565b50346102755781600319360112610275576020905167bf1faa41f651ca3a8152f35b50346102755760203660031901126102755760209063ffffffff61163461162f611df4565b6120fb565b915191168152f35b50346102755781600319360112610275576020905162093a808152f35b508234610479576020366003190112610479578160209363ffffffff92358152600080516020612f628339815191528552205460301c169051908152f35b5034610275578160031936011261027557602090516001600160401b038152f35b509034610476576020366003190112610476575065ffffffffffff611634602093356120c1565b50346102755781600319360112610275576020905167fcf45a9de1e9ce348152f35b5082903461047957806003193601126104795761171c611e50565b91611725611e66565b9261172e61231f565b6001600160401b039182821693841580156117a6575b611790575050611755600191612038565b01921691826001600160401b03198254161790557f1fd6dd7631312dfac2205b52913f99de03b4d7e381d5d27d3dbfe0713e6e63408380a380f35b5163061c6a4360e21b8152908101849052602490fd5b50838514611744565b50346102755780600319360112610275576080906117dc6117ce611e50565b6117d6611e0a565b9061207a565b91849194519465ffffffffffff809516865263ffffffff80921660208701521690840152166060820152f35b5082903461047957606036600319011261047957611824611e50565b9061182d611e0a565b926044359163ffffffff948584168094036109db5761184a61231f565b6001600160701b039561186d87600161186289612038565b015460801c1661254b565b5050966001600160401b0396878116978814611a335761188c81612038565b9360018060a01b03169889600052602094855265ffffffffffff93848760002054161597600089600014611944575050600080516020612f82833981519152989694926118ed606099979593611933936118e542612f0f565b9116906122ef565b928651916118fa83611eff565b85851683528d61190f888501928c8452612038565b906000528752858860002093511665ffffffffffff198454161783555116906123c9565b83519586521690840152820152a380f35b9250936119669061195485612038565b8d855288528884205460301c1661254b565b5050938185168c8b8211600014611a0457508a9003908282116119f1575092876060999795938d6119c06119ba6119ec96600080516020612f828339815191529f9d9b995b166119b542612f0f565b6122ef565b94612038565b9082528752209065ffffffffffff60401b67ffffffff000000008295881b1691881b16178817906123c9565b611933565b634e487b7160e01b845260119052602483fd5b8997959250600080516020612f828339815191529b9991509360609a9896946119c06119ba6119ec96846119ab565b845163061c6a4360e21b8152808701899052602490fd5b509190611a5636611ea9565b90611a6295929561231f565b611a6e82828833612819565b94901580611b57575b611b4757611a878383893361215b565b95819663ffffffff80971615801590611b2e575b611b1c575b50611ad3600080516020612f4283398151915293845495611aca611ac48284612803565b8c612cb7565b86553691611f6c565b90344710611aff57509681611af692896020809b51910134855af16115676127d3565b50555191168152f35b604490864790519163cf47918160e01b8352820152346024820152fd5b611b279197506125af565b9538611aa0565b5065ffffffffffff611b3f826120c1565b161515611a9b565b5061045d93509061042391612803565b5063ffffffff851615611a77565b50829034610479578060031936011261047957611b80611df4565b9183611b8a611e0a565b93611b9361231f565b6001600160a01b0390811694853b15610479576024908386519788948593637a9e5e4b60e01b855216878401525af18015611bfa57611bd0578380f35b6001600160401b038311611be75750528180808380f35b634e487b7160e01b845260419052602483fd5b82513d86823e3d90fd5b5034610275578060031936011261027557611c1d611df4565b60243590811515809203610ec5577f90d4e7bb7e5d933792b3562e1741306f8be94837e1348dacef9b6f1df56eb13891602091611c5861231f565b6001600160a01b0316808652600080516020612fc28339815191528352848620600101805460ff60701b1916607084901b60ff60701b161790559351908152a280f35b50346102755760203660031901126102755760209063ffffffff611ccd6001600160701b0360016118626112ee611e50565b5050915191168152f35b5034610275576020366003190112610275576020906001600160401b03611634611cff611e50565b61205e565b50823461047957606036600319011261047957611d1f611df4565b916024356001600160401b0392838211611df057611d3f91369101611e20565b9190604435938416809403611df057611d5994929461231f565b6001600160a01b0390921691855b858110611d72578680f35b8060051b8201359063ffffffff60e01b8216809203610bd05785857f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151600194828c52602090600080516020612fc283398151915282528c818a822091528252888d20856001600160401b03198254161790558851908152a301611d67565b8580fd5b600435906001600160a01b03821682036109db57565b602435906001600160a01b03821682036109db57565b9181601f840112156109db578235916001600160401b0383116109db576020808501948460051b0101116109db57565b600435906001600160401b03821682036109db57565b602435906001600160401b03821682036109db57565b9181601f840112156109db578235916001600160401b0383116109db57602083818601950101116109db57565b9060406003198301126109db576004356001600160a01b03811681036109db5791602435906001600160401b0382116109db57611ee891600401611e7c565b9091565b6024359063ffffffff821682036109db57565b604081019081106001600160401b03821117611f1a57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b03821117611f1a57604052565b6001600160401b038111611f1a57601f01601f191660200190565b929192611f7882611f51565b91611f866040519384611f30565b8294818452818301116109db578281602093846000960137010152565b60606003198201126109db576001600160a01b039160043583811681036109db579260243590811681036109db5791604435906001600160401b0382116109db57611ee891600401611e7c565b60005b8381106120035750506000910152565b8181015183820152602001611ff3565b9060209161202c81518092818552858086019101611ff0565b601f01601f1916010190565b6001600160401b0316600052600080516020612fa2833981519152602052604060002090565b60016120716001600160401b0392612038565b015460401c1690565b9061208c65ffffffffffff9392612038565b9060018060a01b0316600052602052604060002054906120b76001600160701b038360301c1661254b565b9490931693909291565b600052600080516020612f6283398151915260205265ffffffffffff604060002054166120ed81612586565b156120f85750600090565b90565b6001600160a01b03166000908152600080516020612fc28339815191526020526040902060010154612135906001600160701b031661254b565b505090565b908060209392818452848401376000828201840152601f01601f1916010190565b61219161219f929493604051948593602085019760018060a01b038092168952166040850152606080850152608084019161213a565b03601f198101835282611f30565b51902090565b6001600160401b038111611f1a5760051b60200190565b80518210156121d05760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038281166000908152600080516020612fc28339815191526020526040812060018101549196959392909160701c60ff161561222c5750505050508190565b8216300361225557505061225090600080516020612f428339815191525492612cb7565b149190565b909161227d935063ffffffff60e01b1685526020526001600160401b03604085205416612297565b929015612291575063ffffffff8216159190565b91508190565b906001600160401b03808316036122b2575050600190600090565b6122bb9161207a565b5050919065ffffffffffff80911680151591826122d9575b50509190565b9091506122e542612f0f565b16101538806122d3565b91909165ffffffffffff8080941691160191821161230957565b634e487b7160e01b600052601160045260246000fd5b6123293633612862565b90156123325750565b63ffffffff1661236f5760446123473661297b565b5060405163f07e038f60e01b81523360048201526001600160401b0390911660248201529050fd5b6123c6604051602081019033825230604082015260608082015236608082015236600060a0830137600060a036830101526123be60a082601f19601f3601168101036080810184520182611f30565b5190206125af565b50565b906601000000000000600160a01b0382549160301b16906601000000000000600160a01b031916179055565b6001600160a01b031660008181527f7b4501b7c347294b6ab7642a0f3ba6ad26efef1601fdfb1d54a7ff5bc6709097602090815260408083205465ffffffffffff90811615949392600080516020612fa283398151915292918680156124f157508061246042612f0f565b168181116124dd5792600080516020612f82833981519152949288926124cb866001600160701b036060989786519261249884611eff565b8352858301908c82528c80528652868c208d8d52865284878d2093511665ffffffffffff198454161783555116906123c9565b8251948886521690840152820152a390565b634e487b7160e01b86526011600452602486fd5b9092600080516020612f82833981519152949260609487805284825282882089895282526125466125306001600160701b03858b205460301c16612d84565b968a80528452848a208b8b528452848a206123c9565b6124cb565b61255442612f0f565b63ffffffff8281169265ffffffffffff604082901c81169316831161257f5750919260009250829150565b60201c1692565b62093a8065ffffffffffff809216019080821161230957806125a742612f0f565b169116111590565b6000818152600080516020612f62833981519152908160205260408120549165ffffffffffff9263ffffffff8482169160301c169381156000146126065760405163060a299b60e41b815260048101879052602490fd5b61260f42612f0f565b1681111561263057604051630c65b5bd60e11b815260048101869052602490fd5b61263c90949394612586565b6126815782825260205260408120805465ffffffffffff191690558291907f76a2a46953689d4861a5d3f6ed883ad7e6af674a21f8e162707159fc9dde614d9080a390565b604051631e2975b960e21b815260048101849052602490fd5b6001600160a01b031660008181527f7b4501b7c347294b6ab7642a0f3ba6ad26efef1601fdfb1d54a7ff5bc67090976020526040812054600080516020612fa28339815191529065ffffffffffff161561272d57818052602052604081208282526020528060408120557ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c1668180a3600190565b50905090565b906001600160401b03908183169182146127ba5761275083612038565b9060018060a01b03169260009184835260205265ffffffffffff604083205416156127b357906127a07ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c16692612038565b84825260205280604081205580a3600190565b5091505090565b60405163061c6a4360e21b815260048101839052602490fd5b3d156127fe573d906127e482611f51565b916127f26040519384611f30565b82523d6000602084013e565b606090565b906004116109db57356001600160e01b03191690565b909291906001600160a01b038416300361283757611ee89350612933565b919290600484101561284f5750505050600090600090565b611ee89361285c91612803565b916121e6565b90600481106128bd576001600160a01b03821630146128fd576128849061297b565b92909115806128d2575b6128c75761289b91612297565b90156128bd5763ffffffff808093169116908180821191180218169081159190565b5050600090600090565b505050600090600090565b5030600052600080516020612fc283398151915260205260ff60016040600020015460701c1661288e565b90506004116109db57600080516020612f428339815191525461292c6000356001600160e01b03191630612cb7565b1490600090565b9190600482106128c7576001600160a01b0383163014612957579061288491612b13565b6129619250612803565b61292c600080516020612f42833981519152549130612cb7565b60048110612b0757806004116109db5760009081356001600160e01b031916906310a6aa3760e31b82148015612af7575b8015612ae7575b8015612ad7575b8015612ac7575b612abe5763063fc60f60e21b82148015612aae575b8015612a9e575b612a6e5763012e238d60e51b82148015612a5e575b612a2b5750308252600080516020612fc2833981519152602052604082209082526020526001600160401b036040822054169181929190565b9050602411610476576001600160401b03600435818116810361047957612a53600191612038565b015416916001929190565b50635be958b160e11b82146129f2565b9050602492919211610275576004356001600160a01b0381169081900361047957612a98906120fb565b60019291565b506308d6122d60e01b82146129dd565b5063167bd39560e01b82146129d6565b50506001918190565b5063d22b598960e01b82146129c1565b50635326cae760e11b82146129ba565b5063294b14a960e11b82146129b3565b506330cae18760e01b82146129ac565b50600090600090600090565b60048210612caa576001600160e01b0319612b2e8383612803565b16916310a6aa3760e31b83148015612c9a575b8015612c8a575b8015612c7a575b8015612c6a575b612c5c5763063fc60f60e21b83148015612c4c575b8015612c3c575b612c0c5763012e238d60e51b83148015612bfc575b612bc4575050600090308252600080516020612fc2833981519152602052604082209082526020526001600160401b036040822054169181929190565b9091506024116109db57600401356001600160401b039081811681036109db57612bef600191612038565b0154169060019190600090565b50635be958b160e11b8314612b87565b9091506024116109db576004013560018060a01b0381168091036109db57612c33906120fb565b60019160009190565b506308d6122d60e01b8314612b72565b5063167bd39560e01b8314612b6b565b505050600190600090600090565b5063d22b598960e01b8314612b56565b50635326cae760e11b8314612b4f565b5063294b14a960e11b8314612b48565b506330cae18760e01b8314612b41565b5050600090600090600090565b604080516001600160a01b03909216602083019081526001600160e01b0319909316828201528152606081016001600160401b03811182821017611f1a5760405251902090565b612d0a9092919261254b565b50509163ffffffff8091169081818516818111600014612d6d5703818111612309578167ffffffff0000000092612d53925b16620697808180821191180218166119b542612f0f565b9360201b1665ffffffffffff60401b8460401b1617179190565b5050612d538167ffffffff00000000926000612d3c565b612d8d9061254b565b509091905063ffffffff8083168015612dd8578181116123095767ffffffff0000000091612dbf91166119b542612f0f565b9260201b1665ffffffffffff60401b8360401b16179190565b50612dbf67ffffffff000000009160006119ab565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612e3d575b5050612e2b57565b60405163703e46dd60e11b8152600490fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141590503880612e23565b90612e925750805115612e8057602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580612ec5575b612ea3575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b15612e9b565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c1615612efd57565b604051631afcd79f60e31b8152600490fd5b65ffffffffffff90818111612f22571690565b604490604051906306dfcc6560e41b8252603060048301526024820152fdfe40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0340c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad02f98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0140c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad00a26469706673582212201432eae2de0e5d397c8cf58cb805b5aa753b4c03766a6db11b4621e640599f9164736f6c63430008190033",
1430
+ "linkReferences": {},
1431
+ "deployedLinkReferences": {}
1432
+ }