@wireio/stake 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/lib/stake.browser.js +6677 -116
  2. package/lib/stake.browser.js.map +1 -1
  3. package/lib/stake.d.ts +21 -38
  4. package/lib/stake.js +6680 -121
  5. package/lib/stake.js.map +1 -1
  6. package/lib/stake.m.js +6677 -116
  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 +4 -0
  10. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +1153 -0
  11. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  12. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.json +172 -0
  13. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  14. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  15. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  16. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  17. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.dbg.json +4 -0
  18. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.json +24 -0
  19. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.dbg.json +4 -0
  20. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.json +35 -0
  21. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  22. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.json +213 -0
  23. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  24. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.json +138 -0
  25. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  26. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +70 -0
  27. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  28. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +64 -0
  29. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  30. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  31. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.dbg.json +4 -0
  32. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.json +749 -0
  33. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.dbg.json +4 -0
  34. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.json +812 -0
  35. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +4 -0
  36. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.json +10 -0
  37. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +4 -0
  38. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.json +10 -0
  39. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +4 -0
  40. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json +225 -0
  41. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.dbg.json +4 -0
  42. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.json +10 -0
  43. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.dbg.json +4 -0
  44. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.json +10 -0
  45. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  46. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json +813 -0
  47. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +4 -0
  48. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +651 -0
  49. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +4 -0
  50. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +1110 -0
  51. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.dbg.json +4 -0
  52. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.json +391 -0
  53. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.dbg.json +4 -0
  54. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.json +402 -0
  55. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +4 -0
  56. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +1225 -0
  57. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  58. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +927 -0
  59. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  60. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  61. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  62. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +447 -0
  63. package/src/networks/ethereum/contract.ts +53 -90
  64. package/src/networks/ethereum/ethereum.ts +31 -64
  65. package/src/networks/ethereum/types.ts +6 -9
  66. package/src/networks/solana/solana.ts +36 -32
  67. package/src/staker/staker.ts +5 -2
  68. package/src/staker/types.ts +12 -7
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/d79f4e283230a26eb6886de970dd65fb.json"
4
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "Uint64BE",
4
+ "sourceName": "contracts/liqEth/withdrawalVault.sol",
5
+ "abi": [],
6
+ "bytecode": "0x60808060405234601757603a9081601d823930815050f35b600080fdfe600080fdfea26469706673582212206009883a7120fa5882ca176f4ad9a447afb619db82bf8297f300c743f8b13c1a64736f6c63430008190033",
7
+ "deployedBytecode": "0x600080fdfea26469706673582212206009883a7120fa5882ca176f4ad9a447afb619db82bf8297f300c743f8b13c1a64736f6c63430008190033",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/d79f4e283230a26eb6886de970dd65fb.json"
4
+ }
@@ -0,0 +1,447 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "WithdrawalVault",
4
+ "sourceName": "contracts/liqEth/withdrawalVault.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "contract IDepositManager",
10
+ "name": "_dm",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "admin",
16
+ "type": "address"
17
+ }
18
+ ],
19
+ "stateMutability": "nonpayable",
20
+ "type": "constructor"
21
+ },
22
+ {
23
+ "inputs": [],
24
+ "name": "AccessControlBadConfirmation",
25
+ "type": "error"
26
+ },
27
+ {
28
+ "inputs": [
29
+ {
30
+ "internalType": "address",
31
+ "name": "account",
32
+ "type": "address"
33
+ },
34
+ {
35
+ "internalType": "bytes32",
36
+ "name": "neededRole",
37
+ "type": "bytes32"
38
+ }
39
+ ],
40
+ "name": "AccessControlUnauthorizedAccount",
41
+ "type": "error"
42
+ },
43
+ {
44
+ "inputs": [],
45
+ "name": "ReentrancyGuardReentrantCall",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "anonymous": false,
50
+ "inputs": [
51
+ {
52
+ "indexed": false,
53
+ "internalType": "bytes",
54
+ "name": "pubkey",
55
+ "type": "bytes"
56
+ },
57
+ {
58
+ "indexed": false,
59
+ "internalType": "uint64",
60
+ "name": "amount",
61
+ "type": "uint64"
62
+ }
63
+ ],
64
+ "name": "ExitRequested",
65
+ "type": "event"
66
+ },
67
+ {
68
+ "anonymous": false,
69
+ "inputs": [
70
+ {
71
+ "indexed": false,
72
+ "internalType": "uint256",
73
+ "name": "ethAmount",
74
+ "type": "uint256"
75
+ }
76
+ ],
77
+ "name": "FullExitSent",
78
+ "type": "event"
79
+ },
80
+ {
81
+ "anonymous": false,
82
+ "inputs": [
83
+ {
84
+ "indexed": false,
85
+ "internalType": "uint256",
86
+ "name": "ethAmount",
87
+ "type": "uint256"
88
+ }
89
+ ],
90
+ "name": "PartiallyExitSent",
91
+ "type": "event"
92
+ },
93
+ {
94
+ "anonymous": false,
95
+ "inputs": [
96
+ {
97
+ "indexed": false,
98
+ "internalType": "uint256",
99
+ "name": "total",
100
+ "type": "uint256"
101
+ },
102
+ {
103
+ "indexed": false,
104
+ "internalType": "uint256",
105
+ "name": "amount",
106
+ "type": "uint256"
107
+ }
108
+ ],
109
+ "name": "Pulled",
110
+ "type": "event"
111
+ },
112
+ {
113
+ "anonymous": false,
114
+ "inputs": [
115
+ {
116
+ "indexed": true,
117
+ "internalType": "bytes32",
118
+ "name": "role",
119
+ "type": "bytes32"
120
+ },
121
+ {
122
+ "indexed": true,
123
+ "internalType": "bytes32",
124
+ "name": "previousAdminRole",
125
+ "type": "bytes32"
126
+ },
127
+ {
128
+ "indexed": true,
129
+ "internalType": "bytes32",
130
+ "name": "newAdminRole",
131
+ "type": "bytes32"
132
+ }
133
+ ],
134
+ "name": "RoleAdminChanged",
135
+ "type": "event"
136
+ },
137
+ {
138
+ "anonymous": false,
139
+ "inputs": [
140
+ {
141
+ "indexed": true,
142
+ "internalType": "bytes32",
143
+ "name": "role",
144
+ "type": "bytes32"
145
+ },
146
+ {
147
+ "indexed": true,
148
+ "internalType": "address",
149
+ "name": "account",
150
+ "type": "address"
151
+ },
152
+ {
153
+ "indexed": true,
154
+ "internalType": "address",
155
+ "name": "sender",
156
+ "type": "address"
157
+ }
158
+ ],
159
+ "name": "RoleGranted",
160
+ "type": "event"
161
+ },
162
+ {
163
+ "anonymous": false,
164
+ "inputs": [
165
+ {
166
+ "indexed": true,
167
+ "internalType": "bytes32",
168
+ "name": "role",
169
+ "type": "bytes32"
170
+ },
171
+ {
172
+ "indexed": true,
173
+ "internalType": "address",
174
+ "name": "account",
175
+ "type": "address"
176
+ },
177
+ {
178
+ "indexed": true,
179
+ "internalType": "address",
180
+ "name": "sender",
181
+ "type": "address"
182
+ }
183
+ ],
184
+ "name": "RoleRevoked",
185
+ "type": "event"
186
+ },
187
+ {
188
+ "inputs": [],
189
+ "name": "DEFAULT_ADMIN_ROLE",
190
+ "outputs": [
191
+ {
192
+ "internalType": "bytes32",
193
+ "name": "",
194
+ "type": "bytes32"
195
+ }
196
+ ],
197
+ "stateMutability": "view",
198
+ "type": "function"
199
+ },
200
+ {
201
+ "inputs": [],
202
+ "name": "EXIT_ROLE",
203
+ "outputs": [
204
+ {
205
+ "internalType": "bytes32",
206
+ "name": "",
207
+ "type": "bytes32"
208
+ }
209
+ ],
210
+ "stateMutability": "view",
211
+ "type": "function"
212
+ },
213
+ {
214
+ "inputs": [],
215
+ "name": "ORACLE_PULLER_ROLE",
216
+ "outputs": [
217
+ {
218
+ "internalType": "bytes32",
219
+ "name": "",
220
+ "type": "bytes32"
221
+ }
222
+ ],
223
+ "stateMutability": "view",
224
+ "type": "function"
225
+ },
226
+ {
227
+ "inputs": [],
228
+ "name": "dm",
229
+ "outputs": [
230
+ {
231
+ "internalType": "contract IDepositManager",
232
+ "name": "",
233
+ "type": "address"
234
+ }
235
+ ],
236
+ "stateMutability": "view",
237
+ "type": "function"
238
+ },
239
+ {
240
+ "inputs": [
241
+ {
242
+ "internalType": "bytes32",
243
+ "name": "role",
244
+ "type": "bytes32"
245
+ }
246
+ ],
247
+ "name": "getRoleAdmin",
248
+ "outputs": [
249
+ {
250
+ "internalType": "bytes32",
251
+ "name": "",
252
+ "type": "bytes32"
253
+ }
254
+ ],
255
+ "stateMutability": "view",
256
+ "type": "function"
257
+ },
258
+ {
259
+ "inputs": [
260
+ {
261
+ "internalType": "bytes32",
262
+ "name": "role",
263
+ "type": "bytes32"
264
+ },
265
+ {
266
+ "internalType": "address",
267
+ "name": "account",
268
+ "type": "address"
269
+ }
270
+ ],
271
+ "name": "grantRole",
272
+ "outputs": [],
273
+ "stateMutability": "nonpayable",
274
+ "type": "function"
275
+ },
276
+ {
277
+ "inputs": [
278
+ {
279
+ "internalType": "bytes32",
280
+ "name": "role",
281
+ "type": "bytes32"
282
+ },
283
+ {
284
+ "internalType": "address",
285
+ "name": "account",
286
+ "type": "address"
287
+ }
288
+ ],
289
+ "name": "hasRole",
290
+ "outputs": [
291
+ {
292
+ "internalType": "bool",
293
+ "name": "",
294
+ "type": "bool"
295
+ }
296
+ ],
297
+ "stateMutability": "view",
298
+ "type": "function"
299
+ },
300
+ {
301
+ "inputs": [],
302
+ "name": "minBalance",
303
+ "outputs": [
304
+ {
305
+ "internalType": "uint256",
306
+ "name": "",
307
+ "type": "uint256"
308
+ }
309
+ ],
310
+ "stateMutability": "view",
311
+ "type": "function"
312
+ },
313
+ {
314
+ "inputs": [
315
+ {
316
+ "internalType": "bytes32",
317
+ "name": "role",
318
+ "type": "bytes32"
319
+ },
320
+ {
321
+ "internalType": "address",
322
+ "name": "callerConfirmation",
323
+ "type": "address"
324
+ }
325
+ ],
326
+ "name": "renounceRole",
327
+ "outputs": [],
328
+ "stateMutability": "nonpayable",
329
+ "type": "function"
330
+ },
331
+ {
332
+ "inputs": [
333
+ {
334
+ "internalType": "bytes",
335
+ "name": "pubkey",
336
+ "type": "bytes"
337
+ }
338
+ ],
339
+ "name": "requestFullExit",
340
+ "outputs": [],
341
+ "stateMutability": "payable",
342
+ "type": "function"
343
+ },
344
+ {
345
+ "inputs": [
346
+ {
347
+ "internalType": "bytes",
348
+ "name": "pubkey",
349
+ "type": "bytes"
350
+ },
351
+ {
352
+ "internalType": "uint64",
353
+ "name": "amountGwei",
354
+ "type": "uint64"
355
+ }
356
+ ],
357
+ "name": "requestPartialExit",
358
+ "outputs": [],
359
+ "stateMutability": "payable",
360
+ "type": "function"
361
+ },
362
+ {
363
+ "inputs": [
364
+ {
365
+ "internalType": "bytes32",
366
+ "name": "role",
367
+ "type": "bytes32"
368
+ },
369
+ {
370
+ "internalType": "address",
371
+ "name": "account",
372
+ "type": "address"
373
+ }
374
+ ],
375
+ "name": "revokeRole",
376
+ "outputs": [],
377
+ "stateMutability": "nonpayable",
378
+ "type": "function"
379
+ },
380
+ {
381
+ "inputs": [
382
+ {
383
+ "internalType": "uint256",
384
+ "name": "ethAmount",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "name": "sendFullExit",
389
+ "outputs": [],
390
+ "stateMutability": "nonpayable",
391
+ "type": "function"
392
+ },
393
+ {
394
+ "inputs": [
395
+ {
396
+ "internalType": "uint256",
397
+ "name": "ethAmount",
398
+ "type": "uint256"
399
+ }
400
+ ],
401
+ "name": "sendRequestedPartialExit",
402
+ "outputs": [],
403
+ "stateMutability": "nonpayable",
404
+ "type": "function"
405
+ },
406
+ {
407
+ "inputs": [
408
+ {
409
+ "internalType": "contract IDepositManager",
410
+ "name": "_dm",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "name": "setDepositManager",
415
+ "outputs": [],
416
+ "stateMutability": "nonpayable",
417
+ "type": "function"
418
+ },
419
+ {
420
+ "inputs": [
421
+ {
422
+ "internalType": "bytes4",
423
+ "name": "interfaceId",
424
+ "type": "bytes4"
425
+ }
426
+ ],
427
+ "name": "supportsInterface",
428
+ "outputs": [
429
+ {
430
+ "internalType": "bool",
431
+ "name": "",
432
+ "type": "bool"
433
+ }
434
+ ],
435
+ "stateMutability": "view",
436
+ "type": "function"
437
+ },
438
+ {
439
+ "stateMutability": "payable",
440
+ "type": "receive"
441
+ }
442
+ ],
443
+ "bytecode": "0x6080346100dd57601f610f3f38819003918201601f19168301916001600160401b038311848410176100e25780849260409485528339810103126100dd5780516001600160a01b0391828216918290036100dd5760200151918216908183036100dd5760018055662386f26fc1000060035580156100b257600280546001600160a01b0319169190911790556100a95750610099336100f8565b50604051610db690816101898239f35b610099906100f8565b606460405162461bcd60e51b81526020600482015260046024820152630646d20360e41b6044820152fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff1661018457818052816020526040822081835260205260408220600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b509056fe6080604081815260049182361015610022575b505050361561002057600080fd5b005b600092833560e01c91826301ffc9a7146109a457508163228d71a9146108f7578163248a9ca3146108cd5781632f2ff15d146108af57816336568abe146108745781633a8c874a146108395781636f98b63c146108105781637702d0781461055d57816391d14854146105225781639420d9be14610464578163a217fddf14610449578163b5adf0fa14610375578163b995fa9a1461033a578163c01fb7ce1461013757508063c5bb8758146101195763d547741f146100e25780610012565b346101155760016101119161010c6100f9366109f7565b9390928387528660205286200154610c04565b610ca8565b5080f35b5080fd5b50346101155781600319360112610115576020906003549051908152f35b91905060208060031936011261033657823567ffffffffffffffff8111610332576101659036908501610a1d565b9361016e610b2e565b603085036102ff57710961ef480eb55e80d19ad83579a64c0070026000808080845afa610199610d1d565b90806102f5575b156102bf5784818051810103126102ba57840151803403610288576000918291875190878201918a8884376101e76028828d8101888d820152036008810184520182610a75565b51925af16101f3610d1d565b501561024f575091836000606093827fd2f49628dd3cefc134db0ffae198f928cae0d8f68eb60fefa1dba8191db66e8797968551978689978852870152868601378383018501829052830152601f01601f19168101030190a180f35b835162461bcd60e51b81529081018390526013602482015272195e1a5d081c995c5d595cdd0819985a5b1959606a1b6044820152606490fd5b855162461bcd60e51b8152808401869052600c60248201526b0cccaca40dad2e6dac2e8c6d60a31b6044820152606490fd5b600080fd5b855162461bcd60e51b8152808401869052601060248201526f199959481c5d595c9e4819985a5b195960821b6044820152606490fd5b50848151146101a0565b835162461bcd60e51b8152908101839052600d60248201526c0e0eac4d6caf240d8cadccee8d609b1b6044820152606490fd5b8480fd5b8380fd5b505034610115578160031936011261011557602090517f21940a331d6d9c5ebe51f47ff19e442294f7d6fd7de03ec273da3710ab0751f38152f35b9190503461043b57602036600319011261043b5782823592610395610d5d565b61039d610ba8565b6103a8841515610a97565b6103bf6103b760035486610ace565b471015610af1565b6002546001600160a01b031690813b1561043b57835163cb58db9360e01b81529183918391829088905af1801561043f57610427575b507f01a4c640aa236df14f0ec4214256686300efc72f1c8001736f8e7cfc22beb6146020848451908152a16001805580f35b61043090610a4b565b61043b5782386103f5565b8280fd5b83513d84823e3d90fd5b50503461011557816003193601126101155751908152602090f35b9190503461043b57602036600319011261043b5782823592610484610d5d565b61048c610ba8565b610497841515610a97565b6104a66103b760035486610ace565b6002546001600160a01b031690813b1561043b578351637a389d2d60e01b81529183918391829088905af1801561043f5761050e575b507f6470c70a0bbfee9ece4473fff720dc18cc85babd1aa5977190fc4d6f01f8a4346020848451908152a16001805580f35b61051790610a4b565b61043b5782386104dc565b5050346101155760209181610536366109f7565b92908152808552209060018060a01b0316600052825260ff81600020541690519015158152f35b9180915060031936011261043b5767ffffffffffffffff82358181116103325761058a9036908501610a1d565b60249182359384169384810361080c576105a2610b2e565b84156107ca576030830361079857710961ef480eb55e80d19ad83579a64c00700288808080845afa916105d3610d1d565b928061078d575b15610758578280516020948591810103126107545783015180340361072357918a929183928a51610636602882898101958c8c88378c82019067ffffffffffffffff60c01b9060c01b168b820152036008810184520182610a75565b51925af1610642610d1d565b50156106ec579160607fd2f49628dd3cefc134db0ffae198f928cae0d8f68eb60fefa1dba8191db66e879282878b9897968a519586948c8652818d8701528686013783830185018a9052830152601f01601f19168101030190a16002546001600160a01b031694853b156103365783855196879485936335ef05d760e11b85528401525af19081156106e357506106d7575080f35b6106e090610a4b565b80f35b513d84823e3d90fd5b8660138560649389519362461bcd60e51b855284015282015272195e1a5d081c995c5d595cdd0819985a5b1959606a1b6044820152fd5b885162461bcd60e51b8152808b01859052600c818901526b0cccaca40dad2e6dac2e8c6d60a31b6044820152606490fd5b8a80fd5b875162461bcd60e51b81526020818b01526010818801526f199959481c5d595c9e4819985a5b195960821b6044820152606490fd5b5060208351146105da565b855162461bcd60e51b8152602081890152600d818601526c0e0eac4d6caf240d8cadccee8d609b1b6044820152606490fd5b855162461bcd60e51b81526020818901526018818601527f616d6f756e74203d2030207573652066756c6c206578697400000000000000006044820152606490fd5b8780fd5b50503461011557816003193601126101155760025490516001600160a01b039091168152602090f35b505034610115578160031936011261011557602090517f53545467257dcb9f2fdc3692391ae31a3b795279ab7a4102d7716a43072ee9d48152f35b83833461011557610884366109f7565b91336001600160a01b038416036108a057509061011191610ca8565b5163334bd91960e11b81528490fd5b505034610115576001610111916108c86100f9366109f7565b610c2a565b90503461043b57602036600319011261043b57816020936001923581528085522001549051908152f35b90503461043b57602036600319011261043b5780356001600160a01b0381169290839003610336578380528360205280842033855260205260ff81852054161561098757821561095e5750506bffffffffffffffffffffffff60a01b600254161760025580f35b60649250519062461bcd60e51b82526020818301526024820152630646d20360e41b6044820152fd5b9083604492519163e2517d3f60e01b835233908301526024820152fd5b84913461043b57602036600319011261043b573563ffffffff60e01b811680910361043b5760209250637965db0b60e01b81149081156109e6575b5015158152f35b6301ffc9a760e01b149050836109df565b60409060031901126102ba57600435906024356001600160a01b03811681036102ba5790565b9181601f840112156102ba5782359167ffffffffffffffff83116102ba57602083818601950101116102ba57565b67ffffffffffffffff8111610a5f57604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff821117610a5f57604052565b15610a9e57565b60405162461bcd60e51b81526020600482015260086024820152670416d6f756e7420360c41b6044820152606490fd5b91908201809211610adb57565b634e487b7160e01b600052601160045260246000fd5b15610af857565b60405162461bcd60e51b815260206004820152600e60248201526d139bdd08195b9bdd59da0818985b60921b6044820152606490fd5b3360009081527f13790e8c8380f891734a8f1d6403f0459f5223ef5ea780b5ae951981aeccebe760205260409020547f53545467257dcb9f2fdc3692391ae31a3b795279ab7a4102d7716a43072ee9d49060ff1615610b8a5750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b3360009081527f341a941d9ca0160179362911e5304d4f8904ff31154345b4ea6d8e5f1528592360205260409020547f21940a331d6d9c5ebe51f47ff19e442294f7d6fd7de03ec273da3710ab0751f39060ff1615610b8a5750565b80600052600060205260406000203360005260205260ff6040600020541615610b8a5750565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541615600014610ca357808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416600014610ca35780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b3d15610d58573d9067ffffffffffffffff8211610a5f5760405191610d4c601f8201601f191660200184610a75565b82523d6000602084013e565b606090565b600260015414610d6e576002600155565b604051633ee5aeb560e01b8152600490fdfea2646970667358221220ca7de92f007736bc79749d64f0139842b3228695aa57a78a63de70065be3c0f864736f6c63430008190033",
444
+ "deployedBytecode": "0x6080604081815260049182361015610022575b505050361561002057600080fd5b005b600092833560e01c91826301ffc9a7146109a457508163228d71a9146108f7578163248a9ca3146108cd5781632f2ff15d146108af57816336568abe146108745781633a8c874a146108395781636f98b63c146108105781637702d0781461055d57816391d14854146105225781639420d9be14610464578163a217fddf14610449578163b5adf0fa14610375578163b995fa9a1461033a578163c01fb7ce1461013757508063c5bb8758146101195763d547741f146100e25780610012565b346101155760016101119161010c6100f9366109f7565b9390928387528660205286200154610c04565b610ca8565b5080f35b5080fd5b50346101155781600319360112610115576020906003549051908152f35b91905060208060031936011261033657823567ffffffffffffffff8111610332576101659036908501610a1d565b9361016e610b2e565b603085036102ff57710961ef480eb55e80d19ad83579a64c0070026000808080845afa610199610d1d565b90806102f5575b156102bf5784818051810103126102ba57840151803403610288576000918291875190878201918a8884376101e76028828d8101888d820152036008810184520182610a75565b51925af16101f3610d1d565b501561024f575091836000606093827fd2f49628dd3cefc134db0ffae198f928cae0d8f68eb60fefa1dba8191db66e8797968551978689978852870152868601378383018501829052830152601f01601f19168101030190a180f35b835162461bcd60e51b81529081018390526013602482015272195e1a5d081c995c5d595cdd0819985a5b1959606a1b6044820152606490fd5b855162461bcd60e51b8152808401869052600c60248201526b0cccaca40dad2e6dac2e8c6d60a31b6044820152606490fd5b600080fd5b855162461bcd60e51b8152808401869052601060248201526f199959481c5d595c9e4819985a5b195960821b6044820152606490fd5b50848151146101a0565b835162461bcd60e51b8152908101839052600d60248201526c0e0eac4d6caf240d8cadccee8d609b1b6044820152606490fd5b8480fd5b8380fd5b505034610115578160031936011261011557602090517f21940a331d6d9c5ebe51f47ff19e442294f7d6fd7de03ec273da3710ab0751f38152f35b9190503461043b57602036600319011261043b5782823592610395610d5d565b61039d610ba8565b6103a8841515610a97565b6103bf6103b760035486610ace565b471015610af1565b6002546001600160a01b031690813b1561043b57835163cb58db9360e01b81529183918391829088905af1801561043f57610427575b507f01a4c640aa236df14f0ec4214256686300efc72f1c8001736f8e7cfc22beb6146020848451908152a16001805580f35b61043090610a4b565b61043b5782386103f5565b8280fd5b83513d84823e3d90fd5b50503461011557816003193601126101155751908152602090f35b9190503461043b57602036600319011261043b5782823592610484610d5d565b61048c610ba8565b610497841515610a97565b6104a66103b760035486610ace565b6002546001600160a01b031690813b1561043b578351637a389d2d60e01b81529183918391829088905af1801561043f5761050e575b507f6470c70a0bbfee9ece4473fff720dc18cc85babd1aa5977190fc4d6f01f8a4346020848451908152a16001805580f35b61051790610a4b565b61043b5782386104dc565b5050346101155760209181610536366109f7565b92908152808552209060018060a01b0316600052825260ff81600020541690519015158152f35b9180915060031936011261043b5767ffffffffffffffff82358181116103325761058a9036908501610a1d565b60249182359384169384810361080c576105a2610b2e565b84156107ca576030830361079857710961ef480eb55e80d19ad83579a64c00700288808080845afa916105d3610d1d565b928061078d575b15610758578280516020948591810103126107545783015180340361072357918a929183928a51610636602882898101958c8c88378c82019067ffffffffffffffff60c01b9060c01b168b820152036008810184520182610a75565b51925af1610642610d1d565b50156106ec579160607fd2f49628dd3cefc134db0ffae198f928cae0d8f68eb60fefa1dba8191db66e879282878b9897968a519586948c8652818d8701528686013783830185018a9052830152601f01601f19168101030190a16002546001600160a01b031694853b156103365783855196879485936335ef05d760e11b85528401525af19081156106e357506106d7575080f35b6106e090610a4b565b80f35b513d84823e3d90fd5b8660138560649389519362461bcd60e51b855284015282015272195e1a5d081c995c5d595cdd0819985a5b1959606a1b6044820152fd5b885162461bcd60e51b8152808b01859052600c818901526b0cccaca40dad2e6dac2e8c6d60a31b6044820152606490fd5b8a80fd5b875162461bcd60e51b81526020818b01526010818801526f199959481c5d595c9e4819985a5b195960821b6044820152606490fd5b5060208351146105da565b855162461bcd60e51b8152602081890152600d818601526c0e0eac4d6caf240d8cadccee8d609b1b6044820152606490fd5b855162461bcd60e51b81526020818901526018818601527f616d6f756e74203d2030207573652066756c6c206578697400000000000000006044820152606490fd5b8780fd5b50503461011557816003193601126101155760025490516001600160a01b039091168152602090f35b505034610115578160031936011261011557602090517f53545467257dcb9f2fdc3692391ae31a3b795279ab7a4102d7716a43072ee9d48152f35b83833461011557610884366109f7565b91336001600160a01b038416036108a057509061011191610ca8565b5163334bd91960e11b81528490fd5b505034610115576001610111916108c86100f9366109f7565b610c2a565b90503461043b57602036600319011261043b57816020936001923581528085522001549051908152f35b90503461043b57602036600319011261043b5780356001600160a01b0381169290839003610336578380528360205280842033855260205260ff81852054161561098757821561095e5750506bffffffffffffffffffffffff60a01b600254161760025580f35b60649250519062461bcd60e51b82526020818301526024820152630646d20360e41b6044820152fd5b9083604492519163e2517d3f60e01b835233908301526024820152fd5b84913461043b57602036600319011261043b573563ffffffff60e01b811680910361043b5760209250637965db0b60e01b81149081156109e6575b5015158152f35b6301ffc9a760e01b149050836109df565b60409060031901126102ba57600435906024356001600160a01b03811681036102ba5790565b9181601f840112156102ba5782359167ffffffffffffffff83116102ba57602083818601950101116102ba57565b67ffffffffffffffff8111610a5f57604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff821117610a5f57604052565b15610a9e57565b60405162461bcd60e51b81526020600482015260086024820152670416d6f756e7420360c41b6044820152606490fd5b91908201809211610adb57565b634e487b7160e01b600052601160045260246000fd5b15610af857565b60405162461bcd60e51b815260206004820152600e60248201526d139bdd08195b9bdd59da0818985b60921b6044820152606490fd5b3360009081527f13790e8c8380f891734a8f1d6403f0459f5223ef5ea780b5ae951981aeccebe760205260409020547f53545467257dcb9f2fdc3692391ae31a3b795279ab7a4102d7716a43072ee9d49060ff1615610b8a5750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b3360009081527f341a941d9ca0160179362911e5304d4f8904ff31154345b4ea6d8e5f1528592360205260409020547f21940a331d6d9c5ebe51f47ff19e442294f7d6fd7de03ec273da3710ab0751f39060ff1615610b8a5750565b80600052600060205260406000203360005260205260ff6040600020541615610b8a5750565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541615600014610ca357808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff604084205416600014610ca35780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a4600190565b3d15610d58573d9067ffffffffffffffff8211610a5f5760405191610d4c601f8201601f191660200184610a75565b82523d6000602084013e565b606090565b600260015414610d6e576002600155565b604051633ee5aeb560e01b8152600490fdfea2646970667358221220ca7de92f007736bc79749d64f0139842b3228695aa57a78a63de70065be3c0f864736f6c63430008190033",
445
+ "linkReferences": {},
446
+ "deployedLinkReferences": {}
447
+ }