@keep-network/tbtc-v2 0.1.1-dev.9 → 0.1.1-dev.90

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 (115) hide show
  1. package/README.adoc +12 -0
  2. package/artifacts/Bank.json +817 -0
  3. package/artifacts/Bridge.json +2666 -0
  4. package/artifacts/Deposit.json +117 -0
  5. package/artifacts/DepositSweep.json +77 -0
  6. package/artifacts/EcdsaDkgValidator.json +532 -0
  7. package/artifacts/EcdsaInactivity.json +156 -0
  8. package/artifacts/EcdsaSortitionPool.json +1004 -0
  9. package/artifacts/Fraud.json +164 -0
  10. package/artifacts/KeepRegistry.json +99 -0
  11. package/artifacts/KeepStake.json +286 -0
  12. package/artifacts/KeepToken.json +711 -0
  13. package/artifacts/KeepTokenStaking.json +483 -0
  14. package/artifacts/MovingFunds.json +249 -0
  15. package/artifacts/NuCypherStakingEscrow.json +256 -0
  16. package/artifacts/NuCypherToken.json +711 -0
  17. package/artifacts/RandomBeaconStub.json +141 -0
  18. package/artifacts/Redemption.json +174 -0
  19. package/artifacts/ReimbursementPool.json +509 -0
  20. package/artifacts/Relay.json +123 -0
  21. package/artifacts/T.json +1148 -0
  22. package/artifacts/TBTC.json +27 -26
  23. package/artifacts/TBTCToken.json +27 -26
  24. package/artifacts/TBTCVault.json +691 -0
  25. package/artifacts/TokenStaking.json +2288 -0
  26. package/artifacts/TokenholderGovernor.json +1795 -0
  27. package/artifacts/TokenholderTimelock.json +1058 -0
  28. package/artifacts/VendingMachine.json +30 -29
  29. package/artifacts/VendingMachineKeep.json +400 -0
  30. package/artifacts/VendingMachineNuCypher.json +400 -0
  31. package/artifacts/WalletRegistry.json +1843 -0
  32. package/artifacts/WalletRegistryGovernance.json +2754 -0
  33. package/artifacts/Wallets.json +186 -0
  34. package/artifacts/solcInputs/6e28b66ed60b6dd7b2b25b3a1c4fe89b.json +314 -0
  35. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  36. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.json +2 -2
  37. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  38. package/build/contracts/bank/Bank.sol/Bank.json +27 -4
  39. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +4 -0
  40. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.json +34 -0
  41. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  42. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +2 -2
  43. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  44. package/build/contracts/bridge/Bridge.sol/Bridge.json +2547 -196
  45. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +4 -0
  46. package/build/contracts/bridge/BridgeState.sol/BridgeState.json +226 -0
  47. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +4 -0
  48. package/build/contracts/bridge/Deposit.sol/Deposit.json +72 -0
  49. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +4 -0
  50. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +30 -0
  51. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +4 -0
  52. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.json +10 -0
  53. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +4 -0
  54. package/build/contracts/bridge/Fraud.sol/Fraud.json +86 -0
  55. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +4 -0
  56. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.json +10 -0
  57. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +4 -0
  58. package/build/contracts/bridge/IRelay.sol/IRelay.json +37 -0
  59. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +4 -0
  60. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +138 -0
  61. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +4 -0
  62. package/build/contracts/bridge/Redemption.sol/OutboundTx.json +10 -0
  63. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +4 -0
  64. package/build/contracts/bridge/Redemption.sol/Redemption.json +92 -0
  65. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  66. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.json +2 -2
  67. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +4 -0
  68. package/build/contracts/bridge/Wallets.sol/Wallets.json +112 -0
  69. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  70. package/build/contracts/token/TBTC.sol/TBTC.json +2 -2
  71. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +4 -0
  72. package/build/contracts/vault/DonationVault.sol/DonationVault.json +108 -0
  73. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  74. package/build/contracts/vault/IVault.sol/IVault.json +24 -1
  75. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  76. package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +295 -9
  77. package/contracts/GovernanceUtils.sol +4 -4
  78. package/contracts/bank/Bank.sol +119 -57
  79. package/contracts/bank/IReceiveBalanceApproval.sol +45 -0
  80. package/contracts/bridge/BitcoinTx.sol +232 -10
  81. package/contracts/bridge/Bridge.sol +1692 -244
  82. package/contracts/bridge/BridgeState.sol +739 -0
  83. package/contracts/bridge/Deposit.sol +269 -0
  84. package/contracts/bridge/DepositSweep.sol +571 -0
  85. package/contracts/bridge/EcdsaLib.sol +45 -0
  86. package/contracts/bridge/Fraud.sol +604 -0
  87. package/contracts/bridge/Heartbeat.sol +112 -0
  88. package/contracts/bridge/IRelay.sol +28 -0
  89. package/contracts/bridge/MovingFunds.sol +1089 -0
  90. package/contracts/bridge/Redemption.sol +1021 -0
  91. package/contracts/bridge/VendingMachine.sol +1 -1
  92. package/contracts/bridge/Wallets.sol +553 -0
  93. package/contracts/hardhat-dependency-compiler/.hardhat-dependency-compiler +1 -0
  94. package/contracts/hardhat-dependency-compiler/@keep-network/ecdsa/contracts/WalletRegistry.sol +3 -0
  95. package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol +3 -0
  96. package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +3 -0
  97. package/contracts/token/TBTC.sol +1 -1
  98. package/contracts/vault/DonationVault.sol +125 -0
  99. package/contracts/vault/IVault.sol +19 -13
  100. package/contracts/vault/TBTCVault.sol +200 -23
  101. package/deploy/00_resolve_relay.ts +28 -0
  102. package/deploy/{03_transfer_roles.ts → 03_transfer_vending_machine_roles.ts} +1 -1
  103. package/deploy/04_deploy_bank.ts +27 -0
  104. package/deploy/05_deploy_bridge.ts +80 -0
  105. package/deploy/06_deploy_tbtc_vault.ts +30 -0
  106. package/deploy/07_bank_update_bridge.ts +19 -0
  107. package/deploy/08_transfer_bank_ownership.ts +15 -0
  108. package/deploy/09_transfer_tbtc_vault_ownership.ts +15 -0
  109. package/deploy/10_transfer_bridge_governance.ts +20 -0
  110. package/deploy/11_initialize_wallet_owner.ts +18 -0
  111. package/deploy/11_transfer_proxy_admin_ownership.ts +30 -0
  112. package/deploy/12_deploy_proxy_admin_with_deputy.ts +33 -0
  113. package/export.json +16150 -443
  114. package/package.json +32 -25
  115. package/artifacts/solcInputs/58d5b3ee7688835879381470de985d6b.json +0 -128
