@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
@@ -709,9 +709,9 @@
709
709
  "evm": {
710
710
  "bytecode": {
711
711
  "functionDebugData": {
712
- "@_41479": {
712
+ "@_41538": {
713
713
  "entryPoint": null,
714
- "id": 41479,
714
+ "id": 41538,
715
715
  "parameterSlots": 0,
716
716
  "returnSlots": 0
717
717
  },
@@ -1094,21 +1094,21 @@
1094
1094
  },
1095
1095
  "deployedBytecode": {
1096
1096
  "functionDebugData": {
1097
- "@SATOSHI_MULTIPLIER_42942": {
1097
+ "@SATOSHI_MULTIPLIER_43001": {
1098
1098
  "entryPoint": null,
1099
- "id": 42942,
1099
+ "id": 43001,
1100
1100
  "parameterSlots": 0,
1101
1101
  "returnSlots": 0
1102
1102
  },
1103
- "@__AbstractBTCDepositor_initialize_43018": {
1103
+ "@__AbstractBTCDepositor_initialize_43077": {
1104
1104
  "entryPoint": 6627,
1105
- "id": 43018,
1105
+ "id": 43077,
1106
1106
  "parameterSlots": 2,
1107
1107
  "returnSlots": 0
1108
1108
  },
1109
- "@__AbstractL1BTCDepositor_initialize_40324": {
1109
+ "@__AbstractL1BTCDepositor_initialize_40409": {
1110
1110
  "entryPoint": 4233,
1111
- "id": 40324,
1111
+ "id": 40409,
1112
1112
  "parameterSlots": 2,
1113
1113
  "returnSlots": 0
1114
1114
  },
@@ -1124,21 +1124,21 @@
1124
1124
  "parameterSlots": 0,
1125
1125
  "returnSlots": 0
1126
1126
  },
1127
- "@_calculateBitcoinTxHash_43247": {
1127
+ "@_calculateBitcoinTxHash_43306": {
1128
1128
  "entryPoint": 7821,
1129
- "id": 43247,
1129
+ "id": 43306,
1130
1130
  "parameterSlots": 1,
1131
1131
  "returnSlots": 1
1132
1132
  },
1133
- "@_calculateDepositKey_43223": {
1133
+ "@_calculateDepositKey_43282": {
1134
1134
  "entryPoint": 7885,
1135
- "id": 43223,
1135
+ "id": 43282,
1136
1136
  "parameterSlots": 2,
1137
1137
  "returnSlots": 1
1138
1138
  },
1139
- "@_calculateTbtcAmount_43201": {
1139
+ "@_calculateTbtcAmount_43260": {
1140
1140
  "entryPoint": 7109,
1141
- "id": 43201,
1141
+ "id": 43260,
1142
1142
  "parameterSlots": 2,
1143
1143
  "returnSlots": 1
1144
1144
  },
@@ -1154,15 +1154,15 @@
1154
1154
  "parameterSlots": 0,
1155
1155
  "returnSlots": 0
1156
1156
  },
1157
- "@_finalizeDeposit_43145": {
1157
+ "@_finalizeDeposit_43204": {
1158
1158
  "entryPoint": 4514,
1159
- "id": 43145,
1159
+ "id": 43204,
1160
1160
  "parameterSlots": 1,
1161
1161
  "returnSlots": 3
1162
1162
  },
1163
- "@_initializeDeposit_43074": {
1163
+ "@_initializeDeposit_43133": {
1164
1164
  "entryPoint": 6145,
1165
- "id": 43074,
1165
+ "id": 43133,
1166
1166
  "parameterSlots": 3,
1167
1167
  "returnSlots": 2
1168
1168
  },
@@ -1172,9 +1172,9 @@
1172
1172
  "parameterSlots": 0,
1173
1173
  "returnSlots": 1
1174
1174
  },
1175
- "@_refundToGasSpent_40695": {
1175
+ "@_refundToGasSpent_40780": {
1176
1176
  "entryPoint": 5716,
1177
- "id": 40695,
1177
+ "id": 40780,
1178
1178
  "parameterSlots": 1,
1179
1179
  "returnSlots": 1
1180
1180
  },
@@ -1190,45 +1190,45 @@
1190
1190
  "parameterSlots": 1,
1191
1191
  "returnSlots": 0
1192
1192
  },
1193
- "@_transferTbtc_41642": {
1193
+ "@_transferTbtc_41701": {
1194
1194
  "entryPoint": 5077,
1195
- "id": 41642,
1195
+ "id": 41701,
1196
1196
  "parameterSlots": 2,
1197
1197
  "returnSlots": 0
1198
1198
  },
1199
- "@bridge_42946": {
1199
+ "@bridge_43005": {
1200
1200
  "entryPoint": null,
1201
- "id": 42946,
1201
+ "id": 43005,
1202
1202
  "parameterSlots": 0,
1203
1203
  "returnSlots": 0
1204
1204
  },
1205
- "@deposits_40213": {
1205
+ "@deposits_40298": {
1206
1206
  "entryPoint": null,
1207
- "id": 40213,
1207
+ "id": 40298,
1208
1208
  "parameterSlots": 0,
1209
1209
  "returnSlots": 0
1210
1210
  },
1211
- "@destinationChainId_41463": {
1211
+ "@destinationChainId_41522": {
1212
1212
  "entryPoint": null,
1213
- "id": 41463,
1213
+ "id": 41522,
1214
1214
  "parameterSlots": 0,
1215
1215
  "returnSlots": 0
1216
1216
  },
1217
- "@destinationChainWormholeGateway_41460": {
1217
+ "@destinationChainWormholeGateway_41519": {
1218
1218
  "entryPoint": null,
1219
- "id": 41460,
1219
+ "id": 41519,
1220
1220
  "parameterSlots": 0,
1221
1221
  "returnSlots": 0
1222
1222
  },
1223
- "@finalizeDepositGasOffset_40229": {
1223
+ "@finalizeDepositGasOffset_40314": {
1224
1224
  "entryPoint": null,
1225
- "id": 40229,
1225
+ "id": 40314,
1226
1226
  "parameterSlots": 0,
1227
1227
  "returnSlots": 0
1228
1228
  },
1229
- "@finalizeDeposit_40638": {
1229
+ "@finalizeDeposit_40723": {
1230
1230
  "entryPoint": 2256,
1231
- "id": 40638,
1231
+ "id": 40723,
1232
1232
  "parameterSlots": 1,
1233
1233
  "returnSlots": 0
1234
1234
  },
@@ -1244,9 +1244,9 @@
1244
1244
  "parameterSlots": 3,
1245
1245
  "returnSlots": 1
1246
1246
  },
1247
- "@gasReimbursements_40223": {
1247
+ "@gasReimbursements_40308": {
1248
1248
  "entryPoint": null,
1249
- "id": 40223,
1249
+ "id": 40308,
1250
1250
  "parameterSlots": 0,
1251
1251
  "returnSlots": 0
1252
1252
  },
@@ -1256,21 +1256,21 @@
1256
1256
  "parameterSlots": 1,
1257
1257
  "returnSlots": 1
1258
1258
  },
1259
- "@initializeDepositGasOffset_40226": {
1259
+ "@initializeDepositGasOffset_40311": {
1260
1260
  "entryPoint": null,
1261
- "id": 40226,
1261
+ "id": 40311,
1262
1262
  "parameterSlots": 0,
1263
1263
  "returnSlots": 0
1264
1264
  },
1265
- "@initializeDeposit_40496": {
1265
+ "@initializeDeposit_40581": {
1266
1266
  "entryPoint": 3242,
1267
- "id": 40496,
1267
+ "id": 40581,
1268
1268
  "parameterSlots": 3,
1269
1269
  "returnSlots": 0
1270
1270
  },
1271
- "@initialize_41555": {
1271
+ "@initialize_41614": {
1272
1272
  "entryPoint": 1514,
1273
- "id": 41555,
1273
+ "id": 41614,
1274
1274
  "parameterSlots": 6,
1275
1275
  "returnSlots": 0
1276
1276
  },
@@ -1280,9 +1280,9 @@
1280
1280
  "parameterSlots": 1,
1281
1281
  "returnSlots": 1
1282
1282
  },
1283
- "@normalize_42916": {
1283
+ "@normalize_42975": {
1284
1284
  "entryPoint": 7498,
1285
- "id": 42916,
1285
+ "id": 42975,
1286
1286
  "parameterSlots": 1,
1287
1287
  "returnSlots": 1
1288
1288
  },
@@ -1292,21 +1292,21 @@
1292
1292
  "parameterSlots": 0,
1293
1293
  "returnSlots": 1
1294
1294
  },
1295
- "@quoteFinalizeDeposit_41568": {
1295
+ "@quoteFinalizeDeposit_41627": {
1296
1296
  "entryPoint": 1388,
1297
- "id": 41568,
1297
+ "id": 41627,
1298
1298
  "parameterSlots": 0,
1299
1299
  "returnSlots": 1
1300
1300
  },
1301
- "@reimburseTxMaxFee_40237": {
1301
+ "@reimburseTxMaxFee_40322": {
1302
1302
  "entryPoint": null,
1303
- "id": 40237,
1303
+ "id": 40322,
1304
1304
  "parameterSlots": 0,
1305
1305
  "returnSlots": 0
1306
1306
  },
1307
- "@reimbursementAuthorizations_40234": {
1307
+ "@reimbursementAuthorizations_40319": {
1308
1308
  "entryPoint": null,
1309
- "id": 40234,
1309
+ "id": 40319,
1310
1310
  "parameterSlots": 0,
1311
1311
  "returnSlots": 0
1312
1312
  },
@@ -1328,21 +1328,21 @@
1328
1328
  "parameterSlots": 3,
1329
1329
  "returnSlots": 0
1330
1330
  },
1331
- "@setReimburseTxMaxFee_40387": {
1331
+ "@setReimburseTxMaxFee_40472": {
1332
1332
  "entryPoint": 4154,
1333
- "id": 40387,
1333
+ "id": 40472,
1334
1334
  "parameterSlots": 1,
1335
1335
  "returnSlots": 0
1336
1336
  },
1337
- "@tbtcToken_40217": {
1337
+ "@tbtcToken_40302": {
1338
1338
  "entryPoint": null,
1339
- "id": 40217,
1339
+ "id": 40302,
1340
1340
  "parameterSlots": 0,
1341
1341
  "returnSlots": 0
1342
1342
  },
1343
- "@tbtcVault_42950": {
1343
+ "@tbtcVault_43009": {
1344
1344
  "entryPoint": null,
1345
- "id": 42950,
1345
+ "id": 43009,
1346
1346
  "parameterSlots": 0,
1347
1347
  "returnSlots": 0
1348
1348
  },
@@ -1352,15 +1352,15 @@
1352
1352
  "parameterSlots": 1,
1353
1353
  "returnSlots": 0
1354
1354
  },
1355
- "@updateGasOffsetParameters_40348": {
1355
+ "@updateGasOffsetParameters_40433": {
1356
1356
  "entryPoint": 3931,
1357
- "id": 40348,
1357
+ "id": 40433,
1358
1358
  "parameterSlots": 2,
1359
1359
  "returnSlots": 0
1360
1360
  },
1361
- "@updateReimbursementAuthorization_40370": {
1361
+ "@updateReimbursementAuthorization_40455": {
1362
1362
  "entryPoint": 3122,
1363
- "id": 40370,
1363
+ "id": 40455,
1364
1364
  "parameterSlots": 2,
1365
1365
  "returnSlots": 0
1366
1366
  },
@@ -1376,15 +1376,15 @@
1376
1376
  "parameterSlots": 4,
1377
1377
  "returnSlots": 1
1378
1378
  },
1379
- "@wormholeTokenBridge_41457": {
1379
+ "@wormholeTokenBridge_41516": {
1380
1380
  "entryPoint": null,
1381
- "id": 41457,
1381
+ "id": 41516,
1382
1382
  "parameterSlots": 0,
1383
1383
  "returnSlots": 0
1384
1384
  },
1385
- "@wormhole_41453": {
1385
+ "@wormhole_41512": {
1386
1386
  "entryPoint": null,
1387
- "id": 41453,
1387
+ "id": 41512,
1388
1388
  "parameterSlots": 0,
1389
1389
  "returnSlots": 0
1390
1390
  },
@@ -1448,19 +1448,19 @@
1448
1448
  "parameterSlots": 2,
1449
1449
  "returnSlots": 1
1450
1450
  },
1451
- "abi_decode_tuple_t_struct$_BitcoinTxInfo_$43277_calldata_ptrt_struct$_DepositRevealInfo_$43290_calldata_ptrt_bytes32": {
1451
+ "abi_decode_tuple_t_struct$_BitcoinTxInfo_$43336_calldata_ptrt_struct$_DepositRevealInfo_$43349_calldata_ptrt_bytes32": {
1452
1452
  "entryPoint": 8936,
1453
1453
  "id": null,
1454
1454
  "parameterSlots": 2,
1455
1455
  "returnSlots": 3
1456
1456
  },
1457
- "abi_decode_tuple_t_struct$_DepositRequest_$43305_memory_ptr_fromMemory": {
1457
+ "abi_decode_tuple_t_struct$_DepositRequest_$43364_memory_ptr_fromMemory": {
1458
1458
  "entryPoint": 10022,
1459
1459
  "id": null,
1460
1460
  "parameterSlots": 2,
1461
1461
  "returnSlots": 1
1462
1462
  },
1463
- "abi_decode_tuple_t_struct$_DepositRevealInfo_$43290_memory_ptr": {
1463
+ "abi_decode_tuple_t_struct$_DepositRevealInfo_$43349_memory_ptr": {
1464
1464
  "entryPoint": 9791,
1465
1465
  "id": null,
1466
1466
  "parameterSlots": 2,
@@ -1586,7 +1586,7 @@
1586
1586
  "parameterSlots": 2,
1587
1587
  "returnSlots": 1
1588
1588
  },
1589
- "abi_encode_tuple_t_contract$_IBridge_$43341__to_t_address__fromStack_reversed": {
1589
+ "abi_encode_tuple_t_contract$_IBridge_$43400__to_t_address__fromStack_reversed": {
1590
1590
  "entryPoint": null,
1591
1591
  "id": null,
1592
1592
  "parameterSlots": 2,
@@ -1598,19 +1598,19 @@
1598
1598
  "parameterSlots": 2,
1599
1599
  "returnSlots": 1
1600
1600
  },
1601
- "abi_encode_tuple_t_contract$_ITBTCVault_$43367__to_t_address__fromStack_reversed": {
1601
+ "abi_encode_tuple_t_contract$_ITBTCVault_$43426__to_t_address__fromStack_reversed": {
1602
1602
  "entryPoint": null,
1603
1603
  "id": null,
1604
1604
  "parameterSlots": 2,
1605
1605
  "returnSlots": 1
1606
1606
  },
1607
- "abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42852__to_t_address__fromStack_reversed": {
1607
+ "abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42911__to_t_address__fromStack_reversed": {
1608
1608
  "entryPoint": null,
1609
1609
  "id": null,
1610
1610
  "parameterSlots": 2,
1611
1611
  "returnSlots": 1
1612
1612
  },
1613
- "abi_encode_tuple_t_contract$_IWormhole_$42727__to_t_address__fromStack_reversed": {
1613
+ "abi_encode_tuple_t_contract$_IWormhole_$42786__to_t_address__fromStack_reversed": {
1614
1614
  "entryPoint": null,
1615
1615
  "id": null,
1616
1616
  "parameterSlots": 2,
@@ -1622,7 +1622,7 @@
1622
1622
  "parameterSlots": 2,
1623
1623
  "returnSlots": 1
1624
1624
  },
1625
- "abi_encode_tuple_t_enum$_DepositState_$40200__to_t_uint8__fromStack_reversed": {
1625
+ "abi_encode_tuple_t_enum$_DepositState_$40285__to_t_uint8__fromStack_reversed": {
1626
1626
  "entryPoint": 9097,
1627
1627
  "id": null,
1628
1628
  "parameterSlots": 2,
@@ -1766,7 +1766,7 @@
1766
1766
  "parameterSlots": 1,
1767
1767
  "returnSlots": 1
1768
1768
  },
1769
- "abi_encode_tuple_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__fromStack_reversed": {
1769
+ "abi_encode_tuple_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__fromStack_reversed": {
1770
1770
  "entryPoint": 10473,
1771
1771
  "id": null,
1772
1772
  "parameterSlots": 4,
@@ -1838,7 +1838,7 @@
1838
1838
  "parameterSlots": 2,
1839
1839
  "returnSlots": 1
1840
1840
  },
1841
- "convert_t_struct$_BitcoinTxInfo_$43277_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43277_memory_ptr": {
1841
+ "convert_t_struct$_BitcoinTxInfo_$43336_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43336_memory_ptr": {
1842
1842
  "entryPoint": 9594,
1843
1843
  "id": null,
1844
1844
  "parameterSlots": 1,
@@ -1982,7 +1982,7 @@
1982
1982
  }
1983
1983
  ]
1984
1984
  },
1985
- "name": "abi_encode_tuple_t_contract$_ITBTCVault_$43367__to_t_address__fromStack_reversed",
1985
+ "name": "abi_encode_tuple_t_contract$_ITBTCVault_$43426__to_t_address__fromStack_reversed",
1986
1986
  "nodeType": "YulFunctionDefinition",
1987
1987
  "parameters": [
1988
1988
  {
@@ -4238,7 +4238,7 @@
4238
4238
  }
4239
4239
  ]
4240
4240
  },
4241
- "name": "abi_decode_tuple_t_struct$_BitcoinTxInfo_$43277_calldata_ptrt_struct$_DepositRevealInfo_$43290_calldata_ptrt_bytes32",
4241
+ "name": "abi_decode_tuple_t_struct$_BitcoinTxInfo_$43336_calldata_ptrt_struct$_DepositRevealInfo_$43349_calldata_ptrt_bytes32",
4242
4242
  "nodeType": "YulFunctionDefinition",
4243
4243
  "parameters": [
4244
4244
  {
@@ -4712,7 +4712,7 @@
4712
4712
  }
4713
4713
  ]
4714
4714
  },
4715
- "name": "abi_encode_tuple_t_contract$_IWormhole_$42727__to_t_address__fromStack_reversed",
4715
+ "name": "abi_encode_tuple_t_contract$_IWormhole_$42786__to_t_address__fromStack_reversed",
4716
4716
  "nodeType": "YulFunctionDefinition",
4717
4717
  "parameters": [
4718
4718
  {
@@ -5332,7 +5332,7 @@
5332
5332
  }
5333
5333
  ]
5334
5334
  },
5335
- "name": "abi_encode_tuple_t_enum$_DepositState_$40200__to_t_uint8__fromStack_reversed",
5335
+ "name": "abi_encode_tuple_t_enum$_DepositState_$40285__to_t_uint8__fromStack_reversed",
5336
5336
  "nodeType": "YulFunctionDefinition",
5337
5337
  "parameters": [
5338
5338
  {
@@ -5772,7 +5772,7 @@
5772
5772
  }
5773
5773
  ]
5774
5774
  },
5775
- "name": "abi_encode_tuple_t_contract$_IBridge_$43341__to_t_address__fromStack_reversed",
5775
+ "name": "abi_encode_tuple_t_contract$_IBridge_$43400__to_t_address__fromStack_reversed",
5776
5776
  "nodeType": "YulFunctionDefinition",
5777
5777
  "parameters": [
5778
5778
  {
@@ -5882,7 +5882,7 @@
5882
5882
  }
5883
5883
  ]
5884
5884
  },
5885
- "name": "abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42852__to_t_address__fromStack_reversed",
5885
+ "name": "abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42911__to_t_address__fromStack_reversed",
5886
5886
  "nodeType": "YulFunctionDefinition",
5887
5887
  "parameters": [
5888
5888
  {
@@ -10837,7 +10837,7 @@
10837
10837
  }
10838
10838
  ]
10839
10839
  },
10840
- "name": "convert_t_struct$_BitcoinTxInfo_$43277_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43277_memory_ptr",
10840
+ "name": "convert_t_struct$_BitcoinTxInfo_$43336_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43336_memory_ptr",
10841
10841
  "nodeType": "YulFunctionDefinition",
10842
10842
  "parameters": [
10843
10843
  {
@@ -11859,7 +11859,7 @@
11859
11859
  }
11860
11860
  ]
11861
11861
  },
11862
- "name": "abi_decode_tuple_t_struct$_DepositRevealInfo_$43290_memory_ptr",
11862
+ "name": "abi_decode_tuple_t_struct$_DepositRevealInfo_$43349_memory_ptr",
11863
11863
  "nodeType": "YulFunctionDefinition",
11864
11864
  "parameters": [
11865
11865
  {
@@ -13577,7 +13577,7 @@
13577
13577
  }
13578
13578
  ]
13579
13579
  },
13580
- "name": "abi_decode_tuple_t_struct$_DepositRequest_$43305_memory_ptr_fromMemory",
13580
+ "name": "abi_decode_tuple_t_struct$_DepositRequest_$43364_memory_ptr_fromMemory",
13581
13581
  "nodeType": "YulFunctionDefinition",
13582
13582
  "parameters": [
13583
13583
  {
@@ -17626,7 +17626,7 @@
17626
17626
  }
17627
17627
  ]
17628
17628
  },
17629
- "name": "abi_encode_tuple_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__fromStack_reversed",
17629
+ "name": "abi_encode_tuple_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__fromStack_reversed",
17630
17630
  "nodeType": "YulFunctionDefinition",
17631
17631
  "parameters": [
17632
17632
  {
@@ -20626,7 +20626,7 @@
20626
20626
  }
20627
20627
  ]
20628
20628
  },
20629
- "contents": "{\n { }\n function abi_encode_tuple_t_contract$_ITBTCVault_$43367__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_addresst_addresst_addresst_bytes32t_uint16(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_address(value_1)\n value1 := value_1\n let value_2 := calldataload(add(headStart, 64))\n validator_revert_address(value_2)\n value2 := value_2\n let value_3 := calldataload(add(headStart, 96))\n validator_revert_address(value_3)\n value3 := value_3\n value4 := calldataload(add(headStart, 128))\n let value_4 := calldataload(add(headStart, 160))\n if iszero(eq(value_4, and(value_4, 0xffff))) { revert(0, 0) }\n value5 := value_4\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_bool(value_1)\n value1 := value_1\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_struct$_BitcoinTxInfo_$43277_calldata_ptrt_struct$_DepositRevealInfo_$43290_calldata_ptrt_bytes32(headStart, dataEnd) -> value0, value1, value2\n {\n let _1 := sub(dataEnd, headStart)\n if slt(_1, 256) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 128) { revert(0, 0) }\n value0 := _2\n if slt(add(_1, not(31)), 192) { revert(0, 0) }\n value1 := add(headStart, 32)\n value2 := calldataload(add(headStart, 224))\n }\n function abi_decode_tuple_t_contract$_ReimbursementPool_$8814(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_uint96__to_t_address_t_uint96__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IWormhole_$42727__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function panic_error_0x21()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_enum$_DepositState_$40200__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n if iszero(lt(value0, 3))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_encode_tuple_t_contract$_ReimbursementPool_$8814__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IERC20Upgradeable_$13046__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IBridge_$43341__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42852__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bool(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Initializable: contract is alrea\")\n mstore(add(headStart, 96), \"dy initialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_c52127d694d30759dc116d5f1b5ff47bbd84c39311e193f9acd2b89db09f69f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"Wormhole address cannot be zero\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a8d124bd1facf1a24afa096295757a1bcf758fda3636b2163501c2a4daa9ef9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 42)\n mstore(add(headStart, 64), \"WormholeTokenBridge address cann\")\n mstore(add(headStart, 96), \"ot be zero\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_6466f6535001c39dd98819681447ece42b8d0d64f772ce836c6810e1abab4c8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"WormholeGateway address cannot b\")\n mstore(add(headStart, 96), \"e zero\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_stringliteral_4c64d718b6c6d1c3b24ccbce0486c47bbc06ecd56febcbf3db5ee41b7c9f7f3b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 19)\n mstore(add(headStart, 64), \"Wrong deposit state\")\n tail := add(headStart, 96)\n }\n function abi_decode_uint64_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n }\n function validator_revert_uint32(value)\n {\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_uint64t_uint64t_uint64t_uint32_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n value1 := abi_decode_uint64_fromMemory(add(headStart, 32))\n value2 := abi_decode_uint64_fromMemory(add(headStart, 64))\n let value := mload(add(headStart, 96))\n validator_revert_uint32(value)\n value3 := value\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_uint96_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffff))\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_stringliteral_227314aaa9e3e6974bb006fef6ac0dd3763633c2d357422e750027a345aec542__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"L2 deposit owner must not be 0x0\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_bytes4(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function convert_t_struct$_BitcoinTxInfo_$43277_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43277_memory_ptr(value) -> converted\n {\n if slt(sub(calldatasize(), value), 0x80) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n let _1 := 0xffffffffffffffff\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, abi_decode_bytes4(value))\n let offset := calldataload(add(value, 32))\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(memPtr, 32), abi_decode_bytes(add(value, offset), calldatasize()))\n let offset_1 := calldataload(add(value, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(memPtr, 64), abi_decode_bytes(add(value, offset_1), calldatasize()))\n mstore(add(memPtr, 96), abi_decode_bytes4(add(value, 96)))\n converted := memPtr\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(0xffffffffffffffffffffffff)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_struct$_DepositRevealInfo_$43290_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 192)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n let value := calldataload(headStart)\n validator_revert_uint32(value)\n mstore(memPtr, value)\n let value_1 := calldataload(add(headStart, 32))\n if iszero(eq(value_1, and(value_1, 0xffffffffffffffff000000000000000000000000000000000000000000000000))) { revert(0, 0) }\n mstore(add(memPtr, 32), value_1)\n mstore(add(memPtr, 64), abi_decode_bytes20(add(headStart, 64)))\n mstore(add(memPtr, 96), abi_decode_bytes20(add(headStart, 96)))\n mstore(add(memPtr, 128), abi_decode_bytes4(add(headStart, 128)))\n let value_2 := calldataload(add(headStart, 160))\n validator_revert_address(value_2)\n mstore(add(memPtr, 160), value_2)\n value0 := memPtr\n }\n function abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"Initializable: contract is not i\")\n mstore(add(headStart, 96), \"nitializing\")\n tail := add(headStart, 128)\n }\n function abi_decode_tuple_t_struct$_DepositRequest_$43305_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 224) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 224)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n let value := mload(headStart)\n validator_revert_address(value)\n mstore(memPtr, value)\n mstore(add(memPtr, 32), abi_decode_uint64_fromMemory(add(headStart, 32)))\n let value_1 := mload(add(headStart, 64))\n validator_revert_uint32(value_1)\n mstore(add(memPtr, 64), value_1)\n let value_2 := mload(add(headStart, 96))\n validator_revert_address(value_2)\n mstore(add(memPtr, 96), value_2)\n mstore(add(memPtr, 128), abi_decode_uint64_fromMemory(add(headStart, 128)))\n let value_3 := mload(add(headStart, 160))\n validator_revert_uint32(value_3)\n mstore(add(memPtr, 160), value_3)\n mstore(add(memPtr, 192), mload(add(headStart, 192)))\n value0 := memPtr\n }\n function abi_encode_tuple_t_stringliteral_a22c5492e3bbf62628c3639d146ef6d29404a8ed681d7570aefcb4c9a127dc68__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Deposit not initialized\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_uint64t_uint64_fromMemory(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n value1 := abi_decode_uint64_fromMemory(add(headStart, 32))\n }\n function abi_encode_tuple_t_stringliteral_b141f897042002a7b18c2cb3ee0657fc4f93a1f92d795d1d0e33417fc6d4ecac__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 35)\n mstore(add(headStart, 64), \"Deposit not finalized by the bri\")\n mstore(add(headStart, 96), \"dge\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_ba640e435c555a02532729119f63519f39ed6b1dbfc2465c9bdee1f365eecc45__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 24)\n mstore(add(headStart, 64), \"Amount too low to bridge\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f3764fd3684cbcf21e02de7bd25763e0e1490fe0d95f81c2696d95a9d89deefc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 39)\n mstore(add(headStart, 64), \"Payment for Wormhole Relayer is \")\n mstore(add(headStart, 96), \"too low\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, value0)\n end := add(pos, 32)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_address_t_uint256_t_uint16_t_bytes32_t_rational_0_by_1_t_bytes_memory_ptr__to_t_address_t_uint256_t_uint16_t_bytes32_t_uint32_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), and(value2, 0xffff))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, 0xffffffff))\n mstore(add(headStart, 160), 192)\n tail := abi_encode_bytes(value5, add(headStart, 192))\n }\n function abi_decode_tuple_t_uint64_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n }\n function abi_encode_tuple_t_uint256_t_bytes32_t_uint64__to_t_uint256_t_bytes32_t_uint64__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), and(value2, 0xffffffffffffffff))\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_155f2acb252e9cd4e5b6c8544663ca266aba5552dccb43cd5c1473dbc7793b45__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"Vault address mismatch\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43277_memory_ptr_t_struct$_DepositRevealInfo_$43290_memory_ptr_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let _2 := 0xffffffff00000000000000000000000000000000000000000000000000000000\n mstore(add(headStart, _1), and(mload(value0), _2))\n let memberValue0 := mload(add(value0, 0x20))\n mstore(add(headStart, 288), 0x80)\n let tail_1 := abi_encode_bytes(memberValue0, add(headStart, 384))\n let memberValue0_1 := mload(add(value0, 0x40))\n mstore(add(headStart, 320), add(sub(tail_1, headStart), not(255)))\n let tail_2 := abi_encode_bytes(memberValue0_1, tail_1)\n mstore(add(headStart, 352), and(mload(add(value0, 0x60)), _2))\n tail := tail_2\n mstore(add(headStart, 0x20), and(mload(value1), 0xffffffff))\n mstore(add(headStart, 0x40), and(mload(add(value1, 0x20)), 0xffffffffffffffff000000000000000000000000000000000000000000000000))\n let memberValue0_2 := mload(add(value1, 0x40))\n let _3 := not(0xffffffffffffffffffffffff)\n mstore(add(headStart, 0x60), and(memberValue0_2, _3))\n mstore(add(headStart, 0x80), and(mload(add(value1, 0x60)), _3))\n mstore(add(headStart, 160), and(mload(add(value1, 0x80)), _2))\n mstore(add(headStart, 192), and(mload(add(value1, 160)), 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 224), value2)\n }\n function abi_encode_tuple_t_stringliteral_c27d5f37513c387d1053c609b57d3b00bf86aa3a13d927606aed17922d871afc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 40)\n mstore(add(headStart, 64), \"AbstractBTCDepositor already ini\")\n mstore(add(headStart, 96), \"tialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_a5f2df3278bec3ff851d28fa758b66b508d6c4f2d86d45f7673a2e1832345ad4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Bridge address cannot be zero\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_eae8f1cb8e043fbf871567251d6d99f91d8da87f290d40b67fbb5d9db58dffc4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"TBTCVault address cannot be zero\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint64(x, y) -> diff\n {\n let _1 := 0xffffffffffffffff\n diff := sub(and(x, _1), and(y, _1))\n if gt(diff, _1) { panic_error_0x11() }\n }\n function abi_decode_tuple_t_uint32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_uint32(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes4__to_t_bytes4_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n let _1 := 0xffffffff00000000000000000000000000000000000000000000000000000000\n mstore(pos, and(value0, _1))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n let _2 := add(pos, length)\n let length_1 := mload(value2)\n copy_memory_to_memory_with_cleanup(add(value2, 0x20), add(_2, 4), length_1)\n let _3 := add(_2, length_1)\n mstore(add(_3, 4), and(value3, _1))\n end := add(_3, 8)\n }\n function abi_encode_tuple_packed_t_bytes32_t_uint32__to_t_bytes32_t_uint32__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, value0)\n mstore(add(pos, 32), and(shl(224, value1), 0xffffffff00000000000000000000000000000000000000000000000000000000))\n end := add(pos, 36)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 42)\n mstore(add(headStart, 64), \"SafeERC20: ERC20 operation did n\")\n mstore(add(headStart, 96), \"ot succeed\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Address: insufficient balance fo\")\n mstore(add(headStart, 96), \"r call\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n}",
20629
+ "contents": "{\n { }\n function abi_encode_tuple_t_contract$_ITBTCVault_$43426__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_addresst_addresst_addresst_bytes32t_uint16(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_address(value_1)\n value1 := value_1\n let value_2 := calldataload(add(headStart, 64))\n validator_revert_address(value_2)\n value2 := value_2\n let value_3 := calldataload(add(headStart, 96))\n validator_revert_address(value_3)\n value3 := value_3\n value4 := calldataload(add(headStart, 128))\n let value_4 := calldataload(add(headStart, 160))\n if iszero(eq(value_4, and(value_4, 0xffff))) { revert(0, 0) }\n value5 := value_4\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_bool(value_1)\n value1 := value_1\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_struct$_BitcoinTxInfo_$43336_calldata_ptrt_struct$_DepositRevealInfo_$43349_calldata_ptrt_bytes32(headStart, dataEnd) -> value0, value1, value2\n {\n let _1 := sub(dataEnd, headStart)\n if slt(_1, 256) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 128) { revert(0, 0) }\n value0 := _2\n if slt(add(_1, not(31)), 192) { revert(0, 0) }\n value1 := add(headStart, 32)\n value2 := calldataload(add(headStart, 224))\n }\n function abi_decode_tuple_t_contract$_ReimbursementPool_$8814(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_uint96__to_t_address_t_uint96__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IWormhole_$42786__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function panic_error_0x21()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_enum$_DepositState_$40285__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n if iszero(lt(value0, 3))\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_encode_tuple_t_contract$_ReimbursementPool_$8814__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IERC20Upgradeable_$13046__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IBridge_$43400__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_contract$_IWormholeTokenBridge_$42911__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_decode_tuple_t_bool(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Initializable: contract is alrea\")\n mstore(add(headStart, 96), \"dy initialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_c52127d694d30759dc116d5f1b5ff47bbd84c39311e193f9acd2b89db09f69f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"Wormhole address cannot be zero\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a8d124bd1facf1a24afa096295757a1bcf758fda3636b2163501c2a4daa9ef9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 42)\n mstore(add(headStart, 64), \"WormholeTokenBridge address cann\")\n mstore(add(headStart, 96), \"ot be zero\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_6466f6535001c39dd98819681447ece42b8d0d64f772ce836c6810e1abab4c8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"WormholeGateway address cannot b\")\n mstore(add(headStart, 96), \"e zero\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function abi_encode_tuple_t_stringliteral_4c64d718b6c6d1c3b24ccbce0486c47bbc06ecd56febcbf3db5ee41b7c9f7f3b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 19)\n mstore(add(headStart, 64), \"Wrong deposit state\")\n tail := add(headStart, 96)\n }\n function abi_decode_uint64_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n }\n function validator_revert_uint32(value)\n {\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_uint64t_uint64t_uint64t_uint32_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n value1 := abi_decode_uint64_fromMemory(add(headStart, 32))\n value2 := abi_decode_uint64_fromMemory(add(headStart, 64))\n let value := mload(add(headStart, 96))\n validator_revert_uint32(value)\n value3 := value\n }\n function panic_error_0x11()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_uint96_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffff))\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function abi_encode_tuple_t_stringliteral_227314aaa9e3e6974bb006fef6ac0dd3763633c2d357422e750027a345aec542__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"L2 deposit owner must not be 0x0\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_bytes4(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function convert_t_struct$_BitcoinTxInfo_$43336_calldata_ptr_to_t_struct$_BitcoinTxInfo_$43336_memory_ptr(value) -> converted\n {\n if slt(sub(calldatasize(), value), 0x80) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n let _1 := 0xffffffffffffffff\n if or(gt(newFreePtr, _1), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, abi_decode_bytes4(value))\n let offset := calldataload(add(value, 32))\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(memPtr, 32), abi_decode_bytes(add(value, offset), calldatasize()))\n let offset_1 := calldataload(add(value, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(memPtr, 64), abi_decode_bytes(add(value, offset_1), calldatasize()))\n mstore(add(memPtr, 96), abi_decode_bytes4(add(value, 96)))\n converted := memPtr\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(0xffffffffffffffffffffffff)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_struct$_DepositRevealInfo_$43349_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 192)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n let value := calldataload(headStart)\n validator_revert_uint32(value)\n mstore(memPtr, value)\n let value_1 := calldataload(add(headStart, 32))\n if iszero(eq(value_1, and(value_1, 0xffffffffffffffff000000000000000000000000000000000000000000000000))) { revert(0, 0) }\n mstore(add(memPtr, 32), value_1)\n mstore(add(memPtr, 64), abi_decode_bytes20(add(headStart, 64)))\n mstore(add(memPtr, 96), abi_decode_bytes20(add(headStart, 96)))\n mstore(add(memPtr, 128), abi_decode_bytes4(add(headStart, 128)))\n let value_2 := calldataload(add(headStart, 160))\n validator_revert_address(value_2)\n mstore(add(memPtr, 160), value_2)\n value0 := memPtr\n }\n function abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"Initializable: contract is not i\")\n mstore(add(headStart, 96), \"nitializing\")\n tail := add(headStart, 128)\n }\n function abi_decode_tuple_t_struct$_DepositRequest_$43364_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 224) { revert(0, 0) }\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, 224)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n let value := mload(headStart)\n validator_revert_address(value)\n mstore(memPtr, value)\n mstore(add(memPtr, 32), abi_decode_uint64_fromMemory(add(headStart, 32)))\n let value_1 := mload(add(headStart, 64))\n validator_revert_uint32(value_1)\n mstore(add(memPtr, 64), value_1)\n let value_2 := mload(add(headStart, 96))\n validator_revert_address(value_2)\n mstore(add(memPtr, 96), value_2)\n mstore(add(memPtr, 128), abi_decode_uint64_fromMemory(add(headStart, 128)))\n let value_3 := mload(add(headStart, 160))\n validator_revert_uint32(value_3)\n mstore(add(memPtr, 160), value_3)\n mstore(add(memPtr, 192), mload(add(headStart, 192)))\n value0 := memPtr\n }\n function abi_encode_tuple_t_stringliteral_a22c5492e3bbf62628c3639d146ef6d29404a8ed681d7570aefcb4c9a127dc68__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Deposit not initialized\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_uint64t_uint64_fromMemory(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n value1 := abi_decode_uint64_fromMemory(add(headStart, 32))\n }\n function abi_encode_tuple_t_stringliteral_b141f897042002a7b18c2cb3ee0657fc4f93a1f92d795d1d0e33417fc6d4ecac__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 35)\n mstore(add(headStart, 64), \"Deposit not finalized by the bri\")\n mstore(add(headStart, 96), \"dge\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_ba640e435c555a02532729119f63519f39ed6b1dbfc2465c9bdee1f365eecc45__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 24)\n mstore(add(headStart, 64), \"Amount too low to bridge\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f3764fd3684cbcf21e02de7bd25763e0e1490fe0d95f81c2696d95a9d89deefc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 39)\n mstore(add(headStart, 64), \"Payment for Wormhole Relayer is \")\n mstore(add(headStart, 96), \"too low\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, value0)\n end := add(pos, 32)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n mstore(add(dst, length), 0)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_address_t_uint256_t_uint16_t_bytes32_t_rational_0_by_1_t_bytes_memory_ptr__to_t_address_t_uint256_t_uint16_t_bytes32_t_uint32_t_bytes_memory_ptr__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), and(value2, 0xffff))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, 0xffffffff))\n mstore(add(headStart, 160), 192)\n tail := abi_encode_bytes(value5, add(headStart, 192))\n }\n function abi_decode_tuple_t_uint64_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_uint64_fromMemory(headStart)\n }\n function abi_encode_tuple_t_uint256_t_bytes32_t_uint64__to_t_uint256_t_bytes32_t_uint64__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), and(value2, 0xffffffffffffffff))\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_155f2acb252e9cd4e5b6c8544663ca266aba5552dccb43cd5c1473dbc7793b45__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 22)\n mstore(add(headStart, 64), \"Vault address mismatch\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__to_t_struct$_BitcoinTxInfo_$43336_memory_ptr_t_struct$_DepositRevealInfo_$43349_memory_ptr_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let _2 := 0xffffffff00000000000000000000000000000000000000000000000000000000\n mstore(add(headStart, _1), and(mload(value0), _2))\n let memberValue0 := mload(add(value0, 0x20))\n mstore(add(headStart, 288), 0x80)\n let tail_1 := abi_encode_bytes(memberValue0, add(headStart, 384))\n let memberValue0_1 := mload(add(value0, 0x40))\n mstore(add(headStart, 320), add(sub(tail_1, headStart), not(255)))\n let tail_2 := abi_encode_bytes(memberValue0_1, tail_1)\n mstore(add(headStart, 352), and(mload(add(value0, 0x60)), _2))\n tail := tail_2\n mstore(add(headStart, 0x20), and(mload(value1), 0xffffffff))\n mstore(add(headStart, 0x40), and(mload(add(value1, 0x20)), 0xffffffffffffffff000000000000000000000000000000000000000000000000))\n let memberValue0_2 := mload(add(value1, 0x40))\n let _3 := not(0xffffffffffffffffffffffff)\n mstore(add(headStart, 0x60), and(memberValue0_2, _3))\n mstore(add(headStart, 0x80), and(mload(add(value1, 0x60)), _3))\n mstore(add(headStart, 160), and(mload(add(value1, 0x80)), _2))\n mstore(add(headStart, 192), and(mload(add(value1, 160)), 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 224), value2)\n }\n function abi_encode_tuple_t_stringliteral_c27d5f37513c387d1053c609b57d3b00bf86aa3a13d927606aed17922d871afc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 40)\n mstore(add(headStart, 64), \"AbstractBTCDepositor already ini\")\n mstore(add(headStart, 96), \"tialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_a5f2df3278bec3ff851d28fa758b66b508d6c4f2d86d45f7673a2e1832345ad4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Bridge address cannot be zero\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_eae8f1cb8e043fbf871567251d6d99f91d8da87f290d40b67fbb5d9db58dffc4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"TBTCVault address cannot be zero\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint64(x, y) -> diff\n {\n let _1 := 0xffffffffffffffff\n diff := sub(and(x, _1), and(y, _1))\n if gt(diff, _1) { panic_error_0x11() }\n }\n function abi_decode_tuple_t_uint32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_uint32(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_packed_t_bytes4_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes4__to_t_bytes4_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n let _1 := 0xffffffff00000000000000000000000000000000000000000000000000000000\n mstore(pos, and(value0, _1))\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 4), length)\n let _2 := add(pos, length)\n let length_1 := mload(value2)\n copy_memory_to_memory_with_cleanup(add(value2, 0x20), add(_2, 4), length_1)\n let _3 := add(_2, length_1)\n mstore(add(_3, 4), and(value3, _1))\n end := add(_3, 8)\n }\n function abi_encode_tuple_packed_t_bytes32_t_uint32__to_t_bytes32_t_uint32__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, value0)\n mstore(add(pos, 32), and(shl(224, value1), 0xffffffff00000000000000000000000000000000000000000000000000000000))\n end := add(pos, 36)\n }\n function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 42)\n mstore(add(headStart, 64), \"SafeERC20: ERC20 operation did n\")\n mstore(add(headStart, 96), \"ot succeed\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Address: insufficient balance fo\")\n mstore(add(headStart, 96), \"r call\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n function abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n}",
20630
20630
  "id": 152,
20631
20631
  "language": "Yul",
20632
20632
  "name": "#utility.yul"
@@ -20708,23 +20708,23 @@
20708
20708
  "storageLayout": {
20709
20709
  "storage": [
20710
20710
  {
20711
- "astId": 42946,
20711
+ "astId": 43005,
20712
20712
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20713
20713
  "label": "bridge",
20714
20714
  "offset": 0,
20715
20715
  "slot": "0",
20716
- "type": "t_contract(IBridge)43341"
20716
+ "type": "t_contract(IBridge)43400"
20717
20717
  },
20718
20718
  {
20719
- "astId": 42950,
20719
+ "astId": 43009,
20720
20720
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20721
20721
  "label": "tbtcVault",
20722
20722
  "offset": 0,
20723
20723
  "slot": "1",
20724
- "type": "t_contract(ITBTCVault)43367"
20724
+ "type": "t_contract(ITBTCVault)43426"
20725
20725
  },
20726
20726
  {
20727
- "astId": 42954,
20727
+ "astId": 43013,
20728
20728
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20729
20729
  "label": "__gap",
20730
20730
  "offset": 0,
@@ -20788,15 +20788,15 @@
20788
20788
  "type": "t_array(t_uint256)49_storage"
20789
20789
  },
20790
20790
  {
20791
- "astId": 40213,
20791
+ "astId": 40298,
20792
20792
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20793
20793
  "label": "deposits",
20794
20794
  "offset": 0,
20795
20795
  "slot": "200",
20796
- "type": "t_mapping(t_uint256,t_enum(DepositState)40200)"
20796
+ "type": "t_mapping(t_uint256,t_enum(DepositState)40285)"
20797
20797
  },
20798
20798
  {
20799
- "astId": 40217,
20799
+ "astId": 40302,
20800
20800
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20801
20801
  "label": "tbtcToken",
20802
20802
  "offset": 0,
@@ -20804,15 +20804,15 @@
20804
20804
  "type": "t_contract(IERC20Upgradeable)13046"
20805
20805
  },
20806
20806
  {
20807
- "astId": 40223,
20807
+ "astId": 40308,
20808
20808
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20809
20809
  "label": "gasReimbursements",
20810
20810
  "offset": 0,
20811
20811
  "slot": "202",
20812
- "type": "t_mapping(t_uint256,t_struct(GasReimbursement)40207_storage)"
20812
+ "type": "t_mapping(t_uint256,t_struct(GasReimbursement)40292_storage)"
20813
20813
  },
20814
20814
  {
20815
- "astId": 40226,
20815
+ "astId": 40311,
20816
20816
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20817
20817
  "label": "initializeDepositGasOffset",
20818
20818
  "offset": 0,
@@ -20820,7 +20820,7 @@
20820
20820
  "type": "t_uint256"
20821
20821
  },
20822
20822
  {
20823
- "astId": 40229,
20823
+ "astId": 40314,
20824
20824
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20825
20825
  "label": "finalizeDepositGasOffset",
20826
20826
  "offset": 0,
@@ -20828,7 +20828,7 @@
20828
20828
  "type": "t_uint256"
20829
20829
  },
20830
20830
  {
20831
- "astId": 40234,
20831
+ "astId": 40319,
20832
20832
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20833
20833
  "label": "reimbursementAuthorizations",
20834
20834
  "offset": 0,
@@ -20836,7 +20836,7 @@
20836
20836
  "type": "t_mapping(t_address,t_bool)"
20837
20837
  },
20838
20838
  {
20839
- "astId": 40237,
20839
+ "astId": 40322,
20840
20840
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20841
20841
  "label": "reimburseTxMaxFee",
20842
20842
  "offset": 0,
@@ -20844,23 +20844,23 @@
20844
20844
  "type": "t_bool"
20845
20845
  },
20846
20846
  {
20847
- "astId": 41453,
20847
+ "astId": 41512,
20848
20848
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20849
20849
  "label": "wormhole",
20850
20850
  "offset": 1,
20851
20851
  "slot": "206",
20852
- "type": "t_contract(IWormhole)42727"
20852
+ "type": "t_contract(IWormhole)42786"
20853
20853
  },
20854
20854
  {
20855
- "astId": 41457,
20855
+ "astId": 41516,
20856
20856
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20857
20857
  "label": "wormholeTokenBridge",
20858
20858
  "offset": 0,
20859
20859
  "slot": "207",
20860
- "type": "t_contract(IWormholeTokenBridge)42852"
20860
+ "type": "t_contract(IWormholeTokenBridge)42911"
20861
20861
  },
20862
20862
  {
20863
- "astId": 41460,
20863
+ "astId": 41519,
20864
20864
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20865
20865
  "label": "destinationChainWormholeGateway",
20866
20866
  "offset": 0,
@@ -20868,7 +20868,7 @@
20868
20868
  "type": "t_bytes32"
20869
20869
  },
20870
20870
  {
20871
- "astId": 41463,
20871
+ "astId": 41522,
20872
20872
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20873
20873
  "label": "destinationChainId",
20874
20874
  "offset": 0,
@@ -20910,7 +20910,7 @@
20910
20910
  "label": "bytes32",
20911
20911
  "numberOfBytes": "32"
20912
20912
  },
20913
- "t_contract(IBridge)43341": {
20913
+ "t_contract(IBridge)43400": {
20914
20914
  "encoding": "inplace",
20915
20915
  "label": "contract IBridge",
20916
20916
  "numberOfBytes": "20"
@@ -20920,17 +20920,17 @@
20920
20920
  "label": "contract IERC20Upgradeable",
20921
20921
  "numberOfBytes": "20"
20922
20922
  },
20923
- "t_contract(ITBTCVault)43367": {
20923
+ "t_contract(ITBTCVault)43426": {
20924
20924
  "encoding": "inplace",
20925
20925
  "label": "contract ITBTCVault",
20926
20926
  "numberOfBytes": "20"
20927
20927
  },
20928
- "t_contract(IWormhole)42727": {
20928
+ "t_contract(IWormhole)42786": {
20929
20929
  "encoding": "inplace",
20930
20930
  "label": "contract IWormhole",
20931
20931
  "numberOfBytes": "20"
20932
20932
  },
20933
- "t_contract(IWormholeTokenBridge)42852": {
20933
+ "t_contract(IWormholeTokenBridge)42911": {
20934
20934
  "encoding": "inplace",
20935
20935
  "label": "contract IWormholeTokenBridge",
20936
20936
  "numberOfBytes": "20"
@@ -20940,7 +20940,7 @@
20940
20940
  "label": "contract ReimbursementPool",
20941
20941
  "numberOfBytes": "20"
20942
20942
  },
20943
- "t_enum(DepositState)40200": {
20943
+ "t_enum(DepositState)40285": {
20944
20944
  "encoding": "inplace",
20945
20945
  "label": "enum AbstractL1BTCDepositor.DepositState",
20946
20946
  "numberOfBytes": "1"
@@ -20952,26 +20952,26 @@
20952
20952
  "numberOfBytes": "32",
20953
20953
  "value": "t_bool"
20954
20954
  },
20955
- "t_mapping(t_uint256,t_enum(DepositState)40200)": {
20955
+ "t_mapping(t_uint256,t_enum(DepositState)40285)": {
20956
20956
  "encoding": "mapping",
20957
20957
  "key": "t_uint256",
20958
20958
  "label": "mapping(uint256 => enum AbstractL1BTCDepositor.DepositState)",
20959
20959
  "numberOfBytes": "32",
20960
- "value": "t_enum(DepositState)40200"
20960
+ "value": "t_enum(DepositState)40285"
20961
20961
  },
20962
- "t_mapping(t_uint256,t_struct(GasReimbursement)40207_storage)": {
20962
+ "t_mapping(t_uint256,t_struct(GasReimbursement)40292_storage)": {
20963
20963
  "encoding": "mapping",
20964
20964
  "key": "t_uint256",
20965
20965
  "label": "mapping(uint256 => struct AbstractL1BTCDepositor.GasReimbursement)",
20966
20966
  "numberOfBytes": "32",
20967
- "value": "t_struct(GasReimbursement)40207_storage"
20967
+ "value": "t_struct(GasReimbursement)40292_storage"
20968
20968
  },
20969
- "t_struct(GasReimbursement)40207_storage": {
20969
+ "t_struct(GasReimbursement)40292_storage": {
20970
20970
  "encoding": "inplace",
20971
20971
  "label": "struct AbstractL1BTCDepositor.GasReimbursement",
20972
20972
  "members": [
20973
20973
  {
20974
- "astId": 40203,
20974
+ "astId": 40288,
20975
20975
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20976
20976
  "label": "receiver",
20977
20977
  "offset": 0,
@@ -20979,7 +20979,7 @@
20979
20979
  "type": "t_address"
20980
20980
  },
20981
20981
  {
20982
- "astId": 40206,
20982
+ "astId": 40291,
20983
20983
  "contract": "contracts/cross-chain/wormhole/BTCDepositorWormhole.sol:BTCDepositorWormhole",
20984
20984
  "label": "gasSpent",
20985
20985
  "offset": 20,