@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,1454 @@
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.L1BTCDepositorNttWithExecutor__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
+ stateMutability: "nonpayable",
52
+ type: "constructor",
53
+ },
54
+ {
55
+ anonymous: false,
56
+ inputs: [
57
+ {
58
+ indexed: true,
59
+ internalType: "uint256",
60
+ name: "oldGasLimit",
61
+ type: "uint256",
62
+ },
63
+ {
64
+ indexed: true,
65
+ internalType: "uint256",
66
+ name: "newGasLimit",
67
+ type: "uint256",
68
+ },
69
+ ],
70
+ name: "DefaultDestinationGasLimitUpdated",
71
+ type: "event",
72
+ },
73
+ {
74
+ anonymous: false,
75
+ inputs: [
76
+ {
77
+ indexed: false,
78
+ internalType: "uint256",
79
+ name: "gasLimit",
80
+ type: "uint256",
81
+ },
82
+ {
83
+ indexed: false,
84
+ internalType: "uint16",
85
+ name: "feeBps",
86
+ type: "uint16",
87
+ },
88
+ {
89
+ indexed: false,
90
+ internalType: "address",
91
+ name: "feeRecipient",
92
+ type: "address",
93
+ },
94
+ ],
95
+ name: "DefaultParametersUpdated",
96
+ type: "event",
97
+ },
98
+ {
99
+ anonymous: false,
100
+ inputs: [
101
+ {
102
+ indexed: true,
103
+ internalType: "uint16",
104
+ name: "oldFeeBps",
105
+ type: "uint16",
106
+ },
107
+ {
108
+ indexed: true,
109
+ internalType: "uint16",
110
+ name: "newFeeBps",
111
+ type: "uint16",
112
+ },
113
+ ],
114
+ name: "DefaultPlatformFeeBpsUpdated",
115
+ type: "event",
116
+ },
117
+ {
118
+ anonymous: false,
119
+ inputs: [
120
+ {
121
+ indexed: true,
122
+ internalType: "address",
123
+ name: "oldRecipient",
124
+ type: "address",
125
+ },
126
+ {
127
+ indexed: true,
128
+ internalType: "address",
129
+ name: "newRecipient",
130
+ type: "address",
131
+ },
132
+ ],
133
+ name: "DefaultPlatformFeeRecipientUpdated",
134
+ type: "event",
135
+ },
136
+ {
137
+ anonymous: false,
138
+ inputs: [
139
+ {
140
+ indexed: true,
141
+ internalType: "uint16",
142
+ name: "chainId",
143
+ type: "uint16",
144
+ },
145
+ ],
146
+ name: "DefaultSupportedChainUpdated",
147
+ type: "event",
148
+ },
149
+ {
150
+ anonymous: false,
151
+ inputs: [
152
+ {
153
+ indexed: true,
154
+ internalType: "uint256",
155
+ name: "depositKey",
156
+ type: "uint256",
157
+ },
158
+ {
159
+ indexed: true,
160
+ internalType: "bytes32",
161
+ name: "destinationChainDepositOwner",
162
+ type: "bytes32",
163
+ },
164
+ {
165
+ indexed: true,
166
+ internalType: "address",
167
+ name: "l1Sender",
168
+ type: "address",
169
+ },
170
+ {
171
+ indexed: false,
172
+ internalType: "uint256",
173
+ name: "initialAmount",
174
+ type: "uint256",
175
+ },
176
+ {
177
+ indexed: false,
178
+ internalType: "uint256",
179
+ name: "tbtcAmount",
180
+ type: "uint256",
181
+ },
182
+ ],
183
+ name: "DepositFinalized",
184
+ type: "event",
185
+ },
186
+ {
187
+ anonymous: false,
188
+ inputs: [
189
+ {
190
+ indexed: true,
191
+ internalType: "uint256",
192
+ name: "depositKey",
193
+ type: "uint256",
194
+ },
195
+ {
196
+ indexed: true,
197
+ internalType: "bytes32",
198
+ name: "destinationChainDepositOwner",
199
+ type: "bytes32",
200
+ },
201
+ {
202
+ indexed: true,
203
+ internalType: "address",
204
+ name: "l1Sender",
205
+ type: "address",
206
+ },
207
+ ],
208
+ name: "DepositInitialized",
209
+ type: "event",
210
+ },
211
+ {
212
+ anonymous: false,
213
+ inputs: [
214
+ {
215
+ indexed: true,
216
+ internalType: "address",
217
+ name: "sender",
218
+ type: "address",
219
+ },
220
+ {
221
+ indexed: true,
222
+ internalType: "bytes32",
223
+ name: "nonce",
224
+ type: "bytes32",
225
+ },
226
+ {
227
+ indexed: false,
228
+ internalType: "uint256",
229
+ name: "signedQuoteLength",
230
+ type: "uint256",
231
+ },
232
+ {
233
+ indexed: false,
234
+ internalType: "uint256",
235
+ name: "executorValue",
236
+ type: "uint256",
237
+ },
238
+ ],
239
+ name: "ExecutorParametersRefreshed",
240
+ type: "event",
241
+ },
242
+ {
243
+ anonymous: false,
244
+ inputs: [
245
+ {
246
+ indexed: true,
247
+ internalType: "address",
248
+ name: "sender",
249
+ type: "address",
250
+ },
251
+ {
252
+ indexed: true,
253
+ internalType: "bytes32",
254
+ name: "nonce",
255
+ type: "bytes32",
256
+ },
257
+ {
258
+ indexed: false,
259
+ internalType: "uint256",
260
+ name: "signedQuoteLength",
261
+ type: "uint256",
262
+ },
263
+ {
264
+ indexed: false,
265
+ internalType: "uint256",
266
+ name: "executorValue",
267
+ type: "uint256",
268
+ },
269
+ ],
270
+ name: "ExecutorParametersSet",
271
+ type: "event",
272
+ },
273
+ {
274
+ anonymous: false,
275
+ inputs: [
276
+ {
277
+ indexed: false,
278
+ internalType: "uint256",
279
+ name: "initializeDepositGasOffset",
280
+ type: "uint256",
281
+ },
282
+ {
283
+ indexed: false,
284
+ internalType: "uint256",
285
+ name: "finalizeDepositGasOffset",
286
+ type: "uint256",
287
+ },
288
+ ],
289
+ name: "GasOffsetParametersUpdated",
290
+ type: "event",
291
+ },
292
+ {
293
+ anonymous: false,
294
+ inputs: [
295
+ {
296
+ indexed: false,
297
+ internalType: "uint8",
298
+ name: "version",
299
+ type: "uint8",
300
+ },
301
+ ],
302
+ name: "Initialized",
303
+ type: "event",
304
+ },
305
+ {
306
+ anonymous: false,
307
+ inputs: [
308
+ {
309
+ indexed: true,
310
+ internalType: "address",
311
+ name: "oldManager",
312
+ type: "address",
313
+ },
314
+ {
315
+ indexed: true,
316
+ internalType: "address",
317
+ name: "newManager",
318
+ type: "address",
319
+ },
320
+ ],
321
+ name: "NttManagerWithExecutorUpdated",
322
+ type: "event",
323
+ },
324
+ {
325
+ anonymous: false,
326
+ inputs: [
327
+ {
328
+ indexed: true,
329
+ internalType: "address",
330
+ name: "previousOwner",
331
+ type: "address",
332
+ },
333
+ {
334
+ indexed: true,
335
+ internalType: "address",
336
+ name: "newOwner",
337
+ type: "address",
338
+ },
339
+ ],
340
+ name: "OwnershipTransferred",
341
+ type: "event",
342
+ },
343
+ {
344
+ anonymous: false,
345
+ inputs: [
346
+ {
347
+ indexed: false,
348
+ internalType: "bool",
349
+ name: "reimburseTxMaxFee",
350
+ type: "bool",
351
+ },
352
+ ],
353
+ name: "ReimburseTxMaxFeeUpdated",
354
+ type: "event",
355
+ },
356
+ {
357
+ anonymous: false,
358
+ inputs: [
359
+ {
360
+ indexed: true,
361
+ internalType: "address",
362
+ name: "_address",
363
+ type: "address",
364
+ },
365
+ {
366
+ indexed: false,
367
+ internalType: "bool",
368
+ name: "authorization",
369
+ type: "bool",
370
+ },
371
+ ],
372
+ name: "ReimbursementAuthorizationUpdated",
373
+ type: "event",
374
+ },
375
+ {
376
+ anonymous: false,
377
+ inputs: [
378
+ {
379
+ indexed: false,
380
+ internalType: "address",
381
+ name: "newReimbursementPool",
382
+ type: "address",
383
+ },
384
+ ],
385
+ name: "ReimbursementPoolUpdated",
386
+ type: "event",
387
+ },
388
+ {
389
+ anonymous: false,
390
+ inputs: [
391
+ {
392
+ indexed: true,
393
+ internalType: "uint16",
394
+ name: "chainId",
395
+ type: "uint16",
396
+ },
397
+ {
398
+ indexed: false,
399
+ internalType: "bool",
400
+ name: "supported",
401
+ type: "bool",
402
+ },
403
+ ],
404
+ name: "SupportedChainUpdated",
405
+ type: "event",
406
+ },
407
+ {
408
+ anonymous: false,
409
+ inputs: [
410
+ {
411
+ indexed: true,
412
+ internalType: "address",
413
+ name: "sender",
414
+ type: "address",
415
+ },
416
+ {
417
+ indexed: true,
418
+ internalType: "bytes32",
419
+ name: "nonce",
420
+ type: "bytes32",
421
+ },
422
+ {
423
+ indexed: false,
424
+ internalType: "uint256",
425
+ name: "amount",
426
+ type: "uint256",
427
+ },
428
+ {
429
+ indexed: false,
430
+ internalType: "uint16",
431
+ name: "destinationChain",
432
+ type: "uint16",
433
+ },
434
+ {
435
+ indexed: false,
436
+ internalType: "bytes32",
437
+ name: "actualRecipient",
438
+ type: "bytes32",
439
+ },
440
+ {
441
+ indexed: false,
442
+ internalType: "uint64",
443
+ name: "transferSequence",
444
+ type: "uint64",
445
+ },
446
+ {
447
+ indexed: false,
448
+ internalType: "bytes32",
449
+ name: "encodedReceiver",
450
+ type: "bytes32",
451
+ },
452
+ {
453
+ indexed: false,
454
+ internalType: "uint256",
455
+ name: "executorCost",
456
+ type: "uint256",
457
+ },
458
+ ],
459
+ name: "TokensTransferredNttWithExecutor",
460
+ type: "event",
461
+ },
462
+ {
463
+ anonymous: false,
464
+ inputs: [
465
+ {
466
+ indexed: true,
467
+ internalType: "address",
468
+ name: "oldManager",
469
+ type: "address",
470
+ },
471
+ {
472
+ indexed: true,
473
+ internalType: "address",
474
+ name: "newManager",
475
+ type: "address",
476
+ },
477
+ ],
478
+ name: "UnderlyingNttManagerUpdated",
479
+ type: "event",
480
+ },
481
+ {
482
+ inputs: [],
483
+ name: "MAX_BPS",
484
+ outputs: [
485
+ {
486
+ internalType: "uint16",
487
+ name: "",
488
+ type: "uint16",
489
+ },
490
+ ],
491
+ stateMutability: "view",
492
+ type: "function",
493
+ },
494
+ {
495
+ inputs: [],
496
+ name: "SATOSHI_MULTIPLIER",
497
+ outputs: [
498
+ {
499
+ internalType: "uint256",
500
+ name: "",
501
+ type: "uint256",
502
+ },
503
+ ],
504
+ stateMutability: "view",
505
+ type: "function",
506
+ },
507
+ {
508
+ inputs: [],
509
+ name: "areExecutorParametersSet",
510
+ outputs: [
511
+ {
512
+ internalType: "bool",
513
+ name: "isSet",
514
+ type: "bool",
515
+ },
516
+ {
517
+ internalType: "bytes32",
518
+ name: "nonce",
519
+ type: "bytes32",
520
+ },
521
+ ],
522
+ stateMutability: "view",
523
+ type: "function",
524
+ },
525
+ {
526
+ inputs: [],
527
+ name: "bridge",
528
+ outputs: [
529
+ {
530
+ internalType: "contract IBridge",
531
+ name: "",
532
+ type: "address",
533
+ },
534
+ ],
535
+ stateMutability: "view",
536
+ type: "function",
537
+ },
538
+ {
539
+ inputs: [
540
+ {
541
+ internalType: "address",
542
+ name: "user",
543
+ type: "address",
544
+ },
545
+ ],
546
+ name: "canUserStartNewWorkflow",
547
+ outputs: [
548
+ {
549
+ internalType: "bool",
550
+ name: "canStart",
551
+ type: "bool",
552
+ },
553
+ ],
554
+ stateMutability: "view",
555
+ type: "function",
556
+ },
557
+ {
558
+ inputs: [],
559
+ name: "clearExecutorParameters",
560
+ outputs: [],
561
+ stateMutability: "nonpayable",
562
+ type: "function",
563
+ },
564
+ {
565
+ inputs: [],
566
+ name: "defaultDestinationGasLimit",
567
+ outputs: [
568
+ {
569
+ internalType: "uint256",
570
+ name: "",
571
+ type: "uint256",
572
+ },
573
+ ],
574
+ stateMutability: "view",
575
+ type: "function",
576
+ },
577
+ {
578
+ inputs: [],
579
+ name: "defaultExecutorFeeBps",
580
+ outputs: [
581
+ {
582
+ internalType: "uint16",
583
+ name: "",
584
+ type: "uint16",
585
+ },
586
+ ],
587
+ stateMutability: "view",
588
+ type: "function",
589
+ },
590
+ {
591
+ inputs: [],
592
+ name: "defaultExecutorFeeRecipient",
593
+ outputs: [
594
+ {
595
+ internalType: "address",
596
+ name: "",
597
+ type: "address",
598
+ },
599
+ ],
600
+ stateMutability: "view",
601
+ type: "function",
602
+ },
603
+ {
604
+ inputs: [],
605
+ name: "defaultPlatformFeeBps",
606
+ outputs: [
607
+ {
608
+ internalType: "uint16",
609
+ name: "",
610
+ type: "uint16",
611
+ },
612
+ ],
613
+ stateMutability: "view",
614
+ type: "function",
615
+ },
616
+ {
617
+ inputs: [],
618
+ name: "defaultPlatformFeeRecipient",
619
+ outputs: [
620
+ {
621
+ internalType: "address",
622
+ name: "",
623
+ type: "address",
624
+ },
625
+ ],
626
+ stateMutability: "view",
627
+ type: "function",
628
+ },
629
+ {
630
+ inputs: [],
631
+ name: "defaultSupportedChain",
632
+ outputs: [
633
+ {
634
+ internalType: "uint16",
635
+ name: "",
636
+ type: "uint16",
637
+ },
638
+ ],
639
+ stateMutability: "view",
640
+ type: "function",
641
+ },
642
+ {
643
+ inputs: [
644
+ {
645
+ internalType: "uint256",
646
+ name: "",
647
+ type: "uint256",
648
+ },
649
+ ],
650
+ name: "deposits",
651
+ outputs: [
652
+ {
653
+ internalType: "enum AbstractL1BTCDepositor.DepositState",
654
+ name: "",
655
+ type: "uint8",
656
+ },
657
+ ],
658
+ stateMutability: "view",
659
+ type: "function",
660
+ },
661
+ {
662
+ inputs: [
663
+ {
664
+ internalType: "uint256",
665
+ name: "depositKey",
666
+ type: "uint256",
667
+ },
668
+ ],
669
+ name: "finalizeDeposit",
670
+ outputs: [],
671
+ stateMutability: "payable",
672
+ type: "function",
673
+ },
674
+ {
675
+ inputs: [],
676
+ name: "finalizeDepositGasOffset",
677
+ outputs: [
678
+ {
679
+ internalType: "uint256",
680
+ name: "",
681
+ type: "uint256",
682
+ },
683
+ ],
684
+ stateMutability: "view",
685
+ type: "function",
686
+ },
687
+ {
688
+ inputs: [
689
+ {
690
+ internalType: "uint256",
691
+ name: "",
692
+ type: "uint256",
693
+ },
694
+ ],
695
+ name: "gasReimbursements",
696
+ outputs: [
697
+ {
698
+ internalType: "address",
699
+ name: "receiver",
700
+ type: "address",
701
+ },
702
+ {
703
+ internalType: "uint96",
704
+ name: "gasSpent",
705
+ type: "uint96",
706
+ },
707
+ ],
708
+ stateMutability: "view",
709
+ type: "function",
710
+ },
711
+ {
712
+ inputs: [],
713
+ name: "getStoredExecutorValue",
714
+ outputs: [
715
+ {
716
+ internalType: "uint256",
717
+ name: "value",
718
+ type: "uint256",
719
+ },
720
+ ],
721
+ stateMutability: "view",
722
+ type: "function",
723
+ },
724
+ {
725
+ inputs: [
726
+ {
727
+ internalType: "address",
728
+ name: "user",
729
+ type: "address",
730
+ },
731
+ ],
732
+ name: "getUserWorkflowInfo",
733
+ outputs: [
734
+ {
735
+ internalType: "bool",
736
+ name: "hasActiveWorkflow",
737
+ type: "bool",
738
+ },
739
+ {
740
+ internalType: "bytes32",
741
+ name: "nonce",
742
+ type: "bytes32",
743
+ },
744
+ {
745
+ internalType: "uint256",
746
+ name: "timestamp",
747
+ type: "uint256",
748
+ },
749
+ {
750
+ internalType: "uint256",
751
+ name: "timeRemaining",
752
+ type: "uint256",
753
+ },
754
+ ],
755
+ stateMutability: "view",
756
+ type: "function",
757
+ },
758
+ {
759
+ inputs: [
760
+ {
761
+ internalType: "address",
762
+ name: "user",
763
+ type: "address",
764
+ },
765
+ ],
766
+ name: "getUserWorkflowStatus",
767
+ outputs: [
768
+ {
769
+ internalType: "bool",
770
+ name: "hasActiveWorkflow",
771
+ type: "bool",
772
+ },
773
+ {
774
+ internalType: "bytes32",
775
+ name: "nonce",
776
+ type: "bytes32",
777
+ },
778
+ {
779
+ internalType: "uint256",
780
+ name: "timestamp",
781
+ type: "uint256",
782
+ },
783
+ ],
784
+ stateMutability: "view",
785
+ type: "function",
786
+ },
787
+ {
788
+ inputs: [
789
+ {
790
+ internalType: "address",
791
+ name: "_tbtcBridge",
792
+ type: "address",
793
+ },
794
+ {
795
+ internalType: "address",
796
+ name: "_tbtcVault",
797
+ type: "address",
798
+ },
799
+ {
800
+ internalType: "address",
801
+ name: "_nttManagerWithExecutor",
802
+ type: "address",
803
+ },
804
+ {
805
+ internalType: "address",
806
+ name: "_underlyingNttManager",
807
+ type: "address",
808
+ },
809
+ ],
810
+ name: "initialize",
811
+ outputs: [],
812
+ stateMutability: "nonpayable",
813
+ type: "function",
814
+ },
815
+ {
816
+ inputs: [
817
+ {
818
+ components: [
819
+ {
820
+ internalType: "bytes4",
821
+ name: "version",
822
+ type: "bytes4",
823
+ },
824
+ {
825
+ internalType: "bytes",
826
+ name: "inputVector",
827
+ type: "bytes",
828
+ },
829
+ {
830
+ internalType: "bytes",
831
+ name: "outputVector",
832
+ type: "bytes",
833
+ },
834
+ {
835
+ internalType: "bytes4",
836
+ name: "locktime",
837
+ type: "bytes4",
838
+ },
839
+ ],
840
+ internalType: "struct IBridgeTypes.BitcoinTxInfo",
841
+ name: "fundingTx",
842
+ type: "tuple",
843
+ },
844
+ {
845
+ components: [
846
+ {
847
+ internalType: "uint32",
848
+ name: "fundingOutputIndex",
849
+ type: "uint32",
850
+ },
851
+ {
852
+ internalType: "bytes8",
853
+ name: "blindingFactor",
854
+ type: "bytes8",
855
+ },
856
+ {
857
+ internalType: "bytes20",
858
+ name: "walletPubKeyHash",
859
+ type: "bytes20",
860
+ },
861
+ {
862
+ internalType: "bytes20",
863
+ name: "refundPubKeyHash",
864
+ type: "bytes20",
865
+ },
866
+ {
867
+ internalType: "bytes4",
868
+ name: "refundLocktime",
869
+ type: "bytes4",
870
+ },
871
+ {
872
+ internalType: "address",
873
+ name: "vault",
874
+ type: "address",
875
+ },
876
+ ],
877
+ internalType: "struct IBridgeTypes.DepositRevealInfo",
878
+ name: "reveal",
879
+ type: "tuple",
880
+ },
881
+ {
882
+ internalType: "bytes32",
883
+ name: "destinationChainDepositOwner",
884
+ type: "bytes32",
885
+ },
886
+ ],
887
+ name: "initializeDeposit",
888
+ outputs: [],
889
+ stateMutability: "nonpayable",
890
+ type: "function",
891
+ },
892
+ {
893
+ inputs: [],
894
+ name: "initializeDepositGasOffset",
895
+ outputs: [
896
+ {
897
+ internalType: "uint256",
898
+ name: "",
899
+ type: "uint256",
900
+ },
901
+ ],
902
+ stateMutability: "view",
903
+ type: "function",
904
+ },
905
+ {
906
+ inputs: [],
907
+ name: "nttManagerWithExecutor",
908
+ outputs: [
909
+ {
910
+ internalType: "contract INttManagerWithExecutor",
911
+ name: "",
912
+ type: "address",
913
+ },
914
+ ],
915
+ stateMutability: "view",
916
+ type: "function",
917
+ },
918
+ {
919
+ inputs: [],
920
+ name: "owner",
921
+ outputs: [
922
+ {
923
+ internalType: "address",
924
+ name: "",
925
+ type: "address",
926
+ },
927
+ ],
928
+ stateMutability: "view",
929
+ type: "function",
930
+ },
931
+ {
932
+ inputs: [],
933
+ name: "parameterExpirationTime",
934
+ outputs: [
935
+ {
936
+ internalType: "uint256",
937
+ name: "",
938
+ type: "uint256",
939
+ },
940
+ ],
941
+ stateMutability: "view",
942
+ type: "function",
943
+ },
944
+ {
945
+ inputs: [
946
+ {
947
+ internalType: "uint16",
948
+ name: "destinationChain",
949
+ type: "uint16",
950
+ },
951
+ ],
952
+ name: "quoteFinalizeDeposit",
953
+ outputs: [
954
+ {
955
+ internalType: "uint256",
956
+ name: "cost",
957
+ type: "uint256",
958
+ },
959
+ ],
960
+ stateMutability: "view",
961
+ type: "function",
962
+ },
963
+ {
964
+ inputs: [],
965
+ name: "quoteFinalizeDeposit",
966
+ outputs: [
967
+ {
968
+ internalType: "uint256",
969
+ name: "cost",
970
+ type: "uint256",
971
+ },
972
+ ],
973
+ stateMutability: "view",
974
+ type: "function",
975
+ },
976
+ {
977
+ inputs: [
978
+ {
979
+ internalType: "uint16",
980
+ name: "destinationChain",
981
+ type: "uint16",
982
+ },
983
+ ],
984
+ name: "quoteFinalizedDeposit",
985
+ outputs: [
986
+ {
987
+ internalType: "uint256",
988
+ name: "nttDeliveryPrice",
989
+ type: "uint256",
990
+ },
991
+ {
992
+ internalType: "uint256",
993
+ name: "executorCost",
994
+ type: "uint256",
995
+ },
996
+ {
997
+ internalType: "uint256",
998
+ name: "totalCost",
999
+ type: "uint256",
1000
+ },
1001
+ ],
1002
+ stateMutability: "view",
1003
+ type: "function",
1004
+ },
1005
+ {
1006
+ inputs: [],
1007
+ name: "reimburseTxMaxFee",
1008
+ outputs: [
1009
+ {
1010
+ internalType: "bool",
1011
+ name: "",
1012
+ type: "bool",
1013
+ },
1014
+ ],
1015
+ stateMutability: "view",
1016
+ type: "function",
1017
+ },
1018
+ {
1019
+ inputs: [
1020
+ {
1021
+ internalType: "address",
1022
+ name: "",
1023
+ type: "address",
1024
+ },
1025
+ ],
1026
+ name: "reimbursementAuthorizations",
1027
+ outputs: [
1028
+ {
1029
+ internalType: "bool",
1030
+ name: "",
1031
+ type: "bool",
1032
+ },
1033
+ ],
1034
+ stateMutability: "view",
1035
+ type: "function",
1036
+ },
1037
+ {
1038
+ inputs: [],
1039
+ name: "reimbursementPool",
1040
+ outputs: [
1041
+ {
1042
+ internalType: "contract ReimbursementPool",
1043
+ name: "",
1044
+ type: "address",
1045
+ },
1046
+ ],
1047
+ stateMutability: "view",
1048
+ type: "function",
1049
+ },
1050
+ {
1051
+ inputs: [],
1052
+ name: "renounceOwnership",
1053
+ outputs: [],
1054
+ stateMutability: "nonpayable",
1055
+ type: "function",
1056
+ },
1057
+ {
1058
+ inputs: [
1059
+ {
1060
+ internalType: "address",
1061
+ name: "_token",
1062
+ type: "address",
1063
+ },
1064
+ {
1065
+ internalType: "address",
1066
+ name: "_to",
1067
+ type: "address",
1068
+ },
1069
+ {
1070
+ internalType: "uint256",
1071
+ name: "_amount",
1072
+ type: "uint256",
1073
+ },
1074
+ ],
1075
+ name: "retrieveTokens",
1076
+ outputs: [],
1077
+ stateMutability: "nonpayable",
1078
+ type: "function",
1079
+ },
1080
+ {
1081
+ inputs: [
1082
+ {
1083
+ internalType: "uint256",
1084
+ name: "_newGasLimit",
1085
+ type: "uint256",
1086
+ },
1087
+ ],
1088
+ name: "setDefaultDestinationGasLimit",
1089
+ outputs: [],
1090
+ stateMutability: "nonpayable",
1091
+ type: "function",
1092
+ },
1093
+ {
1094
+ inputs: [
1095
+ {
1096
+ internalType: "uint256",
1097
+ name: "_gasLimit",
1098
+ type: "uint256",
1099
+ },
1100
+ {
1101
+ internalType: "uint16",
1102
+ name: "_feeBps",
1103
+ type: "uint16",
1104
+ },
1105
+ {
1106
+ internalType: "address",
1107
+ name: "_feeRecipient",
1108
+ type: "address",
1109
+ },
1110
+ {
1111
+ internalType: "uint16",
1112
+ name: "_platformFeeBps",
1113
+ type: "uint16",
1114
+ },
1115
+ {
1116
+ internalType: "address",
1117
+ name: "_platformFeeRecipient",
1118
+ type: "address",
1119
+ },
1120
+ ],
1121
+ name: "setDefaultParameters",
1122
+ outputs: [],
1123
+ stateMutability: "nonpayable",
1124
+ type: "function",
1125
+ },
1126
+ {
1127
+ inputs: [
1128
+ {
1129
+ internalType: "uint16",
1130
+ name: "_newFeeBps",
1131
+ type: "uint16",
1132
+ },
1133
+ ],
1134
+ name: "setDefaultPlatformFeeBps",
1135
+ outputs: [],
1136
+ stateMutability: "nonpayable",
1137
+ type: "function",
1138
+ },
1139
+ {
1140
+ inputs: [
1141
+ {
1142
+ internalType: "address",
1143
+ name: "_newRecipient",
1144
+ type: "address",
1145
+ },
1146
+ ],
1147
+ name: "setDefaultPlatformFeeRecipient",
1148
+ outputs: [],
1149
+ stateMutability: "nonpayable",
1150
+ type: "function",
1151
+ },
1152
+ {
1153
+ inputs: [
1154
+ {
1155
+ internalType: "uint16",
1156
+ name: "_chainId",
1157
+ type: "uint16",
1158
+ },
1159
+ ],
1160
+ name: "setDefaultSupportedChain",
1161
+ outputs: [],
1162
+ stateMutability: "nonpayable",
1163
+ type: "function",
1164
+ },
1165
+ {
1166
+ inputs: [
1167
+ {
1168
+ components: [
1169
+ {
1170
+ internalType: "uint256",
1171
+ name: "value",
1172
+ type: "uint256",
1173
+ },
1174
+ {
1175
+ internalType: "address",
1176
+ name: "refundAddress",
1177
+ type: "address",
1178
+ },
1179
+ {
1180
+ internalType: "bytes",
1181
+ name: "signedQuote",
1182
+ type: "bytes",
1183
+ },
1184
+ {
1185
+ internalType: "bytes",
1186
+ name: "instructions",
1187
+ type: "bytes",
1188
+ },
1189
+ ],
1190
+ internalType: "struct ExecutorArgs",
1191
+ name: "executorArgs",
1192
+ type: "tuple",
1193
+ },
1194
+ {
1195
+ components: [
1196
+ {
1197
+ internalType: "uint16",
1198
+ name: "dbps",
1199
+ type: "uint16",
1200
+ },
1201
+ {
1202
+ internalType: "address",
1203
+ name: "payee",
1204
+ type: "address",
1205
+ },
1206
+ ],
1207
+ internalType: "struct FeeArgs",
1208
+ name: "feeArgs",
1209
+ type: "tuple",
1210
+ },
1211
+ ],
1212
+ name: "setExecutorParameters",
1213
+ outputs: [
1214
+ {
1215
+ internalType: "bytes32",
1216
+ name: "nonce",
1217
+ type: "bytes32",
1218
+ },
1219
+ ],
1220
+ stateMutability: "nonpayable",
1221
+ type: "function",
1222
+ },
1223
+ {
1224
+ inputs: [
1225
+ {
1226
+ internalType: "uint256",
1227
+ name: "newExpirationTime",
1228
+ type: "uint256",
1229
+ },
1230
+ ],
1231
+ name: "setParameterExpirationTime",
1232
+ outputs: [],
1233
+ stateMutability: "nonpayable",
1234
+ type: "function",
1235
+ },
1236
+ {
1237
+ inputs: [
1238
+ {
1239
+ internalType: "bool",
1240
+ name: "_reimburseTxMaxFee",
1241
+ type: "bool",
1242
+ },
1243
+ ],
1244
+ name: "setReimburseTxMaxFee",
1245
+ outputs: [],
1246
+ stateMutability: "nonpayable",
1247
+ type: "function",
1248
+ },
1249
+ {
1250
+ inputs: [
1251
+ {
1252
+ internalType: "uint16",
1253
+ name: "_chainId",
1254
+ type: "uint16",
1255
+ },
1256
+ {
1257
+ internalType: "bool",
1258
+ name: "_supported",
1259
+ type: "bool",
1260
+ },
1261
+ ],
1262
+ name: "setSupportedChain",
1263
+ outputs: [],
1264
+ stateMutability: "nonpayable",
1265
+ type: "function",
1266
+ },
1267
+ {
1268
+ inputs: [
1269
+ {
1270
+ internalType: "uint16",
1271
+ name: "",
1272
+ type: "uint16",
1273
+ },
1274
+ ],
1275
+ name: "supportedChains",
1276
+ outputs: [
1277
+ {
1278
+ internalType: "bool",
1279
+ name: "",
1280
+ type: "bool",
1281
+ },
1282
+ ],
1283
+ stateMutability: "view",
1284
+ type: "function",
1285
+ },
1286
+ {
1287
+ inputs: [],
1288
+ name: "tbtcToken",
1289
+ outputs: [
1290
+ {
1291
+ internalType: "contract IERC20Upgradeable",
1292
+ name: "",
1293
+ type: "address",
1294
+ },
1295
+ ],
1296
+ stateMutability: "view",
1297
+ type: "function",
1298
+ },
1299
+ {
1300
+ inputs: [],
1301
+ name: "tbtcVault",
1302
+ outputs: [
1303
+ {
1304
+ internalType: "contract ITBTCVault",
1305
+ name: "",
1306
+ type: "address",
1307
+ },
1308
+ ],
1309
+ stateMutability: "view",
1310
+ type: "function",
1311
+ },
1312
+ {
1313
+ inputs: [
1314
+ {
1315
+ internalType: "address",
1316
+ name: "newOwner",
1317
+ type: "address",
1318
+ },
1319
+ ],
1320
+ name: "transferOwnership",
1321
+ outputs: [],
1322
+ stateMutability: "nonpayable",
1323
+ type: "function",
1324
+ },
1325
+ {
1326
+ inputs: [],
1327
+ name: "underlyingNttManager",
1328
+ outputs: [
1329
+ {
1330
+ internalType: "address",
1331
+ name: "",
1332
+ type: "address",
1333
+ },
1334
+ ],
1335
+ stateMutability: "view",
1336
+ type: "function",
1337
+ },
1338
+ {
1339
+ inputs: [
1340
+ {
1341
+ internalType: "uint256",
1342
+ name: "_initializeDepositGasOffset",
1343
+ type: "uint256",
1344
+ },
1345
+ {
1346
+ internalType: "uint256",
1347
+ name: "_finalizeDepositGasOffset",
1348
+ type: "uint256",
1349
+ },
1350
+ ],
1351
+ name: "updateGasOffsetParameters",
1352
+ outputs: [],
1353
+ stateMutability: "nonpayable",
1354
+ type: "function",
1355
+ },
1356
+ {
1357
+ inputs: [
1358
+ {
1359
+ internalType: "address",
1360
+ name: "_newNttManagerWithExecutor",
1361
+ type: "address",
1362
+ },
1363
+ ],
1364
+ name: "updateNttManagerWithExecutor",
1365
+ outputs: [],
1366
+ stateMutability: "nonpayable",
1367
+ type: "function",
1368
+ },
1369
+ {
1370
+ inputs: [
1371
+ {
1372
+ internalType: "address",
1373
+ name: "_address",
1374
+ type: "address",
1375
+ },
1376
+ {
1377
+ internalType: "bool",
1378
+ name: "authorization",
1379
+ type: "bool",
1380
+ },
1381
+ ],
1382
+ name: "updateReimbursementAuthorization",
1383
+ outputs: [],
1384
+ stateMutability: "nonpayable",
1385
+ type: "function",
1386
+ },
1387
+ {
1388
+ inputs: [
1389
+ {
1390
+ internalType: "contract ReimbursementPool",
1391
+ name: "_reimbursementPool",
1392
+ type: "address",
1393
+ },
1394
+ ],
1395
+ name: "updateReimbursementPool",
1396
+ outputs: [],
1397
+ stateMutability: "nonpayable",
1398
+ type: "function",
1399
+ },
1400
+ {
1401
+ inputs: [
1402
+ {
1403
+ internalType: "address",
1404
+ name: "_newNttManager",
1405
+ type: "address",
1406
+ },
1407
+ ],
1408
+ name: "updateUnderlyingNttManager",
1409
+ outputs: [],
1410
+ stateMutability: "nonpayable",
1411
+ type: "function",
1412
+ },
1413
+ ];
1414
+ var _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e4565b603154610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60315460ff9081161015620000e2576031805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b614b8880620000f46000396000f3fe60806040526004361061024f5760003560e01c8063040891e2146102545780630af048b61461029b5780630f36403a146102c95780630fa1ba44146102f657806310d587831461030c57806313b38cce1461034c5780631afb6363146103615780631f02dc0b14610386578063265dbdc8146103a857806327ce36c6146103e557806339541da2146103fb5780633d4896ce1461041b5780633e1ec46e1461043b5780633f9612551461045b57806346d9d49a1461047057806360ec23dd1461048357806361d863bc146104a357806366b58a01146104b85780636da5658a146104e85780636e5c22e314610508578063715018a61461052e57806376645cbb146105435780637b0e1c57146105785780637b35b4e6146105985780637be04b6a146105b85780637c9e9ffb146105d25780637d9995af146106415780637f9dbe1e146106615780638da5cb5b146106815780639574b0f6146106965780639e0e4e2f146106b6578063af6385a5146106d6578063b02c43d0146106f6578063b16205f114610733578063c09975cd14610753578063c7ba034714610773578063cbf101a61461078c578063cef23ecb146107c7578063d68ff0f7146107e7578063d7c0d02214610813578063ddc44ff51461082e578063dde1c3831461084e578063e5d3d71414610864578063e78cea9214610884578063ed3b7e9f146108a4578063f2fde38b146108bf578063f36d90b8146108df578063f8c8765e146108f5578063fc1b776914610915578063fc83a42d14610935578063fd967f4714610955578063fe012b9b1461096b575b600080fd5b34801561026057600080fd5b5061027461026f366004613b5f565b61098b565b60408051941515855260208501939093529183015260608201526080015b60405180910390f35b3480156102a757600080fd5b506102bb6102b6366004613b95565b610a6f565b604051908152602001610292565b3480156102d557600080fd5b506001546102e9906001600160a01b031681565b6040516102929190613bb0565b34801561030257600080fd5b506102bb60cc5481565b34801561031857600080fd5b5061033c610327366004613b95565b60d06020526000908152604090205460ff1681565b6040519015158152602001610292565b34801561035857600080fd5b506102bb610bb9565b34801561036d57600080fd5b5060ce546102e99061010090046001600160a01b031681565b34801561039257600080fd5b506103a66103a1366004613bc4565b610d2c565b005b3480156103b457600080fd5b506103c86103c3366004613b5f565b610dc9565b604080519315158452602084019290925290820152606001610292565b3480156103f157600080fd5b506102bb60cb5481565b34801561040757600080fd5b506103a6610416366004613b95565b610e81565b34801561042757600080fd5b506103a6610436366004613b5f565b610ef7565b34801561044757600080fd5b506102bb610456366004613d1a565b610fb2565b34801561046757600080fd5b506102bb611370565b6103a661047e366004613bc4565b6113dd565b34801561048f57600080fd5b506103a661049e366004613de9565b6116f1565b3480156104af57600080fd5b506103a6611769565b3480156104c457600080fd5b5061033c6104d3366004613b5f565b60cd6020526000908152604090205460ff1681565b3480156104f457600080fd5b506103a6610503366004613e22565b611841565b34801561051457600080fd5b5060d3546102e9906201000090046001600160a01b031681565b34801561053a57600080fd5b506103a66119ec565b34801561054f57600080fd5b5060d35461056590600160b01b900461ffff1681565b60405161ffff9091168152602001610292565b34801561058457600080fd5b506103a6610593366004613e8a565b611a00565b3480156105a457600080fd5b506103a66105b3366004613b5f565b611b41565b3480156105c457600080fd5b5060ce5461033c9060ff1681565b3480156105de57600080fd5b5061061a6105ed366004613bc4565b60ca602052600090815260409020546001600160a01b03811690600160a01b90046001600160601b031682565b604080516001600160a01b0390931683526001600160601b03909116602083015201610292565b34801561064d57600080fd5b506103a661065c366004613b5f565b611bfc565b34801561066d57600080fd5b5060d4546102e9906001600160a01b031681565b34801561068d57600080fd5b506102e9611ce9565b3480156106a257600080fd5b506103a66106b1366004613ecb565b611cf8565b3480156106c257600080fd5b506103a66106d1366004613f2f565b611f45565b3480156106e257600080fd5b506103a66106f1366004613b95565b611f95565b34801561070257600080fd5b50610726610711366004613bc4565b60c86020526000908152604090205460ff1681565b6040516102929190613f67565b34801561073f57600080fd5b506103a661074e366004613bc4565b61207e565b34801561075f57600080fd5b506096546102e9906001600160a01b031681565b34801561077f57600080fd5b506102bb6402540be40081565b34801561079857600080fd5b506107ac6107a7366004613b95565b6120ea565b60408051938452602084019290925290820152606001610292565b3480156107d357600080fd5b506103a66107e2366004613b5f565b612249565b3480156107f357600080fd5b506107fc6122fa565b604080519215158352602083019190915201610292565b34801561081f57600080fd5b5060d1546105659061ffff1681565b34801561083a57600080fd5b5060cf546102e9906001600160a01b031681565b34801561085a57600080fd5b506102bb60d25481565b34801561087057600080fd5b5060c9546102e9906001600160a01b031681565b34801561089057600080fd5b506000546102e9906001600160a01b031681565b3480156108b057600080fd5b5060d3546105659061ffff1681565b3480156108cb57600080fd5b506103a66108da366004613b5f565b612359565b3480156108eb57600080fd5b506102bb60d75481565b34801561090157600080fd5b506103a6610910366004613f8f565b6123d2565b34801561092157600080fd5b506103a6610930366004613feb565b612629565b34801561094157600080fd5b5061033c610950366004613b5f565b6126af565b34801561096157600080fd5b5061056561271081565b34801561097757600080fd5b506103a6610986366004614007565b612748565b6001600160a01b038116600090815260d6602052604081205481908190819081036109c157506000925082915081905080610a68565b6001600160a01b038516600090815260d660205260409020546109f19086906109ec9060019061403a565b612797565b600081815260d56020526040902060078101549194509060ff16610a22575060009350839250829150819050610a68565b80600601549250600060d75484610a39919061404d565b90504281108015610a54575060009550859250610a68915050565b610a5e428361403a565b9350600196505050505b9193509193565b33600090815260d66020526040812054610aa45760405162461bcd60e51b8152600401610a9b90614060565b60405180910390fd5b61ffff8216600090815260d0602052604090205460ff16610ad75760405162461bcd60e51b8152600401610a9b90614095565b33600081815260d660205260408120549091610af9916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff16610b2f5760405162461bcd60e51b8152600401610a9b90614060565b60ce5460cf546040516308f5c62f60e31b81526001600160a01b036101009093048316926347ae317892610b70929116908890869060048083019101614183565b602060405180830381865afa158015610b8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb19190614228565b949350505050565b33600090815260d66020526040812054610be55760405162461bcd60e51b8152600401610a9b90614060565b33600081815260d660205260408120549091610c07916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff16610c3d5760405162461bcd60e51b8152600401610a9b90614060565b6000610c4c60d15461ffff1690565b90508061ffff16600003610ca25760405162461bcd60e51b815260206004820152601e60248201527f4e6f20737570706f7274656420636861696e7320636f6e6669677572656400006044820152606401610a9b565b60ce5460cf546040516308f5c62f60e31b81526001600160a01b036101009093048316926347ae317892610ce3929116908590879060048083019101614183565b602060405180830381865afa158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d249190614228565b935050505090565b610d346127d9565b60008111610d905760405162461bcd60e51b815260206004820152602360248201527f476173206c696d6974206d7573742062652067726561746572207468616e207a60448201526265726f60e81b6064820152608401610a9b565b60d2805490829055604051829082907fc42718f3a542922203c1913b57e41b82a73e104920a2b6a77fa748e39d552bed90600090a35050565b6001600160a01b038116600090815260d66020526040812054819081908103610dfa57506000915081905080610e7a565b6001600160a01b038416600090815260d66020526040902054610e259085906109ec9060019061403a565b600081815260d56020526040902060078101549193509060ff16610e53575060009250829150819050610e7a565b600060d7548260060154610e67919061404d565b6006909201544292909211159450909150505b9193909250565b610e896127d9565b61271061ffff82161115610eaf5760405162461bcd60e51b8152600401610a9b90614241565b60d3805461ffff83811661ffff19831681179093556040519116919082907fac4adeedf745d049b2edee64ef4d443b4c52bc23777c6fb3113a8a535456c09390600090a35050565b610eff6127d9565b6001600160a01b038116610f605760405162461bcd60e51b815260206004820152602260248201527f4e5454204d616e6167657220616464726573732063616e6e6f74206265207a65604482015261726f60f01b6064820152608401610a9b565b60cf80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f67b7f5a857975bbb2bcf7e0ab71bea3a53b974451f604ced77d51f8bf4d4ef9090600090a35050565b60008083604001515111610fd85760405162461bcd60e51b8152600401610a9b90614283565b610fe58360400151612838565b815161271061ffff909116111561100e5760405162461bcd60e51b8152600401610a9b90614241565b60d354825161ffff9182169116101561107f5760405162461bcd60e51b815260206004820152602d60248201527f466565206d757374206265206174206c65617374207468652064656661756c7460448201526c20706c6174666f726d2066656560981b6064820152608401610a9b565b33600090815260d66020526040902054156111dc5733600081815260d6602052604081205490916110b6916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff16156111d957600060d75482600601546110e9919061404d565b42119050806111d7578551825560208601516001830180546001600160a01b0319166001600160a01b0390921691909117905560408601518690839060028201906111349082614321565b50606082015160038201906111499082614321565b5050855160048401805460208901516001600160a01b031662010000026001600160b01b031990911661ffff90931692909217919091179055504260068301556040808701515187519151859233927fe98a81d99c1826dfe6cbc156251ee671fb3f960fba4018a0b2161d2c9c21a33b926111c492906143e0565b60405180910390a382935050505061136a565b505b50505b33600081815260d66020526040902054906111f79082612797565b915061120481600161404d565b33600081815260d66020908152604080832094909455835160a0810185528881528082018890528085019390935242606084015260016080840181905286835260d58252918490208351805182559182015192810180546001600160a01b0319166001600160a01b03909416939093179092559283015191929091829060028201906112909082614321565b50606082015160038201906112a59082614321565b5050506020828101518051600484018054929093015161ffff9091166001600160b01b031990921691909117620100006001600160a01b0392831602179091556040808401516005840180546001600160a01b0319169190931617909155606083015160068301556080909201516007909101805460ff1916911515919091179055848101515185519151849233927fa599ac0261858328041e73bf570b3e086328c1d1d9f770f6dddfc7f120d93e429261136092906143e0565b60405180910390a3505b92915050565b33600090815260d66020526040812054810361138c5750600090565b33600081815260d6602052604081205490916113ae916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff166113d35760006113d6565b80545b9250505090565b60005a90506001600083815260c8602052604090205460ff16600281111561140757611407613f51565b146114245760405162461bcd60e51b8152600401610a9b906143ee565b600082815260c860205260408120805460ff191660021790558080611448856128d3565b60ce54929550909350915060ff16156115055760008060009054906101000a90046001600160a01b03166001600160a01b031663c42b64d06040518163ffffffff1660e01b8152600401608060405180830381865afa1580156114af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d39190614444565b509250505060006402540be400826001600160401b03166114f4919061448f565b9050611500818561404d565b935050505b336001600160a01b031681867f3ce59c3fab27374bdb9dc4e3719f29a8f10d802b559892bf124b8231dc8cfac086866040516115429291906143e0565b60405180910390a46115548282612acb565b6096546001600160a01b0316156116ea57600085815260ca60209081526040918290208251808401909352546001600160a01b038116808452600160a01b9091046001600160601b0316918301919091521561163357600086815260ca60209081526040808320929092556096549083015183519251631eb489b760e21b81526001600160601b0390911660048201526001600160a01b039283166024820152911690637ad226dc90604401600060405180830381600087803b15801561161a57600080fd5b505af115801561162e573d6000803e3d6000fd5b505050505b33600090815260cd602052604090205460ff16156116e857600061165634612db4565b60965460cc549192506001600160a01b031690637ad226dc90835a61167b908b61403a565b611685919061404d565b61168f919061404d565b6040516001600160e01b031960e084901b1681526004810191909152336024820152604401600060405180830381600087803b1580156116ce57600080fd5b505af11580156116e2573d6000803e3d6000fd5b50505050505b505b5050505050565b6116f96127d9565b816001600160a01b03167f1fff4aae494aaedff71ff8b04de50a56543bb83ce05b033c3fb4a93e065c05fc82604051611736911515815260200190565b60405180910390a26001600160a01b0391909116600090815260cd60205260409020805460ff1916911515919091179055565b33600090815260d66020526040812054900361178157565b33600081815260d6602052604081205490916117a3916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff161561183d57600082815260d5602052604081208181556001810180546001600160a01b03191690559081816117f56002830182613afc565b611803600383016000613afc565b5050506004810180546001600160b01b03191690556005810180546001600160a01b031916905560006006820155600701805460ff191690555b5050565b60005a9050816118935760405162461bcd60e51b815260206004820181905260248201527f4c32206465706f736974206f776e6572206d757374206e6f74206265203078306044820152606401610a9b565b60006118b66118a1866144be565b6118b036879003870187614564565b85612f07565b50905060008082815260c8602052604090205460ff1660028111156118dd576118dd613f51565b146118fa5760405162461bcd60e51b8152600401610a9b906143ee565b600081815260c86020526040808220805460ff19166001179055513391859184917fe96a7294b221e4b744709e3f7346a6459fc446e57715e57713a470407023442991a46096546001600160a01b031615801590611967575033600090815260cd602052604090205460ff165b156116ea57600060cb545a61197c908561403a565b611986919061404d565b90506001600160601b0381111561199f57505050505050565b6040805180820182523381526001600160601b039283166020808301918252600095865260ca90529190932092519051909116600160a01b026001600160a01b0390911617905550505050565b6119f46127d9565b6119fe6000613076565b565b611a086127d9565b6001600160a01b038216611a715760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420726574726965766520746f6b656e7320746f20746865207a65604482015269726f206164647265737360b01b6064820152608401610a9b565b6001600160a01b038316611b28576000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611acc576040519150601f19603f3d011682016040523d82523d6000602084013e611ad1565b606091505b5050905080611b225760405162461bcd60e51b815260206004820152601f60248201527f4661696c656420746f207472616e73666572206e617469766520746f6b656e006044820152606401610a9b565b50505050565b611b3c6001600160a01b03841683836130c8565b505050565b611b49611ce9565b6001600160a01b0316336001600160a01b031614611ba35760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610a9b565b7f0e2d2343d31b085b7c4e56d1c8a6ec79f7ab07460386f1c9a1756239fe2533ac81604051611bd29190613bb0565b60405180910390a1609680546001600160a01b0319166001600160a01b0392909216919091179055565b611c046127d9565b6001600160a01b038116151580611c1f575060d35461ffff16155b611c8d5760405162461bcd60e51b815260206004820152603960248201527f526563697069656e7420616464726573732063616e6e6f74206265207a65726f604482015278081dda195b881c1b185d199bdc9b48199959481a5cc81cd95d603a1b6064820152608401610a9b565b60d380546001600160a01b038381166201000081810262010000600160b01b031985161790945560405193909204169182907ff522784151058f846a6fb74e554e985deaced47a0eff2546b24a5b059382c93d90600090a35050565b6064546001600160a01b031690565b611d006127d9565b61271061ffff85161115611d265760405162461bcd60e51b8152600401610a9b90614241565b61271061ffff83161115611d905760405162461bcd60e51b815260206004820152602b60248201527f506c6174666f726d206665652063616e6e6f742065786365656420313030252060448201526a283130303030206270732960a81b6064820152608401610a9b565b6001600160a01b038316151580611da9575061ffff8416155b611e0a5760405162461bcd60e51b815260206004820152602c60248201527f46656520726563697069656e742063616e6e6f74206265207a65726f2077686560448201526b1b88199959481a5cc81cd95d60a21b6064820152608401610a9b565b6001600160a01b038116151580611e23575061ffff8216155b611e955760405162461bcd60e51b815260206004820152603e60248201527f506c6174666f726d2066656520726563697069656e742063616e6e6f7420626560448201527f207a65726f207768656e20706c6174666f726d206665652069732073657400006064820152608401610a9b565b60d285905560d3805460d480546001600160a01b0319166001600160a01b0387811691821790925561ffff8681166001600160c01b0319909416600160b01b918a169182026001600160b01b03191617939093176201000092861692909202919091179092556040805188815260208101929092528101919091527f1f79f04e1f8a98e60f25de0db9946a06dda260fcdb0e5c22639ef4541c507cef906060015b60405180910390a15050505050565b611f4d6127d9565b60cb82905560cc8190556040517fb8df1fba472926f296225c210e366f62b21fec23b8e1b6b0a375724798ca9c0a90611f8990849084906143e0565b60405180910390a15050565b611f9d6127d9565b8061ffff16600003611fc15760405162461bcd60e51b8152600401610a9b90614615565b61ffff8116600090815260d0602052604090205460ff1661203e5760405162461bcd60e51b815260206004820152603160248201527f436861696e206d75737420626520737570706f72746564206265666f72652073604482015270195d1d1a5b99c8185cc8191959985d5b1d607a1b6064820152608401610a9b565b60d1805461ffff191661ffff83169081179091556040517f39b84d3f86e19ac9682a0a87eb51ecb89695101c7ce611485e575315c7a061fb90600090a250565b6120866127d9565b600081116120e55760405162461bcd60e51b815260206004820152602660248201527f45787069726174696f6e2074696d65206d75737420626520677265617465722060448201526507468616e20360d41b6064820152608401610a9b565b60d755565b33600090815260d660205260408120548190819061211a5760405162461bcd60e51b8152600401610a9b90614060565b61ffff8416600090815260d0602052604090205460ff1661214d5760405162461bcd60e51b8152600401610a9b90614095565b33600081815260d66020526040812054909161216f916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff166121a55760405162461bcd60e51b8152600401610a9b90614060565b60cf5460408051639057412d60e01b815261ffff891660048201526024810191909152600060448201526001600160a01b03909116908190639057412d90606401600060405180830381865afa158015612203573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261222b9190810190614646565b8354909750955061223e9050858761404d565b959794965050505050565b6122516127d9565b6001600160a01b0381166122a05760405162461bcd60e51b8152602060048201526016602482015275416464726573732063616e6e6f74206265207a65726f60501b6044820152606401610a9b565b60ce80546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f3d98164033dd7e545b0d5cda1a6295533a70ffedb46ffb40b1a57a9f0867e15290600090a35050565b33600090815260d660205260408120548190810361231b5750600091829150565b33600081815260d6602052604090205461233c91906109ec9060019061403a565b600081815260d5602052604090206007015460ff16939092509050565b6123616127d9565b6001600160a01b0381166123c65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a9b565b6123cf81613076565b50565b603154610100900460ff16158080156123f25750603154600160ff909116105b8061241357506124013061311e565b158015612413575060315460ff166001145b6124765760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610a9b565b6031805460ff191660011790558015612499576031805461ff0019166101001790555b6124a3858561312d565b6124ab6131d3565b6001600160a01b03831661251a5760405162461bcd60e51b815260206004820152603060248201527f4e5454204d616e616765722057697468204578656375746f722061646472657360448201526f732063616e6e6f74206265207a65726f60801b6064820152608401610a9b565b6001600160a01b0382166125865760405162461bcd60e51b815260206004820152602d60248201527f556e6465726c79696e67204e5454204d616e616765722061646472657373206360448201526c616e6e6f74206265207a65726f60981b6064820152608401610a9b565b60ce80546001600160a01b0380861661010002610100600160a81b03199092169190911790915560cf80549184166001600160a01b03199283161790556207a12060d25560d3805461ffff60b01b1916905560d480549091169055610e1060d75580156116ea576031805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611f36565b6126316127d9565b8161ffff166000036126555760405162461bcd60e51b8152600401610a9b90614615565b61ffff8216600081815260d06020908152604091829020805460ff191685151590811790915591519182527fd7c98ac15d07c39e8b183ff91e176f4182ae24075447712bba29ff669a72da74910160405180910390a25050565b6001600160a01b038116600090815260d6602052604081205481036126d657506001919050565b6001600160a01b038216600090815260d660205260408120546127019084906109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff16612729575060019392505050565b600060d754826006015461273d919061404d565b421195945050505050565b6127506127d9565b60ce805460ff19168215159081179091556040519081527f6dcf7dd477751916b5aa15e99f6f3008aa5fa398339c3abd2d92eaaf13b357879060200160405180910390a150565b6040516001600160601b0319606084901b1660208201526034810182905260009060540160405160208183030381529060405280519060200120905092915050565b336127e2611ce9565b6001600160a01b0316146119fe5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a9b565b60008151116128885760405162461bcd60e51b815260206004820152601c60248201527b5369676e65642071756f74652063616e6e6f7420626520656d70747960201b6044820152606401610a9b565b6020815110156123cf5760405162461bcd60e51b815260206004820152601660248201527514da59db9959081c5d5bdd19481d1bdbc81cda1bdc9d60521b6044820152606401610a9b565b60008054604051630b02c43d60e41b8152600481018490528291829182916001600160a01b03169063b02c43d09060240160e060405180830381865afa158015612921573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294591906146f3565b9050806040015163ffffffff1660000361299b5760405162461bcd60e51b815260206004820152601760248201527611195c1bdcda5d081b9bdd081a5b9a5d1a585b1a5e9959604a1b6044820152606401610a9b565b600154604051631b189aa960e21b8152600481018790526000916001600160a01b031690636c626aa49060240160408051808303816000875af11580156129e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0a91906147a5565b9150508160a0015163ffffffff166000141580612a2f57506001600160401b03811615155b612a875760405162461bcd60e51b815260206004820152602360248201527f4465706f736974206e6f742066696e616c697a6564206279207468652062726960448201526264676560e81b6064820152608401610a9b565b6402540be40082602001516001600160401b0316612aa5919061448f565b9450612ab982602001518360800151613202565b93508160c00151925050509193909250565b33600090815260d66020526040902054612af75760405162461bcd60e51b8152600401610a9b90614060565b33600081815260d660205260408120549091612b19916109ec9060019061403a565b600081815260d56020526040902060078101549192509060ff16612b4f5760405162461bcd60e51b8152600401610a9b90614060565b60d7548160060154612b61919061404d565b421115612bae5760405162461bcd60e51b815260206004820152601b60248201527a115e1958dd5d1bdc881c185c985b595d195c9cc8195e1c1a5c9959602a1b6044820152606401610a9b565b604080516080810182528254815260018301546001600160a01b03166020820152600283018054612d3493889388939092879284019190612bee906140cc565b80601f0160208091040260200160405190810160405280929190818152602001828054612c1a906140cc565b8015612c675780601f10612c3c57610100808354040283529160200191612c67565b820191906000526020600020905b815481529060010190602001808311612c4a57829003601f168201915b50505050508152602001600382018054612c80906140cc565b80601f0160208091040260200160405190810160405280929190818152602001828054612cac906140cc565b8015612cf95780601f10612cce57610100808354040283529160200191612cf9565b820191906000526020600020905b815481529060010190602001808311612cdc57829003601f168201915b50505091909252505060408051808201909152600487015461ffff811682526201000090046001600160a01b03166020820152905086613383565b600082815260d5602052604081208181556001810180546001600160a01b0319169055908181612d676002830182613afc565b612d75600383016000613afc565b5050506004810180546001600160b01b03191690556005810180546001600160a01b031916905560006006820155600701805460ff1916905550505050565b600080609660009054906101000a90046001600160a01b03166001600160a01b0316633de39c116040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2e9190614228565b90506000609660009054906101000a90046001600160a01b03166001600160a01b031663e25b53456040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ea99190614228565b90506000823a10612eba5782612ebc565b3a5b905080600003612ed157506000949350505050565b6000612edd82876147cf565b905080831115612ef35750600095945050505050565b612efd838261403a565b9695505050505050565b60015460a083015160009182916001600160a01b03908116911614612f675760405162461bcd60e51b81526020600482015260166024820152750acc2ead8e840c2c8c8e4cae6e640dad2e6dac2e8c6d60531b6044820152606401610a9b565b612f7a612f73866135d1565b8551613611565b6000546040516386f0143960e01b81529193506001600160a01b0316906386f0143990612faf90889088908890600401614841565b600060405180830381600087803b158015612fc957600080fd5b505af1158015612fdd573d6000803e3d6000fd5b5050600054604051630b02c43d60e41b8152600481018690526402540be40093506001600160a01b03909116915063b02c43d09060240160e060405180830381865afa158015613031573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061305591906146f3565b602001516001600160401b031661306c919061448f565b9050935093915050565b606480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611b3c8363a9059cbb60e01b84846040516024016130e7929190614917565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915261365b565b6001600160a01b03163b151590565b613137828261372d565b806001600160a01b031663e5d3d7146040518163ffffffff1660e01b8152600401602060405180830381865afa158015613175573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131999190614930565b60c980546001600160a01b0319166001600160a01b0392909216919091179055505061ea6060cb55614e2060cc5560ce805460ff19169055565b603154610100900460ff166131fa5760405162461bcd60e51b8152600401610a9b9061494d565b6119fe613886565b6000806402540be4006132158486614998565b6001600160401b0316613228919061448f565b90506000600160009054906101000a90046001600160a01b03166001600160a01b03166309b53f516040518163ffffffff1660e01b8152600401602060405180830381865afa15801561327f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132a391906149bf565b63ffffffff16905060008082116132bb5760006132c5565b6132c582846147cf565b905060008060009054906101000a90046001600160a01b03166001600160a01b031663c42b64d06040518163ffffffff1660e01b8152600401608060405180830381865afa15801561331b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061333f9190614444565b509250505060006402540be400826001600160401b0316613360919061448f565b90508061336d848761403a565b613377919061403a565b98975050505050505050565b600085116133d35760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e20300000006044820152606401610a9b565b60006133de856138b6565b61ffff8116600090815260d0602052604090205490915060ff166134145760405162461bcd60e51b8152600401610a9b90614095565b6040840151516001600160f01b038616906134415760405162461bcd60e51b8152600401610a9b90614283565b61344e8560400151612838565b84513410156134b15760405162461bcd60e51b815260206004820152602960248201527f496e73756666696369656e74207061796d656e7420666f72206578656375746f60448201526872207365727669636560b81b6064820152608401610a9b565b60ce5460c9546134d4916001600160a01b03918216916101009091041689613914565b60ce5460cf546040516339bb39eb60e01b81526000926001600160a01b036101009091048116926339bb39eb92349261351d9216908d908990899033908f908f906004016149dc565b60206040518083038185885af115801561353b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906135609190614a98565b604080518a815261ffff861660208201529081018490526001600160401b0382166060820152608081018990523460a0820152909150849033907f3fd07697565d794233ceaf08050074ea47ac236212232848fa706458f0fc53f49060c00160405180910390a35050505050505050565b600061136a82600001518360200151846040015185606001516040516020016135fd9493929190614ab3565b6040516020818303038152906040526139b4565b6000828260405160200161363c92919091825260e01b6001600160e01b031916602082015260240190565b60408051601f1981840301815291905280516020909101209392505050565b60006136b0826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166139db9092919063ffffffff16565b805190915015611b3c57808060200190518101906136ce9190614b06565b611b3c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610a9b565b6000546001600160a01b031615801561374f57506001546001600160a01b0316155b6137ac5760405162461bcd60e51b815260206004820152602860248201527f41627374726163744254434465706f7369746f7220616c726561647920696e696044820152671d1a585b1a5e995960c21b6064820152608401610a9b565b6001600160a01b0382166138025760405162461bcd60e51b815260206004820152601d60248201527f42726964676520616464726573732063616e6e6f74206265207a65726f0000006044820152606401610a9b565b6001600160a01b0381166138585760405162461bcd60e51b815260206004820181905260248201527f544254435661756c7420616464726573732063616e6e6f74206265207a65726f6044820152606401610a9b565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b603154610100900460ff166138ad5760405162461bcd60e51b8152600401610a9b9061494d565b6119fe33613076565b60f081901c60008190036138dc5760405162461bcd60e51b8152600401610a9b90614615565b61ffff8116600090815260d0602052604090205460ff1661390f5760405162461bcd60e51b8152600401610a9b90614095565b919050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015613965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139899190614228565b613993919061404d565b9050611b228463095ea7b360e01b85846040516024016130e7929190614917565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b6060610bb1848460008585600080866001600160a01b03168587604051613a029190614b23565b60006040518083038185875af1925050503d8060008114613a3f576040519150601f19603f3d011682016040523d82523d6000602084013e613a44565b606091505b5091509150613a5587838387613a60565b979650505050505050565b60608315613acd578251600003613ac657613a7a8561311e565b613ac65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610a9b565b5081610bb1565b610bb18383815115613ae25781518083602001fd5b8060405162461bcd60e51b8152600401610a9b9190614b3f565b508054613b08906140cc565b6000825580601f10613b18575050565b601f0160209004906000526020600020908101906123cf91905b80821115613b465760008155600101613b32565b5090565b6001600160a01b03811681146123cf57600080fd5b600060208284031215613b7157600080fd5b8135613b7c81613b4a565b9392505050565b803561ffff8116811461390f57600080fd5b600060208284031215613ba757600080fd5b613b7c82613b83565b6001600160a01b0391909116815260200190565b600060208284031215613bd657600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b0381118282101715613c1557613c15613bdd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715613c4357613c43613bdd565b604052919050565b600082601f830112613c5c57600080fd5b81356001600160401b03811115613c7557613c75613bdd565b613c88601f8201601f1916602001613c1b565b818152846020838601011115613c9d57600080fd5b816020850160208301376000918101602001919091529392505050565b600060408284031215613ccc57600080fd5b604080519081016001600160401b0381118282101715613cee57613cee613bdd565b604052905080613cfd83613b83565b81526020830135613d0d81613b4a565b6020919091015292915050565b60008060608385031215613d2d57600080fd5b82356001600160401b0380821115613d4457600080fd5b9084019060808287031215613d5857600080fd5b613d60613bf3565b823581526020830135613d7281613b4a565b6020820152604083013582811115613d8957600080fd5b613d9588828601613c4b565b604083015250606083013582811115613dad57600080fd5b613db988828601613c4b565b606083015250809450505050613dd28460208501613cba565b90509250929050565b80151581146123cf57600080fd5b60008060408385031215613dfc57600080fd5b8235613e0781613b4a565b91506020830135613e1781613ddb565b809150509250929050565b6000806000838503610100811215613e3957600080fd5b84356001600160401b03811115613e4f57600080fd5b850160808188031215613e6157600080fd5b935060c0601f1982011215613e7557600080fd5b5060208401915060e084013590509250925092565b600080600060608486031215613e9f57600080fd5b8335613eaa81613b4a565b92506020840135613eba81613b4a565b929592945050506040919091013590565b600080600080600060a08688031215613ee357600080fd5b85359450613ef360208701613b83565b93506040860135613f0381613b4a565b9250613f1160608701613b83565b91506080860135613f2181613b4a565b809150509295509295909350565b60008060408385031215613f4257600080fd5b50508035926020909101359150565b634e487b7160e01b600052602160045260246000fd5b6020810160038310613f8957634e487b7160e01b600052602160045260246000fd5b91905290565b60008060008060808587031215613fa557600080fd5b8435613fb081613b4a565b93506020850135613fc081613b4a565b92506040850135613fd081613b4a565b91506060850135613fe081613b4a565b939692955090935050565b60008060408385031215613ffe57600080fd5b613e0783613b83565b60006020828403121561401957600080fd5b8135613b7c81613ddb565b634e487b7160e01b600052601160045260246000fd5b8181038181111561136a5761136a614024565b8082018082111561136a5761136a614024565b6020808252601b908201527a115e1958dd5d1bdc881c185c985b595d195c9cc81b9bdd081cd95d602a1b604082015260600190565b6020808252601f908201527f44657374696e6174696f6e20636861696e206e6f7420737570706f7274656400604082015260600190565b600181811c908216806140e057607f821691505b60208210810361410057634e487b7160e01b600052602260045260246000fd5b50919050565b60008154614113816140cc565b808552602060018381168015614130576001811461414a57614178565b60ff1985168884015283151560051b880183019550614178565b866000528260002060005b858110156141705781548a8201860152908301908401614155565b890184019650505b505050505092915050565b600060018060a01b03808716835261ffff8616602084015260c06040840152600060c084015260e06060840152845460e0840152806001860154166101008401525060806101208301526141de610160830160028601614106565b82810360df19016101408401526141f88160038701614106565b91505061421f60808301845461ffff8116825260101c6001600160a01b0316602090910152565b95945050505050565b60006020828403121561423a57600080fd5b5051919050565b60208082526022908201527f4665652063616e6e6f7420657863656564203130302520283130303030206270604082015261732960f01b606082015260800190565b60208082526038908201527f5265616c207369676e65642071756f74652066726f6d20576f726d686f6c6520604082015277115e1958dd5d1bdc88105412481a5cc81c995c5d5a5c995960421b606082015260800190565b601f821115611b3c57600081815260208120601f850160051c810160208610156143025750805b601f850160051c820191505b818110156116e85782815560010161430e565b81516001600160401b0381111561433a5761433a613bdd565b61434e8161434884546140cc565b846142db565b602080601f831160018114614383576000841561436b5750858301515b600019600386901b1c1916600185901b1785556116e8565b600085815260208120601f198616915b828110156143b257888601518255948401946001909101908401614393565b50858210156143d05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b918252602082015260400190565b60208082526013908201527257726f6e67206465706f73697420737461746560681b604082015260600190565b80516001600160401b038116811461390f57600080fd5b63ffffffff811681146123cf57600080fd5b6000806000806080858703121561445a57600080fd5b6144638561441b565b93506144716020860161441b565b925061447f6040860161441b565b91506060850151613fe081614432565b808202811582820484141761136a5761136a614024565b80356001600160e01b03198116811461390f57600080fd5b6000608082360312156144d057600080fd5b6144d8613bf3565b6144e1836144a6565b815260208301356001600160401b03808211156144fd57600080fd5b61450936838701613c4b565b6020840152604085013591508082111561452257600080fd5b5061452f36828601613c4b565b604083015250614541606084016144a6565b606082015292915050565b80356001600160601b03198116811461390f57600080fd5b600060c0828403121561457657600080fd5b60405160c081016001600160401b038111828210171561459857614598613bdd565b60405282356145a681614432565b815260208301356001600160c01b0319811681146145c357600080fd5b60208201526145d46040840161454c565b60408201526145e56060840161454c565b60608201526145f6608084016144a6565b608082015260a083013561460981613b4a565b60a08201529392505050565b602080825260179082015276436861696e2049442063616e6e6f74206265207a65726f60481b604082015260600190565b6000806040838503121561465957600080fd5b82516001600160401b038082111561467057600080fd5b818501915085601f83011261468457600080fd5b815160208282111561469857614698613bdd565b8160051b92506146a9818401613c1b565b82815292840181019281810190898511156146c357600080fd5b948201945b848610156146e1578551825294820194908201906146c8565b97909101519698969750505050505050565b600060e0828403121561470557600080fd5b60405160e081016001600160401b038111828210171561472757614727613bdd565b604052825161473581613b4a565b81526147436020840161441b565b6020820152604083015161475681614432565b6040820152606083015161476981613b4a565b606082015261477a6080840161441b565b608082015260a083015161478d81614432565b60a082015260c0928301519281019290925250919050565b600080604083850312156147b857600080fd5b6147c18361441b565b9150613dd26020840161441b565b6000826147ec57634e487b7160e01b600052601260045260246000fd5b500490565b60005b8381101561480c5781810151838201526020016147f4565b50506000910152565b6000815180845261482d8160208601602086016147f1565b601f01601f19169290920160200192915050565b600061010080835263ffffffff60e01b8087511682850152602087015191506080610120850152614876610180850183614815565b9150604087015160ff19858403016101408601526148948382614815565b6060988901518316610160870152875163ffffffff166020808801919091528801516001600160c01b0319166040808801919091528801516001600160601b0319908116878b01529888015190981660808087019190915287015190911660a080860191909152909501516001600160a01b031660c0840152505060e001525090565b6001600160a01b03929092168252602082015260400190565b60006020828403121561494257600080fd5b8151613b7c81613b4a565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160401b038281168282160390808211156149b8576149b8614024565b5092915050565b6000602082840312156149d157600080fd5b8151613b7c81614432565b600061012060018060a01b03808b16845289602085015261ffff891660408501528760608501528660808501528160a085015260008285015261014091508160c085015285518285015280602087015116610160850152505060408401516080610180840152614a506101c0840182614815565b9050606085015161013f19848303016101a0850152614a6f8282614815565b855161ffff1660e086015260208601516001600160a01b03166101008601529250613377915050565b600060208284031215614aaa57600080fd5b613b7c8261441b565b600063ffffffff60e01b80871683528551614ad5816004860160208a016147f1565b855190840190614aec816004840160208a016147f1565b919094169301600481019390935250506008019392505050565b600060208284031215614b1857600080fd5b8151613b7c81613ddb565b60008251614b358184602087016147f1565b9190910192915050565b602081526000613b7c602083018461481556fea26469706673582212209bb3f1e263887ed14a61ff0308acc6cd93043872cca99ed5853436bb04310cf564736f6c63430008110033";
1415
+ var isSuperArgs = function (xs) { return xs.length > 1; };
1416
+ var L1BTCDepositorNttWithExecutor__factory = /** @class */ (function (_super) {
1417
+ __extends(L1BTCDepositorNttWithExecutor__factory, _super);
1418
+ function L1BTCDepositorNttWithExecutor__factory() {
1419
+ var args = [];
1420
+ for (var _i = 0; _i < arguments.length; _i++) {
1421
+ args[_i] = arguments[_i];
1422
+ }
1423
+ var _this = this;
1424
+ if (isSuperArgs(args)) {
1425
+ _this = _super.apply(this, __spreadArray([], __read(args), false)) || this;
1426
+ }
1427
+ else {
1428
+ _this = _super.call(this, _abi, _bytecode, args[0]) || this;
1429
+ }
1430
+ return _this;
1431
+ }
1432
+ L1BTCDepositorNttWithExecutor__factory.prototype.deploy = function (overrides) {
1433
+ return _super.prototype.deploy.call(this, overrides || {});
1434
+ };
1435
+ L1BTCDepositorNttWithExecutor__factory.prototype.getDeployTransaction = function (overrides) {
1436
+ return _super.prototype.getDeployTransaction.call(this, overrides || {});
1437
+ };
1438
+ L1BTCDepositorNttWithExecutor__factory.prototype.attach = function (address) {
1439
+ return _super.prototype.attach.call(this, address);
1440
+ };
1441
+ L1BTCDepositorNttWithExecutor__factory.prototype.connect = function (signer) {
1442
+ return _super.prototype.connect.call(this, signer);
1443
+ };
1444
+ L1BTCDepositorNttWithExecutor__factory.createInterface = function () {
1445
+ return new ethers_1.utils.Interface(_abi);
1446
+ };
1447
+ L1BTCDepositorNttWithExecutor__factory.connect = function (address, signerOrProvider) {
1448
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
1449
+ };
1450
+ L1BTCDepositorNttWithExecutor__factory.bytecode = _bytecode;
1451
+ L1BTCDepositorNttWithExecutor__factory.abi = _abi;
1452
+ return L1BTCDepositorNttWithExecutor__factory;
1453
+ }(ethers_1.ContractFactory));
1454
+ exports.L1BTCDepositorNttWithExecutor__factory = L1BTCDepositorNttWithExecutor__factory;