@keep-network/tbtc-v2 1.7.0 → 1.7.1

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 (235) hide show
  1. package/artifacts/.chainId +1 -1
  2. package/artifacts/BLS.json +223 -0
  3. package/artifacts/Bank.json +50 -40
  4. package/artifacts/BeaconAuthorization.json +273 -0
  5. package/artifacts/BeaconDkg.json +241 -0
  6. package/artifacts/BeaconDkgValidator.json +501 -0
  7. package/artifacts/BeaconInactivity.json +151 -0
  8. package/artifacts/BeaconSortitionPool.json +1187 -0
  9. package/artifacts/Bridge.json +449 -32
  10. package/artifacts/BridgeGovernance.json +22 -22
  11. package/artifacts/BridgeGovernanceParameters.json +10 -10
  12. package/artifacts/Deposit.json +12 -12
  13. package/artifacts/DepositSweep.json +12 -12
  14. package/artifacts/DonationVault.json +17 -17
  15. package/artifacts/EcdsaDkgValidator.json +517 -0
  16. package/artifacts/EcdsaInactivity.json +156 -0
  17. package/artifacts/EcdsaSortitionPool.json +1187 -0
  18. package/artifacts/Fraud.json +12 -12
  19. package/artifacts/LightRelay.json +38 -38
  20. package/artifacts/LightRelayMaintainerProxy.json +31 -31
  21. package/artifacts/MaintainerProxy.json +44 -44
  22. package/artifacts/MovingFunds.json +12 -12
  23. package/artifacts/NuCypherToken.json +711 -0
  24. package/artifacts/RandomBeacon.json +3271 -0
  25. package/artifacts/RandomBeaconChaosnet.json +252 -0
  26. package/artifacts/RandomBeaconGovernance.json +3499 -0
  27. package/artifacts/Redemption.json +12 -12
  28. package/artifacts/RedemptionWatchtower.json +39 -39
  29. package/artifacts/ReimbursementPool.json +509 -0
  30. package/artifacts/T.json +1148 -0
  31. package/artifacts/TBTC.json +37 -36
  32. package/artifacts/TBTCToken.json +738 -0
  33. package/artifacts/TBTCVault.json +47 -47
  34. package/artifacts/Timelock.json +148 -148
  35. package/artifacts/TokenStaking.json +2117 -0
  36. package/artifacts/TokenholderGovernor.json +1795 -0
  37. package/artifacts/TokenholderTimelock.json +1058 -0
  38. package/artifacts/VendingMachine.json +35 -34
  39. package/artifacts/VendingMachineNuCypher.json +400 -0
  40. package/artifacts/VendingMachineV2.json +21 -21
  41. package/artifacts/VendingMachineV3.json +21 -21
  42. package/artifacts/WalletProposalValidator.json +12 -12
  43. package/artifacts/WalletRegistry.json +1962 -0
  44. package/artifacts/WalletRegistryGovernance.json +2863 -0
  45. package/artifacts/Wallets.json +12 -12
  46. package/artifacts/solcInputs/{be146ce112252bdda3a03de3614fbbf1.json → 2cb3f9e60e45f0ca528d3d5260ff3139.json} +31 -7
  47. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  48. package/build/contracts/Timelock.sol/Timelock.dbg.json +1 -1
  49. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  50. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
  51. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  52. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  53. package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
  54. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
  55. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
  56. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
  57. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
  58. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
  59. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
  60. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
  61. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
  62. package/build/contracts/bridge/Redemption.sol/IRedemptionWatchtower.dbg.json +1 -1
  63. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
  64. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
  65. package/build/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.dbg.json +1 -1
  66. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  67. package/build/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.dbg.json +1 -1
  68. package/build/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.dbg.json +1 -1
  69. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.dbg.json +1 -1
  70. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
  71. package/build/contracts/integrator/AbstractTBTCDepositor.sol/AbstractTBTCDepositor.dbg.json +1 -1
  72. package/build/contracts/integrator/IBridge.sol/IBridge.dbg.json +1 -1
  73. package/build/contracts/integrator/IBridge.sol/IBridgeTypes.dbg.json +1 -1
  74. package/build/contracts/integrator/ITBTCVault.sol/ITBTCVault.dbg.json +1 -1
  75. package/build/contracts/l2/L1BitcoinDepositor.sol/L1BitcoinDepositor.dbg.json +1 -1
  76. package/build/contracts/l2/L1BitcoinDepositor.sol/L1BitcoinDepositor.json +41 -2
  77. package/build/contracts/l2/L2BitcoinDepositor.sol/IL2WormholeGateway.dbg.json +1 -1
  78. package/build/contracts/l2/L2BitcoinDepositor.sol/L2BitcoinDepositor.dbg.json +1 -1
  79. package/build/contracts/l2/L2TBTC.sol/L2TBTC.dbg.json +1 -1
  80. package/build/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.dbg.json +1 -1
  81. package/build/contracts/l2/Wormhole.sol/IWormhole.dbg.json +1 -1
  82. package/build/contracts/l2/Wormhole.sol/IWormholeReceiver.dbg.json +1 -1
  83. package/build/contracts/l2/Wormhole.sol/IWormholeRelayer.dbg.json +1 -1
  84. package/build/contracts/l2/Wormhole.sol/IWormholeTokenBridge.dbg.json +1 -1
  85. package/build/contracts/l2/Wormhole.sol/WormholeTypes.dbg.json +1 -1
  86. package/build/contracts/l2/Wormhole.sol/WormholeUtils.dbg.json +1 -1
  87. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
  88. package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
  89. package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
  90. package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
  91. package/build/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.dbg.json +1 -1
  92. package/build/contracts/test/BankStub.sol/BankStub.dbg.json +1 -1
  93. package/build/contracts/test/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  94. package/build/contracts/test/HeartbeatStub.sol/HeartbeatStub.dbg.json +1 -1
  95. package/build/contracts/test/LightRelayStub.sol/LightRelayStub.dbg.json +1 -1
  96. package/build/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.dbg.json +1 -1
  97. package/build/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.dbg.json +1 -1
  98. package/build/contracts/test/SystemTestRelay.sol/SystemTestRelay.dbg.json +1 -1
  99. package/build/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.dbg.json +1 -1
  100. package/build/contracts/test/TestERC20.sol/TestERC20.dbg.json +1 -1
  101. package/build/contracts/test/TestERC721.sol/TestERC721.dbg.json +1 -1
  102. package/build/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.dbg.json +1 -1
  103. package/build/contracts/test/TestTBTCDepositor.sol/MockBridge.dbg.json +1 -1
  104. package/build/contracts/test/TestTBTCDepositor.sol/MockTBTCVault.dbg.json +1 -1
  105. package/build/contracts/test/TestTBTCDepositor.sol/TestTBTCDepositor.dbg.json +1 -1
  106. package/build/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.dbg.json +1 -1
  107. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  108. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
  109. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  110. package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
  111. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  112. package/contracts/l2/L1BitcoinDepositor.sol +31 -0
  113. package/export/artifacts/@keep-network/ecdsa/contracts/EcdsaDkgValidator.sol/EcdsaDkgValidator.json +24 -24
  114. package/export/artifacts/@keep-network/ecdsa/contracts/WalletRegistry.sol/WalletRegistry.json +4999 -4814
  115. package/export/artifacts/@keep-network/ecdsa/contracts/libraries/EcdsaDkg.sol/EcdsaDkg.json +2 -2
  116. package/export/artifacts/@keep-network/ecdsa/contracts/libraries/EcdsaInactivity.sol/EcdsaInactivity.json +23 -23
  117. package/export/artifacts/@keep-network/random-beacon/contracts/ReimbursementPool.sol/ReimbursementPool.json +53 -53
  118. package/export/artifacts/@keep-network/sortition-pools/contracts/Chaosnet.sol/Chaosnet.json +21 -21
  119. package/export/artifacts/@keep-network/sortition-pools/contracts/Rewards.sol/Rewards.json +16 -16
  120. package/export/artifacts/@keep-network/sortition-pools/contracts/SortitionPool.sol/SortitionPool.json +206 -206
  121. package/export/artifacts/@keep-network/sortition-pools/contracts/SortitionTree.sol/SortitionTree.json +26 -26
  122. package/export/artifacts/@openzeppelin/contracts/governance/TimelockController.sol/TimelockController.json +107 -107
  123. package/export/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +46 -46
  124. package/export/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +36 -36
  125. package/export/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +78 -78
  126. package/export/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +68 -68
  127. package/export/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol/ERC20Upgradeable.json +43 -43
  128. package/export/artifacts/@thesis/solidity-contracts/contracts/token/ERC20WithPermit.sol/ERC20WithPermit.json +79 -79
  129. package/export/artifacts/@thesis/solidity-contracts/contracts/token/MisfundRecovery.sol/MisfundRecovery.json +42 -42
  130. package/export/artifacts/contracts/Timelock.sol/Timelock.json +109 -109
  131. package/export/artifacts/contracts/bank/Bank.sol/Bank.json +77 -77
  132. package/export/artifacts/contracts/bridge/Bridge.sol/Bridge.json +338 -338
  133. package/export/artifacts/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.json +128 -128
  134. package/export/artifacts/contracts/bridge/VendingMachine.sol/VendingMachine.json +108 -108
  135. package/export/artifacts/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.json +63 -63
  136. package/export/artifacts/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.json +65 -65
  137. package/export/artifacts/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +67 -67
  138. package/export/artifacts/contracts/l2/L1BitcoinDepositor.sol/L1BitcoinDepositor.json +4431 -4171
  139. package/export/artifacts/contracts/l2/L2BitcoinDepositor.sol/L2BitcoinDepositor.json +62 -62
  140. package/export/artifacts/contracts/l2/L2TBTC.sol/L2TBTC.json +194 -194
  141. package/export/artifacts/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.json +102 -102
  142. package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +149 -149
  143. package/export/artifacts/contracts/relay/LightRelay.sol/LightRelay.json +76 -76
  144. package/export/artifacts/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.json +62 -62
  145. package/export/artifacts/contracts/test/BankStub.sol/BankStub.json +79 -79
  146. package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +376 -376
  147. package/export/artifacts/contracts/test/HeartbeatStub.sol/HeartbeatStub.json +4 -4
  148. package/export/artifacts/contracts/test/LightRelayStub.sol/LightRelayStub.json +78 -78
  149. package/export/artifacts/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.json +7 -7
  150. package/export/artifacts/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.json +78 -78
  151. package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +14 -14
  152. package/export/artifacts/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +132 -132
  153. package/export/artifacts/contracts/test/TestERC20.sol/TestERC20.json +85 -85
  154. package/export/artifacts/contracts/test/TestERC721.sol/TestERC721.json +78 -78
  155. package/export/artifacts/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.json +4 -4
  156. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/MockBridge.json +34 -34
  157. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/MockTBTCVault.json +20 -20
  158. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/TestTBTCDepositor.json +52 -52
  159. package/export/artifacts/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.json +37 -37
  160. package/export/artifacts/contracts/token/TBTC.sol/TBTC.json +104 -104
  161. package/export/artifacts/contracts/vault/DonationVault.sol/DonationVault.json +19 -19
  162. package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +184 -184
  163. package/export/typechain/factories/EcdsaAuthorization__factory.js +1 -1
  164. package/export/typechain/factories/IStaking__factory.js +24 -103
  165. package/export/typechain/factories/L1BitcoinDepositor__factory.js +40 -1
  166. package/export/typechain/factories/WalletRegistry__factory.js +1 -1
  167. package/package.json +2 -2
  168. package/artifacts/solcInputs/7c1f8f1dbded4c787d87a982d1fc8349.json +0 -410
  169. package/artifacts/solcInputs/7cc3eda3cb3ff2522d18b5e7b31ea228.json +0 -102
  170. package/artifacts/solcInputs/802132f7da69a8a4226cb9424480847b.json +0 -218
  171. package/artifacts/solcInputs/887fad6b16575ba42183543c324eeb0e.json +0 -335
  172. package/artifacts/solcInputs/98e272e2fbf178ec895387b6c503f9de.json +0 -68
  173. package/artifacts/solcInputs/b0025f1f7efe4824592ac0c9793776c3.json +0 -392
  174. package/artifacts/solcInputs/b7c5f3550cc22e16e6b6ea9582ccbee3.json +0 -341
  175. package/artifacts/solcInputs/d71d4b4434e6669852eaf643ebd2a7bc.json +0 -209
  176. package/artifacts/solcInputs/fccb130292c8c7cc958ab4fa31a3e180.json +0 -187
  177. package/export/deploy/00_resolve_relay.js +0 -83
  178. package/export/deploy/01_deploy_tbtc_v2_token.js +0 -70
  179. package/export/deploy/02_deploy_vending_machine.js +0 -84
  180. package/export/deploy/03_transfer_vending_machine_roles.js +0 -69
  181. package/export/deploy/04_deploy_bank.js +0 -73
  182. package/export/deploy/05_deploy_bridge.js +0 -178
  183. package/export/deploy/06_deploy_tbtc_vault.js +0 -80
  184. package/export/deploy/07_deploy_bridge_governance.js +0 -87
  185. package/export/deploy/08_deploy_maintainer_proxy.js +0 -80
  186. package/export/deploy/09_bank_update_bridge.js +0 -63
  187. package/export/deploy/10_authorize_spv_maintainer_in_bridge.js +0 -61
  188. package/export/deploy/11_transfer_bank_ownership.js +0 -60
  189. package/export/deploy/12_transfer_bridge_governance.js +0 -63
  190. package/export/deploy/13_transfer_bridge_governance_ownership.js +0 -60
  191. package/export/deploy/14_transfer_tbtc_vault_ownership.js +0 -60
  192. package/export/deploy/15_transfer_maintainer_proxy_ownership.js +0 -60
  193. package/export/deploy/16_initialize_wallet_owner.js +0 -63
  194. package/export/deploy/16_transfer_proxy_admin_ownership.js +0 -73
  195. package/export/deploy/17_authorize_maintainer_proxy_in_bridge.js +0 -63
  196. package/export/deploy/17_transfer_proxy_admin_ownership.js +0 -73
  197. package/export/deploy/18_authorize_maintainer_proxy_in_bridge.js +0 -63
  198. package/export/deploy/18_authorize_maintainer_proxy_in_reimbursement_pool.js +0 -63
  199. package/export/deploy/19_authorize_bridge_in_reimbursement_pool.js +0 -63
  200. package/export/deploy/19_authorize_maintainer_proxy_in_reimbursement_pool.js +0 -63
  201. package/export/deploy/20_authorize_bridge_in_reimbursement_pool.js +0 -63
  202. package/export/deploy/20_deploy_proxy_admin_with_deputy.js +0 -80
  203. package/export/deploy/21_transfer_reimbursement_pool_ownership.js +0 -60
  204. package/export/deploy/22_deploy_proxy_admin_with_deputy.js +0 -80
  205. package/export/deploy/24_transfer_maintainer_proxy_ownership.js +0 -60
  206. package/export/deploy/25_transfer_proxy_admin_ownership.js +0 -73
  207. package/export/deploy/26_authorize_maintainer_proxy_in_reimbursement_pool.js +0 -70
  208. package/export/deploy/27_authorize_bridge_in_reimbursement_pool.js +0 -70
  209. package/export/deploy/28_deploy_proxy_admin_with_deputy.js +0 -80
  210. package/export/deploy/34_deploy_wallet_coordinator.js +0 -115
  211. package/export/deploy/35_add_coordinator_address.js +0 -60
  212. package/export/deploy/35_transfer_wallet_coordinator_ownership.js +0 -60
  213. package/export/deploy/36_deploy_light_relay_maintainer_proxy.js +0 -86
  214. package/export/deploy/36_transfer_wallet_coordinator_ownership.js +0 -60
  215. package/export/deploy/37_authorize_maintainer_in_light_relay_maintainer_proxy.js +0 -65
  216. package/export/deploy/37_deploy_light_relay_maintainer_proxy.js +0 -86
  217. package/export/deploy/37_transfer_light_relay_maintainer_proxy_ownership.js +0 -60
  218. package/export/deploy/38_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.js +0 -70
  219. package/export/deploy/38_authorize_maintainer_in_light_relay_maintainer_proxy.js +0 -65
  220. package/export/deploy/38_transfer_light_relay_maintainer_proxy_ownership.js +0 -60
  221. package/export/deploy/39_authorize_light_relay_maintainer_proxy_in_light_relay.js +0 -63
  222. package/export/deploy/39_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.js +0 -70
  223. package/export/deploy/39_transfer_light_relay_maintainer_proxy_ownership.js +0 -60
  224. package/export/deploy/40_authorize_light_relay_maintainer_proxy_in_light_relay.js +0 -66
  225. package/export/deploy/40_authorize_light_relay_maintainer_proxy_in_reimbursement_pool.js +0 -70
  226. package/export/deploy/41_authorize_light_relay_maintainer_proxy_in_light_relay.js +0 -66
  227. package/export/typechain/GoerliLightRelay.js +0 -2
  228. package/export/typechain/RelayStub.js +0 -2
  229. package/export/typechain/TestRelay.js +0 -2
  230. package/export/typechain/WalletCoordinator.js +0 -2
  231. package/export/typechain/factories/GoerliLightRelay__factory.js +0 -535
  232. package/export/typechain/factories/RelayStub__factory.js +0 -546
  233. package/export/typechain/factories/TestRelay__factory.js +0 -168
  234. package/export/typechain/factories/WalletCoordinator__factory.js +0 -1121
  235. package/export.json +0 -16130
