@keep-network/tbtc-v2 1.6.0-dev.5 → 1.6.0-dev.7

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 (160) hide show
  1. package/artifacts/BLS.json +6 -6
  2. package/artifacts/Bank.json +17 -17
  3. package/artifacts/BeaconAuthorization.json +6 -6
  4. package/artifacts/BeaconDkg.json +6 -6
  5. package/artifacts/BeaconDkgValidator.json +9 -9
  6. package/artifacts/BeaconInactivity.json +6 -6
  7. package/artifacts/BeaconSortitionPool.json +16 -16
  8. package/artifacts/Bridge.json +32 -32
  9. package/artifacts/BridgeGovernance.json +14 -14
  10. package/artifacts/BridgeGovernanceParameters.json +7 -7
  11. package/artifacts/Deposit.json +7 -7
  12. package/artifacts/DepositSweep.json +7 -7
  13. package/artifacts/DonationVault.json +11 -11
  14. package/artifacts/EcdsaDkgValidator.json +7 -7
  15. package/artifacts/EcdsaInactivity.json +6 -6
  16. package/artifacts/EcdsaSortitionPool.json +16 -16
  17. package/artifacts/Fraud.json +7 -7
  18. package/artifacts/LightRelay.json +28 -28
  19. package/artifacts/LightRelayMaintainerProxy.json +24 -24
  20. package/artifacts/MaintainerProxy.json +37 -37
  21. package/artifacts/MovingFunds.json +7 -7
  22. package/artifacts/NuCypherToken.json +11 -11
  23. package/artifacts/RandomBeacon.json +23 -23
  24. package/artifacts/RandomBeaconChaosnet.json +11 -11
  25. package/artifacts/RandomBeaconGovernance.json +12 -12
  26. package/artifacts/Redemption.json +7 -7
  27. package/artifacts/ReimbursementPool.json +11 -11
  28. package/artifacts/T.json +11 -11
  29. package/artifacts/TBTC.json +19 -19
  30. package/artifacts/TBTCToken.json +19 -19
  31. package/artifacts/TBTCVault.json +36 -36
  32. package/artifacts/TokenStaking.json +156 -308
  33. package/artifacts/TokenholderGovernor.json +47 -47
  34. package/artifacts/TokenholderTimelock.json +36 -36
  35. package/artifacts/VendingMachine.json +22 -22
  36. package/artifacts/VendingMachineNuCypher.json +9 -9
  37. package/artifacts/VendingMachineV2.json +15 -15
  38. package/artifacts/VendingMachineV3.json +15 -15
  39. package/artifacts/WalletProposalValidator.json +437 -0
  40. package/artifacts/WalletRegistry.json +31 -31
  41. package/artifacts/WalletRegistryGovernance.json +56 -56
  42. package/artifacts/Wallets.json +7 -7
  43. package/artifacts/solcInputs/{d2d7e276da75d7184610fe11a4a103b7.json → b4e1c442421284b256fcad9f86102ecc.json} +4 -4
  44. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  45. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  46. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
  47. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  48. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  49. package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
  50. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
  51. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
  52. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
  53. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
  54. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
  55. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
  56. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
  57. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
  58. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
  59. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
  60. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  61. package/build/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.dbg.json +1 -1
  62. package/build/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.dbg.json +1 -1
  63. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.dbg.json +4 -0
  64. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +323 -0
  65. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
  66. package/build/contracts/l2/L2TBTC.sol/L2TBTC.dbg.json +1 -1
  67. package/build/contracts/l2/L2WormholeGateway.sol/IWormholeTokenBridge.dbg.json +1 -1
  68. package/build/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.dbg.json +1 -1
  69. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
  70. package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
  71. package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
  72. package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
  73. package/build/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.dbg.json +1 -1
  74. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  75. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
  76. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  77. package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
  78. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  79. package/contracts/bridge/{WalletCoordinator.sol → WalletProposalValidator.sol} +129 -447
  80. package/deploy/39_deploy_wallet_proposal_validator.ts +33 -0
  81. package/export/artifacts/@keep-network/ecdsa/contracts/EcdsaDkgValidator.sol/EcdsaDkgValidator.json +24 -24
  82. package/export/artifacts/@keep-network/ecdsa/contracts/WalletRegistry.sol/WalletRegistry.json +4999 -4814
  83. package/export/artifacts/@keep-network/ecdsa/contracts/libraries/EcdsaDkg.sol/EcdsaDkg.json +2 -2
  84. package/export/artifacts/@keep-network/ecdsa/contracts/libraries/EcdsaInactivity.sol/EcdsaInactivity.json +23 -23
  85. package/export/artifacts/@keep-network/random-beacon/contracts/ReimbursementPool.sol/ReimbursementPool.json +53 -53
  86. package/export/artifacts/@keep-network/sortition-pools/contracts/Chaosnet.sol/Chaosnet.json +21 -21
  87. package/export/artifacts/@keep-network/sortition-pools/contracts/Rewards.sol/Rewards.json +16 -16
  88. package/export/artifacts/@keep-network/sortition-pools/contracts/SortitionPool.sol/SortitionPool.json +206 -206
  89. package/export/artifacts/@keep-network/sortition-pools/contracts/SortitionTree.sol/SortitionTree.json +26 -26
  90. package/export/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +46 -46
  91. package/export/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +36 -36
  92. package/export/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +78 -78
  93. package/export/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +68 -68
  94. package/export/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol/ERC20Upgradeable.json +43 -43
  95. package/export/artifacts/@thesis/solidity-contracts/contracts/token/ERC20WithPermit.sol/ERC20WithPermit.json +79 -79
  96. package/export/artifacts/@thesis/solidity-contracts/contracts/token/MisfundRecovery.sol/MisfundRecovery.json +42 -42
  97. package/export/artifacts/contracts/bank/Bank.sol/Bank.json +77 -77
  98. package/export/artifacts/contracts/bridge/Bridge.sol/Bridge.json +320 -320
  99. package/export/artifacts/contracts/bridge/VendingMachine.sol/VendingMachine.json +108 -108
  100. package/export/artifacts/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.json +63 -63
  101. package/export/artifacts/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.json +65 -65
  102. package/export/artifacts/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +25381 -0
  103. package/export/artifacts/contracts/l2/L2TBTC.sol/L2TBTC.json +194 -194
  104. package/export/artifacts/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.json +98 -98
  105. package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +149 -149
  106. package/export/artifacts/contracts/relay/LightRelay.sol/LightRelay.json +76 -76
  107. package/export/artifacts/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.json +62 -62
  108. package/export/artifacts/contracts/test/BankStub.sol/BankStub.json +79 -79
  109. package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +358 -358
  110. package/export/artifacts/contracts/test/GoerliLightRelay.sol/GoerliLightRelay.json +78 -78
  111. package/export/artifacts/contracts/test/HeartbeatStub.sol/HeartbeatStub.json +4 -4
  112. package/export/artifacts/contracts/test/LightRelayStub.sol/LightRelayStub.json +78 -78
  113. package/export/artifacts/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.json +7 -7
  114. package/export/artifacts/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.json +78 -78
  115. package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +14 -14
  116. package/export/artifacts/contracts/test/TestERC20.sol/TestERC20.json +85 -85
  117. package/export/artifacts/contracts/test/TestERC721.sol/TestERC721.json +78 -78
  118. package/export/artifacts/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.json +4 -4
  119. package/export/artifacts/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.json +37 -37
  120. package/export/artifacts/contracts/token/TBTC.sol/TBTC.json +104 -104
  121. package/export/artifacts/contracts/vault/DonationVault.sol/DonationVault.json +19 -19
  122. package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +184 -184
  123. package/export/deploy/39_deploy_wallet_proposal_validator.js +82 -0
  124. package/export/hardhat.config.js +0 -6
  125. package/export/typechain/factories/EcdsaAuthorization__factory.js +1 -1
  126. package/export/typechain/factories/IStaking__factory.js +24 -103
  127. package/export/typechain/factories/WalletProposalValidator__factory.js +402 -0
  128. package/export/typechain/factories/WalletRegistry__factory.js +1 -1
  129. package/export/typechain/index.js +3 -3
  130. package/package.json +2 -2
  131. package/artifacts/KeepRegistry.json +0 -99
  132. package/artifacts/KeepStake.json +0 -286
  133. package/artifacts/KeepToken.json +0 -711
  134. package/artifacts/KeepTokenStaking.json +0 -483
  135. package/artifacts/NuCypherStakingEscrow.json +0 -287
  136. package/artifacts/VendingMachineKeep.json +0 -400
  137. package/artifacts/WalletCoordinator.json +0 -1107
  138. package/build/contracts/bridge/WalletCoordinator.sol/WalletCoordinator.dbg.json +0 -4
  139. package/build/contracts/bridge/WalletCoordinator.sol/WalletCoordinator.json +0 -1042
  140. package/deploy/34_deploy_wallet_coordinator.ts +0 -43
  141. package/deploy/35_add_coordinator_address.ts +0 -20
  142. package/deploy/36_transfer_wallet_coordinator_ownership.ts +0 -19
  143. package/deploy/81_upgrade_wallet_coordinator_v2.ts +0 -99
  144. package/export/artifacts/contracts/bridge/WalletCoordinator.sol/WalletCoordinator.json +0 -33310
  145. package/export/deploy/34_deploy_wallet_coordinator.js +0 -115
  146. package/export/deploy/35_add_coordinator_address.js +0 -60
  147. package/export/deploy/36_transfer_wallet_coordinator_ownership.js +0 -60
  148. package/export/deploy/81_upgrade_wallet_coordinator_v2.js +0 -140
  149. package/export/typechain/factories/WalletCoordinator__factory.js +0 -1121
  150. /package/deploy/{37_deploy_light_relay_maintainer_proxy.ts → 34_deploy_light_relay_maintainer_proxy.ts} +0 -0
  151. /package/deploy/{38_authorize_maintainer_in_light_relay_maintainer_proxy.ts → 35_authorize_maintainer_in_light_relay_maintainer_proxy.ts} +0 -0
  152. /package/deploy/{39_transfer_light_relay_maintainer_proxy_ownership.ts → 36_transfer_light_relay_maintainer_proxy_ownership.ts} +0 -0
  153. /package/deploy/{40_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.ts → 37_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.ts} +0 -0
  154. /package/deploy/{41_authorize_light_relay_maintainer_proxy_in_light_relay.ts → 38_authorize_light_relay_maintainer_proxy_in_light_relay.ts} +0 -0
  155. /package/export/deploy/{37_deploy_light_relay_maintainer_proxy.js → 34_deploy_light_relay_maintainer_proxy.js} +0 -0
  156. /package/export/deploy/{38_authorize_maintainer_in_light_relay_maintainer_proxy.js → 35_authorize_maintainer_in_light_relay_maintainer_proxy.js} +0 -0
  157. /package/export/deploy/{39_transfer_light_relay_maintainer_proxy_ownership.js → 36_transfer_light_relay_maintainer_proxy_ownership.js} +0 -0
  158. /package/export/deploy/{40_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.js → 37_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.js} +0 -0
  159. /package/export/deploy/{41_authorize_light_relay_maintainer_proxy_in_light_relay.js → 38_authorize_light_relay_maintainer_proxy_in_light_relay.js} +0 -0
  160. /package/export/typechain/{WalletCoordinator.js → WalletProposalValidator.js} +0 -0