@@ -0,0 +1,2666 @@
1
+ {
2
+ "address": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
3
+ "abi": [
4
+ {
5
+ "type": "event",
6
+ "anonymous": false,
7
+ "name": "DepositParametersUpdated",
8
+ "inputs": [
9
+ {
10
+ "type": "uint64",
11
+ "name": "depositDustThreshold",
12
+ "indexed": false
13
+ },
14
+ {
15
+ "type": "uint64",
16
+ "name": "depositTreasuryFeeDivisor",
17
+ "indexed": false
18
+ },
19
+ {
20
+ "type": "uint64",
21
+ "name": "depositTxMaxFee",
22
+ "indexed": false
23
+ }
24
+ ]
25
+ },
26
+ {
27
+ "type": "event",
28
+ "anonymous": false,
29
+ "name": "DepositRevealed",
30
+ "inputs": [
31
+ {
32
+ "type": "bytes32",
33
+ "name": "fundingTxHash",
34
+ "indexed": false
35
+ },
36
+ {
37
+ "type": "uint32",
38
+ "name": "fundingOutputIndex",
39
+ "indexed": false
40
+ },
41
+ {
42
+ "type": "address",
43
+ "name": "depositor",
44
+ "indexed": true
45
+ },
46
+ {
47
+ "type": "uint64",
48
+ "name": "amount",
49
+ "indexed": false
50
+ },
51
+ {
52
+ "type": "bytes8",
53
+ "name": "blindingFactor",
54
+ "indexed": false
55
+ },
56
+ {
57
+ "type": "bytes20",
58
+ "name": "walletPubKeyHash",
59
+ "indexed": true
60
+ },
61
+ {
62
+ "type": "bytes20",
63
+ "name": "refundPubKeyHash",
64
+ "indexed": false
65
+ },
66
+ {
67
+ "type": "bytes4",
68
+ "name": "refundLocktime",
69
+ "indexed": false
70
+ },
71
+ {
72
+ "type": "address",
73
+ "name": "vault",
74
+ "indexed": false
75
+ }
76
+ ]
77
+ },
78
+ {
79
+ "type": "event",
80
+ "anonymous": false,
81
+ "name": "DepositsSwept",
82
+ "inputs": [
83
+ {
84
+ "type": "bytes20",
85
+ "name": "walletPubKeyHash",
86
+ "indexed": false
87
+ },
88
+ {
89
+ "type": "bytes32",
90
+ "name": "sweepTxHash",
91
+ "indexed": false
92
+ }
93
+ ]
94
+ },
95
+ {
96
+ "type": "event",
97
+ "anonymous": false,
98
+ "name": "FraudChallengeDefeatTimedOut",
99
+ "inputs": [
100
+ {
101
+ "type": "bytes20",
102
+ "name": "walletPubKeyHash",
103
+ "indexed": true
104
+ },
105
+ {
106
+ "type": "bytes32",
107
+ "name": "sighash",
108
+ "indexed": false
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "type": "event",
114
+ "anonymous": false,
115
+ "name": "FraudChallengeDefeated",
116
+ "inputs": [
117
+ {
118
+ "type": "bytes20",
119
+ "name": "walletPubKeyHash",
120
+ "indexed": true
121
+ },
122
+ {
123
+ "type": "bytes32",
124
+ "name": "sighash",
125
+ "indexed": false
126
+ }
127
+ ]
128
+ },
129
+ {
130
+ "type": "event",
131
+ "anonymous": false,
132
+ "name": "FraudChallengeSubmitted",
133
+ "inputs": [
134
+ {
135
+ "type": "bytes20",
136
+ "name": "walletPubKeyHash",
137
+ "indexed": true
138
+ },
139
+ {
140
+ "type": "bytes32",
141
+ "name": "sighash",
142
+ "indexed": false
143
+ },
144
+ {
145
+ "type": "uint8",
146
+ "name": "v",
147
+ "indexed": false
148
+ },
149
+ {
150
+ "type": "bytes32",
151
+ "name": "r",
152
+ "indexed": false
153
+ },
154
+ {
155
+ "type": "bytes32",
156
+ "name": "s",
157
+ "indexed": false
158
+ }
159
+ ]
160
+ },
161
+ {
162
+ "type": "event",
163
+ "anonymous": false,
164
+ "name": "FraudParametersUpdated",
165
+ "inputs": [
166
+ {
167
+ "type": "uint256",
168
+ "name": "fraudChallengeDepositAmount",
169
+ "indexed": false
170
+ },
171
+ {
172
+ "type": "uint256",
173
+ "name": "fraudChallengeDefeatTimeout",
174
+ "indexed": false
175
+ },
176
+ {
177
+ "type": "uint96",
178
+ "name": "fraudSlashingAmount",
179
+ "indexed": false
180
+ },
181
+ {
182
+ "type": "uint256",
183
+ "name": "fraudNotifierRewardMultiplier",
184
+ "indexed": false
185
+ }
186
+ ]
187
+ },
188
+ {
189
+ "type": "event",
190
+ "anonymous": false,
191
+ "name": "GovernanceTransferred",
192
+ "inputs": [
193
+ {
194
+ "type": "address",
195
+ "name": "oldGovernance",
196
+ "indexed": false
197
+ },
198
+ {
199
+ "type": "address",
200
+ "name": "newGovernance",
201
+ "indexed": false
202
+ }
203
+ ]
204
+ },
205
+ {
206
+ "type": "event",
207
+ "anonymous": false,
208
+ "name": "Initialized",
209
+ "inputs": [
210
+ {
211
+ "type": "uint8",
212
+ "name": "version",
213
+ "indexed": false
214
+ }
215
+ ]
216
+ },
217
+ {
218
+ "type": "event",
219
+ "anonymous": false,
220
+ "name": "MovedFundsSweepTimedOut",
221
+ "inputs": [
222
+ {
223
+ "type": "bytes20",
224
+ "name": "walletPubKeyHash",
225
+ "indexed": true
226
+ },
227
+ {
228
+ "type": "bytes32",
229
+ "name": "movingFundsTxHash",
230
+ "indexed": false
231
+ },
232
+ {
233
+ "type": "uint32",
234
+ "name": "movingFundsTxOutputIndex",
235
+ "indexed": false
236
+ }
237
+ ]
238
+ },
239
+ {
240
+ "type": "event",
241
+ "anonymous": false,
242
+ "name": "MovedFundsSwept",
243
+ "inputs": [
244
+ {
245
+ "type": "bytes20",
246
+ "name": "walletPubKeyHash",
247
+ "indexed": true
248
+ },
249
+ {
250
+ "type": "bytes32",
251
+ "name": "sweepTxHash",
252
+ "indexed": false
253
+ }
254
+ ]
255
+ },
256
+ {
257
+ "type": "event",
258
+ "anonymous": false,
259
+ "name": "MovingFundsBelowDustReported",
260
+ "inputs": [
261
+ {
262
+ "type": "bytes20",
263
+ "name": "walletPubKeyHash",
264
+ "indexed": true
265
+ }
266
+ ]
267
+ },
268
+ {
269
+ "type": "event",
270
+ "anonymous": false,
271
+ "name": "MovingFundsCommitmentSubmitted",
272
+ "inputs": [
273
+ {
274
+ "type": "bytes20",
275
+ "name": "walletPubKeyHash",
276
+ "indexed": true
277
+ },
278
+ {
279
+ "type": "bytes20[]",
280
+ "name": "targetWallets",
281
+ "indexed": false
282
+ },
283
+ {
284
+ "type": "address",
285
+ "name": "submitter",
286
+ "indexed": false
287
+ }
288
+ ]
289
+ },
290
+ {
291
+ "type": "event",
292
+ "anonymous": false,
293
+ "name": "MovingFundsCompleted",
294
+ "inputs": [
295
+ {
296
+ "type": "bytes20",
297
+ "name": "walletPubKeyHash",
298
+ "indexed": true
299
+ },
300
+ {
301
+ "type": "bytes32",
302
+ "name": "movingFundsTxHash",
303
+ "indexed": false
304
+ }
305
+ ]
306
+ },
307
+ {
308
+ "type": "event",
309
+ "anonymous": false,
310
+ "name": "MovingFundsParametersUpdated",
311
+ "inputs": [
312
+ {
313
+ "type": "uint64",
314
+ "name": "movingFundsTxMaxTotalFee",
315
+ "indexed": false
316
+ },
317
+ {
318
+ "type": "uint64",
319
+ "name": "movingFundsDustThreshold",
320
+ "indexed": false
321
+ },
322
+ {
323
+ "type": "uint32",
324
+ "name": "movingFundsTimeoutResetDelay",
325
+ "indexed": false
326
+ },
327
+ {
328
+ "type": "uint32",
329
+ "name": "movingFundsTimeout",
330
+ "indexed": false
331
+ },
332
+ {
333
+ "type": "uint96",
334
+ "name": "movingFundsTimeoutSlashingAmount",
335
+ "indexed": false
336
+ },
337
+ {
338
+ "type": "uint256",
339
+ "name": "movingFundsTimeoutNotifierRewardMultiplier",
340
+ "indexed": false
341
+ },
342
+ {
343
+ "type": "uint64",
344
+ "name": "movedFundsSweepTxMaxTotalFee",
345
+ "indexed": false
346
+ },
347
+ {
348
+ "type": "uint32",
349
+ "name": "movedFundsSweepTimeout",
350
+ "indexed": false
351
+ },
352
+ {
353
+ "type": "uint96",
354
+ "name": "movedFundsSweepTimeoutSlashingAmount",
355
+ "indexed": false
356
+ },
357
+ {
358
+ "type": "uint256",
359
+ "name": "movedFundsSweepTimeoutNotifierRewardMultiplier",
360
+ "indexed": false
361
+ }
362
+ ]
363
+ },
364
+ {
365
+ "type": "event",
366
+ "anonymous": false,
367
+ "name": "MovingFundsTimedOut",
368
+ "inputs": [
369
+ {
370
+ "type": "bytes20",
371
+ "name": "walletPubKeyHash",
372
+ "indexed": true
373
+ }
374
+ ]
375
+ },
376
+ {
377
+ "type": "event",
378
+ "anonymous": false,
379
+ "name": "MovingFundsTimeoutReset",
380
+ "inputs": [
381
+ {
382
+ "type": "bytes20",
383
+ "name": "walletPubKeyHash",
384
+ "indexed": true
385
+ }
386
+ ]
387
+ },
388
+ {
389
+ "type": "event",
390
+ "anonymous": false,
391
+ "name": "NewWalletRegistered",
392
+ "inputs": [
393
+ {
394
+ "type": "bytes32",
395
+ "name": "ecdsaWalletID",
396
+ "indexed": true
397
+ },
398
+ {
399
+ "type": "bytes20",
400
+ "name": "walletPubKeyHash",
401
+ "indexed": true
402
+ }
403
+ ]
404
+ },
405
+ {
406
+ "type": "event",
407
+ "anonymous": false,
408
+ "name": "NewWalletRequested",
409
+ "inputs": []
410
+ },
411
+ {
412
+ "type": "event",
413
+ "anonymous": false,
414
+ "name": "RedemptionParametersUpdated",
415
+ "inputs": [
416
+ {
417
+ "type": "uint64",
418
+ "name": "redemptionDustThreshold",
419
+ "indexed": false
420
+ },
421
+ {
422
+ "type": "uint64",
423
+ "name": "redemptionTreasuryFeeDivisor",
424
+ "indexed": false
425
+ },
426
+ {
427
+ "type": "uint64",
428
+ "name": "redemptionTxMaxFee",
429
+ "indexed": false
430
+ },
431
+ {
432
+ "type": "uint256",
433
+ "name": "redemptionTimeout",
434
+ "indexed": false
435
+ },
436
+ {
437
+ "type": "uint96",
438
+ "name": "redemptionTimeoutSlashingAmount",
439
+ "indexed": false
440
+ },
441
+ {
442
+ "type": "uint256",
443
+ "name": "redemptionTimeoutNotifierRewardMultiplier",
444
+ "indexed": false
445
+ }
446
+ ]
447
+ },
448
+ {
449
+ "type": "event",
450
+ "anonymous": false,
451
+ "name": "RedemptionRequested",
452
+ "inputs": [
453
+ {
454
+ "type": "bytes20",
455
+ "name": "walletPubKeyHash",
456
+ "indexed": true
457
+ },
458
+ {
459
+ "type": "bytes",
460
+ "name": "redeemerOutputScript",
461
+ "indexed": false
462
+ },
463
+ {
464
+ "type": "address",
465
+ "name": "redeemer",
466
+ "indexed": true
467
+ },
468
+ {
469
+ "type": "uint64",
470
+ "name": "requestedAmount",
471
+ "indexed": false
472
+ },
473
+ {
474
+ "type": "uint64",
475
+ "name": "treasuryFee",
476
+ "indexed": false
477
+ },
478
+ {
479
+ "type": "uint64",
480
+ "name": "txMaxFee",
481
+ "indexed": false
482
+ }
483
+ ]
484
+ },
485
+ {
486
+ "type": "event",
487
+ "anonymous": false,
488
+ "name": "RedemptionTimedOut",
489
+ "inputs": [
490
+ {
491
+ "type": "bytes20",
492
+ "name": "walletPubKeyHash",
493
+ "indexed": true
494
+ },
495
+ {
496
+ "type": "bytes",
497
+ "name": "redeemerOutputScript",
498
+ "indexed": false
499
+ }
500
+ ]
501
+ },
502
+ {
503
+ "type": "event",
504
+ "anonymous": false,
505
+ "name": "RedemptionsCompleted",
506
+ "inputs": [
507
+ {
508
+ "type": "bytes20",
509
+ "name": "walletPubKeyHash",
510
+ "indexed": true
511
+ },
512
+ {
513
+ "type": "bytes32",
514
+ "name": "redemptionTxHash",
515
+ "indexed": false
516
+ }
517
+ ]
518
+ },
519
+ {
520
+ "type": "event",
521
+ "anonymous": false,
522
+ "name": "VaultStatusUpdated",
523
+ "inputs": [
524
+ {
525
+ "type": "address",
526
+ "name": "vault",
527
+ "indexed": true
528
+ },
529
+ {
530
+ "type": "bool",
531
+ "name": "isTrusted",
532
+ "indexed": false
533
+ }
534
+ ]
535
+ },
536
+ {
537
+ "type": "event",
538
+ "anonymous": false,
539
+ "name": "WalletClosed",
540
+ "inputs": [
541
+ {
542
+ "type": "bytes32",
543
+ "name": "ecdsaWalletID",
544
+ "indexed": true
545
+ },
546
+ {
547
+ "type": "bytes20",
548
+ "name": "walletPubKeyHash",
549
+ "indexed": true
550
+ }
551
+ ]
552
+ },
553
+ {
554
+ "type": "event",
555
+ "anonymous": false,
556
+ "name": "WalletClosing",
557
+ "inputs": [
558
+ {
559
+ "type": "bytes32",
560
+ "name": "ecdsaWalletID",
561
+ "indexed": true
562
+ },
563
+ {
564
+ "type": "bytes20",
565
+ "name": "walletPubKeyHash",
566
+ "indexed": true
567
+ }
568
+ ]
569
+ },
570
+ {
571
+ "type": "event",
572
+ "anonymous": false,
573
+ "name": "WalletMovingFunds",
574
+ "inputs": [
575
+ {
576
+ "type": "bytes32",
577
+ "name": "ecdsaWalletID",
578
+ "indexed": true
579
+ },
580
+ {
581
+ "type": "bytes20",
582
+ "name": "walletPubKeyHash",
583
+ "indexed": true
584
+ }
585
+ ]
586
+ },
587
+ {
588
+ "type": "event",
589
+ "anonymous": false,
590
+ "name": "WalletParametersUpdated",
591
+ "inputs": [
592
+ {
593
+ "type": "uint32",
594
+ "name": "walletCreationPeriod",
595
+ "indexed": false
596
+ },
597
+ {
598
+ "type": "uint64",
599
+ "name": "walletCreationMinBtcBalance",
600
+ "indexed": false
601
+ },
602
+ {
603
+ "type": "uint64",
604
+ "name": "walletCreationMaxBtcBalance",
605
+ "indexed": false
606
+ },
607
+ {
608
+ "type": "uint64",
609
+ "name": "walletClosureMinBtcBalance",
610
+ "indexed": false
611
+ },
612
+ {
613
+ "type": "uint32",
614
+ "name": "walletMaxAge",
615
+ "indexed": false
616
+ },
617
+ {
618
+ "type": "uint64",
619
+ "name": "walletMaxBtcTransfer",
620
+ "indexed": false
621
+ },
622
+ {
623
+ "type": "uint32",
624
+ "name": "walletClosingPeriod",
625
+ "indexed": false
626
+ }
627
+ ]
628
+ },
629
+ {
630
+ "type": "event",
631
+ "anonymous": false,
632
+ "name": "WalletTerminated",
633
+ "inputs": [
634
+ {
635
+ "type": "bytes32",
636
+ "name": "ecdsaWalletID",
637
+ "indexed": true
638
+ },
639
+ {
640
+ "type": "bytes20",
641
+ "name": "walletPubKeyHash",
642
+ "indexed": true
643
+ }
644
+ ]
645
+ },
646
+ {
647
+ "type": "function",
648
+ "name": "__ecdsaWalletCreatedCallback",
649
+ "constant": false,
650
+ "payable": false,
651
+ "gas": 29000000,
652
+ "inputs": [
653
+ {
654
+ "type": "bytes32",
655
+ "name": "ecdsaWalletID"
656
+ },
657
+ {
658
+ "type": "bytes32",
659
+ "name": "publicKeyX"
660
+ },
661
+ {
662
+ "type": "bytes32",
663
+ "name": "publicKeyY"
664
+ }
665
+ ],
666
+ "outputs": []
667
+ },
668
+ {
669
+ "type": "function",
670
+ "name": "__ecdsaWalletHeartbeatFailedCallback",
671
+ "constant": false,
672
+ "payable": false,
673
+ "gas": 29000000,
674
+ "inputs": [
675
+ {
676
+ "type": "bytes32"
677
+ },
678
+ {
679
+ "type": "bytes32",
680
+ "name": "publicKeyX"
681
+ },
682
+ {
683
+ "type": "bytes32",
684
+ "name": "publicKeyY"
685
+ }
686
+ ],
687
+ "outputs": []
688
+ },
689
+ {
690
+ "type": "function",
691
+ "name": "activeWalletPubKeyHash",
692
+ "constant": true,
693
+ "stateMutability": "view",
694
+ "payable": false,
695
+ "gas": 29000000,
696
+ "inputs": [],
697
+ "outputs": [
698
+ {
699
+ "type": "bytes20"
700
+ }
701
+ ]
702
+ },
703
+ {
704
+ "type": "function",
705
+ "name": "contractReferences",
706
+ "constant": true,
707
+ "stateMutability": "view",
708
+ "payable": false,
709
+ "gas": 29000000,
710
+ "inputs": [],
711
+ "outputs": [
712
+ {
713
+ "type": "address",
714
+ "name": "bank"
715
+ },
716
+ {
717
+ "type": "address",
718
+ "name": "relay"
719
+ },
720
+ {
721
+ "type": "address",
722
+ "name": "ecdsaWalletRegistry"
723
+ }
724
+ ]
725
+ },
726
+ {
727
+ "type": "function",
728
+ "name": "defeatFraudChallenge",
729
+ "constant": false,
730
+ "payable": false,
731
+ "gas": 29000000,
732
+ "inputs": [
733
+ {
734
+ "type": "bytes",
735
+ "name": "walletPublicKey"
736
+ },
737
+ {
738
+ "type": "bytes",
739
+ "name": "preimage"
740
+ },
741
+ {
742
+ "type": "bool",
743
+ "name": "witness"
744
+ }
745
+ ],
746
+ "outputs": []
747
+ },
748
+ {
749
+ "type": "function",
750
+ "name": "defeatFraudChallengeWithHeartbeat",
751
+ "constant": false,
752
+ "payable": false,
753
+ "gas": 29000000,
754
+ "inputs": [
755
+ {
756
+ "type": "bytes",
757
+ "name": "walletPublicKey"
758
+ },
759
+ {
760
+ "type": "bytes",
761
+ "name": "heartbeatMessage"
762
+ }
763
+ ],
764
+ "outputs": []
765
+ },
766
+ {
767
+ "type": "function",
768
+ "name": "depositParameters",
769
+ "constant": true,
770
+ "stateMutability": "view",
771
+ "payable": false,
772
+ "gas": 29000000,
773
+ "inputs": [],
774
+ "outputs": [
775
+ {
776
+ "type": "uint64",
777
+ "name": "depositDustThreshold"
778
+ },
779
+ {
780
+ "type": "uint64",
781
+ "name": "depositTreasuryFeeDivisor"
782
+ },
783
+ {
784
+ "type": "uint64",
785
+ "name": "depositTxMaxFee"
786
+ }
787
+ ]
788
+ },
789
+ {
790
+ "type": "function",
791
+ "name": "deposits",
792
+ "constant": true,
793
+ "stateMutability": "view",
794
+ "payable": false,
795
+ "gas": 29000000,
796
+ "inputs": [
797
+ {
798
+ "type": "uint256",
799
+ "name": "depositKey"
800
+ }
801
+ ],
802
+ "outputs": [
803
+ {
804
+ "type": "tuple",
805
+ "components": [
806
+ {
807
+ "type": "address",
808
+ "name": "depositor"
809
+ },
810
+ {
811
+ "type": "uint64",
812
+ "name": "amount"
813
+ },
814
+ {
815
+ "type": "uint32",
816
+ "name": "revealedAt"
817
+ },
818
+ {
819
+ "type": "address",
820
+ "name": "vault"
821
+ },
822
+ {
823
+ "type": "uint64",
824
+ "name": "treasuryFee"
825
+ },
826
+ {
827
+ "type": "uint32",
828
+ "name": "sweptAt"
829
+ }
830
+ ]
831
+ }
832
+ ]
833
+ },
834
+ {
835
+ "type": "function",
836
+ "name": "fraudChallenges",
837
+ "constant": true,
838
+ "stateMutability": "view",
839
+ "payable": false,
840
+ "gas": 29000000,
841
+ "inputs": [
842
+ {
843
+ "type": "uint256",
844
+ "name": "challengeKey"
845
+ }
846
+ ],
847
+ "outputs": [
848
+ {
849
+ "type": "tuple",
850
+ "components": [
851
+ {
852
+ "type": "address",
853
+ "name": "challenger"
854
+ },
855
+ {
856
+ "type": "uint256",
857
+ "name": "depositAmount"
858
+ },
859
+ {
860
+ "type": "uint32",
861
+ "name": "reportedAt"
862
+ },
863
+ {
864
+ "type": "bool",
865
+ "name": "resolved"
866
+ }
867
+ ]
868
+ }
869
+ ]
870
+ },
871
+ {
872
+ "type": "function",
873
+ "name": "fraudParameters",
874
+ "constant": true,
875
+ "stateMutability": "view",
876
+ "payable": false,
877
+ "gas": 29000000,
878
+ "inputs": [],
879
+ "outputs": [
880
+ {
881
+ "type": "uint256",
882
+ "name": "fraudChallengeDepositAmount"
883
+ },
884
+ {
885
+ "type": "uint256",
886
+ "name": "fraudChallengeDefeatTimeout"
887
+ },
888
+ {
889
+ "type": "uint96",
890
+ "name": "fraudSlashingAmount"
891
+ },
892
+ {
893
+ "type": "uint256",
894
+ "name": "fraudNotifierRewardMultiplier"
895
+ }
896
+ ]
897
+ },
898
+ {
899
+ "type": "function",
900
+ "name": "governance",
901
+ "constant": true,
902
+ "stateMutability": "view",
903
+ "payable": false,
904
+ "gas": 29000000,
905
+ "inputs": [],
906
+ "outputs": [
907
+ {
908
+ "type": "address"
909
+ }
910
+ ]
911
+ },
912
+ {
913
+ "type": "function",
914
+ "name": "initialize",
915
+ "constant": false,
916
+ "payable": false,
917
+ "gas": 29000000,
918
+ "inputs": [
919
+ {
920
+ "type": "address",
921
+ "name": "_bank"
922
+ },
923
+ {
924
+ "type": "address",
925
+ "name": "_relay"
926
+ },
927
+ {
928
+ "type": "address",
929
+ "name": "_treasury"
930
+ },
931
+ {
932
+ "type": "address",
933
+ "name": "_ecdsaWalletRegistry"
934
+ },
935
+ {
936
+ "type": "uint256",
937
+ "name": "_txProofDifficultyFactor"
938
+ }
939
+ ],
940
+ "outputs": []
941
+ },
942
+ {
943
+ "type": "function",
944
+ "name": "isVaultTrusted",
945
+ "constant": true,
946
+ "stateMutability": "view",
947
+ "payable": false,
948
+ "gas": 29000000,
949
+ "inputs": [
950
+ {
951
+ "type": "address",
952
+ "name": "vault"
953
+ }
954
+ ],
955
+ "outputs": [
956
+ {
957
+ "type": "bool"
958
+ }
959
+ ]
960
+ },
961
+ {
962
+ "type": "function",
963
+ "name": "liveWalletsCount",
964
+ "constant": true,
965
+ "stateMutability": "view",
966
+ "payable": false,
967
+ "gas": 29000000,
968
+ "inputs": [],
969
+ "outputs": [
970
+ {
971
+ "type": "uint32"
972
+ }
973
+ ]
974
+ },
975
+ {
976
+ "type": "function",
977
+ "name": "movedFundsSweepRequests",
978
+ "constant": true,
979
+ "stateMutability": "view",
980
+ "payable": false,
981
+ "gas": 29000000,
982
+ "inputs": [
983
+ {
984
+ "type": "uint256",
985
+ "name": "requestKey"
986
+ }
987
+ ],
988
+ "outputs": [
989
+ {
990
+ "type": "tuple",
991
+ "components": [
992
+ {
993
+ "type": "bytes20",
994
+ "name": "walletPubKeyHash"
995
+ },
996
+ {
997
+ "type": "uint64",
998
+ "name": "value"
999
+ },
1000
+ {
1001
+ "type": "uint32",
1002
+ "name": "createdAt"
1003
+ },
1004
+ {
1005
+ "type": "uint8",
1006
+ "name": "state"
1007
+ }
1008
+ ]
1009
+ }
1010
+ ]
1011
+ },
1012
+ {
1013
+ "type": "function",
1014
+ "name": "movingFundsParameters",
1015
+ "constant": true,
1016
+ "stateMutability": "view",
1017
+ "payable": false,
1018
+ "gas": 29000000,
1019
+ "inputs": [],
1020
+ "outputs": [
1021
+ {
1022
+ "type": "uint64",
1023
+ "name": "movingFundsTxMaxTotalFee"
1024
+ },
1025
+ {
1026
+ "type": "uint64",
1027
+ "name": "movingFundsDustThreshold"
1028
+ },
1029
+ {
1030
+ "type": "uint32",
1031
+ "name": "movingFundsTimeoutResetDelay"
1032
+ },
1033
+ {
1034
+ "type": "uint32",
1035
+ "name": "movingFundsTimeout"
1036
+ },
1037
+ {
1038
+ "type": "uint96",
1039
+ "name": "movingFundsTimeoutSlashingAmount"
1040
+ },
1041
+ {
1042
+ "type": "uint256",
1043
+ "name": "movingFundsTimeoutNotifierRewardMultiplier"
1044
+ },
1045
+ {
1046
+ "type": "uint64",
1047
+ "name": "movedFundsSweepTxMaxTotalFee"
1048
+ },
1049
+ {
1050
+ "type": "uint32",
1051
+ "name": "movedFundsSweepTimeout"
1052
+ },
1053
+ {
1054
+ "type": "uint96",
1055
+ "name": "movedFundsSweepTimeoutSlashingAmount"
1056
+ },
1057
+ {
1058
+ "type": "uint256",
1059
+ "name": "movedFundsSweepTimeoutNotifierRewardMultiplier"
1060
+ }
1061
+ ]
1062
+ },
1063
+ {
1064
+ "type": "function",
1065
+ "name": "notifyCloseableWallet",
1066
+ "constant": false,
1067
+ "payable": false,
1068
+ "gas": 29000000,
1069
+ "inputs": [
1070
+ {
1071
+ "type": "bytes20",
1072
+ "name": "walletPubKeyHash"
1073
+ },
1074
+ {
1075
+ "type": "tuple",
1076
+ "name": "walletMainUtxo",
1077
+ "components": [
1078
+ {
1079
+ "type": "bytes32",
1080
+ "name": "txHash"
1081
+ },
1082
+ {
1083
+ "type": "uint32",
1084
+ "name": "txOutputIndex"
1085
+ },
1086
+ {
1087
+ "type": "uint64",
1088
+ "name": "txOutputValue"
1089
+ }
1090
+ ]
1091
+ }
1092
+ ],
1093
+ "outputs": []
1094
+ },
1095
+ {
1096
+ "type": "function",
1097
+ "name": "notifyFraudChallengeDefeatTimeout",
1098
+ "constant": false,
1099
+ "payable": false,
1100
+ "gas": 29000000,
1101
+ "inputs": [
1102
+ {
1103
+ "type": "bytes",
1104
+ "name": "walletPublicKey"
1105
+ },
1106
+ {
1107
+ "type": "uint32[]",
1108
+ "name": "walletMembersIDs"
1109
+ },
1110
+ {
1111
+ "type": "bytes",
1112
+ "name": "preimageSha256"
1113
+ }
1114
+ ],
1115
+ "outputs": []
1116
+ },
1117
+ {
1118
+ "type": "function",
1119
+ "name": "notifyMovedFundsSweepTimeout",
1120
+ "constant": false,
1121
+ "payable": false,
1122
+ "gas": 29000000,
1123
+ "inputs": [
1124
+ {
1125
+ "type": "bytes32",
1126
+ "name": "movingFundsTxHash"
1127
+ },
1128
+ {
1129
+ "type": "uint32",
1130
+ "name": "movingFundsTxOutputIndex"
1131
+ },
1132
+ {
1133
+ "type": "uint32[]",
1134
+ "name": "walletMembersIDs"
1135
+ }
1136
+ ],
1137
+ "outputs": []
1138
+ },
1139
+ {
1140
+ "type": "function",
1141
+ "name": "notifyMovingFundsBelowDust",
1142
+ "constant": false,
1143
+ "payable": false,
1144
+ "gas": 29000000,
1145
+ "inputs": [
1146
+ {
1147
+ "type": "bytes20",
1148
+ "name": "walletPubKeyHash"
1149
+ },
1150
+ {
1151
+ "type": "tuple",
1152
+ "name": "mainUtxo",
1153
+ "components": [
1154
+ {
1155
+ "type": "bytes32",
1156
+ "name": "txHash"
1157
+ },
1158
+ {
1159
+ "type": "uint32",
1160
+ "name": "txOutputIndex"
1161
+ },
1162
+ {
1163
+ "type": "uint64",
1164
+ "name": "txOutputValue"
1165
+ }
1166
+ ]
1167
+ }
1168
+ ],
1169
+ "outputs": []
1170
+ },
1171
+ {
1172
+ "type": "function",
1173
+ "name": "notifyMovingFundsTimeout",
1174
+ "constant": false,
1175
+ "payable": false,
1176
+ "gas": 29000000,
1177
+ "inputs": [
1178
+ {
1179
+ "type": "bytes20",
1180
+ "name": "walletPubKeyHash"
1181
+ },
1182
+ {
1183
+ "type": "uint32[]",
1184
+ "name": "walletMembersIDs"
1185
+ }
1186
+ ],
1187
+ "outputs": []
1188
+ },
1189
+ {
1190
+ "type": "function",
1191
+ "name": "notifyRedemptionTimeout",
1192
+ "constant": false,
1193
+ "payable": false,
1194
+ "gas": 29000000,
1195
+ "inputs": [
1196
+ {
1197
+ "type": "bytes20",
1198
+ "name": "walletPubKeyHash"
1199
+ },
1200
+ {
1201
+ "type": "uint32[]",
1202
+ "name": "walletMembersIDs"
1203
+ },
1204
+ {
1205
+ "type": "bytes",
1206
+ "name": "redeemerOutputScript"
1207
+ }
1208
+ ],
1209
+ "outputs": []
1210
+ },
1211
+ {
1212
+ "type": "function",
1213
+ "name": "notifyWalletClosingPeriodElapsed",
1214
+ "constant": false,
1215
+ "payable": false,
1216
+ "gas": 29000000,
1217
+ "inputs": [
1218
+ {
1219
+ "type": "bytes20",
1220
+ "name": "walletPubKeyHash"
1221
+ }
1222
+ ],
1223
+ "outputs": []
1224
+ },
1225
+ {
1226
+ "type": "function",
1227
+ "name": "pendingRedemptions",
1228
+ "constant": true,
1229
+ "stateMutability": "view",
1230
+ "payable": false,
1231
+ "gas": 29000000,
1232
+ "inputs": [
1233
+ {
1234
+ "type": "uint256",
1235
+ "name": "redemptionKey"
1236
+ }
1237
+ ],
1238
+ "outputs": [
1239
+ {
1240
+ "type": "tuple",
1241
+ "components": [
1242
+ {
1243
+ "type": "address",
1244
+ "name": "redeemer"
1245
+ },
1246
+ {
1247
+ "type": "uint64",
1248
+ "name": "requestedAmount"
1249
+ },
1250
+ {
1251
+ "type": "uint64",
1252
+ "name": "treasuryFee"
1253
+ },
1254
+ {
1255
+ "type": "uint64",
1256
+ "name": "txMaxFee"
1257
+ },
1258
+ {
1259
+ "type": "uint32",
1260
+ "name": "requestedAt"
1261
+ }
1262
+ ]
1263
+ }
1264
+ ]
1265
+ },
1266
+ {
1267
+ "type": "function",
1268
+ "name": "processPendingMovedFundsSweepRequest",
1269
+ "constant": false,
1270
+ "payable": false,
1271
+ "gas": 29000000,
1272
+ "inputs": [
1273
+ {
1274
+ "type": "bytes20",
1275
+ "name": "walletPubKeyHash"
1276
+ },
1277
+ {
1278
+ "type": "tuple",
1279
+ "name": "utxo",
1280
+ "components": [
1281
+ {
1282
+ "type": "bytes32",
1283
+ "name": "txHash"
1284
+ },
1285
+ {
1286
+ "type": "uint32",
1287
+ "name": "txOutputIndex"
1288
+ },
1289
+ {
1290
+ "type": "uint64",
1291
+ "name": "txOutputValue"
1292
+ }
1293
+ ]
1294
+ }
1295
+ ],
1296
+ "outputs": []
1297
+ },
1298
+ {
1299
+ "type": "function",
1300
+ "name": "receiveBalanceApproval",
1301
+ "constant": false,
1302
+ "payable": false,
1303
+ "gas": 29000000,
1304
+ "inputs": [
1305
+ {
1306
+ "type": "address",
1307
+ "name": "balanceOwner"
1308
+ },
1309
+ {
1310
+ "type": "uint256",
1311
+ "name": "amount"
1312
+ },
1313
+ {
1314
+ "type": "bytes",
1315
+ "name": "redemptionData"
1316
+ }
1317
+ ],
1318
+ "outputs": []
1319
+ },
1320
+ {
1321
+ "type": "function",
1322
+ "name": "redemptionParameters",
1323
+ "constant": true,
1324
+ "stateMutability": "view",
1325
+ "payable": false,
1326
+ "gas": 29000000,
1327
+ "inputs": [],
1328
+ "outputs": [
1329
+ {
1330
+ "type": "uint64",
1331
+ "name": "redemptionDustThreshold"
1332
+ },
1333
+ {
1334
+ "type": "uint64",
1335
+ "name": "redemptionTreasuryFeeDivisor"
1336
+ },
1337
+ {
1338
+ "type": "uint64",
1339
+ "name": "redemptionTxMaxFee"
1340
+ },
1341
+ {
1342
+ "type": "uint256",
1343
+ "name": "redemptionTimeout"
1344
+ },
1345
+ {
1346
+ "type": "uint96",
1347
+ "name": "redemptionTimeoutSlashingAmount"
1348
+ },
1349
+ {
1350
+ "type": "uint256",
1351
+ "name": "redemptionTimeoutNotifierRewardMultiplier"
1352
+ }
1353
+ ]
1354
+ },
1355
+ {
1356
+ "type": "function",
1357
+ "name": "requestNewWallet",
1358
+ "constant": false,
1359
+ "payable": false,
1360
+ "gas": 29000000,
1361
+ "inputs": [
1362
+ {
1363
+ "type": "tuple",
1364
+ "name": "activeWalletMainUtxo",
1365
+ "components": [
1366
+ {
1367
+ "type": "bytes32",
1368
+ "name": "txHash"
1369
+ },
1370
+ {
1371
+ "type": "uint32",
1372
+ "name": "txOutputIndex"
1373
+ },
1374
+ {
1375
+ "type": "uint64",
1376
+ "name": "txOutputValue"
1377
+ }
1378
+ ]
1379
+ }
1380
+ ],
1381
+ "outputs": []
1382
+ },
1383
+ {
1384
+ "type": "function",
1385
+ "name": "requestRedemption",
1386
+ "constant": false,
1387
+ "payable": false,
1388
+ "gas": 29000000,
1389
+ "inputs": [
1390
+ {
1391
+ "type": "bytes20",
1392
+ "name": "walletPubKeyHash"
1393
+ },
1394
+ {
1395
+ "type": "tuple",
1396
+ "name": "mainUtxo",
1397
+ "components": [
1398
+ {
1399
+ "type": "bytes32",
1400
+ "name": "txHash"
1401
+ },
1402
+ {
1403
+ "type": "uint32",
1404
+ "name": "txOutputIndex"
1405
+ },
1406
+ {
1407
+ "type": "uint64",
1408
+ "name": "txOutputValue"
1409
+ }
1410
+ ]
1411
+ },
1412
+ {
1413
+ "type": "bytes",
1414
+ "name": "redeemerOutputScript"
1415
+ },
1416
+ {
1417
+ "type": "uint64",
1418
+ "name": "amount"
1419
+ }
1420
+ ],
1421
+ "outputs": []
1422
+ },
1423
+ {
1424
+ "type": "function",
1425
+ "name": "resetMovingFundsTimeout",
1426
+ "constant": false,
1427
+ "payable": false,
1428
+ "gas": 29000000,
1429
+ "inputs": [
1430
+ {
1431
+ "type": "bytes20",
1432
+ "name": "walletPubKeyHash"
1433
+ }
1434
+ ],
1435
+ "outputs": []
1436
+ },
1437
+ {
1438
+ "type": "function",
1439
+ "name": "revealDeposit",
1440
+ "constant": false,
1441
+ "payable": false,
1442
+ "gas": 29000000,
1443
+ "inputs": [
1444
+ {
1445
+ "type": "tuple",
1446
+ "name": "fundingTx",
1447
+ "components": [
1448
+ {
1449
+ "type": "bytes4",
1450
+ "name": "version"
1451
+ },
1452
+ {
1453
+ "type": "bytes",
1454
+ "name": "inputVector"
1455
+ },
1456
+ {
1457
+ "type": "bytes",
1458
+ "name": "outputVector"
1459
+ },
1460
+ {
1461
+ "type": "bytes4",
1462
+ "name": "locktime"
1463
+ }
1464
+ ]
1465
+ },
1466
+ {
1467
+ "type": "tuple",
1468
+ "name": "reveal",
1469
+ "components": [
1470
+ {
1471
+ "type": "uint32",
1472
+ "name": "fundingOutputIndex"
1473
+ },
1474
+ {
1475
+ "type": "address",
1476
+ "name": "depositor"
1477
+ },
1478
+ {
1479
+ "type": "bytes8",
1480
+ "name": "blindingFactor"
1481
+ },
1482
+ {
1483
+ "type": "bytes20",
1484
+ "name": "walletPubKeyHash"
1485
+ },
1486
+ {
1487
+ "type": "bytes20",
1488
+ "name": "refundPubKeyHash"
1489
+ },
1490
+ {
1491
+ "type": "bytes4",
1492
+ "name": "refundLocktime"
1493
+ },
1494
+ {
1495
+ "type": "address",
1496
+ "name": "vault"
1497
+ }
1498
+ ]
1499
+ }
1500
+ ],
1501
+ "outputs": []
1502
+ },
1503
+ {
1504
+ "type": "function",
1505
+ "name": "setActiveWallet",
1506
+ "constant": false,
1507
+ "payable": false,
1508
+ "gas": 29000000,
1509
+ "inputs": [
1510
+ {
1511
+ "type": "bytes20",
1512
+ "name": "activeWalletPubKeyHash"
1513
+ }
1514
+ ],
1515
+ "outputs": []
1516
+ },
1517
+ {
1518
+ "type": "function",
1519
+ "name": "setDepositDustThreshold",
1520
+ "constant": false,
1521
+ "payable": false,
1522
+ "gas": 29000000,
1523
+ "inputs": [
1524
+ {
1525
+ "type": "uint64",
1526
+ "name": "_depositDustThreshold"
1527
+ }
1528
+ ],
1529
+ "outputs": []
1530
+ },
1531
+ {
1532
+ "type": "function",
1533
+ "name": "setDepositTxMaxFee",
1534
+ "constant": false,
1535
+ "payable": false,
1536
+ "gas": 29000000,
1537
+ "inputs": [
1538
+ {
1539
+ "type": "uint64",
1540
+ "name": "_depositTxMaxFee"
1541
+ }
1542
+ ],
1543
+ "outputs": []
1544
+ },
1545
+ {
1546
+ "type": "function",
1547
+ "name": "setMovedFundsSweepTxMaxTotalFee",
1548
+ "constant": false,
1549
+ "payable": false,
1550
+ "gas": 29000000,
1551
+ "inputs": [
1552
+ {
1553
+ "type": "uint64",
1554
+ "name": "_movedFundsSweepTxMaxTotalFee"
1555
+ }
1556
+ ],
1557
+ "outputs": []
1558
+ },
1559
+ {
1560
+ "type": "function",
1561
+ "name": "setMovingFundsTxMaxTotalFee",
1562
+ "constant": false,
1563
+ "payable": false,
1564
+ "gas": 29000000,
1565
+ "inputs": [
1566
+ {
1567
+ "type": "uint64",
1568
+ "name": "_movingFundsTxMaxTotalFee"
1569
+ }
1570
+ ],
1571
+ "outputs": []
1572
+ },
1573
+ {
1574
+ "type": "function",
1575
+ "name": "setPendingMovedFundsSweepRequest",
1576
+ "constant": false,
1577
+ "payable": false,
1578
+ "gas": 29000000,
1579
+ "inputs": [
1580
+ {
1581
+ "type": "bytes20",
1582
+ "name": "walletPubKeyHash"
1583
+ },
1584
+ {
1585
+ "type": "tuple",
1586
+ "name": "utxo",
1587
+ "components": [
1588
+ {
1589
+ "type": "bytes32",
1590
+ "name": "txHash"
1591
+ },
1592
+ {
1593
+ "type": "uint32",
1594
+ "name": "txOutputIndex"
1595
+ },
1596
+ {
1597
+ "type": "uint64",
1598
+ "name": "txOutputValue"
1599
+ }
1600
+ ]
1601
+ }
1602
+ ],
1603
+ "outputs": []
1604
+ },
1605
+ {
1606
+ "type": "function",
1607
+ "name": "setProcessedMovedFundsSweepRequests",
1608
+ "constant": false,
1609
+ "payable": false,
1610
+ "gas": 29000000,
1611
+ "inputs": [
1612
+ {
1613
+ "type": "tuple[]",
1614
+ "name": "utxos",
1615
+ "components": [
1616
+ {
1617
+ "type": "bytes32",
1618
+ "name": "txHash"
1619
+ },
1620
+ {
1621
+ "type": "uint32",
1622
+ "name": "txOutputIndex"
1623
+ },
1624
+ {
1625
+ "type": "uint64",
1626
+ "name": "txOutputValue"
1627
+ }
1628
+ ]
1629
+ }
1630
+ ],
1631
+ "outputs": []
1632
+ },
1633
+ {
1634
+ "type": "function",
1635
+ "name": "setRedemptionDustThreshold",
1636
+ "constant": false,
1637
+ "payable": false,
1638
+ "gas": 29000000,
1639
+ "inputs": [
1640
+ {
1641
+ "type": "uint64",
1642
+ "name": "_redemptionDustThreshold"
1643
+ }
1644
+ ],
1645
+ "outputs": []
1646
+ },
1647
+ {
1648
+ "type": "function",
1649
+ "name": "setRedemptionTreasuryFeeDivisor",
1650
+ "constant": false,
1651
+ "payable": false,
1652
+ "gas": 29000000,
1653
+ "inputs": [
1654
+ {
1655
+ "type": "uint64",
1656
+ "name": "_redemptionTreasuryFeeDivisor"
1657
+ }
1658
+ ],
1659
+ "outputs": []
1660
+ },
1661
+ {
1662
+ "type": "function",
1663
+ "name": "setSpentMainUtxos",
1664
+ "constant": false,
1665
+ "payable": false,
1666
+ "gas": 29000000,
1667
+ "inputs": [
1668
+ {
1669
+ "type": "tuple[]",
1670
+ "name": "utxos",
1671
+ "components": [
1672
+ {
1673
+ "type": "bytes32",
1674
+ "name": "txHash"
1675
+ },
1676
+ {
1677
+ "type": "uint32",
1678
+ "name": "txOutputIndex"
1679
+ },
1680
+ {
1681
+ "type": "uint64",
1682
+ "name": "txOutputValue"
1683
+ }
1684
+ ]
1685
+ }
1686
+ ],
1687
+ "outputs": []
1688
+ },
1689
+ {
1690
+ "type": "function",
1691
+ "name": "setSweptDeposits",
1692
+ "constant": false,
1693
+ "payable": false,
1694
+ "gas": 29000000,
1695
+ "inputs": [
1696
+ {
1697
+ "type": "tuple[]",
1698
+ "name": "utxos",
1699
+ "components": [
1700
+ {
1701
+ "type": "bytes32",
1702
+ "name": "txHash"
1703
+ },
1704
+ {
1705
+ "type": "uint32",
1706
+ "name": "txOutputIndex"
1707
+ },
1708
+ {
1709
+ "type": "uint64",
1710
+ "name": "txOutputValue"
1711
+ }
1712
+ ]
1713
+ }
1714
+ ],
1715
+ "outputs": []
1716
+ },
1717
+ {
1718
+ "type": "function",
1719
+ "name": "setVaultStatus",
1720
+ "constant": false,
1721
+ "payable": false,
1722
+ "gas": 29000000,
1723
+ "inputs": [
1724
+ {
1725
+ "type": "address",
1726
+ "name": "vault"
1727
+ },
1728
+ {
1729
+ "type": "bool",
1730
+ "name": "isTrusted"
1731
+ }
1732
+ ],
1733
+ "outputs": []
1734
+ },
1735
+ {
1736
+ "type": "function",
1737
+ "name": "setWallet",
1738
+ "constant": false,
1739
+ "payable": false,
1740
+ "gas": 29000000,
1741
+ "inputs": [
1742
+ {
1743
+ "type": "bytes20",
1744
+ "name": "walletPubKeyHash"
1745
+ },
1746
+ {
1747
+ "type": "tuple",
1748
+ "name": "wallet",
1749
+ "components": [
1750
+ {
1751
+ "type": "bytes32",
1752
+ "name": "ecdsaWalletID"
1753
+ },
1754
+ {
1755
+ "type": "bytes32",
1756
+ "name": "mainUtxoHash"
1757
+ },
1758
+ {
1759
+ "type": "uint64",
1760
+ "name": "pendingRedemptionsValue"
1761
+ },
1762
+ {
1763
+ "type": "uint32",
1764
+ "name": "createdAt"
1765
+ },
1766
+ {
1767
+ "type": "uint32",
1768
+ "name": "movingFundsRequestedAt"
1769
+ },
1770
+ {
1771
+ "type": "uint32",
1772
+ "name": "closingStartedAt"
1773
+ },
1774
+ {
1775
+ "type": "uint32",
1776
+ "name": "pendingMovedFundsSweepRequestsCount"
1777
+ },
1778
+ {
1779
+ "type": "uint8",
1780
+ "name": "state"
1781
+ },
1782
+ {
1783
+ "type": "bytes32",
1784
+ "name": "movingFundsTargetWalletsCommitmentHash"
1785
+ }
1786
+ ]
1787
+ }
1788
+ ],
1789
+ "outputs": []
1790
+ },
1791
+ {
1792
+ "type": "function",
1793
+ "name": "setWalletMainUtxo",
1794
+ "constant": false,
1795
+ "payable": false,
1796
+ "gas": 29000000,
1797
+ "inputs": [
1798
+ {
1799
+ "type": "bytes20",
1800
+ "name": "walletPubKeyHash"
1801
+ },
1802
+ {
1803
+ "type": "tuple",
1804
+ "name": "utxo",
1805
+ "components": [
1806
+ {
1807
+ "type": "bytes32",
1808
+ "name": "txHash"
1809
+ },
1810
+ {
1811
+ "type": "uint32",
1812
+ "name": "txOutputIndex"
1813
+ },
1814
+ {
1815
+ "type": "uint64",
1816
+ "name": "txOutputValue"
1817
+ }
1818
+ ]
1819
+ }
1820
+ ],
1821
+ "outputs": []
1822
+ },
1823
+ {
1824
+ "type": "function",
1825
+ "name": "spentMainUTXOs",
1826
+ "constant": true,
1827
+ "stateMutability": "view",
1828
+ "payable": false,
1829
+ "gas": 29000000,
1830
+ "inputs": [
1831
+ {
1832
+ "type": "uint256",
1833
+ "name": "utxoKey"
1834
+ }
1835
+ ],
1836
+ "outputs": [
1837
+ {
1838
+ "type": "bool"
1839
+ }
1840
+ ]
1841
+ },
1842
+ {
1843
+ "type": "function",
1844
+ "name": "submitDepositSweepProof",
1845
+ "constant": false,
1846
+ "payable": false,
1847
+ "gas": 29000000,
1848
+ "inputs": [
1849
+ {
1850
+ "type": "tuple",
1851
+ "name": "sweepTx",
1852
+ "components": [
1853
+ {
1854
+ "type": "bytes4",
1855
+ "name": "version"
1856
+ },
1857
+ {
1858
+ "type": "bytes",
1859
+ "name": "inputVector"
1860
+ },
1861
+ {
1862
+ "type": "bytes",
1863
+ "name": "outputVector"
1864
+ },
1865
+ {
1866
+ "type": "bytes4",
1867
+ "name": "locktime"
1868
+ }
1869
+ ]
1870
+ },
1871
+ {
1872
+ "type": "tuple",
1873
+ "name": "sweepProof",
1874
+ "components": [
1875
+ {
1876
+ "type": "bytes",
1877
+ "name": "merkleProof"
1878
+ },
1879
+ {
1880
+ "type": "uint256",
1881
+ "name": "txIndexInBlock"
1882
+ },
1883
+ {
1884
+ "type": "bytes",
1885
+ "name": "bitcoinHeaders"
1886
+ }
1887
+ ]
1888
+ },
1889
+ {
1890
+ "type": "tuple",
1891
+ "name": "mainUtxo",
1892
+ "components": [
1893
+ {
1894
+ "type": "bytes32",
1895
+ "name": "txHash"
1896
+ },
1897
+ {
1898
+ "type": "uint32",
1899
+ "name": "txOutputIndex"
1900
+ },
1901
+ {
1902
+ "type": "uint64",
1903
+ "name": "txOutputValue"
1904
+ }
1905
+ ]
1906
+ },
1907
+ {
1908
+ "type": "address",
1909
+ "name": "vault"
1910
+ }
1911
+ ],
1912
+ "outputs": []
1913
+ },
1914
+ {
1915
+ "type": "function",
1916
+ "name": "submitFraudChallenge",
1917
+ "constant": false,
1918
+ "stateMutability": "payable",
1919
+ "payable": true,
1920
+ "gas": 29000000,
1921
+ "inputs": [
1922
+ {
1923
+ "type": "bytes",
1924
+ "name": "walletPublicKey"
1925
+ },
1926
+ {
1927
+ "type": "bytes",
1928
+ "name": "preimageSha256"
1929
+ },
1930
+ {
1931
+ "type": "tuple",
1932
+ "name": "signature",
1933
+ "components": [
1934
+ {
1935
+ "type": "bytes32",
1936
+ "name": "r"
1937
+ },
1938
+ {
1939
+ "type": "bytes32",
1940
+ "name": "s"
1941
+ },
1942
+ {
1943
+ "type": "uint8",
1944
+ "name": "v"
1945
+ }
1946
+ ]
1947
+ }
1948
+ ],
1949
+ "outputs": []
1950
+ },
1951
+ {
1952
+ "type": "function",
1953
+ "name": "submitMovedFundsSweepProof",
1954
+ "constant": false,
1955
+ "payable": false,
1956
+ "gas": 29000000,
1957
+ "inputs": [
1958
+ {
1959
+ "type": "tuple",
1960
+ "name": "sweepTx",
1961
+ "components": [
1962
+ {
1963
+ "type": "bytes4",
1964
+ "name": "version"
1965
+ },
1966
+ {
1967
+ "type": "bytes",
1968
+ "name": "inputVector"
1969
+ },
1970
+ {
1971
+ "type": "bytes",
1972
+ "name": "outputVector"
1973
+ },
1974
+ {
1975
+ "type": "bytes4",
1976
+ "name": "locktime"
1977
+ }
1978
+ ]
1979
+ },
1980
+ {
1981
+ "type": "tuple",
1982
+ "name": "sweepProof",
1983
+ "components": [
1984
+ {
1985
+ "type": "bytes",
1986
+ "name": "merkleProof"
1987
+ },
1988
+ {
1989
+ "type": "uint256",
1990
+ "name": "txIndexInBlock"
1991
+ },
1992
+ {
1993
+ "type": "bytes",
1994
+ "name": "bitcoinHeaders"
1995
+ }
1996
+ ]
1997
+ },
1998
+ {
1999
+ "type": "tuple",
2000
+ "name": "mainUtxo",
2001
+ "components": [
2002
+ {
2003
+ "type": "bytes32",
2004
+ "name": "txHash"
2005
+ },
2006
+ {
2007
+ "type": "uint32",
2008
+ "name": "txOutputIndex"
2009
+ },
2010
+ {
2011
+ "type": "uint64",
2012
+ "name": "txOutputValue"
2013
+ }
2014
+ ]
2015
+ }
2016
+ ],
2017
+ "outputs": []
2018
+ },
2019
+ {
2020
+ "type": "function",
2021
+ "name": "submitMovingFundsCommitment",
2022
+ "constant": false,
2023
+ "payable": false,
2024
+ "gas": 29000000,
2025
+ "inputs": [
2026
+ {
2027
+ "type": "bytes20",
2028
+ "name": "walletPubKeyHash"
2029
+ },
2030
+ {
2031
+ "type": "tuple",
2032
+ "name": "walletMainUtxo",
2033
+ "components": [
2034
+ {
2035
+ "type": "bytes32",
2036
+ "name": "txHash"
2037
+ },
2038
+ {
2039
+ "type": "uint32",
2040
+ "name": "txOutputIndex"
2041
+ },
2042
+ {
2043
+ "type": "uint64",
2044
+ "name": "txOutputValue"
2045
+ }
2046
+ ]
2047
+ },
2048
+ {
2049
+ "type": "uint32[]",
2050
+ "name": "walletMembersIDs"
2051
+ },
2052
+ {
2053
+ "type": "uint256",
2054
+ "name": "walletMemberIndex"
2055
+ },
2056
+ {
2057
+ "type": "bytes20[]",
2058
+ "name": "targetWallets"
2059
+ }
2060
+ ],
2061
+ "outputs": []
2062
+ },
2063
+ {
2064
+ "type": "function",
2065
+ "name": "submitMovingFundsProof",
2066
+ "constant": false,
2067
+ "payable": false,
2068
+ "gas": 29000000,
2069
+ "inputs": [
2070
+ {
2071
+ "type": "tuple",
2072
+ "name": "movingFundsTx",
2073
+ "components": [
2074
+ {
2075
+ "type": "bytes4",
2076
+ "name": "version"
2077
+ },
2078
+ {
2079
+ "type": "bytes",
2080
+ "name": "inputVector"
2081
+ },
2082
+ {
2083
+ "type": "bytes",
2084
+ "name": "outputVector"
2085
+ },
2086
+ {
2087
+ "type": "bytes4",
2088
+ "name": "locktime"
2089
+ }
2090
+ ]
2091
+ },
2092
+ {
2093
+ "type": "tuple",
2094
+ "name": "movingFundsProof",
2095
+ "components": [
2096
+ {
2097
+ "type": "bytes",
2098
+ "name": "merkleProof"
2099
+ },
2100
+ {
2101
+ "type": "uint256",
2102
+ "name": "txIndexInBlock"
2103
+ },
2104
+ {
2105
+ "type": "bytes",
2106
+ "name": "bitcoinHeaders"
2107
+ }
2108
+ ]
2109
+ },
2110
+ {
2111
+ "type": "tuple",
2112
+ "name": "mainUtxo",
2113
+ "components": [
2114
+ {
2115
+ "type": "bytes32",
2116
+ "name": "txHash"
2117
+ },
2118
+ {
2119
+ "type": "uint32",
2120
+ "name": "txOutputIndex"
2121
+ },
2122
+ {
2123
+ "type": "uint64",
2124
+ "name": "txOutputValue"
2125
+ }
2126
+ ]
2127
+ },
2128
+ {
2129
+ "type": "bytes20",
2130
+ "name": "walletPubKeyHash"
2131
+ }
2132
+ ],
2133
+ "outputs": []
2134
+ },
2135
+ {
2136
+ "type": "function",
2137
+ "name": "submitRedemptionProof",
2138
+ "constant": false,
2139
+ "payable": false,
2140
+ "gas": 29000000,
2141
+ "inputs": [
2142
+ {
2143
+ "type": "tuple",
2144
+ "name": "redemptionTx",
2145
+ "components": [
2146
+ {
2147
+ "type": "bytes4",
2148
+ "name": "version"
2149
+ },
2150
+ {
2151
+ "type": "bytes",
2152
+ "name": "inputVector"
2153
+ },
2154
+ {
2155
+ "type": "bytes",
2156
+ "name": "outputVector"
2157
+ },
2158
+ {
2159
+ "type": "bytes4",
2160
+ "name": "locktime"
2161
+ }
2162
+ ]
2163
+ },
2164
+ {
2165
+ "type": "tuple",
2166
+ "name": "redemptionProof",
2167
+ "components": [
2168
+ {
2169
+ "type": "bytes",
2170
+ "name": "merkleProof"
2171
+ },
2172
+ {
2173
+ "type": "uint256",
2174
+ "name": "txIndexInBlock"
2175
+ },
2176
+ {
2177
+ "type": "bytes",
2178
+ "name": "bitcoinHeaders"
2179
+ }
2180
+ ]
2181
+ },
2182
+ {
2183
+ "type": "tuple",
2184
+ "name": "mainUtxo",
2185
+ "components": [
2186
+ {
2187
+ "type": "bytes32",
2188
+ "name": "txHash"
2189
+ },
2190
+ {
2191
+ "type": "uint32",
2192
+ "name": "txOutputIndex"
2193
+ },
2194
+ {
2195
+ "type": "uint64",
2196
+ "name": "txOutputValue"
2197
+ }
2198
+ ]
2199
+ },
2200
+ {
2201
+ "type": "bytes20",
2202
+ "name": "walletPubKeyHash"
2203
+ }
2204
+ ],
2205
+ "outputs": []
2206
+ },
2207
+ {
2208
+ "type": "function",
2209
+ "name": "timedOutRedemptions",
2210
+ "constant": true,
2211
+ "stateMutability": "view",
2212
+ "payable": false,
2213
+ "gas": 29000000,
2214
+ "inputs": [
2215
+ {
2216
+ "type": "uint256",
2217
+ "name": "redemptionKey"
2218
+ }
2219
+ ],
2220
+ "outputs": [
2221
+ {
2222
+ "type": "tuple",
2223
+ "components": [
2224
+ {
2225
+ "type": "address",
2226
+ "name": "redeemer"
2227
+ },
2228
+ {
2229
+ "type": "uint64",
2230
+ "name": "requestedAmount"
2231
+ },
2232
+ {
2233
+ "type": "uint64",
2234
+ "name": "treasuryFee"
2235
+ },
2236
+ {
2237
+ "type": "uint64",
2238
+ "name": "txMaxFee"
2239
+ },
2240
+ {
2241
+ "type": "uint32",
2242
+ "name": "requestedAt"
2243
+ }
2244
+ ]
2245
+ }
2246
+ ]
2247
+ },
2248
+ {
2249
+ "type": "function",
2250
+ "name": "timeoutPendingMovedFundsSweepRequest",
2251
+ "constant": false,
2252
+ "payable": false,
2253
+ "gas": 29000000,
2254
+ "inputs": [
2255
+ {
2256
+ "type": "bytes20",
2257
+ "name": "walletPubKeyHash"
2258
+ },
2259
+ {
2260
+ "type": "tuple",
2261
+ "name": "utxo",
2262
+ "components": [
2263
+ {
2264
+ "type": "bytes32",
2265
+ "name": "txHash"
2266
+ },
2267
+ {
2268
+ "type": "uint32",
2269
+ "name": "txOutputIndex"
2270
+ },
2271
+ {
2272
+ "type": "uint64",
2273
+ "name": "txOutputValue"
2274
+ }
2275
+ ]
2276
+ }
2277
+ ],
2278
+ "outputs": []
2279
+ },
2280
+ {
2281
+ "type": "function",
2282
+ "name": "transferGovernance",
2283
+ "constant": false,
2284
+ "payable": false,
2285
+ "gas": 29000000,
2286
+ "inputs": [
2287
+ {
2288
+ "type": "address",
2289
+ "name": "newGovernance"
2290
+ }
2291
+ ],
2292
+ "outputs": []
2293
+ },
2294
+ {
2295
+ "type": "function",
2296
+ "name": "treasury",
2297
+ "constant": true,
2298
+ "stateMutability": "view",
2299
+ "payable": false,
2300
+ "gas": 29000000,
2301
+ "inputs": [],
2302
+ "outputs": [
2303
+ {
2304
+ "type": "address"
2305
+ }
2306
+ ]
2307
+ },
2308
+ {
2309
+ "type": "function",
2310
+ "name": "txProofDifficultyFactor",
2311
+ "constant": true,
2312
+ "stateMutability": "view",
2313
+ "payable": false,
2314
+ "gas": 29000000,
2315
+ "inputs": [],
2316
+ "outputs": [
2317
+ {
2318
+ "type": "uint256"
2319
+ }
2320
+ ]
2321
+ },
2322
+ {
2323
+ "type": "function",
2324
+ "name": "updateDepositParameters",
2325
+ "constant": false,
2326
+ "payable": false,
2327
+ "gas": 29000000,
2328
+ "inputs": [
2329
+ {
2330
+ "type": "uint64",
2331
+ "name": "depositDustThreshold"
2332
+ },
2333
+ {
2334
+ "type": "uint64",
2335
+ "name": "depositTreasuryFeeDivisor"
2336
+ },
2337
+ {
2338
+ "type": "uint64",
2339
+ "name": "depositTxMaxFee"
2340
+ }
2341
+ ],
2342
+ "outputs": []
2343
+ },
2344
+ {
2345
+ "type": "function",
2346
+ "name": "updateFraudParameters",
2347
+ "constant": false,
2348
+ "payable": false,
2349
+ "gas": 29000000,
2350
+ "inputs": [
2351
+ {
2352
+ "type": "uint256",
2353
+ "name": "fraudChallengeDepositAmount"
2354
+ },
2355
+ {
2356
+ "type": "uint256",
2357
+ "name": "fraudChallengeDefeatTimeout"
2358
+ },
2359
+ {
2360
+ "type": "uint96",
2361
+ "name": "fraudSlashingAmount"
2362
+ },
2363
+ {
2364
+ "type": "uint256",
2365
+ "name": "fraudNotifierRewardMultiplier"
2366
+ }
2367
+ ],
2368
+ "outputs": []
2369
+ },
2370
+ {
2371
+ "type": "function",
2372
+ "name": "updateMovingFundsParameters",
2373
+ "constant": false,
2374
+ "payable": false,
2375
+ "gas": 29000000,
2376
+ "inputs": [
2377
+ {
2378
+ "type": "uint64",
2379
+ "name": "movingFundsTxMaxTotalFee"
2380
+ },
2381
+ {
2382
+ "type": "uint64",
2383
+ "name": "movingFundsDustThreshold"
2384
+ },
2385
+ {
2386
+ "type": "uint32",
2387
+ "name": "movingFundsTimeoutResetDelay"
2388
+ },
2389
+ {
2390
+ "type": "uint32",
2391
+ "name": "movingFundsTimeout"
2392
+ },
2393
+ {
2394
+ "type": "uint96",
2395
+ "name": "movingFundsTimeoutSlashingAmount"
2396
+ },
2397
+ {
2398
+ "type": "uint256",
2399
+ "name": "movingFundsTimeoutNotifierRewardMultiplier"
2400
+ },
2401
+ {
2402
+ "type": "uint64",
2403
+ "name": "movedFundsSweepTxMaxTotalFee"
2404
+ },
2405
+ {
2406
+ "type": "uint32",
2407
+ "name": "movedFundsSweepTimeout"
2408
+ },
2409
+ {
2410
+ "type": "uint96",
2411
+ "name": "movedFundsSweepTimeoutSlashingAmount"
2412
+ },
2413
+ {
2414
+ "type": "uint256",
2415
+ "name": "movedFundsSweepTimeoutNotifierRewardMultiplier"
2416
+ }
2417
+ ],
2418
+ "outputs": []
2419
+ },
2420
+ {
2421
+ "type": "function",
2422
+ "name": "updateRedemptionParameters",
2423
+ "constant": false,
2424
+ "payable": false,
2425
+ "gas": 29000000,
2426
+ "inputs": [
2427
+ {
2428
+ "type": "uint64",
2429
+ "name": "redemptionDustThreshold"
2430
+ },
2431
+ {
2432
+ "type": "uint64",
2433
+ "name": "redemptionTreasuryFeeDivisor"
2434
+ },
2435
+ {
2436
+ "type": "uint64",
2437
+ "name": "redemptionTxMaxFee"
2438
+ },
2439
+ {
2440
+ "type": "uint256",
2441
+ "name": "redemptionTimeout"
2442
+ },
2443
+ {
2444
+ "type": "uint96",
2445
+ "name": "redemptionTimeoutSlashingAmount"
2446
+ },
2447
+ {
2448
+ "type": "uint256",
2449
+ "name": "redemptionTimeoutNotifierRewardMultiplier"
2450
+ }
2451
+ ],
2452
+ "outputs": []
2453
+ },
2454
+ {
2455
+ "type": "function",
2456
+ "name": "updateWalletParameters",
2457
+ "constant": false,
2458
+ "payable": false,
2459
+ "gas": 29000000,
2460
+ "inputs": [
2461
+ {
2462
+ "type": "uint32",
2463
+ "name": "walletCreationPeriod"
2464
+ },
2465
+ {
2466
+ "type": "uint64",
2467
+ "name": "walletCreationMinBtcBalance"
2468
+ },
2469
+ {
2470
+ "type": "uint64",
2471
+ "name": "walletCreationMaxBtcBalance"
2472
+ },
2473
+ {
2474
+ "type": "uint64",
2475
+ "name": "walletClosureMinBtcBalance"
2476
+ },
2477
+ {
2478
+ "type": "uint32",
2479
+ "name": "walletMaxAge"
2480
+ },
2481
+ {
2482
+ "type": "uint64",
2483
+ "name": "walletMaxBtcTransfer"
2484
+ },
2485
+ {
2486
+ "type": "uint32",
2487
+ "name": "walletClosingPeriod"
2488
+ }
2489
+ ],
2490
+ "outputs": []
2491
+ },
2492
+ {
2493
+ "type": "function",
2494
+ "name": "walletParameters",
2495
+ "constant": true,
2496
+ "stateMutability": "view",
2497
+ "payable": false,
2498
+ "gas": 29000000,
2499
+ "inputs": [],
2500
+ "outputs": [
2501
+ {
2502
+ "type": "uint32",
2503
+ "name": "walletCreationPeriod"
2504
+ },
2505
+ {
2506
+ "type": "uint64",
2507
+ "name": "walletCreationMinBtcBalance"
2508
+ },
2509
+ {
2510
+ "type": "uint64",
2511
+ "name": "walletCreationMaxBtcBalance"
2512
+ },
2513
+ {
2514
+ "type": "uint64",
2515
+ "name": "walletClosureMinBtcBalance"
2516
+ },
2517
+ {
2518
+ "type": "uint32",
2519
+ "name": "walletMaxAge"
2520
+ },
2521
+ {
2522
+ "type": "uint64",
2523
+ "name": "walletMaxBtcTransfer"
2524
+ },
2525
+ {
2526
+ "type": "uint32",
2527
+ "name": "walletClosingPeriod"
2528
+ }
2529
+ ]
2530
+ },
2531
+ {
2532
+ "type": "function",
2533
+ "name": "wallets",
2534
+ "constant": true,
2535
+ "stateMutability": "view",
2536
+ "payable": false,
2537
+ "gas": 29000000,
2538
+ "inputs": [
2539
+ {
2540
+ "type": "bytes20",
2541
+ "name": "walletPubKeyHash"
2542
+ }
2543
+ ],
2544
+ "outputs": [
2545
+ {
2546
+ "type": "tuple",
2547
+ "components": [
2548
+ {
2549
+ "type": "bytes32",
2550
+ "name": "ecdsaWalletID"
2551
+ },
2552
+ {
2553
+ "type": "bytes32",
2554
+ "name": "mainUtxoHash"
2555
+ },
2556
+ {
2557
+ "type": "uint64",
2558
+ "name": "pendingRedemptionsValue"
2559
+ },
2560
+ {
2561
+ "type": "uint32",
2562
+ "name": "createdAt"
2563
+ },
2564
+ {
2565
+ "type": "uint32",
2566
+ "name": "movingFundsRequestedAt"
2567
+ },
2568
+ {
2569
+ "type": "uint32",
2570
+ "name": "closingStartedAt"
2571
+ },
2572
+ {
2573
+ "type": "uint32",
2574
+ "name": "pendingMovedFundsSweepRequestsCount"
2575
+ },
2576
+ {
2577
+ "type": "uint8",
2578
+ "name": "state"
2579
+ },
2580
+ {
2581
+ "type": "bytes32",
2582
+ "name": "movingFundsTargetWalletsCommitmentHash"
2583
+ }
2584
+ ]
2585
+ }
2586
+ ]
2587
+ }
2588
+ ],
2589
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2590
+ "receipt": {
2591
+ "to": null,
2592
+ "from": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
2593
+ "contractAddress": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
2594
+ "transactionIndex": 0,
2595
+ "gasUsed": "1132559",
2596
+ "logsBloom": "0x00000000000000000000000000000000400000004000000000000000000000000000000000000040000040000000000000000000000000000000000010000000000000000000000000000000000002000000000000000800000000000100000000000000000000000000000000000000000000800000000000000000001000000000000000000000000000000000000000000000000080000000000000800000000000000000000000000000000400000000000000000000000000000000000000000020040000000000000000040000000000000400000000000000000000000000000000000000000800000000000000000000000000000000000000000000",
2597
+ "blockHash": "0xb99b2475644e27f94dc73c7867f72501261cc9ae22cd926782da0fb7f47e88b6",
2598
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2599
+ "logs": [
2600
+ {
2601
+ "transactionIndex": 0,
2602
+ "blockNumber": 50,
2603
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2604
+ "address": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
2605
+ "topics": [
2606
+ "0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b",
2607
+ "0x000000000000000000000000a85b028984bc54a2a3d844b070544f59dddf89de"
2608
+ ],
2609
+ "data": "0x",
2610
+ "logIndex": 0,
2611
+ "blockHash": "0xb99b2475644e27f94dc73c7867f72501261cc9ae22cd926782da0fb7f47e88b6"
2612
+ },
2613
+ {
2614
+ "transactionIndex": 0,
2615
+ "blockNumber": 50,
2616
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2617
+ "address": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
2618
+ "topics": [
2619
+ "0x5f56bee8cffbe9a78652a74a60705edede02af10b0bbb888ca44b79a0d42ce80"
2620
+ ],
2621
+ "data": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c8",
2622
+ "logIndex": 1,
2623
+ "blockHash": "0xb99b2475644e27f94dc73c7867f72501261cc9ae22cd926782da0fb7f47e88b6"
2624
+ },
2625
+ {
2626
+ "transactionIndex": 0,
2627
+ "blockNumber": 50,
2628
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2629
+ "address": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
2630
+ "topics": [
2631
+ "0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498"
2632
+ ],
2633
+ "data": "0x0000000000000000000000000000000000000000000000000000000000000001",
2634
+ "logIndex": 2,
2635
+ "blockHash": "0xb99b2475644e27f94dc73c7867f72501261cc9ae22cd926782da0fb7f47e88b6"
2636
+ },
2637
+ {
2638
+ "transactionIndex": 0,
2639
+ "blockNumber": 50,
2640
+ "transactionHash": "0x3dc5423df5d599ae59501104061724687a0a9eaed0b56eb8b2e5201a1dd10dc2",
2641
+ "address": "0xD499f5F7d3C918D0e553BA03954c4E02af16B6e4",
2642
+ "topics": [
2643
+ "0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"
2644
+ ],
2645
+ "data": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ed17543171c1459714cdc6519b58ffcc29a3c3c9",
2646
+ "logIndex": 3,
2647
+ "blockHash": "0xb99b2475644e27f94dc73c7867f72501261cc9ae22cd926782da0fb7f47e88b6"
2648
+ }
2649
+ ],
2650
+ "blockNumber": 50,
2651
+ "cumulativeGasUsed": "1132559",
2652
+ "status": 1,
2653
+ "byzantium": true
2654
+ },
2655
+ "numDeployments": 1,
2656
+ "libraries": {
2657
+ "Deposit": "0x0AFdAcD509e73115EA1654B1a770f1a807e7c9C0",
2658
+ "DepositSweep": "0xc63d2a04762529edB649d7a4cC3E57A0085e8544",
2659
+ "Redemption": "0x1a6a3e7Bb246158dF31d8f924B84D961669Ba4e5",
2660
+ "Wallets": "0x093e8F4d8f267d2CeEc9eB889E2054710d187beD",
2661
+ "Fraud": "0xBa3e08b4753E68952031102518379ED2fDADcA30",
2662
+ "MovingFunds": "0x34ee84036C47d852901b7069aBD80171D9A489a6"
2663
+ },
2664
+ "implementation": "0xa85b028984bC54A2a3D844B070544F59dDDf89DE",
2665
+ "devdoc": "Contract deployed as upgradable proxy"
2666
+ }