@@ -329,31 +329,31 @@
329
329
  "evm": {
330
330
  "bytecode": {
331
331
  "functionDebugData": {
332
- "@_17676": {
332
+ "@_17685": {
333
333
  "entryPoint": null,
334
- "id": 17676,
334
+ "id": 17685,
335
335
  "parameterSlots": 0,
336
336
  "returnSlots": 0
337
337
  },
338
- "@_37139": {
338
+ "@_37112": {
339
339
  "entryPoint": null,
340
- "id": 37139,
340
+ "id": 37112,
341
341
  "parameterSlots": 2,
342
342
  "returnSlots": 0
343
343
  },
344
- "@_msgSender_21353": {
344
+ "@_msgSender_21362": {
345
345
  "entryPoint": null,
346
- "id": 21353,
346
+ "id": 21362,
347
347
  "parameterSlots": 0,
348
348
  "returnSlots": 1
349
349
  },
350
- "@_transferOwnership_17764": {
350
+ "@_transferOwnership_17773": {
351
351
  "entryPoint": 79,
352
- "id": 17764,
352
+ "id": 17773,
353
353
  "parameterSlots": 1,
354
354
  "returnSlots": 0
355
355
  },
356
- "abi_decode_tuple_t_contract$_IERC20_$19563t_contract$_TBTC_$45962_fromMemory": {
356
+ "abi_decode_tuple_t_contract$_IERC20_$19572t_contract$_TBTC_$45983_fromMemory": {
357
357
  "entryPoint": 183,
358
358
  "id": null,
359
359
  "parameterSlots": 2,
@@ -752,7 +752,7 @@
752
752
  }
753
753
  ]
754
754
  },
755
- "name": "abi_decode_tuple_t_contract$_IERC20_$19563t_contract$_TBTC_$45962_fromMemory",
755
+ "name": "abi_decode_tuple_t_contract$_IERC20_$19572t_contract$_TBTC_$45983_fromMemory",
756
756
  "nodeType": "YulFunctionDefinition",
757
757
  "parameters": [
758
758
  {
@@ -786,7 +786,7 @@
786
786
  }
787
787
  ]
788
788
  },
789
- "contents": "{\n { }\n function validator_revert_contract_IERC20(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_IERC20_$19563t_contract$_TBTC_$45962_fromMemory(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n let value_1 := mload(add(headStart, 32))\n validator_revert_contract_IERC20(value_1)\n value1 := value_1\n }\n}",
789
+ "contents": "{\n { }\n function validator_revert_contract_IERC20(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_IERC20_$19572t_contract$_TBTC_$45983_fromMemory(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n let value_1 := mload(add(headStart, 32))\n validator_revert_contract_IERC20(value_1)\n value1 := value_1\n }\n}",
790
790
  "id": 139,
791
791
  "language": "Yul",
792
792
  "name": "#utility.yul"
@@ -798,135 +798,135 @@
798
798
  },
799
799
  "deployedBytecode": {
800
800
  "functionDebugData": {
801
- "@_callOptionalReturn_19904": {
801
+ "@_callOptionalReturn_19913": {
802
802
  "entryPoint": 2672,
803
- "id": 19904,
803
+ "id": 19913,
804
804
  "parameterSlots": 2,
805
805
  "returnSlots": 0
806
806
  },
807
- "@_checkOwner_17707": {
807
+ "@_checkOwner_17716": {
808
808
  "entryPoint": 2222,
809
- "id": 17707,
809
+ "id": 17716,
810
810
  "parameterSlots": 0,
811
811
  "returnSlots": 0
812
812
  },
813
- "@_exchange_37343": {
813
+ "@_exchange_37316": {
814
814
  "entryPoint": 1796,
815
- "id": 37343,
815
+ "id": 37316,
816
816
  "parameterSlots": 2,
817
817
  "returnSlots": 0
818
818
  },
819
- "@_msgSender_21353": {
819
+ "@_msgSender_21362": {
820
820
  "entryPoint": null,
821
- "id": 21353,
821
+ "id": 21362,
822
822
  "parameterSlots": 0,
823
823
  "returnSlots": 1
824
824
  },
825
- "@_revert_21340": {
825
+ "@_revert_21349": {
826
826
  "entryPoint": null,
827
- "id": 21340,
827
+ "id": 21349,
828
828
  "parameterSlots": 2,
829
829
  "returnSlots": 0
830
830
  },
831
- "@_transferOwnership_17764": {
831
+ "@_transferOwnership_17773": {
832
832
  "entryPoint": 2481,
833
- "id": 17764,
833
+ "id": 17773,
834
834
  "parameterSlots": 1,
835
835
  "returnSlots": 0
836
836
  },
837
- "@depositTbtcV2_37216": {
837
+ "@depositTbtcV2_37189": {
838
838
  "entryPoint": 1545,
839
- "id": 37216,
839
+ "id": 37189,
840
840
  "parameterSlots": 1,
841
841
  "returnSlots": 0
842
842
  },
843
- "@exchange_37152": {
843
+ "@exchange_37125": {
844
844
  "entryPoint": 442,
845
- "id": 37152,
845
+ "id": 37125,
846
846
  "parameterSlots": 1,
847
847
  "returnSlots": 0
848
848
  },
849
- "@functionCallWithValue_21165": {
849
+ "@functionCallWithValue_21174": {
850
850
  "entryPoint": 2924,
851
- "id": 21165,
851
+ "id": 21174,
852
852
  "parameterSlots": 4,
853
853
  "returnSlots": 1
854
854
  },
855
- "@functionCall_21101": {
855
+ "@functionCall_21110": {
856
856
  "entryPoint": 2901,
857
- "id": 21101,
857
+ "id": 21110,
858
858
  "parameterSlots": 3,
859
859
  "returnSlots": 1
860
860
  },
861
- "@isContract_21029": {
861
+ "@isContract_21038": {
862
862
  "entryPoint": null,
863
- "id": 21029,
863
+ "id": 21038,
864
864
  "parameterSlots": 1,
865
865
  "returnSlots": 1
866
866
  },
867
- "@owner_17693": {
867
+ "@owner_17702": {
868
868
  "entryPoint": null,
869
- "id": 17693,
869
+ "id": 17702,
870
870
  "parameterSlots": 0,
871
871
  "returnSlots": 1
872
872
  },
873
- "@receiveApproval_37191": {
873
+ "@receiveApproval_37164": {
874
874
  "entryPoint": 1279,
875
- "id": 37191,
875
+ "id": 37164,
876
876
  "parameterSlots": 5,
877
877
  "returnSlots": 0
878
878
  },
879
- "@recoverFunds_37299": {
879
+ "@recoverFunds_37272": {
880
880
  "entryPoint": 455,
881
- "id": 37299,
881
+ "id": 37272,
882
882
  "parameterSlots": 3,
883
883
  "returnSlots": 0
884
884
  },
885
- "@renounceOwnership_17721": {
885
+ "@renounceOwnership_17730": {
886
886
  "entryPoint": 735,
887
- "id": 17721,
887
+ "id": 17730,
888
888
  "parameterSlots": 0,
889
889
  "returnSlots": 0
890
890
  },
891
- "@safeTransferFrom_19682": {
891
+ "@safeTransferFrom_19691": {
892
892
  "entryPoint": 2585,
893
- "id": 19682,
893
+ "id": 19691,
894
894
  "parameterSlots": 4,
895
895
  "returnSlots": 0
896
896
  },
897
- "@safeTransfer_19656": {
897
+ "@safeTransfer_19665": {
898
898
  "entryPoint": 2312,
899
- "id": 19656,
899
+ "id": 19665,
900
900
  "parameterSlots": 3,
901
901
  "returnSlots": 0
902
902
  },
903
- "@tbtcV1_37092": {
903
+ "@tbtcV1_37065": {
904
904
  "entryPoint": null,
905
- "id": 37092,
905
+ "id": 37065,
906
906
  "parameterSlots": 0,
907
907
  "returnSlots": 0
908
908
  },
909
- "@tbtcV2_37095": {
909
+ "@tbtcV2_37068": {
910
910
  "entryPoint": null,
911
- "id": 37095,
911
+ "id": 37068,
912
912
  "parameterSlots": 0,
913
913
  "returnSlots": 0
914
914
  },
915
- "@transferOwnership_17744": {
915
+ "@transferOwnership_17753": {
916
916
  "entryPoint": 1655,
917
- "id": 17744,
917
+ "id": 17753,
918
918
  "parameterSlots": 1,
919
919
  "returnSlots": 0
920
920
  },
921
- "@verifyCallResultFromTarget_21296": {
921
+ "@verifyCallResultFromTarget_21305": {
922
922
  "entryPoint": 3166,
923
- "id": 21296,
923
+ "id": 21305,
924
924
  "parameterSlots": 4,
925
925
  "returnSlots": 1
926
926
  },
927
- "@withdrawTbtcV2_37256": {
927
+ "@withdrawTbtcV2_37229": {
928
928
  "entryPoint": 755,
929
- "id": 37256,
929
+ "id": 37229,
930
930
  "parameterSlots": 2,
931
931
  "returnSlots": 0
932
932
  },
@@ -954,7 +954,7 @@
954
954
  "parameterSlots": 2,
955
955
  "returnSlots": 1
956
956
  },
957
- "abi_decode_tuple_t_contract$_IERC20_$19563t_addresst_uint256": {
957
+ "abi_decode_tuple_t_contract$_IERC20_$19572t_addresst_uint256": {
958
958
  "entryPoint": 3370,
959
959
  "id": null,
960
960
  "parameterSlots": 2,
@@ -996,13 +996,13 @@
996
996
  "parameterSlots": 3,
997
997
  "returnSlots": 1
998
998
  },
999
- "abi_encode_tuple_t_contract$_IERC20_$19563__to_t_address__fromStack_reversed": {
999
+ "abi_encode_tuple_t_contract$_IERC20_$19572__to_t_address__fromStack_reversed": {
1000
1000
  "entryPoint": null,
1001
1001
  "id": null,
1002
1002
  "parameterSlots": 2,
1003
1003
  "returnSlots": 1
1004
1004
  },
1005
- "abi_encode_tuple_t_contract$_TBTC_$45962__to_t_address__fromStack_reversed": {
1005
+ "abi_encode_tuple_t_contract$_TBTC_$45983__to_t_address__fromStack_reversed": {
1006
1006
  "entryPoint": null,
1007
1007
  "id": null,
1008
1008
  "parameterSlots": 2,
@@ -1194,7 +1194,7 @@
1194
1194
  }
1195
1195
  ]
1196
1196
  },
1197
- "name": "abi_encode_tuple_t_contract$_IERC20_$19563__to_t_address__fromStack_reversed",
1197
+ "name": "abi_encode_tuple_t_contract$_IERC20_$19572__to_t_address__fromStack_reversed",
1198
1198
  "nodeType": "YulFunctionDefinition",
1199
1199
  "parameters": [
1200
1200
  {
@@ -1742,7 +1742,7 @@
1742
1742
  }
1743
1743
  ]
1744
1744
  },
1745
- "name": "abi_decode_tuple_t_contract$_IERC20_$19563t_addresst_uint256",
1745
+ "name": "abi_decode_tuple_t_contract$_IERC20_$19572t_addresst_uint256",
1746
1746
  "nodeType": "YulFunctionDefinition",
1747
1747
  "parameters": [
1748
1748
  {
@@ -3005,7 +3005,7 @@
3005
3005
  }
3006
3006
  ]
3007
3007
  },
3008
- "name": "abi_encode_tuple_t_contract$_TBTC_$45962__to_t_address__fromStack_reversed",
3008
+ "name": "abi_encode_tuple_t_contract$_TBTC_$45983__to_t_address__fromStack_reversed",
3009
3009
  "nodeType": "YulFunctionDefinition",
3010
3010
  "parameters": [
3011
3011
  {
@@ -7007,14 +7007,14 @@
7007
7007
  }
7008
7008
  ]
7009
7009
  },
7010
- "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IERC20_$19563__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_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function validator_revert_contract_IERC20(value)\n {\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_IERC20_$19563t_addresst_uint256(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_IERC20(value_1)\n value1 := value_1\n value2 := calldataload(add(headStart, 64))\n }\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\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_addresst_uint256t_addresst_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\n let value_1 := calldataload(add(headStart, 64))\n validator_revert_contract_IERC20(value_1)\n value2 := value_1\n let offset := calldataload(add(headStart, 96))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let length := calldataload(_2)\n if gt(length, _1) { revert(0, 0) }\n if gt(add(add(_2, length), 32), dataEnd) { revert(0, 0) }\n value3 := add(_2, 32)\n value4 := length\n }\n function abi_encode_tuple_t_contract$_TBTC_$45962__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_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_e6b01149c0b69b924c8919686bb5ab07e4289d19f1ab61ede5b2cc5d8565f86a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 63)\n mstore(add(headStart, 64), \"tBTC v2 tokens can not be recove\")\n mstore(add(headStart, 96), \"red, use withdrawTbtcV2 instead\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_address_t_address_t_uint256__to_t_address_t_address_t_uint256__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), value2)\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 checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_24f712f65021c229d1c5d91cd9d1d0e07e437faddc79dd451f9b1ee7f591f8c4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 33)\n mstore(add(headStart, 64), \"tBTC v1 must not be left unbacke\")\n mstore(add(headStart, 96), \"d\")\n tail := add(headStart, 128)\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_t_stringliteral_f9abe958fad76966d1c3d8b1924bd1c1f7130eb77673292d88e768625cb7d832__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Token is not tBTC v1\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_82afa2706b38d988b36925e5facb3efa4666973f2e3f984e55eedf106656e77a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"Only tBTC v1 caller allowed\")\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_encode_tuple_t_stringliteral_faa67e5aa2cc69c3aaf867fefd341e0cdc57e1efd0108087082c2f3812369ba4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 51)\n mstore(add(headStart, 64), \"Not enough tBTC v2 available in \")\n mstore(add(headStart, 96), \"the Vending Machine\")\n tail := add(headStart, 128)\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_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_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 if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\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 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_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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}",
7010
+ "contents": "{\n { }\n function abi_encode_tuple_t_contract$_IERC20_$19572__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_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function validator_revert_contract_IERC20(value)\n {\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_IERC20_$19572t_addresst_uint256(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_IERC20(value_1)\n value1 := value_1\n value2 := calldataload(add(headStart, 64))\n }\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\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_addresst_uint256t_addresst_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\n let value_1 := calldataload(add(headStart, 64))\n validator_revert_contract_IERC20(value_1)\n value2 := value_1\n let offset := calldataload(add(headStart, 96))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let length := calldataload(_2)\n if gt(length, _1) { revert(0, 0) }\n if gt(add(add(_2, length), 32), dataEnd) { revert(0, 0) }\n value3 := add(_2, 32)\n value4 := length\n }\n function abi_encode_tuple_t_contract$_TBTC_$45983__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_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_IERC20(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_e6b01149c0b69b924c8919686bb5ab07e4289d19f1ab61ede5b2cc5d8565f86a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 63)\n mstore(add(headStart, 64), \"tBTC v2 tokens can not be recove\")\n mstore(add(headStart, 96), \"red, use withdrawTbtcV2 instead\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_address_t_address_t_uint256__to_t_address_t_address_t_uint256__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n let _1 := 0xffffffffffffffffffffffffffffffffffffffff\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), value2)\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 checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x)\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_24f712f65021c229d1c5d91cd9d1d0e07e437faddc79dd451f9b1ee7f591f8c4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 33)\n mstore(add(headStart, 64), \"tBTC v1 must not be left unbacke\")\n mstore(add(headStart, 96), \"d\")\n tail := add(headStart, 128)\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_t_stringliteral_f9abe958fad76966d1c3d8b1924bd1c1f7130eb77673292d88e768625cb7d832__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 20)\n mstore(add(headStart, 64), \"Token is not tBTC v1\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_82afa2706b38d988b36925e5facb3efa4666973f2e3f984e55eedf106656e77a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 27)\n mstore(add(headStart, 64), \"Only tBTC v1 caller allowed\")\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_encode_tuple_t_stringliteral_faa67e5aa2cc69c3aaf867fefd341e0cdc57e1efd0108087082c2f3812369ba4__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 51)\n mstore(add(headStart, 64), \"Not enough tBTC v2 available in \")\n mstore(add(headStart, 96), \"the Vending Machine\")\n tail := add(headStart, 128)\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_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_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 if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\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 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_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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}",
7011
7011
  "id": 139,
7012
7012
  "language": "Yul",
7013
7013
  "name": "#utility.yul"
7014
7014
  }
7015
7015
  ],
7016
7016
  "immutableReferences": {
7017
- "37092": [
7017
+ "37065": [
7018
7018
  {
7019
7019
  "length": 32,
7020
7020
  "start": 200
@@ -7036,7 +7036,7 @@
7036
7036
  "start": 2130
7037
7037
  }
7038
7038
  ],
7039
- "37095": [
7039
+ "37068": [
7040
7040
  {
7041
7041
  "length": 32,
7042
7042
  "start": 370
@@ -7110,7 +7110,7 @@
7110
7110
  "storageLayout": {
7111
7111
  "storage": [
7112
7112
  {
7113
- "astId": 17660,
7113
+ "astId": 17669,
7114
7114
  "contract": "contracts/bridge/VendingMachineV3.sol:VendingMachineV3",
7115
7115
  "label": "_owner",
7116
7116
  "offset": 0,