@keep-network/tbtc-v2 1.6.0-dev.22 → 1.6.0-dev.24

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 (131) hide show
  1. package/artifacts/BLS.json +1 -1
  2. package/artifacts/Bank.json +3 -3
  3. package/artifacts/BeaconAuthorization.json +1 -1
  4. package/artifacts/BeaconDkg.json +1 -1
  5. package/artifacts/BeaconDkgValidator.json +1 -1
  6. package/artifacts/BeaconInactivity.json +1 -1
  7. package/artifacts/BeaconSortitionPool.json +3 -3
  8. package/artifacts/Bridge.json +5 -5
  9. package/artifacts/BridgeGovernance.json +2 -2
  10. package/artifacts/BridgeGovernanceParameters.json +2 -2
  11. package/artifacts/Deposit.json +2 -2
  12. package/artifacts/DepositSweep.json +2 -2
  13. package/artifacts/DonationVault.json +3 -3
  14. package/artifacts/EcdsaDkgValidator.json +1 -1
  15. package/artifacts/EcdsaInactivity.json +1 -1
  16. package/artifacts/EcdsaSortitionPool.json +3 -3
  17. package/artifacts/Fraud.json +2 -2
  18. package/artifacts/LightRelay.json +18 -18
  19. package/artifacts/LightRelayMaintainerProxy.json +8 -8
  20. package/artifacts/MaintainerProxy.json +19 -19
  21. package/artifacts/MovingFunds.json +2 -2
  22. package/artifacts/NuCypherToken.json +2 -2
  23. package/artifacts/RandomBeacon.json +2 -2
  24. package/artifacts/RandomBeaconChaosnet.json +2 -2
  25. package/artifacts/RandomBeaconGovernance.json +2 -2
  26. package/artifacts/Redemption.json +2 -2
  27. package/artifacts/ReimbursementPool.json +2 -2
  28. package/artifacts/T.json +2 -2
  29. package/artifacts/TBTC.json +3 -3
  30. package/artifacts/TBTCToken.json +3 -3
  31. package/artifacts/TBTCVault.json +23 -23
  32. package/artifacts/TokenStaking.json +1 -1
  33. package/artifacts/TokenholderGovernor.json +9 -9
  34. package/artifacts/TokenholderTimelock.json +8 -8
  35. package/artifacts/VendingMachine.json +3 -3
  36. package/artifacts/VendingMachineNuCypher.json +1 -1
  37. package/artifacts/VendingMachineV2.json +3 -3
  38. package/artifacts/VendingMachineV3.json +3 -3
  39. package/artifacts/WalletProposalValidator.json +2 -2
  40. package/artifacts/WalletRegistry.json +5 -5
  41. package/artifacts/WalletRegistryGovernance.json +2 -2
  42. package/artifacts/Wallets.json +2 -2
  43. package/artifacts/solcInputs/{dd1c38c53a7547fe3e334d72c1e4d8e1.json → 002faff6c8c0709e4d87061ccc47bf6f.json} +2 -2
  44. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  45. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  46. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
  47. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  48. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  49. package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
  50. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
  51. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
  52. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
  53. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
  54. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
  55. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
  56. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
  57. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
  58. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
  59. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
  60. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  61. package/build/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.dbg.json +1 -1
  62. package/build/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.dbg.json +1 -1
  63. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.dbg.json +1 -1
  64. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
  65. package/build/contracts/integrator/AbstractTBTCDepositor.sol/AbstractTBTCDepositor.dbg.json +1 -1
  66. package/build/contracts/integrator/IBridge.sol/IBridge.dbg.json +1 -1
  67. package/build/contracts/integrator/IBridge.sol/IBridgeTypes.dbg.json +1 -1
  68. package/build/contracts/integrator/ITBTCVault.sol/ITBTCVault.dbg.json +1 -1
  69. package/build/contracts/l2/L2TBTC.sol/L2TBTC.dbg.json +1 -1
  70. package/build/contracts/l2/L2WormholeGateway.sol/IWormholeTokenBridge.dbg.json +1 -1
  71. package/build/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.dbg.json +1 -1
  72. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
  73. package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
  74. package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
  75. package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
  76. package/build/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.dbg.json +1 -1
  77. package/build/contracts/test/BankStub.sol/BankStub.dbg.json +1 -1
  78. package/build/contracts/test/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  79. package/build/contracts/test/HeartbeatStub.sol/HeartbeatStub.dbg.json +1 -1
  80. package/build/contracts/test/LightRelayStub.sol/LightRelayStub.dbg.json +1 -1
  81. package/build/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.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/TestBitcoinTx.sol/TestBitcoinTx.dbg.json +1 -1
  85. package/build/contracts/test/TestERC20.sol/TestERC20.dbg.json +1 -1
  86. package/build/contracts/test/TestERC721.sol/TestERC721.dbg.json +1 -1
  87. package/build/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.dbg.json +1 -1
  88. package/build/contracts/test/TestTBTCDepositor.sol/MockBridge.dbg.json +1 -1
  89. package/build/contracts/test/TestTBTCDepositor.sol/MockBridge.json +15 -2
  90. package/build/contracts/test/TestTBTCDepositor.sol/MockTBTCVault.dbg.json +1 -1
  91. package/build/contracts/test/TestTBTCDepositor.sol/MockTBTCVault.json +2 -2
  92. package/build/contracts/test/TestTBTCDepositor.sol/TestTBTCDepositor.dbg.json +1 -1
  93. package/build/contracts/test/TestTBTCDepositor.sol/TestTBTCDepositor.json +21 -2
  94. package/build/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.dbg.json +1 -1
  95. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  96. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
  97. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  98. package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
  99. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  100. package/contracts/integrator/AbstractTBTCDepositor.sol +20 -4
  101. package/contracts/test/TestTBTCDepositor.sol +21 -5
  102. package/export/artifacts/contracts/bridge/VendingMachine.sol/VendingMachine.json +6 -6
  103. package/export/artifacts/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.json +6 -6
  104. package/export/artifacts/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.json +6 -6
  105. package/export/artifacts/contracts/l2/L2TBTC.sol/L2TBTC.json +40 -40
  106. package/export/artifacts/contracts/l2/L2WormholeGateway.sol/L2WormholeGateway.json +47 -47
  107. package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +88 -88
  108. package/export/artifacts/contracts/relay/LightRelay.sol/LightRelay.json +57 -57
  109. package/export/artifacts/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.json +31 -31
  110. package/export/artifacts/contracts/test/BankStub.sol/BankStub.json +2 -2
  111. package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +30 -30
  112. package/export/artifacts/contracts/test/HeartbeatStub.sol/HeartbeatStub.json +2 -2
  113. package/export/artifacts/contracts/test/LightRelayStub.sol/LightRelayStub.json +59 -59
  114. package/export/artifacts/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.json +7 -7
  115. package/export/artifacts/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.json +59 -59
  116. package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +14 -14
  117. package/export/artifacts/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +5 -5
  118. package/export/artifacts/contracts/test/TestERC20.sol/TestERC20.json +6 -6
  119. package/export/artifacts/contracts/test/TestERC721.sol/TestERC721.json +8 -8
  120. package/export/artifacts/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.json +2 -2
  121. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/MockBridge.json +103 -74
  122. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/MockTBTCVault.json +25 -25
  123. package/export/artifacts/contracts/test/TestTBTCDepositor.sol/TestTBTCDepositor.json +1682 -1502
  124. package/export/artifacts/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.json +37 -37
  125. package/export/artifacts/contracts/token/TBTC.sol/TBTC.json +2 -2
  126. package/export/artifacts/contracts/vault/DonationVault.sol/DonationVault.json +11 -11
  127. package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +135 -135
  128. package/export/typechain/factories/MockBridge__factory.js +14 -1
  129. package/export/typechain/factories/MockTBTCVault__factory.js +1 -1
  130. package/export/typechain/factories/TestTBTCDepositor__factory.js +20 -1
  131. package/package.json +1 -1