@@ -0,0 +1,402 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __read = (this && this.__read) || function (o, n) {
18
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
19
+ if (!m) return o;
20
+ var i = m.call(o), r, ar = [], e;
21
+ try {
22
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
23
+ }
24
+ catch (error) { e = { error: error }; }
25
+ finally {
26
+ try {
27
+ if (r && !r.done && (m = i["return"])) m.call(i);
28
+ }
29
+ finally { if (e) throw e.error; }
30
+ }
31
+ return ar;
32
+ };
33
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
34
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
35
+ if (ar || !(i in from)) {
36
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
37
+ ar[i] = from[i];
38
+ }
39
+ }
40
+ return to.concat(ar || Array.prototype.slice.call(from));
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.WalletProposalValidator__factory = void 0;
44
+ /* Autogenerated file. Do not edit manually. */
45
+ /* tslint:disable */
46
+ /* eslint-disable */
47
+ var ethers_1 = require("ethers");
48
+ var _abi = [
49
+ {
50
+ inputs: [
51
+ {
52
+ internalType: "contract Bridge",
53
+ name: "_bridge",
54
+ type: "address",
55
+ },
56
+ ],
57
+ stateMutability: "nonpayable",
58
+ type: "constructor",
59
+ },
60
+ {
61
+ inputs: [],
62
+ name: "DEPOSIT_MIN_AGE",
63
+ outputs: [
64
+ {
65
+ internalType: "uint32",
66
+ name: "",
67
+ type: "uint32",
68
+ },
69
+ ],
70
+ stateMutability: "view",
71
+ type: "function",
72
+ },
73
+ {
74
+ inputs: [],
75
+ name: "DEPOSIT_REFUND_SAFETY_MARGIN",
76
+ outputs: [
77
+ {
78
+ internalType: "uint32",
79
+ name: "",
80
+ type: "uint32",
81
+ },
82
+ ],
83
+ stateMutability: "view",
84
+ type: "function",
85
+ },
86
+ {
87
+ inputs: [],
88
+ name: "DEPOSIT_SWEEP_MAX_SIZE",
89
+ outputs: [
90
+ {
91
+ internalType: "uint16",
92
+ name: "",
93
+ type: "uint16",
94
+ },
95
+ ],
96
+ stateMutability: "view",
97
+ type: "function",
98
+ },
99
+ {
100
+ inputs: [],
101
+ name: "REDEMPTION_MAX_SIZE",
102
+ outputs: [
103
+ {
104
+ internalType: "uint16",
105
+ name: "",
106
+ type: "uint16",
107
+ },
108
+ ],
109
+ stateMutability: "view",
110
+ type: "function",
111
+ },
112
+ {
113
+ inputs: [],
114
+ name: "REDEMPTION_REQUEST_MIN_AGE",
115
+ outputs: [
116
+ {
117
+ internalType: "uint32",
118
+ name: "",
119
+ type: "uint32",
120
+ },
121
+ ],
122
+ stateMutability: "view",
123
+ type: "function",
124
+ },
125
+ {
126
+ inputs: [],
127
+ name: "REDEMPTION_REQUEST_TIMEOUT_SAFETY_MARGIN",
128
+ outputs: [
129
+ {
130
+ internalType: "uint32",
131
+ name: "",
132
+ type: "uint32",
133
+ },
134
+ ],
135
+ stateMutability: "view",
136
+ type: "function",
137
+ },
138
+ {
139
+ inputs: [],
140
+ name: "bridge",
141
+ outputs: [
142
+ {
143
+ internalType: "contract Bridge",
144
+ name: "",
145
+ type: "address",
146
+ },
147
+ ],
148
+ stateMutability: "view",
149
+ type: "function",
150
+ },
151
+ {
152
+ inputs: [
153
+ {
154
+ components: [
155
+ {
156
+ internalType: "bytes20",
157
+ name: "walletPubKeyHash",
158
+ type: "bytes20",
159
+ },
160
+ {
161
+ components: [
162
+ {
163
+ internalType: "bytes32",
164
+ name: "fundingTxHash",
165
+ type: "bytes32",
166
+ },
167
+ {
168
+ internalType: "uint32",
169
+ name: "fundingOutputIndex",
170
+ type: "uint32",
171
+ },
172
+ ],
173
+ internalType: "struct WalletProposalValidator.DepositKey[]",
174
+ name: "depositsKeys",
175
+ type: "tuple[]",
176
+ },
177
+ {
178
+ internalType: "uint256",
179
+ name: "sweepTxFee",
180
+ type: "uint256",
181
+ },
182
+ {
183
+ internalType: "uint256[]",
184
+ name: "depositsRevealBlocks",
185
+ type: "uint256[]",
186
+ },
187
+ ],
188
+ internalType: "struct WalletProposalValidator.DepositSweepProposal",
189
+ name: "proposal",
190
+ type: "tuple",
191
+ },
192
+ {
193
+ components: [
194
+ {
195
+ components: [
196
+ {
197
+ internalType: "bytes4",
198
+ name: "version",
199
+ type: "bytes4",
200
+ },
201
+ {
202
+ internalType: "bytes",
203
+ name: "inputVector",
204
+ type: "bytes",
205
+ },
206
+ {
207
+ internalType: "bytes",
208
+ name: "outputVector",
209
+ type: "bytes",
210
+ },
211
+ {
212
+ internalType: "bytes4",
213
+ name: "locktime",
214
+ type: "bytes4",
215
+ },
216
+ ],
217
+ internalType: "struct BitcoinTx.Info",
218
+ name: "fundingTx",
219
+ type: "tuple",
220
+ },
221
+ {
222
+ internalType: "bytes8",
223
+ name: "blindingFactor",
224
+ type: "bytes8",
225
+ },
226
+ {
227
+ internalType: "bytes20",
228
+ name: "walletPubKeyHash",
229
+ type: "bytes20",
230
+ },
231
+ {
232
+ internalType: "bytes20",
233
+ name: "refundPubKeyHash",
234
+ type: "bytes20",
235
+ },
236
+ {
237
+ internalType: "bytes4",
238
+ name: "refundLocktime",
239
+ type: "bytes4",
240
+ },
241
+ ],
242
+ internalType: "struct WalletProposalValidator.DepositExtraInfo[]",
243
+ name: "depositsExtraInfo",
244
+ type: "tuple[]",
245
+ },
246
+ ],
247
+ name: "validateDepositSweepProposal",
248
+ outputs: [
249
+ {
250
+ internalType: "bool",
251
+ name: "",
252
+ type: "bool",
253
+ },
254
+ ],
255
+ stateMutability: "view",
256
+ type: "function",
257
+ },
258
+ {
259
+ inputs: [
260
+ {
261
+ components: [
262
+ {
263
+ internalType: "bytes20",
264
+ name: "walletPubKeyHash",
265
+ type: "bytes20",
266
+ },
267
+ {
268
+ internalType: "bytes",
269
+ name: "message",
270
+ type: "bytes",
271
+ },
272
+ ],
273
+ internalType: "struct WalletProposalValidator.HeartbeatProposal",
274
+ name: "proposal",
275
+ type: "tuple",
276
+ },
277
+ ],
278
+ name: "validateHeartbeatProposal",
279
+ outputs: [
280
+ {
281
+ internalType: "bool",
282
+ name: "",
283
+ type: "bool",
284
+ },
285
+ ],
286
+ stateMutability: "view",
287
+ type: "function",
288
+ },
289
+ {
290
+ inputs: [
291
+ {
292
+ components: [
293
+ {
294
+ internalType: "bytes20",
295
+ name: "walletPubKeyHash",
296
+ type: "bytes20",
297
+ },
298
+ {
299
+ internalType: "bytes20[]",
300
+ name: "targetWallets",
301
+ type: "bytes20[]",
302
+ },
303
+ {
304
+ internalType: "uint256",
305
+ name: "movingFundsTxFee",
306
+ type: "uint256",
307
+ },
308
+ ],
309
+ internalType: "struct WalletProposalValidator.MovingFundsProposal",
310
+ name: "proposal",
311
+ type: "tuple",
312
+ },
313
+ ],
314
+ name: "validateMovingFundsProposal",
315
+ outputs: [
316
+ {
317
+ internalType: "bool",
318
+ name: "",
319
+ type: "bool",
320
+ },
321
+ ],
322
+ stateMutability: "view",
323
+ type: "function",
324
+ },
325
+ {
326
+ inputs: [
327
+ {
328
+ components: [
329
+ {
330
+ internalType: "bytes20",
331
+ name: "walletPubKeyHash",
332
+ type: "bytes20",
333
+ },
334
+ {
335
+ internalType: "bytes[]",
336
+ name: "redeemersOutputScripts",
337
+ type: "bytes[]",
338
+ },
339
+ {
340
+ internalType: "uint256",
341
+ name: "redemptionTxFee",
342
+ type: "uint256",
343
+ },
344
+ ],
345
+ internalType: "struct WalletProposalValidator.RedemptionProposal",
346
+ name: "proposal",
347
+ type: "tuple",
348
+ },
349
+ ],
350
+ name: "validateRedemptionProposal",
351
+ outputs: [
352
+ {
353
+ internalType: "bool",
354
+ name: "",
355
+ type: "bool",
356
+ },
357
+ ],
358
+ stateMutability: "view",
359
+ type: "function",
360
+ },
361
+ ];
362
+ var _bytecode = "0x60a06040523480156200001157600080fd5b50604051620031f9380380620031f9833981016040819052620000349162000046565b6001600160a01b031660805262000078565b6000602082840312156200005957600080fd5b81516001600160a01b03811681146200007157600080fd5b9392505050565b60805161312d620000cc6000396000818161016d015281816101c80152818161038501528181610652015281816109c301528181610c1a01528181610d8d0152818161113d0152611662015261312d6000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c8063765f28f911610081578063e0276b261161005b578063e0276b2614610144578063e78cea9214610168578063f03a4bc5146101a757600080fd5b8063765f28f91461013a578063996a756b14610144578063d09520f71461015f57600080fd5b806322e2c371116100b257806322e2c371146101145780636b562cec146100ce5780637405d7bf1461012757600080fd5b80630538ac1b146100ce5780630fde6c76146100f1575b600080fd5b6100d7611c2081565b60405163ffffffff90911681526020015b60405180910390f35b6101046100ff366004612352565b6101ba565b60405190151581526020016100e8565b610104610122366004612352565b6109b6565b61010461013536600461238f565b610d7f565b6100d76201518081565b61014c601481565b60405161ffff90911681526020016100e8565b6100d761025881565b61018f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100e8565b6101046101b5366004612431565b61156c565b600060016001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663e65e19d56101fa60208601866124a4565b6040516001600160e01b031960e084901b1681526bffffffffffffffffffffffff19909116600482015260240161012060405180830381865afa158015610245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610269919061258c565b60e00151600581111561027e5761027e61246c565b146102d05760405162461bcd60e51b815260206004820152601b60248201527f57616c6c6574206973206e6f7420696e204c697665207374617465000000000060448201526064015b60405180910390fd5b60006102df602084018461262f565b9150508061032f5760405162461bcd60e51b815260206004820152601d60248201527f526564656d7074696f6e2062656c6f7720746865206d696e2073697a6500000060448201526064016102c7565b60148111156103805760405162461bcd60e51b815260206004820152601f60248201527f526564656d7074696f6e206578636565647320746865206d61782073697a650060448201526064016102c7565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636e70ce416040518163ffffffff1660e01b815260040160e060405180830381865afa1580156103e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104059190612695565b50509450945050505060008560400135116104725760405162461bcd60e51b815260206004820152602760248201527f50726f706f736564207472616e73616374696f6e206665652063616e6e6f74206044820152666265207a65726f60c81b60648201526084016102c7565b8167ffffffffffffffff16856040013511156104dc5760405162461bcd60e51b8152602060048201526024808201527f50726f706f736564207472616e73616374696f6e2066656520697320746f6f206044820152630d0d2ced60e31b60648201526084016102c7565b60006104ec846040880135612737565b90506000846104ff8360408a0135612761565b6105099190612774565b905060008567ffffffffffffffff811115610526576105266124bf565b60405190808252806020026020018201604052801561054f578160200160208202803683370190505b50905060005b868110156109a757600061056c60208b018b61262f565b8381811061057c5761057c612788565b905060200281019061058e919061279e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052508451602080870191909120959650909493506105df92508e0190508d6124a4565b6040516020016106089291909182526bffffffffffffffffffffffff1916602082015260340190565b60408051808303601f190181529082905280516020909101207f03d952f70000000000000000000000000000000000000000000000000000000082526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906303d952f79060240160a060405180830381865afa1580156106a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c591906127fc565b9050806080015163ffffffff166000036107215760405162461bcd60e51b815260206004820181905260248201527f4e6f7420612070656e64696e6720726564656d7074696f6e207265717565737460448201526064016102c7565b6102588160800151610733919061288c565b63ffffffff1642116107ad5760405162461bcd60e51b815260206004820152602b60248201527f526564656d7074696f6e2072657175657374206d696e20616765206e6f74206160448201527f636869657665642079657400000000000000000000000000000000000000000060648201526084016102c7565b60008882608001516107bf919061288c565b90506107cd611c20826128b0565b63ffffffff1642106108475760405162461bcd60e51b815260206004820152603960248201527f526564656d7074696f6e20726571756573742074696d656f757420736166657460448201527f79206d617267696e206973206e6f74207072657365727665640000000000000060648201526084016102c7565b8661085360018d612761565b86036108665761086389826128cd565b90505b826060015167ffffffffffffffff168111156108ea5760405162461bcd60e51b815260206004820152603660248201527f50726f706f736564207472616e73616374696f6e207065722d7265717565737460448201527f2066656520736861726520697320746f6f20686967680000000000000000000060648201526084016102c7565b60005b8681101561096f578488828151811061090857610908612788565b60200260200101510361095d5760405162461bcd60e51b815260206004820152601260248201527f4475706c6963617465642072657175657374000000000000000000000000000060448201526064016102c7565b80610967816128e0565b9150506108ed565b508387878151811061098357610983612788565b6020026020010181815250505050505050808061099f906128e0565b915050610555565b50600198975050505050505050565b6000806001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663e65e19d56109f560208601866124a4565b6040516001600160e01b031960e084901b1681526bffffffffffffffffffffffff19909116600482015260240161012060405180830381865afa158015610a40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a64919061258c565b905060028160e001516005811115610a7e57610a7e61246c565b14610af15760405162461bcd60e51b815260206004820152602960248201527f536f757263652077616c6c6574206973206e6f7420696e204d6f76696e67467560448201527f6e6473207374617465000000000000000000000000000000000000000000000060648201526084016102c7565b610100810151610b695760405162461bcd60e51b815260206004820152602a60248201527f5461726765742077616c6c65747320636f6d6d69746d656e74206973206e6f7460448201527f207375626d69747465640000000000000000000000000000000000000000000060648201526084016102c7565b610b76602084018461262f565b604051602001610b879291906128f9565b6040516020818303038152906040528051906020012081610100015114610c165760405162461bcd60e51b815260206004820152603a60248201527f5461726765742077616c6c65747320646f206e6f74206d61746368207461726760448201527f65742077616c6c65747320636f6d6d69746d656e74206861736800000000000060648201526084016102c7565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663be05abe36040518163ffffffff1660e01b815260040161016060405180830381865afa158015610c77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9b919061293f565b5050505050505050505090506000846040013511610d0b5760405162461bcd60e51b815260206004820152602760248201527f50726f706f736564207472616e73616374696f6e206665652063616e6e6f74206044820152666265207a65726f60c81b60648201526084016102c7565b8067ffffffffffffffff1684604001351115610d755760405162461bcd60e51b8152602060048201526024808201527f50726f706f736564207472616e73616374696f6e2066656520697320746f6f206044820152630d0d2ced60e31b60648201526084016102c7565b5060019392505050565b600060016001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001663e65e19d5610dbf60208801886124a4565b6040516001600160e01b031960e084901b1681526bffffffffffffffffffffffff19909116600482015260240161012060405180830381865afa158015610e0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2e919061258c565b60e001516005811115610e4357610e4361246c565b14610e905760405162461bcd60e51b815260206004820152601b60248201527f57616c6c6574206973206e6f7420696e204c697665207374617465000000000060448201526064016102c7565b6000610e9f6020860186612a1c565b905011610eee5760405162461bcd60e51b815260206004820152601860248201527f53776565702062656c6f7720746865206d696e2073697a65000000000000000060448201526064016102c7565b6014610efd6020860186612a1c565b90501115610f4d5760405162461bcd60e51b815260206004820152601a60248201527f5377656570206578636565647320746865206d61782073697a6500000000000060448201526064016102c7565b81610f5b6020860186612a1c565b905014610fd05760405162461bcd60e51b815260206004820152602e60248201527f45616368206465706f736974206b6579206d7573742068617665206d6174636860448201527f696e67206578747261206461746100000000000000000000000000000000000060648201526084016102c7565b610fec6040850135610fe56020870187612a1c565b90506115d7565b600080610ffc6020870187612a1c565b905067ffffffffffffffff811115611016576110166124bf565b60405190808252806020026020018201604052801561103f578160200160208202803683370190505b50905060005b6110526020880188612a1c565b905081101561155d57600061106a6020890189612a1c565b8381811061107a5761107a612788565b9050604002018036038101906110909190612a66565b905060008787848181106110a6576110a6612788565b90506020028101906110b89190612abc565b6110c190612baa565b82516020808501516040519394506000936110f393920191825260e01b6001600160e01b031916602082015260240190565b60408051808303601f190181529082905280516020909101207fb02c43d00000000000000000000000000000000000000000000000000000000082526004820181905291506000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b02c43d09060240160c060405180830381865afa15801561118c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b09190612cac565b9050806040015163ffffffff1660000361120c5760405162461bcd60e51b815260206004820152601460248201527f4465706f736974206e6f742072657665616c656400000000000000000000000060448201526064016102c7565b611c20816040015161121e919061288c565b63ffffffff1642116112725760405162461bcd60e51b815260206004820181905260248201527f4465706f736974206d696e20616765206e6f742061636869657665642079657460448201526064016102c7565b60a081015163ffffffff16156112ca5760405162461bcd60e51b815260206004820152601560248201527f4465706f73697420616c7265616479207377657074000000000000000000000060448201526064016102c7565b6112d98482600001518561175e565b608083015160e881901c62ff00ff1663ff00ff0060d89290921c9190911617601081811c91901b1761130e62015180826128b0565b63ffffffff1642106113885760405162461bcd60e51b815260206004820152602d60248201527f4465706f73697420726566756e6420736166657479206d617267696e2069732060448201527f6e6f74207072657365727665640000000000000000000000000000000000000060648201526084016102c7565b61139560208d018d6124a4565b6bffffffffffffffffffffffff191684604001516bffffffffffffffffffffffff19161461142b5760405162461bcd60e51b815260206004820152602660248201527f4465706f73697420636f6e74726f6c6c656420627920646966666572656e742060448201527f77616c6c6574000000000000000000000000000000000000000000000000000060648201526084016102c7565b8560000361143b57816060015197505b876001600160a01b031682606001516001600160a01b0316146114a05760405162461bcd60e51b815260206004820152601f60248201527f4465706f736974207461726765747320646966666572656e74207661756c740060448201526064016102c7565b60005b8681101561152557838882815181106114be576114be612788565b6020026020010151036115135760405162461bcd60e51b815260206004820152601260248201527f4475706c696361746564206465706f736974000000000000000000000000000060448201526064016102c7565b8061151d816128e0565b9150506114a3565b508287878151811061153957611539612788565b60200260200101818152505050505050508080611555906128e0565b915050611045565b506001925050505b9392505050565b600061158361157e602084018461279e565b6119bc565b6115cf5760405162461bcd60e51b815260206004820152601d60248201527f4e6f7420612076616c696420686561727462656174206d65737361676500000060448201526064016102c7565b506001919050565b600082116116375760405162461bcd60e51b815260206004820152602760248201527f50726f706f736564207472616e73616374696f6e206665652063616e6e6f74206044820152666265207a65726f60c81b60648201526084016102c7565b60006116438284612737565b90506000826116528386612761565b61165c9190612774565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c42b64d06040518163ffffffff1660e01b8152600401608060405180830381865afa1580156116be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e29190612d4f565b5092505067ffffffffffffffff821690506116fd84846128cd565b11156117575760405162461bcd60e51b8152602060048201526024808201527f50726f706f736564207472616e73616374696f6e2066656520697320746f6f206044820152630d0d2ced60e31b60648201526084016102c7565b5050505050565b8051805160208083015160408085015160609095015190516000956117a09561178c95909493919201612dd5565b604051602081830303815290604052611a46565b845190915081146118195760405162461bcd60e51b815260206004820152602960248201527f457874726120696e666f2066756e64696e67207478206861736820646f65732060448201527f6e6f74206d61746368000000000000000000000000000000000000000000000060648201526084016102c7565b6000838360200151846040015185606001518660800151604051602001611844959493929190612e0b565b6040516020818303038152906040529050600061187c866020015163ffffffff16856000015160400151611a6d90919063ffffffff16565b9050600061188982611c4f565b9050805160141480156118cb57506118a083611c69565b6bffffffffffffffffffffffff19166118ba826000611c90565b6bffffffffffffffffffffffff1916145b156118d95750505050505050565b8051602014801561194057506002836040516118f591906130a0565b602060405180830381855afa158015611912573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061193591906130ac565b61193e82611c9f565b145b1561194e5750505050505050565b60405162461bcd60e51b815260206004820152602f60248201527f457874726120696e666f2066756e64696e67206f75747075742073637269707460448201527f20646f6573206e6f74206d61746368000000000000000000000000000000000060648201526084016102c7565b6000601082146119ce57506000611a40565b611a12600084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293925050611c909050565b77ffffffffffffffffffffffffffffffffffffffffffffffff1990811614611a3c57506000611a40565b5060015b92915050565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b6060600080611a7b85611cba565b909250905060018201611af65760405162461bcd60e51b815260206004820152602260248201527f52656164206f76657272756e20647572696e6720566172496e7420706172736960448201527f6e6700000000000000000000000000000000000000000000000000000000000060648201526084016102c7565b808410611b455760405162461bcd60e51b815260206004820152601160248201527f566f75742072656164206f76657272756e00000000000000000000000000000060448201526064016102c7565b600080611b538460016128cd565b905060005b86811015611bdb57611b6a8883611cd1565b92506000198303611bbd5760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016102c7565b611bc783836128cd565b915080611bd3816128e0565b915050611b58565b50611be68782611cd1565b91506000198203611c395760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016102c7565b611c44878284611d3e565b979650505050505050565b6060611a40826008808551611c649190612761565b611e0b565b60006020600083516020850160025afa50602060006020600060035afa5050600c51919050565b60006115658383016020015190565b60008151600003611cb257506000919050565b506020015190565b600080611cc8836000612110565b91509150915091565b6000611cde8260096128cd565b83511015611cef5750600019611a40565b600080611d0685611d018660086128cd565b612110565b909250905060018201611d1f5760001992505050611a40565b80611d2b8360096128cd565b611d3591906128cd565b95945050505050565b606081600003611d5d5750604080516020810190915260008152611565565b6000611d6983856128cd565b90508381118015611d7b575080855110155b611dc75760405162461bcd60e51b815260206004820152601360248201527f536c696365206f7574206f6620626f756e64730000000000000000000000000060448201526064016102c7565b604051915082604083010160405282825283850182038460208701018481015b80821015611e0057815183830152602082019150611de7565b505050509392505050565b60606000848481518110611e2157611e21612788565b016020015160f81c905082611e378260016130c5565b60ff1614611e55575050604080516020810190915260008152611565565b84611e618560016128cd565b81518110611e7157611e71612788565b016020015160f81c600003611f305760028160ff161015611ea2575050604080516020810190915260008152611565565b600085611eb08660026128cd565b81518110611ec057611ec0612788565b016020015160f81c9050611ed56002836130de565b60ff1681141580611ef3575080602014158015611ef3575080601414155b15611f11576040518060200160405280600081525092505050611565565b611f27611f1f8660036128cd565b879083611d3e565b92505050611565565b6000611f3c8686611c90565b90507fffffff000000000000000000000000000000000000000000000000000000000081167f1976a90000000000000000000000000000000000000000000000000000000000036120505785611f938660036128cd565b81518110611fa357611fa3612788565b60209101015160f81c601414158061201b5750611fd66002611fc586886128cd565b611fcf9190612761565b8790611c90565b7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f88ac00000000000000000000000000000000000000000000000000000000000014155b15612039576040518060200160405280600081525092505050611565565b611f276120478660046128cd565b87906014611d3e565b7fffffff000000000000000000000000000000000000000000000000000000000081167f17a9140000000000000000000000000000000000000000000000000000000000036120f7578560016120a686886128cd565b6120b09190612761565b815181106120c0576120c0612788565b60209101015160f81c6087146120e9576040518060200160405280600081525092505050611565565b611f276120478660036128cd565b5050506040805160208101909152600081529392505050565b600080600061211f85856122b4565b90508060ff1660000361215457600085858151811061214057612140612788565b016020015190935060f81c91506122ad9050565b836121608260016130c5565b60ff1661216d91906128cd565b8551101561218457600019600092509250506122ad565b60008160ff166002036121c8576121bd6121a96121a28760016128cd565b8890611c90565b62ffff0060e882901c1660f89190911c1790565b61ffff1690506122a3565b8160ff166004036122175761220a6121e46121a28760016128cd565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff1690506122a3565b8160ff166008036122a3576122966122336121a28760016128cd565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b60008282815181106122c8576122c8612788565b016020015160f81c60ff036122df57506008611a40565b8282815181106122f1576122f1612788565b016020015160f81c60fe0361230857506004611a40565b82828151811061231a5761231a612788565b016020015160f81c60fd0361233157506002611a40565b50600092915050565b60006060828403121561234c57600080fd5b50919050565b60006020828403121561236457600080fd5b813567ffffffffffffffff81111561237b57600080fd5b6123878482850161233a565b949350505050565b6000806000604084860312156123a457600080fd5b833567ffffffffffffffff808211156123bc57600080fd5b90850190608082880312156123d057600080fd5b909350602085013590808211156123e657600080fd5b818601915086601f8301126123fa57600080fd5b81358181111561240957600080fd5b8760208260051b850101111561241e57600080fd5b6020830194508093505050509250925092565b60006020828403121561244357600080fd5b813567ffffffffffffffff81111561245a57600080fd5b82016040818503121561156557600080fd5b634e487b7160e01b600052602160045260246000fd5b80356bffffffffffffffffffffffff198116811461249f57600080fd5b919050565b6000602082840312156124b657600080fd5b61156582612482565b634e487b7160e01b600052604160045260246000fd5b604051610120810167ffffffffffffffff811182821017156124f9576124f96124bf565b60405290565b60405160a0810167ffffffffffffffff811182821017156124f9576124f96124bf565b6040516080810167ffffffffffffffff811182821017156124f9576124f96124bf565b805167ffffffffffffffff8116811461249f57600080fd5b63ffffffff8116811461256f57600080fd5b50565b805161249f8161255d565b80516006811061249f57600080fd5b6000610120828403121561259f57600080fd5b6125a76124d5565b82518152602083015160208201526125c160408401612545565b60408201526125d260608401612572565b60608201526125e360808401612572565b60808201526125f460a08401612572565b60a082015261260560c08401612572565b60c082015261261660e0840161257d565b60e0820152610100928301519281019290925250919050565b6000808335601e1984360301811261264657600080fd5b83018035915067ffffffffffffffff82111561266157600080fd5b6020019150600581901b36038213156122ad57600080fd5b80516bffffffffffffffffffffffff8116811461249f57600080fd5b600080600080600080600060e0888a0312156126b057600080fd5b6126b988612545565b96506126c760208901612545565b95506126d560408901612545565b94506126e360608901612545565b935060808801516126f38161255d565b925061270160a08901612679565b915060c08801516127118161255d565b8091505092959891949750929550565b634e487b7160e01b600052601260045260246000fd5b60008261274657612746612721565b500690565b634e487b7160e01b600052601160045260246000fd5b81810381811115611a4057611a4061274b565b60008261278357612783612721565b500490565b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126127b557600080fd5b83018035915067ffffffffffffffff8211156127d057600080fd5b6020019150368190038213156122ad57600080fd5b80516001600160a01b038116811461249f57600080fd5b600060a0828403121561280e57600080fd5b60405160a0810181811067ffffffffffffffff82111715612831576128316124bf565b60405261283d836127e5565b815261284b60208401612545565b602082015261285c60408401612545565b604082015261286d60608401612545565b606082015260808301516128808161255d565b60808201529392505050565b63ffffffff8181168382160190808211156128a9576128a961274b565b5092915050565b63ffffffff8281168282160390808211156128a9576128a961274b565b80820180821115611a4057611a4061274b565b6000600182016128f2576128f261274b565b5060010190565b60008184825b85811015612934576bffffffffffffffffffffffff1961291e83612482565b16835260209283019291909101906001016128ff565b509095945050505050565b60008060008060008060008060008060006101608c8e03121561296157600080fd5b61296a8c612545565b9a5061297860208d01612545565b995060408c01516129888161255d565b60608d01519099506129998161255d565b97506129a760808d01612679565b965060a08c01516129b78161255d565b60c08d015190965061ffff811681146129cf57600080fd5b94506129dd60e08d01612545565b93506129ec6101008d01612572565b92506129fb6101208d01612679565b9150612a0a6101408d01612572565b90509295989b509295989b9093969950565b6000808335601e19843603018112612a3357600080fd5b83018035915067ffffffffffffffff821115612a4e57600080fd5b6020019150600681901b36038213156122ad57600080fd5b600060408284031215612a7857600080fd5b6040516040810181811067ffffffffffffffff82111715612a9b57612a9b6124bf565b604052823581526020830135612ab08161255d565b60208201529392505050565b60008235609e19833603018112612ad257600080fd5b9190910192915050565b80356001600160e01b03198116811461249f57600080fd5b600082601f830112612b0557600080fd5b813567ffffffffffffffff80821115612b2057612b206124bf565b604051601f8301601f19908116603f01168101908282118183101715612b4857612b486124bf565b81604052838152866020858801011115612b6157600080fd5b836020870160208301376000602085830101528094505050505092915050565b803577ffffffffffffffffffffffffffffffffffffffffffffffff198116811461249f57600080fd5b600060a08236031215612bbc57600080fd5b612bc46124ff565b823567ffffffffffffffff80821115612bdc57600080fd5b818501915060808236031215612bf157600080fd5b612bf9612522565b612c0283612adc565b8152602083013582811115612c1657600080fd5b612c2236828601612af4565b602083015250604083013582811115612c3a57600080fd5b612c4636828601612af4565b604083015250612c5860608401612adc565b6060820152835250612c6e905060208401612b81565b6020820152612c7f60408401612482565b6040820152612c9060608401612482565b6060820152612ca160808401612adc565b608082015292915050565b600060c08284031215612cbe57600080fd5b60405160c0810181811067ffffffffffffffff82111715612ce157612ce16124bf565b604052612ced836127e5565b8152612cfb60208401612545565b60208201526040830151612d0e8161255d565b6040820152612d1f606084016127e5565b6060820152612d3060808401612545565b608082015260a0830151612d438161255d565b60a08201529392505050565b60008060008060808587031215612d6557600080fd5b612d6e85612545565b9350612d7c60208601612545565b9250612d8a60408601612545565b91506060850151612d9a8161255d565b939692955090935050565b6000815160005b81811015612dc65760208185018101518683015201612dac565b50600093019283525090919050565b60006001600160e01b03198087168352612dfb612df56004850188612da5565b86612da5565b9316835250506004019392505050565b600560fa1b8152606086901b6bffffffffffffffffffffffff19166001820152607560f81b60158201527f0800000000000000000000000000000000000000000000000000000000000000601682015277ffffffffffffffffffffffffffffffffffffffffffffffff1985166017820152607560f81b601f8201526000612ef5612ee8612ebf602085015b7f7600000000000000000000000000000000000000000000000000000000000000815260010190565b7fa900000000000000000000000000000000000000000000000000000000000000815260010190565b600560fa1b815260010190565b6bffffffffffffffffffffffff19861681527f870000000000000000000000000000000000000000000000000000000000000060148201527f63000000000000000000000000000000000000000000000000000000000000006015820152612fb9612ee8612ebf612e96612f90601686015b7fac00000000000000000000000000000000000000000000000000000000000000815260010190565b7f6700000000000000000000000000000000000000000000000000000000000000815260010190565b6bffffffffffffffffffffffff19861681527f880000000000000000000000000000000000000000000000000000000000000060148201527f040000000000000000000000000000000000000000000000000000000000000060158201529050601681016001600160e01b0319851681527fb1000000000000000000000000000000000000000000000000000000000000006004820152607560f81b6005820152905061309461306b60068301612f67565b7f6800000000000000000000000000000000000000000000000000000000000000815260010190565b98975050505050505050565b60006115658284612da5565b6000602082840312156130be57600080fd5b5051919050565b60ff8181168382160190811115611a4057611a4061274b565b60ff8281168282160390811115611a4057611a4061274b56fea26469706673582212201dd9537d63434fee66c03d8282ff19d008b93f39a71471a38538c7560f90e2d064736f6c63430008110033";
363
+ var isSuperArgs = function (xs) { return xs.length > 1; };
364
+ var WalletProposalValidator__factory = /** @class */ (function (_super) {
365
+ __extends(WalletProposalValidator__factory, _super);
366
+ function WalletProposalValidator__factory() {
367
+ var args = [];
368
+ for (var _i = 0; _i < arguments.length; _i++) {
369
+ args[_i] = arguments[_i];
370
+ }
371
+ var _this = this;
372
+ if (isSuperArgs(args)) {
373
+ _this = _super.apply(this, __spreadArray([], __read(args), false)) || this;
374
+ }
375
+ else {
376
+ _this = _super.call(this, _abi, _bytecode, args[0]) || this;
377
+ }
378
+ return _this;
379
+ }
380
+ WalletProposalValidator__factory.prototype.deploy = function (_bridge, overrides) {
381
+ return _super.prototype.deploy.call(this, _bridge, overrides || {});
382
+ };
383
+ WalletProposalValidator__factory.prototype.getDeployTransaction = function (_bridge, overrides) {
384
+ return _super.prototype.getDeployTransaction.call(this, _bridge, overrides || {});
385
+ };
386
+ WalletProposalValidator__factory.prototype.attach = function (address) {
387
+ return _super.prototype.attach.call(this, address);
388
+ };
389
+ WalletProposalValidator__factory.prototype.connect = function (signer) {
390
+ return _super.prototype.connect.call(this, signer);
391
+ };
392
+ WalletProposalValidator__factory.createInterface = function () {
393
+ return new ethers_1.utils.Interface(_abi);
394
+ };
395
+ WalletProposalValidator__factory.connect = function (address, signerOrProvider) {
396
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
397
+ };
398
+ WalletProposalValidator__factory.bytecode = _bytecode;
399
+ WalletProposalValidator__factory.abi = _abi;
400
+ return WalletProposalValidator__factory;
401
+ }(ethers_1.ContractFactory));
402
+ exports.WalletProposalValidator__factory = WalletProposalValidator__factory;