@across-protocol/contracts 5.0.11-alpha.4 → 5.0.12-alpha.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 (104) hide show
  1. package/contracts/external/interfaces/CCTPInterfaces.sol +18 -0
  2. package/contracts/handlers/MulticallHandler.sol +7 -1
  3. package/contracts/interfaces/SponsoredCCTPInterface.sol +11 -0
  4. package/contracts/libraries/SafeTransferERC20.sol +21 -0
  5. package/contracts/libraries/SponsoredCCTPQuoteLib.sol +22 -0
  6. package/contracts/libraries/TronTransferLib.sol +42 -0
  7. package/contracts/periphery/SpokePoolPeriphery.sol +4 -0
  8. package/contracts/periphery/counterfactual/CounterfactualDepositSpokePool.sol +7 -3
  9. package/contracts/periphery/counterfactual/CounterfactualDepositSpokePoolTr.sol +36 -0
  10. package/contracts/periphery/counterfactual/WithdrawImplementation.sol +3 -6
  11. package/contracts/periphery/counterfactual/WithdrawImplementationTron.sol +22 -0
  12. package/contracts/periphery/mintburn/ArbitraryEVMFlowExecutor.sol +38 -15
  13. package/contracts/periphery/mintburn/sponsored-cctp/SponsoredCCTPDstPeriphery.sol +41 -12
  14. package/contracts/sp1-helios/SP1AutoVerifier.sol +1 -1
  15. package/contracts/spoke-pools/SpokePool.sol +11 -6
  16. package/contracts/spoke-pools/Tron_SpokePool.sol +65 -0
  17. package/contracts/test/MockCCTP.sol +10 -0
  18. package/contracts/test/MockTronUSDT.sol +36 -0
  19. package/contracts/tron/TronCounterfactualImports.sol +4 -3
  20. package/contracts/tron/TronImports.sol +2 -2
  21. package/contracts/tron/TronPeripheryImports.sol +1 -1
  22. package/dist/broadcast/deployed-addresses.json +186 -121
  23. package/dist/evm/artifacts/AcrossMessageHandlerMock.sol/AcrossMessageHandlerMock.json +1 -1
  24. package/dist/evm/artifacts/AdminWithdrawManager.sol/AdminWithdrawManager.json +1 -1
  25. package/dist/evm/artifacts/Arbitrum_Adapter.sol/Arbitrum_Adapter.json +1 -1
  26. package/dist/evm/artifacts/Arbitrum_CustomGasToken_Adapter.sol/Arbitrum_CustomGasToken_Adapter.json +1 -1
  27. package/dist/evm/artifacts/Arbitrum_RescueAdapter.sol/Arbitrum_RescueAdapter.json +1 -1
  28. package/dist/evm/artifacts/Arbitrum_SendTokensAdapter.sol/Arbitrum_SendTokensAdapter.json +1 -1
  29. package/dist/evm/artifacts/Arbitrum_SpokePool.sol/Arbitrum_SpokePool.json +1 -1
  30. package/dist/evm/artifacts/Arbitrum_WithdrawalHelper.sol/Arbitrum_WithdrawalHelper.json +1 -1
  31. package/dist/evm/artifacts/Base_Adapter.sol/Base_Adapter.json +1 -1
  32. package/dist/evm/artifacts/Blast_Adapter.sol/Blast_Adapter.json +1 -1
  33. package/dist/evm/artifacts/Blast_SpokePool.sol/Blast_SpokePool.json +1 -1
  34. package/dist/evm/artifacts/Boba_SpokePool.sol/Boba_SpokePool.json +1 -1
  35. package/dist/evm/artifacts/CCTPInterfaces.sol/ITokenMessengerV2.json +1 -1
  36. package/dist/evm/artifacts/CCTPInterfaces.sol/ITokenMinter.json +1 -1
  37. package/dist/evm/artifacts/Cher_SpokePool.sol/Cher_SpokePool.json +1 -1
  38. package/dist/evm/artifacts/CircleCCTPAdapter.sol/CircleDomainIds.json +1 -1
  39. package/dist/evm/artifacts/CounterfactualDepositCCTP.sol/CounterfactualDepositCCTP.json +1 -1
  40. package/dist/evm/artifacts/CounterfactualDepositSpokePool.sol/CounterfactualDepositSpokePool.json +1 -1
  41. package/dist/evm/artifacts/CounterfactualDepositSpokePoolTr.sol/CounterfactualDepositSpokePoolTr.json +1 -0
  42. package/dist/evm/artifacts/DoctorWho_Adapter.sol/DoctorWho_Adapter.json +1 -1
  43. package/dist/evm/artifacts/DstOFTHandler.sol/DstOFTHandler.json +1 -1
  44. package/dist/evm/artifacts/Ethereum_SpokePool.sol/Ethereum_SpokePool.json +1 -1
  45. package/dist/evm/artifacts/HubPoolTestBase.sol/MockAddressWhitelist.json +1 -1
  46. package/dist/evm/artifacts/HubPoolTestBase.sol/MockFinder.json +1 -1
  47. package/dist/evm/artifacts/HubPoolTestBase.sol/MockIdentifierWhitelist.json +1 -1
  48. package/dist/evm/artifacts/HubPoolTestBase.sol/MockLpTokenFactory.json +1 -1
  49. package/dist/evm/artifacts/HubPoolTestBase.sol/MockOptimisticOracle.json +1 -1
  50. package/dist/evm/artifacts/HubPoolTestBase.sol/MockStore.json +1 -1
  51. package/dist/evm/artifacts/Ink_SpokePool.sol/Ink_SpokePool.json +1 -1
  52. package/dist/evm/artifacts/Lens_SpokePool.sol/Lens_SpokePool.json +1 -1
  53. package/dist/evm/artifacts/Linea_Adapter.sol/Linea_Adapter.json +1 -1
  54. package/dist/evm/artifacts/Linea_SpokePool.sol/Linea_SpokePool.json +1 -1
  55. package/dist/evm/artifacts/Lisk_Adapter.sol/Lisk_Adapter.json +1 -1
  56. package/dist/evm/artifacts/Lisk_SpokePool.sol/Lisk_SpokePool.json +1 -1
  57. package/dist/evm/artifacts/MockBedrockStandardBridge.sol/MockBedrockCrossDomainMessenger.json +1 -1
  58. package/dist/evm/artifacts/MockBedrockStandardBridge.sol/MockBedrockL1StandardBridge.json +1 -1
  59. package/dist/evm/artifacts/MockBedrockStandardBridge.sol/MockBedrockL2StandardBridge.json +1 -1
  60. package/dist/evm/artifacts/MockCCTP.sol/MockCCTPMessageTransmitter.json +1 -1
  61. package/dist/evm/artifacts/MockCCTP.sol/MockCCTPMessenger.json +1 -1
  62. package/dist/evm/artifacts/MockCCTP.sol/MockCCTPMessengerV2.json +1 -1
  63. package/dist/evm/artifacts/MockCCTP.sol/MockCCTPMinter.json +1 -1
  64. package/dist/evm/artifacts/MockOptimism_SpokePool.sol/MockOptimism_SpokePool.json +1 -1
  65. package/dist/evm/artifacts/MockSpokePool.sol/MockSpokePool.json +1 -1
  66. package/dist/evm/artifacts/MockSpokePoolV2.sol/MockSpokePoolV2.json +1 -1
  67. package/dist/evm/artifacts/MockTronUSDT.sol/MockTronUSDT.json +1 -0
  68. package/dist/evm/artifacts/Mode_Adapter.sol/Mode_Adapter.json +1 -1
  69. package/dist/evm/artifacts/MulticallHandler.sol/MulticallHandler.json +1 -1
  70. package/dist/evm/artifacts/OP_Adapter.sol/OP_Adapter.json +1 -1
  71. package/dist/evm/artifacts/OP_SpokePool.sol/OP_SpokePool.json +1 -1
  72. package/dist/evm/artifacts/Optimism_Adapter.sol/Optimism_Adapter.json +1 -1
  73. package/dist/evm/artifacts/Optimism_SpokePool.sol/Optimism_SpokePool.json +1 -1
  74. package/dist/evm/artifacts/Ovm_SpokePool.sol/Ovm_SpokePool.json +1 -1
  75. package/dist/evm/artifacts/Ovm_WithdrawalHelper.sol/Ovm_WithdrawalHelper.json +1 -1
  76. package/dist/evm/artifacts/PermissionedMulticallHandler.sol/PermissionedMulticallHandler.json +1 -1
  77. package/dist/evm/artifacts/PolygonZkEVM_SpokePool.sol/PolygonZkEVM_SpokePool.json +1 -1
  78. package/dist/evm/artifacts/Polygon_Adapter.sol/Polygon_Adapter.json +1 -1
  79. package/dist/evm/artifacts/Polygon_SpokePool.sol/Polygon_SpokePool.json +1 -1
  80. package/dist/evm/artifacts/SP1AutoVerifier.sol/SP1AutoVerifier.json +1 -1
  81. package/dist/evm/artifacts/Scroll_SpokePool.sol/Scroll_SpokePool.json +1 -1
  82. package/dist/evm/artifacts/Solana_Adapter.sol/Solana_Adapter.json +1 -1
  83. package/dist/evm/artifacts/SpokePool.sol/SpokePool.json +1 -1
  84. package/dist/evm/artifacts/SpokePoolPeriphery.sol/SpokePoolPeriphery.json +1 -1
  85. package/dist/evm/artifacts/SpokePoolPeriphery.sol/SwapProxy.json +1 -1
  86. package/dist/evm/artifacts/SponsoredCCTPDstPeriphery.sol/SponsoredCCTPDstPeriphery.json +1 -1
  87. package/dist/evm/artifacts/SponsoredCCTPInterface.sol/SponsoredCCTPInterface.json +1 -1
  88. package/dist/evm/artifacts/SponsoredCCTPSrcPeriphery.sol/SponsoredCCTPSrcPeriphery.json +1 -1
  89. package/dist/evm/artifacts/SponsoredOFTSrcPeriphery.sol/SponsoredOFTSrcPeriphery.json +1 -1
  90. package/dist/evm/artifacts/TronTransferLib.sol/TronTransferLib.json +1 -0
  91. package/dist/evm/artifacts/Tron_SpokePool.sol/Tron_SpokePool.json +1 -0
  92. package/dist/evm/artifacts/Universal_Adapter.sol/Universal_Adapter.json +1 -1
  93. package/dist/evm/artifacts/Universal_SpokePool.sol/Universal_SpokePool.json +1 -1
  94. package/dist/evm/artifacts/WithdrawImplementation.sol/WithdrawImplementation.json +1 -1
  95. package/dist/evm/artifacts/WithdrawImplementationTron.sol/WithdrawImplementationTron.json +1 -0
  96. package/dist/evm/artifacts/WorldChain_SpokePool.sol/WorldChain_SpokePool.json +1 -1
  97. package/dist/evm/artifacts/ZkStack_Adapter.sol/ZkStack_Adapter.json +1 -1
  98. package/dist/evm/artifacts/ZkStack_CustomGasToken_Adapter.sol/ZkStack_CustomGasToken_Adapter.json +1 -1
  99. package/dist/evm/artifacts/ZkSync_SpokePool.sol/ZkSync_SpokePool.json +1 -1
  100. package/dist/evm/artifacts/Zora_Adapter.sol/Zora_Adapter.json +1 -1
  101. package/dist/evm/artifacts/eraVM_EIP7702.sol/SimpleContract.json +1 -1
  102. package/dist/evm/artifacts/eraVM_EIP7702.sol/SpokePoolEIP7702Test.json +1 -1
  103. package/dist/evm/artifacts/eraVM_EIP7702.sol/TestableMockSpokePool.json +1 -1
  104. package/package.json +3 -3