@@ -377,13 +377,13 @@
377
377
  "evm": {
378
378
  "bytecode": {
379
379
  "functionDebugData": {
380
- "@_41953": {
380
+ "@_42007": {
381
381
  "entryPoint": null,
382
- "id": 41953,
382
+ "id": 42007,
383
383
  "parameterSlots": 1,
384
384
  "returnSlots": 0
385
385
  },
386
- "abi_decode_tuple_t_contract$_TestERC20_$41373_fromMemory": {
386
+ "abi_decode_tuple_t_contract$_TestERC20_$41400_fromMemory": {
387
387
  "entryPoint": 84,
388
388
  "id": null,
389
389
  "parameterSlots": 2,
@@ -655,7 +655,7 @@
655
655
  }
656
656
  ]
657
657
  },
658
- "name": "abi_decode_tuple_t_contract$_TestERC20_$41373_fromMemory",
658
+ "name": "abi_decode_tuple_t_contract$_TestERC20_$41400_fromMemory",
659
659
  "nodeType": "YulFunctionDefinition",
660
660
  "parameters": [
661
661
  {
@@ -683,7 +683,7 @@
683
683
  }
684
684
  ]
685
685
  },
686
- "contents": "{\n { }\n function abi_decode_tuple_t_contract$_TestERC20_$41373_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, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}",
686
+ "contents": "{\n { }\n function abi_decode_tuple_t_contract$_TestERC20_$41400_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, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}",
687
687
  "id": 130,
688
688
  "language": "Yul",
689
689
  "name": "#utility.yul"
@@ -695,63 +695,63 @@
695
695
  },
696
696
  "deployedBytecode": {
697
697
  "functionDebugData": {
698
- "@completeTransferWithPayload_41998": {
698
+ "@completeTransferWithPayload_42052": {
699
699
  "entryPoint": 672,
700
- "id": 41998,
700
+ "id": 42052,
701
701
  "parameterSlots": 1,
702
702
  "returnSlots": 1
703
703
  },
704
- "@mintWormholeToken_42108": {
704
+ "@mintWormholeToken_42162": {
705
705
  "entryPoint": 1226,
706
- "id": 42108,
706
+ "id": 42162,
707
707
  "parameterSlots": 2,
708
708
  "returnSlots": 0
709
709
  },
710
- "@parseTransferWithPayload_42073": {
710
+ "@parseTransferWithPayload_42127": {
711
711
  "entryPoint": 1135,
712
- "id": 42073,
712
+ "id": 42127,
713
713
  "parameterSlots": 1,
714
714
  "returnSlots": 1
715
715
  },
716
- "@receiverAddress_41910": {
716
+ "@receiverAddress_41964": {
717
717
  "entryPoint": null,
718
- "id": 41910,
718
+ "id": 41964,
719
719
  "parameterSlots": 0,
720
720
  "returnSlots": 0
721
721
  },
722
- "@setReceiverAddress_42093": {
722
+ "@setReceiverAddress_42147": {
723
723
  "entryPoint": null,
724
- "id": 42093,
724
+ "id": 42147,
725
725
  "parameterSlots": 1,
726
726
  "returnSlots": 0
727
727
  },
728
- "@setTransferAmount_42083": {
728
+ "@setTransferAmount_42137": {
729
729
  "entryPoint": null,
730
- "id": 42083,
730
+ "id": 42137,
731
731
  "parameterSlots": 1,
732
732
  "returnSlots": 0
733
733
  },
734
- "@transferAmount_41908": {
734
+ "@transferAmount_41962": {
735
735
  "entryPoint": null,
736
- "id": 41908,
736
+ "id": 41962,
737
737
  "parameterSlots": 0,
738
738
  "returnSlots": 0
739
739
  },
740
- "@transferTokensWithPayload_42056": {
740
+ "@transferTokensWithPayload_42110": {
741
741
  "entryPoint": 1054,
742
- "id": 42056,
742
+ "id": 42110,
743
743
  "parameterSlots": 6,
744
744
  "returnSlots": 1
745
745
  },
746
- "@transferTokens_42027": {
746
+ "@transferTokens_42081": {
747
747
  "entryPoint": 552,
748
- "id": 42027,
748
+ "id": 42081,
749
749
  "parameterSlots": 6,
750
750
  "returnSlots": 1
751
751
  },
752
- "@wormholeToken_41906": {
752
+ "@wormholeToken_41960": {
753
753
  "entryPoint": null,
754
- "id": 41906,
754
+ "id": 41960,
755
755
  "parameterSlots": 0,
756
756
  "returnSlots": 0
757
757
  },
@@ -803,7 +803,7 @@
803
803
  "parameterSlots": 2,
804
804
  "returnSlots": 1
805
805
  },
806
- "abi_decode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr_fromMemory": {
806
+ "abi_decode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr_fromMemory": {
807
807
  "entryPoint": 2422,
808
808
  "id": null,
809
809
  "parameterSlots": 2,
@@ -869,13 +869,13 @@
869
869
  "parameterSlots": 2,
870
870
  "returnSlots": 1
871
871
  },
872
- "abi_encode_tuple_t_contract$_TestERC20_$41373__to_t_address__fromStack_reversed": {
872
+ "abi_encode_tuple_t_contract$_TestERC20_$41400__to_t_address__fromStack_reversed": {
873
873
  "entryPoint": null,
874
874
  "id": null,
875
875
  "parameterSlots": 2,
876
876
  "returnSlots": 1
877
877
  },
878
- "abi_encode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr__to_t_struct$_TransferWithPayload_$37911_memory_ptr__fromStack_reversed": {
878
+ "abi_encode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr__to_t_struct$_TransferWithPayload_$37938_memory_ptr__fromStack_reversed": {
879
879
  "entryPoint": 2083,
880
880
  "id": null,
881
881
  "parameterSlots": 2,
@@ -2287,7 +2287,7 @@
2287
2287
  }
2288
2288
  ]
2289
2289
  },
2290
- "name": "abi_encode_tuple_t_contract$_TestERC20_$41373__to_t_address__fromStack_reversed",
2290
+ "name": "abi_encode_tuple_t_contract$_TestERC20_$41400__to_t_address__fromStack_reversed",
2291
2291
  "nodeType": "YulFunctionDefinition",
2292
2292
  "parameters": [
2293
2293
  {
@@ -5769,7 +5769,7 @@
5769
5769
  }
5770
5770
  ]
5771
5771
  },
5772
- "name": "abi_encode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr__to_t_struct$_TransferWithPayload_$37911_memory_ptr__fromStack_reversed",
5772
+ "name": "abi_encode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr__to_t_struct$_TransferWithPayload_$37938_memory_ptr__fromStack_reversed",
5773
5773
  "nodeType": "YulFunctionDefinition",
5774
5774
  "parameters": [
5775
5775
  {
@@ -8540,7 +8540,7 @@
8540
8540
  }
8541
8541
  ]
8542
8542
  },
8543
- "name": "abi_decode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr_fromMemory",
8543
+ "name": "abi_decode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr_fromMemory",
8544
8544
  "nodeType": "YulFunctionDefinition",
8545
8545
  "parameters": [
8546
8546
  {
@@ -8568,7 +8568,7 @@
8568
8568
  }
8569
8569
  ]
8570
8570
  },
8571
- "contents": "{\n { }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function validator_revert_uint16(value)\n {\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_uint256t_uint16t_bytes32t_uint256t_uint32(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let value := calldataload(add(headStart, 64))\n validator_revert_uint16(value)\n value2 := value\n value3 := calldataload(add(headStart, 96))\n value4 := calldataload(add(headStart, 128))\n value5 := abi_decode_uint32(add(headStart, 160))\n }\n function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffff))\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 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_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 abi_encode_tuple_t_contract$_TestERC20_$41373__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1198() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0100)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function array_allocation_size_bytes(length) -> size\n {\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\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 array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\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_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_addresst_uint256t_uint16t_bytes32t_uint32t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let value := calldataload(add(headStart, 64))\n validator_revert_uint16(value)\n value2 := value\n value3 := calldataload(add(headStart, 96))\n value4 := abi_decode_uint32(add(headStart, 128))\n let offset := calldataload(add(headStart, 160))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value5 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr__to_t_struct$_TransferWithPayload_$37911_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), and(mload(value0), 0xff))\n mstore(add(headStart, 64), mload(add(value0, 32)))\n mstore(add(headStart, 96), mload(add(value0, 64)))\n mstore(add(headStart, 128), and(mload(add(value0, 96)), 0xffff))\n mstore(add(headStart, 160), mload(add(value0, 128)))\n let memberValue0 := mload(add(value0, 160))\n abi_encode_uint16(memberValue0, add(headStart, 192))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_1 := mload(add(value0, 224))\n let _1 := 0x0100\n mstore(add(headStart, _1), _1)\n tail := abi_encode_bytes(memberValue0_1, add(headStart, 288))\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 value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_address_t_uint256_t_uint16_t_bytes32_t_uint256_t_uint32__to_t_address_t_uint256_t_uint16_t_bytes32_t_uint256_t_uint32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 192)\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), value4)\n mstore(add(headStart, 160), and(value5, 0xffffffff))\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_address_t_uint256_t_uint16_t_bytes32_t_uint32_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_uint8_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, 0xff))) { revert(0, 0) }\n }\n function abi_decode_uint16_fromMemory(offset) -> value\n {\n value := mload(offset)\n validator_revert_uint16(value)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_struct$_TransferWithPayload_$37911_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0100) { revert(0, 0) }\n let value := allocate_memory_1198()\n mstore(value, abi_decode_uint8_fromMemory(_2))\n mstore(add(value, 32), mload(add(_2, 32)))\n mstore(add(value, 64), mload(add(_2, 64)))\n mstore(add(value, 96), abi_decode_uint16_fromMemory(add(_2, 96)))\n mstore(add(value, 128), mload(add(_2, 128)))\n mstore(add(value, 160), abi_decode_uint16_fromMemory(add(_2, 160)))\n mstore(add(value, 192), mload(add(_2, 192)))\n let offset_1 := mload(add(_2, 224))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 224), abi_decode_bytes_fromMemory(add(_2, offset_1), dataEnd))\n value0 := value\n }\n}",
8571
+ "contents": "{\n { }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffffffffffffffffffffffffffffffffffff))) { revert(0, 0) }\n }\n function validator_revert_uint16(value)\n {\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_addresst_uint256t_uint16t_bytes32t_uint256t_uint32(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let value := calldataload(add(headStart, 64))\n validator_revert_uint16(value)\n value2 := value\n value3 := calldataload(add(headStart, 96))\n value4 := calldataload(add(headStart, 128))\n value5 := abi_decode_uint32(add(headStart, 160))\n }\n function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffff))\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 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_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 abi_encode_tuple_t_contract$_TestERC20_$41400__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffffffffffffffffffffffffffffffffffffffff))\n }\n function panic_error_0x41()\n {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1198() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0100)\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function array_allocation_size_bytes(length) -> size\n {\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\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 array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\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_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_addresst_uint256t_uint16t_bytes32t_uint32t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5\n {\n if slt(sub(dataEnd, headStart), 192) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n let value := calldataload(add(headStart, 64))\n validator_revert_uint16(value)\n value2 := value\n value3 := calldataload(add(headStart, 96))\n value4 := abi_decode_uint32(add(headStart, 128))\n let offset := calldataload(add(headStart, 160))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value5 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr__to_t_struct$_TransferWithPayload_$37938_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), and(mload(value0), 0xff))\n mstore(add(headStart, 64), mload(add(value0, 32)))\n mstore(add(headStart, 96), mload(add(value0, 64)))\n mstore(add(headStart, 128), and(mload(add(value0, 96)), 0xffff))\n mstore(add(headStart, 160), mload(add(value0, 128)))\n let memberValue0 := mload(add(value0, 160))\n abi_encode_uint16(memberValue0, add(headStart, 192))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_1 := mload(add(value0, 224))\n let _1 := 0x0100\n mstore(add(headStart, _1), _1)\n tail := abi_encode_bytes(memberValue0_1, add(headStart, 288))\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 value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_address_t_uint256_t_uint16_t_bytes32_t_uint256_t_uint32__to_t_address_t_uint256_t_uint16_t_bytes32_t_uint256_t_uint32__fromStack_reversed(headStart, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 192)\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), value4)\n mstore(add(headStart, 160), and(value5, 0xffffffff))\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_address_t_uint256_t_uint16_t_bytes32_t_uint32_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_uint8_fromMemory(offset) -> value\n {\n value := mload(offset)\n if iszero(eq(value, and(value, 0xff))) { revert(0, 0) }\n }\n function abi_decode_uint16_fromMemory(offset) -> value\n {\n value := mload(offset)\n validator_revert_uint16(value)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_struct$_TransferWithPayload_$37938_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0100) { revert(0, 0) }\n let value := allocate_memory_1198()\n mstore(value, abi_decode_uint8_fromMemory(_2))\n mstore(add(value, 32), mload(add(_2, 32)))\n mstore(add(value, 64), mload(add(_2, 64)))\n mstore(add(value, 96), abi_decode_uint16_fromMemory(add(_2, 96)))\n mstore(add(value, 128), mload(add(_2, 128)))\n mstore(add(value, 160), abi_decode_uint16_fromMemory(add(_2, 160)))\n mstore(add(value, 192), mload(add(_2, 192)))\n let offset_1 := mload(add(_2, 224))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 224), abi_decode_bytes_fromMemory(add(_2, offset_1), dataEnd))\n value0 := value\n }\n}",
8572
8572
  "id": 130,
8573
8573
  "language": "Yul",
8574
8574
  "name": "#utility.yul"
@@ -8615,15 +8615,15 @@
8615
8615
  "storageLayout": {
8616
8616
  "storage": [
8617
8617
  {
8618
- "astId": 41906,
8618
+ "astId": 41960,
8619
8619
  "contract": "contracts/test/WormholeBridgeStub.sol:WormholeBridgeStub",
8620
8620
  "label": "wormholeToken",
8621
8621
  "offset": 0,
8622
8622
  "slot": "0",
8623
- "type": "t_contract(TestERC20)41373"
8623
+ "type": "t_contract(TestERC20)41400"
8624
8624
  },
8625
8625
  {
8626
- "astId": 41908,
8626
+ "astId": 41962,
8627
8627
  "contract": "contracts/test/WormholeBridgeStub.sol:WormholeBridgeStub",
8628
8628
  "label": "transferAmount",
8629
8629
  "offset": 0,
@@ -8631,7 +8631,7 @@
8631
8631
  "type": "t_uint256"
8632
8632
  },
8633
8633
  {
8634
- "astId": 41910,
8634
+ "astId": 41964,
8635
8635
  "contract": "contracts/test/WormholeBridgeStub.sol:WormholeBridgeStub",
8636
8636
  "label": "receiverAddress",
8637
8637
  "offset": 0,
@@ -8645,7 +8645,7 @@
8645
8645
  "label": "bytes32",
8646
8646
  "numberOfBytes": "32"
8647
8647
  },
8648
- "t_contract(TestERC20)41373": {
8648
+ "t_contract(TestERC20)41400": {
8649
8649
  "encoding": "inplace",
8650
8650
  "label": "contract TestERC20",
8651
8651
  "numberOfBytes": "20"
@@ -595,9 +595,9 @@
595
595
  "parameterSlots": 2,
596
596
  "returnSlots": 0
597
597
  },
598
- "@_42125": {
598
+ "@_42179": {
599
599
  "entryPoint": null,
600
- "id": 42125,
600
+ "id": 42179,
601
601
  "parameterSlots": 0,
602
602
  "returnSlots": 0
603
603
  },
@@ -134,9 +134,9 @@
134
134
  "evm": {
135
135
  "bytecode": {
136
136
  "functionDebugData": {
137
- "@_42181": {
137
+ "@_42235": {
138
138
  "entryPoint": null,
139
- "id": 42181,
139
+ "id": 42235,
140
140
  "parameterSlots": 1,
141
141
  "returnSlots": 0
142
142
  },
@@ -637,27 +637,27 @@
637
637
  },
638
638
  "deployedBytecode": {
639
639
  "functionDebugData": {
640
- "@bank_42136": {
640
+ "@bank_42190": {
641
641
  "entryPoint": null,
642
- "id": 42136,
642
+ "id": 42190,
643
643
  "parameterSlots": 0,
644
644
  "returnSlots": 0
645
645
  },
646
- "@donate_42223": {
646
+ "@donate_42277": {
647
647
  "entryPoint": 1226,
648
- "id": 42223,
648
+ "id": 42277,
649
649
  "parameterSlots": 1,
650
650
  "returnSlots": 0
651
651
  },
652
- "@receiveBalanceApproval_42269": {
652
+ "@receiveBalanceApproval_42323": {
653
653
  "entryPoint": 664,
654
- "id": 42269,
654
+ "id": 42323,
655
655
  "parameterSlots": 3,
656
656
  "returnSlots": 0
657
657
  },
658
- "@receiveBalanceIncrease_42329": {
658
+ "@receiveBalanceIncrease_42383": {
659
659
  "entryPoint": 187,
660
- "id": 42329,
660
+ "id": 42383,
661
661
  "parameterSlots": 4,
662
662
  "returnSlots": 0
663
663
  },
@@ -5126,7 +5126,7 @@
5126
5126
  "storageLayout": {
5127
5127
  "storage": [
5128
5128
  {
5129
- "astId": 42136,
5129
+ "astId": 42190,
5130
5130
  "contract": "contracts/vault/DonationVault.sol:DonationVault",
5131
5131
  "label": "bank",
5132
5132
  "offset": 0,