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