@@ -1 +1 @@
1
- {"abi":[{"type":"constructor","inputs":[{"name":"_rootChainManager","type":"address","internalType":"contract IRootChainManager"},{"name":"_fxStateSender","type":"address","internalType":"contract IFxStateSender"},{"name":"_depositManager","type":"address","internalType":"contract DepositManager"},{"name":"_erc20Predicate","type":"address","internalType":"address"},{"name":"_l1Matic","type":"address","internalType":"address"},{"name":"_l1Weth","type":"address","internalType":"contract WETH9Interface"},{"name":"_l1Usdc","type":"address","internalType":"contract IERC20"},{"name":"_cctpTokenMessenger","type":"address","internalType":"contract ITokenMessenger"},{"name":"_adapterStore","type":"address","internalType":"address"},{"name":"_oftDstEid","type":"uint32","internalType":"uint32"},{"name":"_oftFeeCap","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"DEPOSIT_MANAGER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract DepositManager"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_MSG_BYTES","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"ERC20_PREDICATE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"FX_STATE_SENDER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IFxStateSender"}],"stateMutability":"view"},{"type":"function","name":"L1_MATIC","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"L1_WETH","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract WETH9Interface"}],"stateMutability":"view"},{"type":"function","name":"OFT_ADAPTER_STORE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract AdapterStore"}],"stateMutability":"view"},{"type":"function","name":"OFT_DST_EID","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"OFT_FEE_CAP","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ROOT_CHAIN_MANAGER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRootChainManager"}],"stateMutability":"view"},{"type":"function","name":"cctpTokenMessenger","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ITokenMessenger"}],"stateMutability":"view"},{"type":"function","name":"cctpV2","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"recipientCircleDomainId","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"relayMessage","inputs":[{"name":"target","type":"address","internalType":"address"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"relayTokens","inputs":[{"name":"l1Token","type":"address","internalType":"address"},{"name":"l2Token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"usdcToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"event","name":"MessageRelayed","inputs":[{"name":"target","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"TokensRelayed","inputs":[{"name":"l1Token","type":"address","indexed":false,"internalType":"address"},{"name":"l2Token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"to","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"OftFeeCapExceeded","inputs":[]},{"type":"error","name":"OftIncorrectAmountReceivedLD","inputs":[]},{"type":"error","name":"OftIncorrectAmountSentLD","inputs":[]},{"type":"error","name":"OftInsufficientBalanceForFee","inputs":[]},{"type":"error","name":"OftLzFeeNotZero","inputs":[]}],"bytecode":"0x61022080604052346102ee5761016081611871803803809161002182856102f2565b8339810103126102ee5780516001600160a01b03811681036102ee5760208201516001600160a01b03811681036102ee5760408301516001600160a01b03811681036102ee5761007360608501610315565b9161008060808601610315565b60a0860151959094906001600160a01b03871687036102ee5760c08101516001600160a01b03811681036102ee5760e08201516001600160a01b038116908181036102ee576100d26101008501610315565b936101208101519263ffffffff841684036102ee575f92610140849301519560a05260c0526007608052604051602081019063011a412160e61b82526004815261011d6024826102f2565b51915afa3d156102e7573d6001600160401b0381116102d3576040519061014e601f8201601f1916602001836102f2565b81523d5f602083013e5b816102c7575b81610291575b5060e05261012052610100526001600160a01b03166101405261016052610180526101a0526101c0526101e05261020052604051611547908161032a82396080518181816104680152818161085101526108ff015260a051818181610737015281816110670152611178015260c0518181816103a901526106f9015260e0518181816103e501526107c60152610100518181816104a40152610b45015261012051818181610427015261054c015261014051818181610365015261058b0152610160518181816103210152818161062c0152610f5e01526101805181818161013401526101bb01526101a051818181610e7601526110f401526101c05181818160ed0152610f2f01526101e0518181816102980152610e3d0152610200518181816105bf01526111370152f35b90506020815191015190602081106102b6575b506001600160a01b031615155f610164565b5f199060200360031b1b165f6102a4565b8051602014915061015e565b634e487b7160e01b5f52604160045260245ffd5b6060610158565b5f80fd5b601f909101601f19168101906001600160401b038211908210176102d357604052565b51906001600160a01b03821682036102ee5756fe6080806040526004361015610012575f80fd5b5f905f3560e01c90816311eac8551461115b575080631efd482a1461111857806337a9c983146110d557806352c8c75c146104c757806361a04d301461048c5780636e4009831461044b5780636fd5c10e1461040a578063775c0d03146103cd5780639748cf7c14610389578063a6ec815e14610345578063aeeeae9b14610301578063b4c0d7ab146102bc578063c55e9e3614610278578063e6eb8ade14610158578063f5ebf4c4146101145763fd5f2d83146100ce575f80fd5b3461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b80fd5b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b5060403660031901126101115761016d61119c565b60243567ffffffffffffffff811161027457366023820112156102745780600401359167ffffffffffffffff8311610261576024820191602484369201011161026157836001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102705781604051809263b472047760e01b82528183816102048b8b8b60048501611244565b03925af180156102655761024c575b50506102467f9e6c52944e331ba6270e7fe4cea2a4086bae8f7a27e1cdba07f416806f5d0ac49360405193849384611244565b0390a180f35b81610256916111fe565b61026157835f610213565b8380fd5b6040513d84823e3d90fd5b5080fd5b8280fd5b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346101115780600319360112610111576020604051916102dd82846111fe565b8252601f19810136828401376102fd604051928284938452830190611220565b0390f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040517f000000000000000000000000000000000000000000000000000000000000000015158152f35b5034610111578060031936011261011157602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b5034610111578060031936011261011157602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b5060803660031901126109cb576104dc61119c565b602435906001600160a01b0382168092036109cb5760443591606435906001600160a01b0382168092036109cb576040516323df66fb60e21b81527f4f46545f4d455353454e4745520000000000000000000000000000000000000060048201526001600160a01b0363ffffffff7f0000000000000000000000000000000000000000000000000000000000000000169485602484015216938460448301526020826064816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa80156110515787925f9161108e575b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316918683036106f3575050803b1561027057818091602460405180948193632e1a7d4d60e01b83528b60048401525af18015610265576106de575b506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b15610270578186916024604051809481936327d5451360e11b83528960048401525af18015610265576106bf575b5050907fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93608093925b604051938452602084015260408301526060820152a180f35b816106cd91959493956111fe565b6106da579091845f61067c565b8480fd5b816106e8916111fe565b6106da57845f610621565b959694957f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316935091508215158061105c575b15610a2d5750507f00000000000000000000000000000000000000000000000000000000000000009061076284828461127a565b6040516332dd704760e21b815291602083600481855afa9283156109d75788936109e2575b509060206001600160a01b03809316936024604051809581936352b7631960e11b8352886004840152165afa9182156109d757889261099f575b5090917f0000000000000000000000000000000000000000000000000000000000000000919085805b61081f575050505050917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b8481111561099957845b84156108e957833b156108e5578a604051634701287760e11b815282600482015263ffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201528a60448201528460648201528160848201528160a48201526107d060c4820152818160e481838a5af18015610265576108d0575b50505b81039081116108bc57806107ea565b634e487b7160e01b8a52601160045260248afd5b816108da916111fe565b6108e5578a5f6108aa565b8a80fd5b6040516337e9a82760e11b8152600481018290527f000000000000000000000000000000000000000000000000000000000000000063ffffffff166024820152604481018a9052606481018490526020816084818f895af1801561098e57610952575b506108ad565b6020813d8211610986575b8161096a602093836111fe565b810103126109825761097b90611492565b505f61094c565b8b80fd5b3d915061095d565b6040513d8e823e3d90fd5b80610829565b9091506020813d6020116109cf575b816109bb602093836111fe565b810103126109cb5751905f6107c1565b5f80fd5b3d91506109ae565b6040513d8a823e3d90fd5b9092506020813d602011610a25575b816109fe602093836111fe565b81010312610a215751906001600160a01b0382168203610a215790916020610787565b8780fd5b3d91506109f1565b9091506001600160a01b03168015610e3557606060c0604051610a4f816111b2565b89815289602082015289604082015289838201528260808201528260a08201520152866020604051610a80816111e2565b8281520152604051602091610a9583836111fe565b888252601f198301803685850137604051610ab085826111fe565b8a815281368683013760405191610ac786846111fe565b8b8352368684013760405195610adc876111b2565b865288858701526040860193888552886060880152608087015260a086015260c085015260405193633b6f743b60e01b85526040600486015260408580610b266044820185611422565b8d60248301520381855afa948515610e2a578a95610def575b508451907f00000000000000000000000000000000000000000000000000000000000000008211610de057478211610dd157848601938451610dc2578a9695949260c094928d610bc8610c2094519a82808d610bd68d60405196879182019363095ea7b360e01b85528d60248401602090939291936001600160a01b0360408201951681520152565b03601f1981018752866111fe565b84519082855af1610be56114a7565b81610d92575b5080610d88575b15610d44575b5050506040519788958694859363c7c7f5b360e01b8552608060048601526084850190611422565b9151602484015251604483015230606483015203925af19182156109d7578892610c9e575b508101518203610c8f575103610c8157917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b623c548b60ea1b8552600485fd5b631bfc3cb560e11b8752600487fd5b90915060c03d60c011610d3d575b610cb681836111fe565b81019080820360c08112610d3957608013610d35576040516060810181811067ffffffffffffffff821117610d215760405281518152610d1a9291608091610cff868301611492565b868201526040610d11858285016113fa565b910152016113fa565b905f610c45565b634e487b7160e01b8b52604160045260248bfd5b8880fd5b8980fd5b503d610cac565b610d7b610d80936040519063095ea7b360e01b8d830152896024830152604482015260448152610d756064826111fe565b82611369565b611369565b8d5f8e610bf8565b50803b1515610bf2565b8051801592508c908315610daa575b5050505f610beb565b610dba9350820181019101611351565b5f8b81610da1565b630e282ec960e21b8c5260048cfd5b63a6226f8560e01b8b5260048bfd5b631754d7a960e01b8b5260048bfd5b90945060403d604011610e23575b610e0781836111fe565b81016040828203126108e557610e1c916113fa565b935f610b3f565b503d610dfd565b6040513d8c823e3d90fd5b5091939291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168303610f2657846001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016610ea186828761127a565b803b1561027057818091606460405180948193638b9e4f9360e01b83528a60048401528960248401528b60448401525af1801561026557610f0b575b5050907fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93608093926106a6565b81610f1991959493956111fe565b6106da579091845f610edd565b610f54849293947f00000000000000000000000000000000000000000000000000000000000000008661127a565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166040519083602083015260208252610f976040836111fe565b803b156109cb57610fd65f9291839260405194858094819363e3dec8fb60e01b83528b60048401528c6024840152606060448401526064830190611220565b03925af1801561105157611012575b50917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b608093919550916110455f7fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b96946111fe565b5f959193509193610fe5565b6040513d5f823e3d90fd5b506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016871461072e565b919250506020813d6020116110cd575b816110ab602093836111fe565b810103126109cb5751906001600160a01b03821682036109cb5786915f6105bc565b3d915061109e565b346109cb575f3660031901126109cb5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346109cb575f3660031901126109cb5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346109cb575f3660031901126109cb576020906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b600435906001600160a01b03821682036109cb57565b60e0810190811067ffffffffffffffff8211176111ce57604052565b634e487b7160e01b5f52604160045260245ffd5b6040810190811067ffffffffffffffff8211176111ce57604052565b90601f8019910116810190811067ffffffffffffffff8211176111ce57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b91926060936001600160a01b03829316845260406020850152816040850152848401375f828201840152601f01601f1916010190565b91909160405191636eb1769f60e11b83523060048401526001600160a01b03841660248401526020836044816001600160a01b0386165afa928315611051575f9361131d575b5082018092116113095760405163095ea7b360e01b60208201526001600160a01b039390931660248401526044808401929092529082526113079190610d7b6064836111fe565b565b634e487b7160e01b5f52601160045260245ffd5b9092506020813d602011611349575b81611339602093836111fe565b810103126109cb5751915f6112c0565b3d915061132c565b908160209103126109cb575180151581036109cb5790565b906001600160a01b036113ca92165f80604051936113886040866111fe565b602085527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564602086015260208151910182855af16113c46114a7565b916114e6565b80519081159182156113e0575b5050156109cb57565b6113f39250602080918301019101611351565b5f806113d7565b91908260409103126109cb57604051611412816111e2565b6020808294805184520151910152565b61148f9163ffffffff825116815260208201516020820152604082015160408201526060820151606082015260c061147e61146c608085015160e0608086015260e0850190611220565b60a085015184820360a0860152611220565b9201519060c0818403910152611220565b90565b519067ffffffffffffffff821682036109cb57565b3d156114e1573d9067ffffffffffffffff82116111ce57604051916114d6601f8201601f1916602001846111fe565b82523d5f602084013e565b606090565b91925015611502578151156114f9575090565b3b156109cb5790565b5080519081156109cb57602001fdfea26469706673582212208d1bbb546616c95d5a218dae286edd827a4ca169f9266ebf7a8f3618c0fc390764736f6c634300081e0033"}
1
+ {"abi":[{"type":"constructor","inputs":[{"name":"_rootChainManager","type":"address","internalType":"contract IRootChainManager"},{"name":"_fxStateSender","type":"address","internalType":"contract IFxStateSender"},{"name":"_depositManager","type":"address","internalType":"contract DepositManager"},{"name":"_erc20Predicate","type":"address","internalType":"address"},{"name":"_l1Matic","type":"address","internalType":"address"},{"name":"_l1Weth","type":"address","internalType":"contract WETH9Interface"},{"name":"_l1Usdc","type":"address","internalType":"contract IERC20"},{"name":"_cctpTokenMessenger","type":"address","internalType":"contract ITokenMessenger"},{"name":"_adapterStore","type":"address","internalType":"address"},{"name":"_oftDstEid","type":"uint32","internalType":"uint32"},{"name":"_oftFeeCap","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"DEPOSIT_MANAGER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract DepositManager"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_MSG_BYTES","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"ERC20_PREDICATE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"FX_STATE_SENDER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IFxStateSender"}],"stateMutability":"view"},{"type":"function","name":"L1_MATIC","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"L1_WETH","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract WETH9Interface"}],"stateMutability":"view"},{"type":"function","name":"OFT_ADAPTER_STORE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract AdapterStore"}],"stateMutability":"view"},{"type":"function","name":"OFT_DST_EID","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"OFT_FEE_CAP","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ROOT_CHAIN_MANAGER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRootChainManager"}],"stateMutability":"view"},{"type":"function","name":"cctpTokenMessenger","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ITokenMessenger"}],"stateMutability":"view"},{"type":"function","name":"cctpV2","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"recipientCircleDomainId","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"relayMessage","inputs":[{"name":"target","type":"address","internalType":"address"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"relayTokens","inputs":[{"name":"l1Token","type":"address","internalType":"address"},{"name":"l2Token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"usdcToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"event","name":"MessageRelayed","inputs":[{"name":"target","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"TokensRelayed","inputs":[{"name":"l1Token","type":"address","indexed":false,"internalType":"address"},{"name":"l2Token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"to","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"OftFeeCapExceeded","inputs":[]},{"type":"error","name":"OftIncorrectAmountReceivedLD","inputs":[]},{"type":"error","name":"OftIncorrectAmountSentLD","inputs":[]},{"type":"error","name":"OftInsufficientBalanceForFee","inputs":[]},{"type":"error","name":"OftLzFeeNotZero","inputs":[]}],"bytecode":"0x61022080604052346102ee5761016081611871803803809161002182856102f2565b8339810103126102ee5780516001600160a01b03811681036102ee5760208201516001600160a01b03811681036102ee5760408301516001600160a01b03811681036102ee5761007360608501610315565b9161008060808601610315565b60a0860151959094906001600160a01b03871687036102ee5760c08101516001600160a01b03811681036102ee5760e08201516001600160a01b038116908181036102ee576100d26101008501610315565b936101208101519263ffffffff841684036102ee575f92610140849301519560a05260c0526007608052604051602081019063011a412160e61b82526004815261011d6024826102f2565b51915afa3d156102e7573d6001600160401b0381116102d3576040519061014e601f8201601f1916602001836102f2565b81523d5f602083013e5b816102c7575b81610291575b5060e05261012052610100526001600160a01b03166101405261016052610180526101a0526101c0526101e05261020052604051611547908161032a82396080518181816104680152818161085101526108ff015260a051818181610737015281816110670152611178015260c0518181816103a901526106f9015260e0518181816103e501526107c60152610100518181816104a40152610b45015261012051818181610427015261054c015261014051818181610365015261058b0152610160518181816103210152818161062c0152610f5e01526101805181818161013401526101bb01526101a051818181610e7601526110f401526101c05181818160ed0152610f2f01526101e0518181816102980152610e3d0152610200518181816105bf01526111370152f35b90506020815191015190602081106102b6575b506001600160a01b031615155f610164565b5f199060200360031b1b165f6102a4565b8051602014915061015e565b634e487b7160e01b5f52604160045260245ffd5b6060610158565b5f80fd5b601f909101601f19168101906001600160401b038211908210176102d357604052565b51906001600160a01b03821682036102ee5756fe6080806040526004361015610012575f80fd5b5f905f3560e01c90816311eac8551461115b575080631efd482a1461111857806337a9c983146110d557806352c8c75c146104c757806361a04d301461048c5780636e4009831461044b5780636fd5c10e1461040a578063775c0d03146103cd5780639748cf7c14610389578063a6ec815e14610345578063aeeeae9b14610301578063b4c0d7ab146102bc578063c55e9e3614610278578063e6eb8ade14610158578063f5ebf4c4146101145763fd5f2d83146100ce575f80fd5b3461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b80fd5b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b5060403660031901126101115761016d61119c565b60243567ffffffffffffffff811161027457366023820112156102745780600401359167ffffffffffffffff8311610261576024820191602484369201011161026157836001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b156102705781604051809263b472047760e01b82528183816102048b8b8b60048501611244565b03925af180156102655761024c575b50506102467f9e6c52944e331ba6270e7fe4cea2a4086bae8f7a27e1cdba07f416806f5d0ac49360405193849384611244565b0390a180f35b81610256916111fe565b61026157835f610213565b8380fd5b6040513d84823e3d90fd5b5080fd5b8280fd5b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346101115780600319360112610111576020604051916102dd82846111fe565b8252601f19810136828401376102fd604051928284938452830190611220565b0390f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040517f000000000000000000000000000000000000000000000000000000000000000015158152f35b5034610111578060031936011261011157602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b5034610111578060031936011261011157602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461011157806003193601126101115760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b5060803660031901126109cb576104dc61119c565b602435906001600160a01b0382168092036109cb5760443591606435906001600160a01b0382168092036109cb576040516323df66fb60e21b81527f4f46545f4d455353454e4745520000000000000000000000000000000000000060048201526001600160a01b0363ffffffff7f0000000000000000000000000000000000000000000000000000000000000000169485602484015216938460448301526020826064816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa80156110515787925f9161108e575b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316918683036106f3575050803b1561027057818091602460405180948193632e1a7d4d60e01b83528b60048401525af18015610265576106de575b506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b15610270578186916024604051809481936327d5451360e11b83528960048401525af18015610265576106bf575b5050907fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93608093925b604051938452602084015260408301526060820152a180f35b816106cd91959493956111fe565b6106da579091845f61067c565b8480fd5b816106e8916111fe565b6106da57845f610621565b959694957f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316935091508215158061105c575b15610a2d5750507f00000000000000000000000000000000000000000000000000000000000000009061076284828461127a565b6040516332dd704760e21b815291602083600481855afa9283156109d75788936109e2575b509060206001600160a01b03809316936024604051809581936352b7631960e11b8352886004840152165afa9182156109d757889261099f575b5090917f0000000000000000000000000000000000000000000000000000000000000000919085805b61081f575050505050917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b8481111561099957845b84156108e957833b156108e5578a604051634701287760e11b815282600482015263ffffffff7f00000000000000000000000000000000000000000000000000000000000000001660248201528a60448201528460648201528160848201528160a48201526107d060c4820152818160e481838a5af18015610265576108d0575b50505b81039081116108bc57806107ea565b634e487b7160e01b8a52601160045260248afd5b816108da916111fe565b6108e5578a5f6108aa565b8a80fd5b6040516337e9a82760e11b8152600481018290527f000000000000000000000000000000000000000000000000000000000000000063ffffffff166024820152604481018a9052606481018490526020816084818f895af1801561098e57610952575b506108ad565b6020813d8211610986575b8161096a602093836111fe565b810103126109825761097b90611492565b505f61094c565b8b80fd5b3d915061095d565b6040513d8e823e3d90fd5b80610829565b9091506020813d6020116109cf575b816109bb602093836111fe565b810103126109cb5751905f6107c1565b5f80fd5b3d91506109ae565b6040513d8a823e3d90fd5b9092506020813d602011610a25575b816109fe602093836111fe565b81010312610a215751906001600160a01b0382168203610a215790916020610787565b8780fd5b3d91506109f1565b9091506001600160a01b03168015610e3557606060c0604051610a4f816111b2565b89815289602082015289604082015289838201528260808201528260a08201520152866020604051610a80816111e2565b8281520152604051602091610a9583836111fe565b888252601f198301803685850137604051610ab085826111fe565b8a815281368683013760405191610ac786846111fe565b8b8352368684013760405195610adc876111b2565b865288858701526040860193888552886060880152608087015260a086015260c085015260405193633b6f743b60e01b85526040600486015260408580610b266044820185611422565b8d60248301520381855afa948515610e2a578a95610def575b508451907f00000000000000000000000000000000000000000000000000000000000000008211610de057478211610dd157848601938451610dc2578a9695949260c094928d610bc8610c2094519a82808d610bd68d60405196879182019363095ea7b360e01b85528d60248401602090939291936001600160a01b0360408201951681520152565b03601f1981018752866111fe565b84519082855af1610be56114a7565b81610d92575b5080610d88575b15610d44575b5050506040519788958694859363c7c7f5b360e01b8552608060048601526084850190611422565b9151602484015251604483015230606483015203925af19182156109d7578892610c9e575b508101518203610c8f575103610c8157917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b623c548b60ea1b8552600485fd5b631bfc3cb560e11b8752600487fd5b90915060c03d60c011610d3d575b610cb681836111fe565b81019080820360c08112610d3957608013610d35576040516060810181811067ffffffffffffffff821117610d215760405281518152610d1a9291608091610cff868301611492565b868201526040610d11858285016113fa565b910152016113fa565b905f610c45565b634e487b7160e01b8b52604160045260248bfd5b8880fd5b8980fd5b503d610cac565b610d7b610d80936040519063095ea7b360e01b8d830152896024830152604482015260448152610d756064826111fe565b82611369565b611369565b8d5f8e610bf8565b50803b1515610bf2565b8051801592508c908315610daa575b5050505f610beb565b610dba9350820181019101611351565b5f8b81610da1565b630e282ec960e21b8c5260048cfd5b63a6226f8560e01b8b5260048bfd5b631754d7a960e01b8b5260048bfd5b90945060403d604011610e23575b610e0781836111fe565b81016040828203126108e557610e1c916113fa565b935f610b3f565b503d610dfd565b6040513d8c823e3d90fd5b5091939291507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168303610f2657846001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016610ea186828761127a565b803b1561027057818091606460405180948193638b9e4f9360e01b83528a60048401528960248401528b60448401525af1801561026557610f0b575b5050907fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93608093926106a6565b81610f1991959493956111fe565b6106da579091845f610edd565b610f54849293947f00000000000000000000000000000000000000000000000000000000000000008661127a565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166040519083602083015260208252610f976040836111fe565b803b156109cb57610fd65f9291839260405194858094819363e3dec8fb60e01b83528b60048401528c6024840152606060448401526064830190611220565b03925af1801561105157611012575b50917fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b93916080936106a6565b608093919550916110455f7fd7e09655439c3932e55857df3220186e5a7f0980825f20691c2b35d941dee75b96946111fe565b5f959193509193610fe5565b6040513d5f823e3d90fd5b506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016871461072e565b919250506020813d6020116110cd575b816110ab602093836111fe565b810103126109cb5751906001600160a01b03821682036109cb5786915f6105bc565b3d915061109e565b346109cb575f3660031901126109cb5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346109cb575f3660031901126109cb5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346109cb575f3660031901126109cb576020906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b600435906001600160a01b03821682036109cb57565b60e0810190811067ffffffffffffffff8211176111ce57604052565b634e487b7160e01b5f52604160045260245ffd5b6040810190811067ffffffffffffffff8211176111ce57604052565b90601f8019910116810190811067ffffffffffffffff8211176111ce57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b91926060936001600160a01b03829316845260406020850152816040850152848401375f828201840152601f01601f1916010190565b91909160405191636eb1769f60e11b83523060048401526001600160a01b03841660248401526020836044816001600160a01b0386165afa928315611051575f9361131d575b5082018092116113095760405163095ea7b360e01b60208201526001600160a01b039390931660248401526044808401929092529082526113079190610d7b6064836111fe565b565b634e487b7160e01b5f52601160045260245ffd5b9092506020813d602011611349575b81611339602093836111fe565b810103126109cb5751915f6112c0565b3d915061132c565b908160209103126109cb575180151581036109cb5790565b906001600160a01b036113ca92165f80604051936113886040866111fe565b602085527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564602086015260208151910182855af16113c46114a7565b916114e6565b80519081159182156113e0575b5050156109cb57565b6113f39250602080918301019101611351565b5f806113d7565b91908260409103126109cb57604051611412816111e2565b6020808294805184520151910152565b61148f9163ffffffff825116815260208201516020820152604082015160408201526060820151606082015260c061147e61146c608085015160e0608086015260e0850190611220565b60a085015184820360a0860152611220565b9201519060c0818403910152611220565b90565b519067ffffffffffffffff821682036109cb57565b3d156114e1573d9067ffffffffffffffff82116111ce57604051916114d6601f8201601f1916602001846111fe565b82523d5f602084013e565b606090565b91925015611502578151156114f9575090565b3b156109cb5790565b5080519081156109cb57602001fdfea264697066735822122040d99c06d8146bce24611180f9dc03530e86ac22a55017cfdd623f15a5a9e3c464736f6c634300081e0033"}