@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":"_wrappedNativeTokenAddress","type":"address","internalType":"address"},{"name":"_depositQuoteTimeBuffer","type":"uint32","internalType":"uint32"},{"name":"_fillDeadlineBuffer","type":"uint32","internalType":"uint32"}],"stateMutability":"nonpayable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"EMPTY_MSG_BYTES","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_RELAYER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_REPAYMENT_CHAIN_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"INFINITE_FILL_DEADLINE","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MAX_EXCLUSIVITY_PERIOD_SECONDS","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MAX_TRANSFER_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"UPDATE_BYTES32_DEPOSIT_DETAILS_HASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"__SpokePool_init","inputs":[{"name":"_initialDepositId","type":"uint32","internalType":"uint32"},{"name":"_crossDomainAdmin","type":"address","internalType":"address"},{"name":"_withdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"chainId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"claimRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"bytes32","internalType":"bytes32"},{"name":"refundAddress","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"crossDomainAdmin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositDeprecated_5947912356","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"int64","internalType":"int64"},{"name":"","type":"uint32","internalType":"uint32"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositFor","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"int64","internalType":"int64"},{"name":"","type":"uint32","internalType":"uint32"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositNow","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"fillDeadlineOffset","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositQuoteTimeBuffer","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"depositV3","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositV3Now","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"fillDeadlineOffset","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"emergencyDeleteRootBundle","inputs":[{"name":"rootBundleId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeExternalCall","inputs":[{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"returnData","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"function","name":"executeRelayerRefundLeaf","inputs":[{"name":"rootBundleId","type":"uint32","internalType":"uint32"},{"name":"relayerRefundLeaf","type":"tuple","internalType":"struct SpokePoolInterface.RelayerRefundLeaf","components":[{"name":"amountToReturn","type":"uint256","internalType":"uint256"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"refundAmounts","type":"uint256[]","internalType":"uint256[]"},{"name":"leafId","type":"uint32","internalType":"uint32"},{"name":"l2TokenAddress","type":"address","internalType":"address"},{"name":"refundAddresses","type":"address[]","internalType":"address[]"}]},{"name":"proof","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeSlowRelayLeaf","inputs":[{"name":"slowFillLeaf","type":"tuple","internalType":"struct V3SpokePoolInterface.V3SlowFill","components":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"}]},{"name":"rootBundleId","type":"uint32","internalType":"uint32"},{"name":"proof","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fill","inputs":[{"name":"orderId","type":"bytes32","internalType":"bytes32"},{"name":"originData","type":"bytes","internalType":"bytes"},{"name":"fillerData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillDeadlineBuffer","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"fillRelay","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"},{"name":"repaymentAddress","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillRelayWithUpdatedDeposit","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"},{"name":"repaymentAddress","type":"bytes32","internalType":"bytes32"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillStatuses","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"fillV3Relay","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayDataLegacy","components":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getCurrentTime","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"address","internalType":"address"},{"name":"refundAddress","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUnsafeDepositId","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"depositNonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getV3RelayHash","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_initialDepositId","type":"uint32","internalType":"uint32"},{"name":"_withdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"multicall","inputs":[{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"results","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"numberOfDeposits","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"oftMessengers","inputs":[{"name":"l2TokenAddress","type":"address","internalType":"address"}],"outputs":[{"name":"l2OftMessenger","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pauseDeposits","inputs":[{"name":"pause","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pauseFills","inputs":[{"name":"pause","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pausedDeposits","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"pausedFills","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"relayRootBundle","inputs":[{"name":"relayerRefundRoot","type":"bytes32","internalType":"bytes32"},{"name":"slowRelayRoot","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"relayerRefund","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"requestSlowFill","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rootBundles","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"slowRelayRoot","type":"bytes32","internalType":"bytes32"},{"name":"relayerRefundRoot","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"setCrossDomainAdmin","inputs":[{"name":"newCrossDomainAdmin","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setOftMessenger","inputs":[{"name":"token","type":"address","internalType":"address"},{"name":"messenger","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setWithdrawalRecipient","inputs":[{"name":"newWithdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"speedUpDeposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"speedUpV3Deposit","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"address","internalType":"address"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"tryMulticall","inputs":[{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"results","type":"tuple[]","internalType":"struct MultiCallerUpgradeable.Result[]","components":[{"name":"success","type":"bool","internalType":"bool"},{"name":"returnData","type":"bytes","internalType":"bytes"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"unsafeDeposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"depositNonce","type":"uint256","internalType":"uint256"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"withdrawalRecipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"wrappedNativeToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract WETH9Interface"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdminExternalCallExecuted","inputs":[{"name":"target","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ClaimedRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"refundAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"caller","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"EmergencyDeletedRootBundle","inputs":[{"name":"rootBundleId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EnabledDepositRoute","inputs":[{"name":"originToken","type":"address","indexed":true,"internalType":"address"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"enabled","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"ExecutedRelayerRefundRoot","inputs":[{"name":"amountToReturn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"chainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"refundAmounts","type":"uint256[]","indexed":false,"internalType":"uint256[]"},{"name":"rootBundleId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"leafId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"l2TokenAddress","type":"address","indexed":false,"internalType":"address"},{"name":"refundAddresses","type":"address[]","indexed":false,"internalType":"address[]"},{"name":"deferredRefunds","type":"bool","indexed":false,"internalType":"bool"},{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"FilledRelay","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"repaymentChainId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"relayer","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"depositor","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"messageHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"relayExecutionInfo","type":"tuple","indexed":false,"internalType":"struct V3SpokePoolInterface.V3RelayExecutionEventInfo","components":[{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessageHash","type":"bytes32","internalType":"bytes32"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"fillType","type":"uint8","internalType":"enum V3SpokePoolInterface.FillType"}]}],"anonymous":false},{"type":"event","name":"FilledV3Relay","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"repaymentChainId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"relayer","type":"address","indexed":true,"internalType":"address"},{"name":"depositor","type":"address","indexed":false,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"relayExecutionInfo","type":"tuple","indexed":false,"internalType":"struct V3SpokePoolInterface.LegacyV3RelayExecutionEventInfo","components":[{"name":"updatedRecipient","type":"address","internalType":"address"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"fillType","type":"uint8","internalType":"enum V3SpokePoolInterface.FillType"}]}],"anonymous":false},{"type":"event","name":"FundsDeposited","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"quoteTimestamp","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"depositor","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PausedDeposits","inputs":[{"name":"isPaused","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PausedFills","inputs":[{"name":"isPaused","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"RelayedRootBundle","inputs":[{"name":"rootBundleId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"relayerRefundRoot","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"slowRelayRoot","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RequestedSlowFill","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"depositor","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"messageHash","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RequestedSpeedUpDeposit","inputs":[{"name":"updatedOutputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositor","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"updatedRecipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"depositorSignature","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RequestedSpeedUpV3Deposit","inputs":[{"name":"updatedOutputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"updatedRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"updatedMessage","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"depositorSignature","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RequestedV3SlowFill","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"depositor","type":"address","indexed":false,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"SetOFTMessenger","inputs":[{"name":"token","type":"address","indexed":true,"internalType":"address"},{"name":"messenger","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SetWithdrawalRecipient","inputs":[{"name":"newWithdrawalRecipient","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SetXDomainAdmin","inputs":[{"name":"newAdmin","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"TokensBridged","inputs":[{"name":"amountToReturn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"chainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"leafId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"l2TokenAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"V3FundsDeposited","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"quoteTimestamp","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"ClaimedMerkleLeaf","inputs":[]},{"type":"error","name":"DepositsArePaused","inputs":[]},{"type":"error","name":"DisabledRoute","inputs":[]},{"type":"error","name":"ExpiredFillDeadline","inputs":[]},{"type":"error","name":"ExternalCallExecutionFailed","inputs":[]},{"type":"error","name":"FillsArePaused","inputs":[]},{"type":"error","name":"InsufficientSpokePoolBalanceToExecuteLeaf","inputs":[]},{"type":"error","name":"InvalidBytes32","inputs":[]},{"type":"error","name":"InvalidChainId","inputs":[]},{"type":"error","name":"InvalidCrossDomainAdmin","inputs":[]},{"type":"error","name":"InvalidDepositorSignature","inputs":[]},{"type":"error","name":"InvalidExclusiveRelayer","inputs":[]},{"type":"error","name":"InvalidFillDeadline","inputs":[]},{"type":"error","name":"InvalidMerkleLeaf","inputs":[]},{"type":"error","name":"InvalidMerkleProof","inputs":[]},{"type":"error","name":"InvalidOutputToken","inputs":[]},{"type":"error","name":"InvalidPayoutAdjustmentPct","inputs":[]},{"type":"error","name":"InvalidQuoteTimestamp","inputs":[]},{"type":"error","name":"InvalidSlowFillRequest","inputs":[]},{"type":"error","name":"InvalidWithdrawalRecipient","inputs":[]},{"type":"error","name":"LowLevelCallFailed","inputs":[{"name":"data","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"MessageTooShort","inputs":[]},{"type":"error","name":"MsgValueDoesNotMatchInputAmount","inputs":[]},{"type":"error","name":"NoRelayerRefundToClaim","inputs":[]},{"type":"error","name":"NoSlowFillsInExclusivityWindow","inputs":[]},{"type":"error","name":"NotEOA","inputs":[]},{"type":"error","name":"NotExclusiveRelayer","inputs":[]},{"type":"error","name":"OFTFeeUnderpaid","inputs":[]},{"type":"error","name":"OFTTokenMismatch","inputs":[]},{"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":[]},{"type":"error","name":"RelayFilled","inputs":[]},{"type":"error","name":"RemovedFunction","inputs":[]},{"type":"error","name":"WrongERC7683OrderId","inputs":[]},{"type":"error","name":"ZeroAddressTarget","inputs":[]}],"bytecode":"0x6101403461015557601f61479638819003918201601f19168301916001600160401b03831184841017610159578084926060946040528339810103126101555780516001600160a01b03811691908290036101555761006c60406100656020840161016d565b920161016d565b91306080525f60c0525f60a05260e05261010052610120525f5460ff8160081c166101555760ff8082160361011b575b604051614617908161017f8239608051818181610f620152818161130f0152611466015260a05181611640015260c051816116b9015260e0518181816106f2015281816139b801528181613fa7015281816143b9015261443c0152610100518181816115df0152613b9701526101205181818161040e01526139640152f35b60ff90811916175f557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a15f61009c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b519063ffffffff821682036101555756fe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063079bd2c7146103df5780630cb84d9a146103da5780631186ec33146103d557806315348e441461036c57806317fcb39b146103d057806319c1648c146103cb5780631b3d5559146103c65780631fab657c146103c157806329cb924d146103bc5780632e378115146103b75780632e63e59a146103b25780633659cfe6146103ad578063437b9116146103a8578063490e49ef146103a3578063493a4f841461039e5780634f1ef286146103995780635285e0581461039457806352d1902d1461038f578063541f4f141461038a578063577f51f81461038557806357f6dcb8146103805780636068d6cb1461037b57806361a04d3014610376578063670fa8ac146103715780636bbbcd2e1461036c5780636fd5c10e14610367578063715018a614610362578063738b62e51461035d5780637659f9e0146103585780637aef642c146103535780637b9392321461034e5780637ef413e11461034957806382e2c43f146103445780638624c35c1461033f5780638a7860ce1461033a5780638b15788e146103355780638da5cb5b1461033057806397943aa91461032b578063979f2bc21461032657806399cc2968146103215780639a8a05921461031c578063a1244c6714610317578063a18a096e14610312578063ac9650d81461030d578063ad5425c614610308578063adb5a6a6146102c2578063b370b7f514610303578063b4c0d7ab146102fe578063babb6aac146102f9578063c35c83fc146102f4578063ceb4c987146102ef578063d7e1583a146102ea578063dda52113146102e5578063ddd224f1146102e0578063de7eba78146102db578063deff4b24146102d6578063ea86bd46146102d1578063ee2a53f8146102cc578063f2fde38b146102c7578063f79f29ed146102c25763fc8a584f0361000e576127e2565b612255565b6127a5565b612767565b6126c3565b6125d1565b61259a565b612571565b61254b565b612515565b612417565b6123ec565b61230d565b6122de565b61229c565b6121e4565b612145565b611fed565b611fc6565b611fac565b611f16565b611e28565b611d9a565b611d73565b611d02565b611c8a565b611b8e565b611a70565b611a3a565b6119a2565b611910565b6117e9565b611742565b6116dd565b61169d565b6106b9565b611663565b611629565b611603565b6115c3565b611546565b6114b6565b61144c565b611425565b6112cc565b611244565b611226565b611159565b610f3b565b610d42565b610bef565b610bc6565b610ac5565b6109a3565b61073b565b6106d3565b610652565b61045d565b6103f2565b5f9103126103ee57565b5f80fd5b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b6001600160a01b038116036103ee57565b60e4359061045082610432565b565b359061045082610432565b346103ee5760203660031901126103ee576001600160a01b0360043561048281610432565b165f5261087460205260206001600160a01b0360405f205416604051908152f35b608435908160070b82036103ee57565b60a435908160070b82036103ee57565b63ffffffff8116036103ee57565b6101043590610450826104c3565b6101243590610450826104c3565b6101443590610450826104c3565b6101643590610450826104c3565b3590610450826104c3565b634e487b7160e01b5f52604160045260245ffd5b6040810190811067ffffffffffffffff82111761054457604052565b610514565b6101a0810190811067ffffffffffffffff82111761054457604052565b6060810190811067ffffffffffffffff82111761054457604052565b90601f8019910116810190811067ffffffffffffffff82111761054457604052565b6040519061045060c083610582565b6040519061045061018083610582565b604051906104506101a083610582565b60405190610450608083610582565b67ffffffffffffffff811161054457601f01601f191660200190565b92919261060a826105e2565b916106186040519384610582565b8294818452818301116103ee578281602093845f960137010152565b9080601f830112156103ee5781602061064f933591016105fe565b90565b6101003660031901126103ee5761066a600435610432565b610675602435610432565b61067d6104a3565b5061068960a4356104c3565b60c43567ffffffffffffffff81116103ee576106a9903690600401610634565b506332ed1ba560e21b5f5260045ffd5b346103ee575f3660031901126103ee5760206040515f8152f35b346103ee575f3660031901126103ee5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b60409060031901126103ee5760043561072e81610432565b9060243561064f81610432565b346103ee5761074936610716565b610751613840565b6107596132b1565b6001600160a01b03811691821515806107f2575b6107e3576107b46001600160a01b0392610799836001600160a01b03165f5261087460205260405f2090565b906001600160a01b03166001600160a01b0319825416179055565b167f323983f5343e25b2c1396361b1b791be31484841fdfb95b8615cd02d910b1e085f80a36100186001606555565b63a63e8c6b60e01b5f5260045ffd5b50604051637e062a3560e11b8152602081600481875afa90811561085b575f9161082c575b506001600160a01b038083169116141561076d565b61084e915060203d602011610854575b6108468183610582565b8101906132c2565b5f610817565b503d61083c565b6132d7565b67ffffffffffffffff81116105445760051b60200190565b9080601f830112156103ee57813561088f81610860565b9261089d6040519485610582565b81845260208085019260051b8201019283116103ee57602001905b8282106108c55750505090565b81358152602091820191016108b8565b9080601f830112156103ee5781356108ec81610860565b926108fa6040519485610582565b81845260208085019260051b8201019283116103ee57602001905b8282106109225750505090565b60208091833561093181610432565b815201910190610915565b92919061094881610860565b936109566040519586610582565b602085838152019160051b81019283116103ee57905b82821061097857505050565b813581526020918201910161096c565b9080601f830112156103ee5781602061064f9335910161093c565b60603660031901126103ee576004356109bb816104c3565b6024359067ffffffffffffffff82116103ee5760c060031983360301126103ee576109e46105a4565b918060040135835260248101356020840152604481013567ffffffffffffffff81116103ee57610a1a9060043691840101610878565b6040840152610a2b60648201610509565b6060840152610a3c60848201610452565b608084015260a48101359067ffffffffffffffff82116103ee576004610a6592369201016108d5565b60a08301526044359167ffffffffffffffff83116103ee57610a8e610018933690600401610988565b91612812565b9181601f840112156103ee5782359167ffffffffffffffff83116103ee576020808501948460051b0101116103ee57565b346103ee5760603660031901126103ee5760043567ffffffffffffffff81116103ee578036039060606003198301126103ee57602435610b04816104c3565b60443567ffffffffffffffff81116103ee57610b24903690600401610a94565b919093610b2f6132b1565b60048401359061018219018112156103ee57610bbc94610bb793610b5a6004610bb0948801016129f4565b95610b6860808801516135b1565b506044610b74886131f3565b91013560208801519061016089015192610b8c6105a4565b998a5260208a01526040890152606088015260808701525f60a0870152369161093c565b90836135c7565b613649565b6100186001606555565b346103ee575f3660031901126103ee576020604051428152f35b90816101809103126103ee5790565b346103ee5760403660031901126103ee5760043567ffffffffffffffff81116103ee57610c20903690600401610be0565b602435610c2c826129ff565b6001600160a01b031691610c42602082016129ff565b6001600160a01b031690610c58604082016129ff565b6001600160a01b031690610c6e606082016129ff565b6001600160a01b0316610c83608083016129ff565b6001600160a01b031660e083013560c084013560a0850135610ca86101008701612a09565b93610cb66101208801612a09565b95610cc46101408901612a09565b976101608101610cd391612a13565b99909a610cde6105b3565b9d8e5260208e015260408d015260608c015260808b015260a08a015260c089015260e088015263ffffffff9081166101008801521661012086015263ffffffff166101408501523690610d30926105fe565b61016083015261001891339190613224565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee57610d73903690600401610be0565b610d7b6132b1565b60ff61086b5460e01c16610f2c5763ffffffff421690610140810190610db383610da484612a09565b63ffffffff9182169116101590565b610f1d5761012081019263ffffffff610dcb85612a09565b1610610f0e57610de3610dde3683612435565b6131f3565b90610df7825f5261087260205260405f2090565b54610f0057610e39610e337f3cee3e290f36226751cd0b3321b213890fe9c768e922f267fa6111836ce05c32935f5261087260205260405f2090565b60019055565b6060810135610ef360808301359260a08101359060c081013560e082013597610e70610e6a6101008501359b612a09565b91612a09565b604084013591843593610e9f610e9a610e93602089013598610160810190612a13565b36916105fe565b61374b565b966040519a8b9a8b969394610120989563ffffffff9485939d9c9b98946101408b019e8b5260208b015260408a015260608901521660808701521660a085015260c084015260e08301526101008201520152565b0390a36100186001606555565b624be79160e21b5f5260045ffd5b63d642b7d960e01b5f5260045ffd5b630277ae7b60e21b5f5260045ffd5b633d90fc5560e11b5f5260045ffd5b346103ee5760203660031901126103ee57600435610f5881610432565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168030146103ee576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416036103ee57610fc1613840565b610fc96122c3565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610ffd575061001890614172565b6040516352d1902d60e01b8152906020826004816001600160a01b0387165afa5f9281611063575b5061102e575f80fd5b6100189261105e7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5f9414612a69565b61409e565b61108691935060203d60201161108d575b61107e8183610582565b8101906133c2565b915f611025565b503d611074565b60206003198201126103ee576004359067ffffffffffffffff82116103ee576110bf91600401610a94565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b602081016020825282518091526040820191602060408360051b8301019401925f915b83831061111957505050505090565b909192939460208061114a600193603f198682030187526040838b51805115158452015191818582015201906110c3565b9701930193019193929061110a565b346103ee5761116736611094565b61117081610860565b9161117e6040519384610582565b818352601f1961118d83610860565b015f5b8181106112025750505f5b8281106111b457604051806111b086826110e7565b0390f35b806111fc6111c460019387612a70565b515f806111d2858989612a84565b906111e260405180938193612a9b565b0390305af4906111f0612aa8565b60208201529015159052565b0161119b565b60209060405161121181610528565b5f815260608382015282828801015201611190565b346103ee575f3660031901126103ee5760206040516301e133808152f35b346103ee5760403660031901126103ee57602435600435611263613840565b61126b6132b1565b61086c54680100000000000000008110156105445780600163ffffffff920161086c558361129882612744565b5084600182015555167fc86ba04c55bc5eb2f2876b91c438849a296dbec7b08751c3074d92e04f0a77af5f80a46001606555005b60403660031901126103ee576004356112e481610432565b60243567ffffffffffffffff81116103ee57611304903690600401610634565b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168030146103ee576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416036103ee5761136e613840565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156113a2576100189150614172565b6040516352d1902d60e01b81526020816004816001600160a01b0386165afa5f9181611404575b506113d2575f80fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc036103ee576100189160019161409e565b61141e91925060203d60201161108d5761107e8183610582565b905f6113c9565b346103ee575f3660031901126103ee5760206001600160a01b036108695416604051908152f35b346103ee575f3660031901126103ee576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036103ee5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b6101203660031901126103ee576114ce600435610432565b6114d9602435610432565b6114e4604435610432565b6114ec6104b3565b506114f860c4356104c3565b60e43567ffffffffffffffff81116103ee576106a9903690600401610634565b9181601f840112156103ee5782359167ffffffffffffffff83116103ee57602083818601950101116103ee57565b346103ee5760c03660031901126103ee5760043561156381610432565b6024356044359160643561157681610432565b60843567ffffffffffffffff81116103ee57611596903690600401611518565b9160a4359567ffffffffffffffff87116103ee576115bb610018973690600401611518565b969095612b2a565b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346103ee575f3660031901126103ee57602060ff61086b5460e81c166040519015158152f35b346103ee575f3660031901126103ee5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346103ee575f3660031901126103ee5760206040517f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f8152f35b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346103ee575f3660031901126103ee576116f5613840565b5f6001600160a01b03610c8c546001600160a01b03198116610c8c55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b801515036103ee57565b346103ee5760203660031901126103ee577fe88463c2f254e2b070013a2dc7ee1e099f9bc00534cbdf03af551dc26ae49219602060043561178281611738565b61178a613840565b6117926132b1565b151561086b547fffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e81b8360e81b1691161761086b55604051908152a16001606555005b90602061064f9281815201906110c3565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee5761181a903690600401611518565b611822613840565b61182a6132b1565b81016040828203126103ee5781359161184283610432565b60208101359167ffffffffffffffff83116103ee576001600160a01b039261186a9201610634565b911680156119015760048251106118f2575f8083516020850182855af190611890612aa8565b91156118e3577f41a941b8313293eca483f41d8faa2498e005e6d7700e2e93f41d3cb7e70a897d6118ca6111b094604051918291826117d8565b0390a26118d76001606555565b604051918291826117d8565b6348ebf0a960e11b5f5260045ffd5b637f5e6be560e01b5f5260045ffd5b634e93b52160e11b5f5260045ffd5b6101603660031901126103ee5760043561192981610432565b60243561193581610432565b6044359161194283610432565b60643561194e81610432565b60843560e43560c43560a43561196383610432565b61196b6104d1565b936119746104df565b95610144359967ffffffffffffffff8b116103ee5761199a6100189b3690600401611518565b9a9099612bcc565b6101803660031901126103ee576004356119bb81610432565b6024356119c781610432565b604435916119d483610432565b6064356119e081610432565b60843560a43560c4356119f1610443565b906119fa6104d1565b92611a036104df565b94611a0c6104ed565b96610164359a67ffffffffffffffff8c116103ee57611a326100189c3690600401611518565b9b909a612bee565b346103ee5760603660031901126103ee576020611a68600435611a5c81610432565b60243560443591612d14565b604051908152f35b346103ee5760603660031901126103ee5760043560243567ffffffffffffffff81116103ee57611aa4903690600401611518565b9060443567ffffffffffffffff81116103ee57611ac5903690600401611518565b9190936040516020810190611aee81611ae046898887612d52565b03601f198101835282610582565b51902003611b7f575f93611b09828695611b129401906124ef565b92810190612d6f565b51611b49611b27335b6001600160a01b031690565b91611ae060405193849260208401966337bfd2c960e21b885260248501612e3a565b5190305af4611b56612aa8565b9015611b5e57005b60405163b8fe37a760e01b8152908190611b7b90600483016117d8565b0390fd5b630f0c8f4760e11b5f5260045ffd5b346103ee5760403660031901126103ee57600435611bab816104c3565b611c02602435611bba81610432565b5f5492611be860ff600886901c1615611bd2565b1590565b80958196611c7c575b8115611c5c575b50612a69565b83611bf9600160ff195f5416175f55565b611c4557612e5c565b611c0857005b611c1661ff00195f54165f55565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b611c5761010061ff00195f5416175f55565b612e5c565b303b15915081611c6e575b505f611be2565b60ff1660011490505f611c67565b600160ff8216109150611bdb565b346103ee5760203660031901126103ee57600435611ca6613840565b611cae6132b1565b611cb781612744565b611cef576001815f80935501557f7c1af0646963afc3343245b103731965735a893347bfa0d58a5dc77a77ae691c5f80a26001606555005b634e487b7160e01b5f525f60045260245ffd5b6101a03660031901126103ee5760443560243560043560643560843560a4356101043560e43560c435611d336104df565b93611d3c6104ed565b95611d456104fb565b97610184359b67ffffffffffffffff8d116103ee57611d6b6100189d3690600401611518565b9c909b612f26565b346103ee575f3660031901126103ee5760206001600160a01b03610c8c5416604051908152f35b346103ee5760e03660031901126103ee5760043567ffffffffffffffff81116103ee57611dcb903690600401610be0565b602435604435916064356084359060a43567ffffffffffffffff81116103ee57611df9903690600401611518565b92909160c4359667ffffffffffffffff88116103ee57611e20610018983690600401611518565b979096612f9e565b346103ee5760603660031901126103ee57600435611e45816104c3565b60243590611e5282610432565b60443590611e5f82610432565b60ff5f5460081c16156103ee57611e939063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b6040805192611ea28285610582565b600984526020808501926820a1a927a9a996ab1960b91b8452611ec781519182610582565b6005815201640312e302e360dc1b815260ff5f5460081c16156103ee576005611f11936100189651902091209061047f5561048055611f04613bcc565b611f0c613bdb565b613bef565b613c47565b346103ee5760203660031901126103ee577f2d5b62420992e5a4afce0e77742636ca2608ef58289fd2e1baa5161ef6e7e41e6020600435611f5681611738565b611f5e613840565b611f666132b1565b151561086b547fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e01b8360e01b1691161761086b55604051908152a16001606555005b346103ee575f3660031901126103ee576020604051468152f35b346103ee575f3660031901126103ee57602063ffffffff61086b5460c01c16604051908152f35b346103ee5760403660031901126103ee5760043560243561200d82613dbc565b6001600160a01b03821691825f5261087360205261203e60405f20336001600160a01b03165f5260205260405f2090565b549283156120d7576120875f9161205484613dbc565b61207133916001600160a01b03165f5261087360205260405f2090565b906001600160a01b03165f5260205260405f2090565b556120a783612098611b1b846135b1565b6120a1856135b1565b90613c9f565b60405192835233927f6c172ea51018fb2eb2118f3f8a507c4df71eb519b8c0052834dc3c920182fef490602090a4005b6336542bf760e21b5f5260045ffd5b602081016020825282518091526040820191602060408360051b8301019401925f915b83831061211857505050505090565b9091929394602080612136600193603f1986820301875289516110c3565b97019301930191939290612109565b346103ee5761215336611094565b9061215d8261308c565b915f5b81811061217557604051806111b086826120e6565b5f80612182838587612a84565b9061219260405180938193612a9b565b0390305af461219f612aa8565b90156121c557906001916121b38287612a70565b526121be8186612a70565b5001612160565b60448151106103ee578060248060046103ee94015183010191016130d5565b6101803660031901126103ee576044356024356004356064356084356101043560e43560c43560a435612216846104c3565b61221e6104df565b946122276104ed565b96610164359a67ffffffffffffffff8c116103ee5761224d6100189c3690600401611518565b9b909a613138565b346103ee5760206122936001600160a01b0361227036610716565b91165f52610873835260405f20906001600160a01b03165f5260205260405f2090565b54604051908152f35b346103ee575f3660031901126103ee5760206001600160a01b0361086a5416604051908152f35b604051906122d2602083610582565b5f808352366020840137565b346103ee575f3660031901126103ee576111b06122f96122c3565b6040519182916020835260208301906110c3565b346103ee5760c03660031901126103ee5760043560243560443560643560843567ffffffffffffffff81116103ee5761234a903690600401611518565b60a4939193359067ffffffffffffffff82116103ee577f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c26946123936123e2933690600401611518565b92909161239e6132b1565b6123a78a613dbc565b6123d6898b89896123b93688886105fe565b926123c5368b8b6105fe565b946001600160a01b03469216613760565b60405196879687612af7565b0390a36001606555005b346103ee5760203660031901126103ee576004355f52610872602052602060405f2054604051908152f35b346103ee575f3660031901126103ee57602060405163ffffffff8152f35b919091610180818403126103ee5761244b6105b3565b92813584526020820135602085015260408201356040850152606082013560608501526080820135608085015260a082013560a085015260c082013560c085015260e082013560e08501526101008201356101008501526124af6101208301610509565b6101208501526124c26101408301610509565b61014085015261016082013567ffffffffffffffff81116103ee576124e79201610634565b610160830152565b906020828203126103ee57813567ffffffffffffffff81116103ee5761064f9201612435565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee57611a68610dde6020923690600401612435565b346103ee575f3660031901126103ee57602060ff61086b5460e01c166040519015158152f35b346103ee575f3660031901126103ee5760206040516ec097ce7bc90715b34b9f10000000008152f35b346103ee5760203660031901126103ee576125ca6004356125ba81610432565b6125c2613840565b611f0c6132b1565b6001606555005b346103ee5760603660031901126103ee5760043567ffffffffffffffff81116103ee57612602903690600401612435565b60243590604435906126126132b1565b60ff61086b5460e01c16610f2c5761014081015163ffffffff166126414263ffffffff165b9163ffffffff1690565b1015806126a4575b61269557610bbc9261265a826131f3565b60c0830151602084015190610160850151926126746105a4565b958652602086015260408501526060840152608083015260a08201526136c2565b630c3a9b9d60e41b5f5260045ffd5b506126b260408201516135b1565b6001600160a01b0316331415612649565b6101603660031901126103ee576044356024356004356064356101043560e43560c43560a4356084356126f5856104c3565b6101243595612703876104c3565b610144359967ffffffffffffffff8b116103ee576127286100189b3690600401611518565b9a9099613290565b634e487b7160e01b5f52603260045260245ffd5b61086c548110156127625761086c5f52600360205f20910201905f90565b612730565b346103ee5760203660031901126103ee5760043561086c548110156103ee57612791604091612744565b506001815491015482519182526020820152f35b346103ee5760203660031901126103ee576004356127c281610432565b6127ca613840565b6001600160a01b038116156103ee5761001890613855565b346103ee5760203660031901126103ee576125ca60043561280281610432565b61280a613840565b611f116132b1565b919061281c6132b1565b60208101918251460361292857611bce6128449183600161283c88612744565b5001546132e2565b612919577ff4ad92585b1bc117fbdd644990adf0827bc4c95baeae8a23322af807b6d0020e63ffffffff606083019361288a612884865163ffffffff1690565b87613366565b61290c81519185519560408101966128f66128e86128d78a51976128b28d5163ffffffff1690565b9860808701996128c98b516001600160a01b031690565b9160a08901978851946133de565b9351945199519a5163ffffffff1690565b95516001600160a01b031690565b90519086604051978897169b16993394876129a6565b0390a46104506001606555565b63582f497d60e11b5f5260045ffd5b633d23e4d160e11b5f5260045ffd5b90602080835192838152019201905f5b8181106129545750505090565b8251845260209384019390920191600101612947565b90602080835192838152019201905f5b8181106129875750505090565b82516001600160a01b031684526020938401939092019160010161297a565b949695919260a0946001600160a01b036129d281966129e6958a5260c060208b015260c08a0190612937565b92166040880152868203606088015261296a565b951515608085015216910152565b61064f903690612435565b3561064f81610432565b3561064f816104c3565b903590601e19813603018212156103ee570180359067ffffffffffffffff82116103ee576020019181360383136103ee57565b634e487b7160e01b5f52602160045260245ffd5b60031115612a6457565b612a46565b156103ee57565b80518210156127625760209160051b010190565b90821015612762576110bf9160051b810190612a13565b908092918237015f815290565b3d15612ad2573d90612ab9826105e2565b91612ac76040519384610582565b82523d5f602084013e565b606090565b908060209392818452848401375f828201840152601f01601f1916010190565b94929093612b1c9261064f979587526020870152608060408701526080860191612ad7565b926060818503910152612ad7565b92957f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c26956001600160a01b039586612b94959a949916612b868a8c83612b713688886105fe565b91612b7d368b8b6105fe565b9346908d613760565b604051978897169a87612af7565b0390a3565b634e487b7160e01b5f52601160045260245ffd5b9063ffffffff8091169116019063ffffffff8211612bc757565b612b99565b96949290916104509b9a9998969492612bec63ffffffff42169889612bad565b985b9593919b999897969492909b612c026132b1565b61086b5460ff8160e81c16612d055760c01c63ffffffff1696612c24886131dc565b612c4b9063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b612c536105c3565b9d6001600160a01b038f921682526001600160a01b031690602001526001600160a01b031660408d01526001600160a01b031660608c015260808b015260a08a015260c08901526001600160a01b031660e088015263ffffffff16610100870152610120860190612cc9919063ffffffff169052565b63ffffffff1661014085015263ffffffff166101608401523690612cec926105fe565b610180820152612cfb906138ff565b6104506001606555565b630b4cba3160e31b5f5260045ffd5b916040519160208301936bffffffffffffffffffffffff199060601b1684526034830152605482015260548152612d4c607482610582565b51902090565b939291602091612d6a91604087526040870191612ad7565b930152565b908160209103126103ee57604051906020820182811067ffffffffffffffff8211176105445760405235815290565b9061018061016061064f93805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a081015160a085015260c081015160c085015260e081015160e0850152610100810151610100850152612e1861012082015161012086019063ffffffff169052565b6101408181015163ffffffff16908501520151918161016082015201906110c3565b612e5260409295949395606083526060830190612d9e565b9460208201520152565b60ff5f5460081c16156103ee57612e7233613855565b60ff5f5460081c16156103ee57612ea69063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b6040908151612eb58382610582565b600981526020808201936820a1a927a9a996ab1960b91b8552612eda81519182610582565b600581520190640312e302e360dc1b825260ff5f5460081c16156103ee576104509360059151902091209061047f5561048055612f15613bcc565b612f1d613bdb565b611f1181613bef565b9c9a9998979695949392919096612f3b6132b1565b60ff61086b5460e81c16612d0557612f54908e33612d14565b96604051809e612f6382610549565b81526020015260408d015260608c015260808b015260a08a015260c089015260e088015261010087015263ffffffff16610120860152612cc9565b979290959694939196612faf6132b1565b60ff61086b5460e01c16610f2c57612fca6101408a01612a09565b612fd94263ffffffff16612637565b10158061306d575b61269557612cfb9861306261306897612ffd610dde3685612435565b996130066105a4565b9a6130113686612435565b8c5260208c01528560408c01528660608c015261302f36868b6105fe565b60808c015260a08b015261305a61304684356135b1565b9860e06101008601359501359536916105fe565b9636916105fe565b95613760565b6136c2565b5061307b60408a01356135b1565b6001600160a01b0316331415612fe1565b9061309682610860565b6130a36040519182610582565b82815280926130b4601f1991610860565b01905f5b8281106130c457505050565b8060606020809385010152016130b8565b6020818303126103ee5780519067ffffffffffffffff82116103ee570181601f820112156103ee57805190613109826105e2565b926131176040519485610582565b828452602083830101116103ee57815f9260208093018386015e8301015290565b9b9998979694929095939161314b6132b1565b61086b5460ff8160e81c16612d055760c01c63ffffffff169661316d886131dc565b6131949063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b61319c6105c3565b9d8e5260208e015260408d015260608c015260808b015260a08a015260c089015260e088015263ffffffff90811661010088015216610120860152612cc9565b63ffffffff1663ffffffff8114612bc75760010190565b604051612d4c816132106020820194604086526060830190612d9e565b46604083015203601f198101835282610582565b91909161322f6132b1565b60ff61086b5460e01c16610f2c5761014081015163ffffffff166132584263ffffffff16612637565b101580613271575b61269557612cfb9261265a826131f3565b5061327f60408201516135b1565b6001600160a01b0316331415613260565b9a989795929693909491966132ac63ffffffff42169788612bad565b9761314b5b6002606554146103ee576002606555565b908160209103126103ee575161064f81610432565b6040513d5f823e3d90fd5b61064f929160405161335d81611ae0602082019460208652805160408401526020810151606084015260a0613327604083015160c06080870152610100860190612937565b606083015163ffffffff168583015260808301516001600160a01b031660c0860152910151838203603f190160e085015261296a565b51902091613ce0565b613371600291612744565b500162ffffff8260081c1691825f5281602052600160ff60405f205492161b80809216146133b357825f528160205260405f205417915f5260205260405f2055565b63954476d960e01b5f5260045ffd5b908160209103126103ee575190565b91908201809211612bc757565b91959495939092935f96815190818151036135a2578161345d575b50505082613408575b50505050565b63ffffffff61343f611b1b83611b1b7ffa7fa7cf6d7dde5f9be65a67e6a1a747e7aa864dcd2d793353c722d80fbbb3579588613da3565b6040805195865233602087015290959190911693a45f808080613402565b6040516370a0823160e01b81523060048201526020816024816001600160a01b0389165afa90811561085b575f91613583575b505f5f5b8481106134a3575050506133f9565b6134ad8187612a70565b516134bb575b600101613494565b906134d1906134ca8388612a70565b51906133d1565b908282116135745761350b611bce6134f96134ec8488612a70565b516001600160a01b031690565b613503848a612a70565b51908a613d31565b156134b3579a5061351c8b86612a70565b5161356a6135628d61354d6134ec6135468c6001600160a01b03165f5261087360205260405f2090565b9289612a70565b6001600160a01b03165f5260205260405f2090565b9182546133d1565b905560019a6134b3565b632ddaa83160e11b5f5260045ffd5b61359c915060203d60201161108d5761107e8183610582565b5f613490565b6319a5316760e31b5f5260045ffd5b6001600160a01b03906135c381613dbc565b1690565b91611bce91613643936040815191015191604051916135e583610566565b825261335d613601602084019246845260408501958652612744565b505493604051928391613628602084019660208852516060604086015260a0850190612d9e565b9151606084015251608083015203601f198101835282610582565b61291957565b805163ffffffff6101208201511663ffffffff42911610610f0e57602082015190600261367f835f5261087260205260405f2090565b54146136b3576104509260026136a06001945f5261087260205260405f2090565b556136ae60025f8484613e69565b613f6b565b630479306360e51b5f5260045ffd5b90815163ffffffff6101208201511663ffffffff42911610610f0e5760208301519260016136f9855f5261087260205260405f2090565b5403613744576001935b6002613718825f5261087260205260405f2090565b54146136b357610450945f94600261373c6136ae945f5261087260205260405f2090565b558484613e69565b5f93613703565b805190816137595750505f90565b6020012090565b9392604293610450979660208151910120906040519260208401947f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f86526040850152856060850152608084015260a083015260c082015260c081526137c760e082610582565b5190209061047f549061048054906040519160208301937fc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e85526040840152606083015260808201526080815261381f60a082610582565b519020906040519161190160f01b83526002830152602282015220906141d3565b6001600160a01b03610c8c541633036103ee57565b6001600160a01b0380610c8c54921691826001600160a01b0319821617610c8c55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b91908203918211612bc757565b9692610140989563ffffffff95869492859361064f9e9d9a958c5260208c015260408b015260608a01521660808801521660a08601521660c084015260e08301526101008201528161012082015201906110c3565b6139098151613dbc565b6060810190815115613bbe5761012081019061393561392c835163ffffffff1690565b63ffffffff1690565b804210908115613b85575b50613b7657610140810192613959845163ffffffff1690565b63ffffffff61398a817f000000000000000000000000000000000000000000000000000000000000000016426133d1565b911611613b675761016082015163ffffffff16918280613b24575b5060408101918251926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001680941480613b1b575b15613acb5760808301513403613abc57833b156103ee575f60049460405195868092630d0e30db60e41b825234905af190811561085b577f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad394613a9d92613aa2575b505b5191519260808101519060a081015160c082015197613a7c613a716101008501519b5163ffffffff1690565b9b5163ffffffff1690565b83519b60208501519361018060e0870151960151966040519a8b9a8b6138aa565b0390a4565b80613ab05f613ab693610582565b806103e4565b5f613a43565b636452a35d60e01b5f5260045ffd5b925034613abc57613a9d83613b16613b07611b1b7f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad397516135b1565b608086015190309033906142bf565b613a45565b503415156139e1565b6301e133801015613b4f575b60e081015115613b40575f6139a5565b63495d907f60e01b5f5260045ffd5b91613b619063ffffffff421690612bad565b91613b30565b63582e388960e01b5f5260045ffd5b63f722177f60e01b5f5260045ffd5b613b9091504261389d565b63ffffffff7f000000000000000000000000000000000000000000000000000000000000000016105f613940565b6231010160e51b5f5260045ffd5b60ff5f5460081c16156103ee57565b60ff5f5460081c16156103ee576001606555565b6001600160a01b03168015613c3857806001600160a01b0319610869541617610869557fa9e8c42c9e7fca7f62755189a16b2f5314d43d8fb24e91ba54e6d65f9314e8495f80a2565b63ba97b39d60e01b5f5260045ffd5b6001600160a01b03168015613c9057806001600160a01b031961086a54161761086a557fa73e8909f8616742d7fe701153d82666f7b7cd480552e23ebb05d358c22fd04e5f80a2565b635b03092b60e11b5f5260045ffd5b60405163a9059cbb60e01b60208201526001600160a01b0392909216602483015260448083019390935291815261045091613cdb606483610582565b614300565b929091905f915b8451831015613d2957613cfa8386612a70565b519081811015613d18575f52602052600160405f205b920191613ce7565b905f52602052600160405f20613d10565b915092501490565b60405163a9059cbb60e01b60208281019182526001600160a01b039094166024830152604482019490945290925f91613d6d8160648101611ae0565b519082855af1903d5f519083613d84575b50505090565b91925090613d9957503b15155b5f8080613d7e565b6001915014613d91565b610450916001600160a01b038061086a54169116613c9f565b60a01c613dc557565b6379ec0ed760e11b5f5260045ffd5b613ddd82612a5a565b52565b9a98969492909c9b99979593916101e08c019d8c5260208c015260408b015260608a0152608089015263ffffffff1660a088015263ffffffff1660c087015260e08601526101008501526101208401526101408301528051610160830152602081015161018083015260408101516101a08301526060015190613e6282612a5a565b6101c00152565b7f44b559f101f8fbcc8a0ea43fa91a05a729a5ea6e14a7c75aa750374690137208909392936060830151613a9d60808501519260a08601519660c08701519660a08301519860e0820151986101008301519a613ecd61012085015163ffffffff1690565b61014085015163ffffffff1691604086015193865195613f31613ef961016060208b01519a015161374b565b9960608c01519b6040613f0f608083015161374b565b910151906020613f1d6105d3565b9e8f528e015260408d015260608c01613dd4565b6040519c8d9c8d613de0565b9061064f94936080936001600160a01b038093168452602084015216604082015281606082015201906110c3565b906080613f799101516135b1565b916080604083015192613f8f60608201516135b1565b92846001600160a01b03871691856001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001684145f1461408057501561406c575b613fea91506001600160a01b038516614394565b0151908151151580614062575b6140015750505050565b6001600160a01b0316803b156103ee57614037935f809460405196879586948593633a5be8cb60e01b8552339160048601613f3d565b03925af1801561085b5761404e575b808080613402565b80613ab05f61405c93610582565b5f614046565b50803b1515613ff7565b61407991309033906142bf565b5f84613fd6565b90614095576140909233906142bf565b613fea565b61409092613c9f565b916140a883614172565b6001600160a01b0383167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28151159081159161416a575b506140eb575050565b614167915f8060405193614100606086610582565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c60208601527f206661696c6564000000000000000000000000000000000000000000000000006040860152602081519101845af4614161612aa8565b9161453b565b50565b90505f6140e2565b803b156103ee576001600160a01b03166001600160a01b03197f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416177f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b9190916141e0828461450a565b9390926005851015612a6457614209941593846142a9575b50831561421e575b50505015151590565b61420f57565b63938a182160e01b5f5260045ffd5b5f935090611ae06142568594936040519283916020830195630b135d3f60e11b875260248401526040604484015260648301906110c3565b51915afa614262612aa8565b8161429b575b81614277575b505f8080614200565b9050614294630b135d3f60e11b91602080825183010191016133c2565b145f61426e565b905060208151101590614268565b6001600160a01b0384811691161493505f6141f8565b9091926001600160a01b036104509481604051956323b872dd60e01b6020880152166024860152166044840152606483015260648252613cdb608483610582565b906001600160a01b0361435b92165f806040519361431f604086610582565b602085527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564602086015260208151910182855af1614161612aa8565b8051908115918215614371575b5050156103ee57565b81925090602091810103126103ee576020015161438d81611738565b5f80614368565b906001600160a01b038216803b158015614461575b1561442d57506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156103ee57604051632e1a7d4d60e01b815260048101839052925f908490602490829084905af192831561085b5761045093614419575b506144e2565b80613ab05f61442793610582565b5f614413565b61045092506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016613c9f565b5061446b81614470565b6143a9565b803b61447b816105e2565b906144896040519283610582565b8082525f6020830180943c5190516001600160e81b031981169190600382106144c3575b50506001600160e81b03191661ef0160f01b1490565b6001600160e81b0319600392830390921b82901b161690505f806144ad565b8147106103ee575f8080936001600160a01b038294165af1614502612aa8565b50156103ee57565b9060418151145f14614532576110bf91602082015190606060408401519301515f1a90614566565b50505f90600290565b919250156145575781511561454e575090565b3b156103ee5790565b5080519081156103ee57602001fd5b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116145d6576020935f9360ff60809460405194855216868401526040830152606082015282805260015afa1561085b575f516001600160a01b038116156145ce57905f90565b505f90600190565b505050505f9060039056fea264697066735822122053c909f019558b86747e2bee8720016bf39e05259118935be06f0a2e5337766d64736f6c634300081e0033"}
1
+ {"abi":[{"type":"constructor","inputs":[{"name":"_wrappedNativeTokenAddress","type":"address","internalType":"address"},{"name":"_depositQuoteTimeBuffer","type":"uint32","internalType":"uint32"},{"name":"_fillDeadlineBuffer","type":"uint32","internalType":"uint32"}],"stateMutability":"nonpayable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"EMPTY_MSG_BYTES","inputs":[],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_RELAYER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"EMPTY_REPAYMENT_CHAIN_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"INFINITE_FILL_DEADLINE","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MAX_EXCLUSIVITY_PERIOD_SECONDS","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MAX_TRANSFER_SIZE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"UPDATE_BYTES32_DEPOSIT_DETAILS_HASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"__SpokePool_init","inputs":[{"name":"_initialDepositId","type":"uint32","internalType":"uint32"},{"name":"_crossDomainAdmin","type":"address","internalType":"address"},{"name":"_withdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"chainId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"claimRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"bytes32","internalType":"bytes32"},{"name":"refundAddress","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"crossDomainAdmin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"deposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositDeprecated_5947912356","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"int64","internalType":"int64"},{"name":"","type":"uint32","internalType":"uint32"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositFor","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"int64","internalType":"int64"},{"name":"","type":"uint32","internalType":"uint32"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositNow","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"fillDeadlineOffset","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositQuoteTimeBuffer","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"depositV3","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"depositV3Now","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"fillDeadlineOffset","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"emergencyDeleteRootBundle","inputs":[{"name":"rootBundleId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeExternalCall","inputs":[{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"returnData","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"function","name":"executeRelayerRefundLeaf","inputs":[{"name":"rootBundleId","type":"uint32","internalType":"uint32"},{"name":"relayerRefundLeaf","type":"tuple","internalType":"struct SpokePoolInterface.RelayerRefundLeaf","components":[{"name":"amountToReturn","type":"uint256","internalType":"uint256"},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"refundAmounts","type":"uint256[]","internalType":"uint256[]"},{"name":"leafId","type":"uint32","internalType":"uint32"},{"name":"l2TokenAddress","type":"address","internalType":"address"},{"name":"refundAddresses","type":"address[]","internalType":"address[]"}]},{"name":"proof","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeSlowRelayLeaf","inputs":[{"name":"slowFillLeaf","type":"tuple","internalType":"struct V3SpokePoolInterface.V3SlowFill","components":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"}]},{"name":"rootBundleId","type":"uint32","internalType":"uint32"},{"name":"proof","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fill","inputs":[{"name":"orderId","type":"bytes32","internalType":"bytes32"},{"name":"originData","type":"bytes","internalType":"bytes"},{"name":"fillerData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillDeadlineBuffer","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"fillRelay","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"},{"name":"repaymentAddress","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillRelayWithUpdatedDeposit","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"},{"name":"repaymentAddress","type":"bytes32","internalType":"bytes32"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fillStatuses","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"fillV3Relay","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayDataLegacy","components":[{"name":"depositor","type":"address","internalType":"address"},{"name":"recipient","type":"address","internalType":"address"},{"name":"exclusiveRelayer","type":"address","internalType":"address"},{"name":"inputToken","type":"address","internalType":"address"},{"name":"outputToken","type":"address","internalType":"address"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]},{"name":"repaymentChainId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getCurrentTime","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"address","internalType":"address"},{"name":"refundAddress","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUnsafeDepositId","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"depositNonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getV3RelayHash","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_initialDepositId","type":"uint32","internalType":"uint32"},{"name":"_withdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"multicall","inputs":[{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"results","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"numberOfDeposits","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"oftMessengers","inputs":[{"name":"l2TokenAddress","type":"address","internalType":"address"}],"outputs":[{"name":"l2OftMessenger","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pauseDeposits","inputs":[{"name":"pause","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pauseFills","inputs":[{"name":"pause","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pausedDeposits","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"pausedFills","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"relayRootBundle","inputs":[{"name":"relayerRefundRoot","type":"bytes32","internalType":"bytes32"},{"name":"slowRelayRoot","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"relayerRefund","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"requestSlowFill","inputs":[{"name":"relayData","type":"tuple","internalType":"struct V3SpokePoolInterface.V3RelayData","components":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"originChainId","type":"uint256","internalType":"uint256"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rootBundles","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"slowRelayRoot","type":"bytes32","internalType":"bytes32"},{"name":"relayerRefundRoot","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"setCrossDomainAdmin","inputs":[{"name":"newCrossDomainAdmin","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setOftMessenger","inputs":[{"name":"token","type":"address","internalType":"address"},{"name":"messenger","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setWithdrawalRecipient","inputs":[{"name":"newWithdrawalRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"speedUpDeposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"speedUpV3Deposit","inputs":[{"name":"depositor","type":"address","internalType":"address"},{"name":"depositId","type":"uint256","internalType":"uint256"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"updatedRecipient","type":"address","internalType":"address"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"depositorSignature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"tryMulticall","inputs":[{"name":"data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"results","type":"tuple[]","internalType":"struct MultiCallerUpgradeable.Result[]","components":[{"name":"success","type":"bool","internalType":"bool"},{"name":"returnData","type":"bytes","internalType":"bytes"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"unsafeDeposit","inputs":[{"name":"depositor","type":"bytes32","internalType":"bytes32"},{"name":"recipient","type":"bytes32","internalType":"bytes32"},{"name":"inputToken","type":"bytes32","internalType":"bytes32"},{"name":"outputToken","type":"bytes32","internalType":"bytes32"},{"name":"inputAmount","type":"uint256","internalType":"uint256"},{"name":"outputAmount","type":"uint256","internalType":"uint256"},{"name":"destinationChainId","type":"uint256","internalType":"uint256"},{"name":"exclusiveRelayer","type":"bytes32","internalType":"bytes32"},{"name":"depositNonce","type":"uint256","internalType":"uint256"},{"name":"quoteTimestamp","type":"uint32","internalType":"uint32"},{"name":"fillDeadline","type":"uint32","internalType":"uint32"},{"name":"exclusivityParameter","type":"uint32","internalType":"uint32"},{"name":"message","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"withdrawalRecipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"wrappedNativeToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract WETH9Interface"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdminExternalCallExecuted","inputs":[{"name":"target","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ClaimedRelayerRefund","inputs":[{"name":"l2TokenAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"refundAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"caller","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"EmergencyDeletedRootBundle","inputs":[{"name":"rootBundleId","type":"uint256","indexed":true,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"EnabledDepositRoute","inputs":[{"name":"originToken","type":"address","indexed":true,"internalType":"address"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"enabled","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"ExecutedRelayerRefundRoot","inputs":[{"name":"amountToReturn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"chainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"refundAmounts","type":"uint256[]","indexed":false,"internalType":"uint256[]"},{"name":"rootBundleId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"leafId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"l2TokenAddress","type":"address","indexed":false,"internalType":"address"},{"name":"refundAddresses","type":"address[]","indexed":false,"internalType":"address[]"},{"name":"deferredRefunds","type":"bool","indexed":false,"internalType":"bool"},{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"FilledRelay","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"repaymentChainId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"relayer","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"depositor","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"messageHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"relayExecutionInfo","type":"tuple","indexed":false,"internalType":"struct V3SpokePoolInterface.V3RelayExecutionEventInfo","components":[{"name":"updatedRecipient","type":"bytes32","internalType":"bytes32"},{"name":"updatedMessageHash","type":"bytes32","internalType":"bytes32"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"fillType","type":"uint8","internalType":"enum V3SpokePoolInterface.FillType"}]}],"anonymous":false},{"type":"event","name":"FilledV3Relay","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"repaymentChainId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"relayer","type":"address","indexed":true,"internalType":"address"},{"name":"depositor","type":"address","indexed":false,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"relayExecutionInfo","type":"tuple","indexed":false,"internalType":"struct V3SpokePoolInterface.LegacyV3RelayExecutionEventInfo","components":[{"name":"updatedRecipient","type":"address","internalType":"address"},{"name":"updatedMessage","type":"bytes","internalType":"bytes"},{"name":"updatedOutputAmount","type":"uint256","internalType":"uint256"},{"name":"fillType","type":"uint8","internalType":"enum V3SpokePoolInterface.FillType"}]}],"anonymous":false},{"type":"event","name":"FundsDeposited","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"quoteTimestamp","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"depositor","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PausedDeposits","inputs":[{"name":"isPaused","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PausedFills","inputs":[{"name":"isPaused","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"RelayedRootBundle","inputs":[{"name":"rootBundleId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"relayerRefundRoot","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"slowRelayRoot","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RequestedSlowFill","inputs":[{"name":"inputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"outputToken","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"depositor","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"recipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"messageHash","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RequestedSpeedUpDeposit","inputs":[{"name":"updatedOutputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"depositId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositor","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"updatedRecipient","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"updatedMessage","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"depositorSignature","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RequestedSpeedUpV3Deposit","inputs":[{"name":"updatedOutputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"updatedRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"updatedMessage","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"depositorSignature","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RequestedV3SlowFill","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"originChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"depositor","type":"address","indexed":false,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"SetOFTMessenger","inputs":[{"name":"token","type":"address","indexed":true,"internalType":"address"},{"name":"messenger","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SetWithdrawalRecipient","inputs":[{"name":"newWithdrawalRecipient","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SetXDomainAdmin","inputs":[{"name":"newAdmin","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"TokensBridged","inputs":[{"name":"amountToReturn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"chainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"leafId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"l2TokenAddress","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"V3FundsDeposited","inputs":[{"name":"inputToken","type":"address","indexed":false,"internalType":"address"},{"name":"outputToken","type":"address","indexed":false,"internalType":"address"},{"name":"inputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"outputAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"destinationChainId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"depositId","type":"uint32","indexed":true,"internalType":"uint32"},{"name":"quoteTimestamp","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"fillDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"exclusivityDeadline","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"exclusiveRelayer","type":"address","indexed":false,"internalType":"address"},{"name":"message","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"ClaimedMerkleLeaf","inputs":[]},{"type":"error","name":"DepositsArePaused","inputs":[]},{"type":"error","name":"DisabledRoute","inputs":[]},{"type":"error","name":"ExpiredFillDeadline","inputs":[]},{"type":"error","name":"ExternalCallExecutionFailed","inputs":[]},{"type":"error","name":"FillsArePaused","inputs":[]},{"type":"error","name":"InsufficientSpokePoolBalanceToExecuteLeaf","inputs":[]},{"type":"error","name":"InvalidBytes32","inputs":[]},{"type":"error","name":"InvalidChainId","inputs":[]},{"type":"error","name":"InvalidCrossDomainAdmin","inputs":[]},{"type":"error","name":"InvalidDepositorSignature","inputs":[]},{"type":"error","name":"InvalidExclusiveRelayer","inputs":[]},{"type":"error","name":"InvalidFillDeadline","inputs":[]},{"type":"error","name":"InvalidMerkleLeaf","inputs":[]},{"type":"error","name":"InvalidMerkleProof","inputs":[]},{"type":"error","name":"InvalidOutputToken","inputs":[]},{"type":"error","name":"InvalidPayoutAdjustmentPct","inputs":[]},{"type":"error","name":"InvalidQuoteTimestamp","inputs":[]},{"type":"error","name":"InvalidSlowFillRequest","inputs":[]},{"type":"error","name":"InvalidWithdrawalRecipient","inputs":[]},{"type":"error","name":"LowLevelCallFailed","inputs":[{"name":"data","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"MessageTooShort","inputs":[]},{"type":"error","name":"MsgValueDoesNotMatchInputAmount","inputs":[]},{"type":"error","name":"NoRelayerRefundToClaim","inputs":[]},{"type":"error","name":"NoSlowFillsInExclusivityWindow","inputs":[]},{"type":"error","name":"NotEOA","inputs":[]},{"type":"error","name":"NotExclusiveRelayer","inputs":[]},{"type":"error","name":"OFTFeeUnderpaid","inputs":[]},{"type":"error","name":"OFTTokenMismatch","inputs":[]},{"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":[]},{"type":"error","name":"RelayFilled","inputs":[]},{"type":"error","name":"RemovedFunction","inputs":[]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]},{"type":"error","name":"WrongERC7683OrderId","inputs":[]},{"type":"error","name":"ZeroAddressTarget","inputs":[]}],"bytecode":"0x6101403461015557601f61480b38819003918201601f19168301916001600160401b03831184841017610159578084926060946040528339810103126101555780516001600160a01b03811691908290036101555761006c60406100656020840161016d565b920161016d565b91306080525f60c0525f60a05260e05261010052610120525f5460ff8160081c166101555760ff8082160361011b575b60405161468c908161017f8239608051818181610f620152818161130f0152611466015260a05181611640015260c051816116b9015260e0518181816106f2015281816139b5015281816140150152818161439a015261441d0152610100518181816115df0152613b9401526101205181818161040e01526139610152f35b60ff90811916175f557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a15f61009c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b519063ffffffff821682036101555756fe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063079bd2c7146103df5780630cb84d9a146103da5780631186ec33146103d557806315348e441461036c57806317fcb39b146103d057806319c1648c146103cb5780631b3d5559146103c65780631fab657c146103c157806329cb924d146103bc5780632e378115146103b75780632e63e59a146103b25780633659cfe6146103ad578063437b9116146103a8578063490e49ef146103a3578063493a4f841461039e5780634f1ef286146103995780635285e0581461039457806352d1902d1461038f578063541f4f141461038a578063577f51f81461038557806357f6dcb8146103805780636068d6cb1461037b57806361a04d3014610376578063670fa8ac146103715780636bbbcd2e1461036c5780636fd5c10e14610367578063715018a614610362578063738b62e51461035d5780637659f9e0146103585780637aef642c146103535780637b9392321461034e5780637ef413e11461034957806382e2c43f146103445780638624c35c1461033f5780638a7860ce1461033a5780638b15788e146103355780638da5cb5b1461033057806397943aa91461032b578063979f2bc21461032657806399cc2968146103215780639a8a05921461031c578063a1244c6714610317578063a18a096e14610312578063ac9650d81461030d578063ad5425c614610308578063adb5a6a6146102c2578063b370b7f514610303578063b4c0d7ab146102fe578063babb6aac146102f9578063c35c83fc146102f4578063ceb4c987146102ef578063d7e1583a146102ea578063dda52113146102e5578063ddd224f1146102e0578063de7eba78146102db578063deff4b24146102d6578063ea86bd46146102d1578063ee2a53f8146102cc578063f2fde38b146102c7578063f79f29ed146102c25763fc8a584f0361000e576127df565b612252565b6127a2565b612764565b6126c0565b6125ce565b612597565b61256e565b612548565b612512565b612414565b6123e9565b61230a565b6122db565b612299565b6121e1565b612142565b611fed565b611fc6565b611fac565b611f16565b611e28565b611d9a565b611d73565b611d02565b611c8a565b611b8e565b611a70565b611a3a565b6119a2565b611910565b6117e9565b611742565b6116dd565b61169d565b6106b9565b611663565b611629565b611603565b6115c3565b611546565b6114b6565b61144c565b611425565b6112cc565b611244565b611226565b611159565b610f3b565b610d42565b610bef565b610bc6565b610ac5565b6109a3565b61073b565b6106d3565b610652565b61045d565b6103f2565b5f9103126103ee57565b5f80fd5b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b6001600160a01b038116036103ee57565b60e4359061045082610432565b565b359061045082610432565b346103ee5760203660031901126103ee576001600160a01b0360043561048281610432565b165f5261087460205260206001600160a01b0360405f205416604051908152f35b608435908160070b82036103ee57565b60a435908160070b82036103ee57565b63ffffffff8116036103ee57565b6101043590610450826104c3565b6101243590610450826104c3565b6101443590610450826104c3565b6101643590610450826104c3565b3590610450826104c3565b634e487b7160e01b5f52604160045260245ffd5b6040810190811067ffffffffffffffff82111761054457604052565b610514565b6101a0810190811067ffffffffffffffff82111761054457604052565b6060810190811067ffffffffffffffff82111761054457604052565b90601f8019910116810190811067ffffffffffffffff82111761054457604052565b6040519061045060c083610582565b6040519061045061018083610582565b604051906104506101a083610582565b60405190610450608083610582565b67ffffffffffffffff811161054457601f01601f191660200190565b92919261060a826105e2565b916106186040519384610582565b8294818452818301116103ee578281602093845f960137010152565b9080601f830112156103ee5781602061064f933591016105fe565b90565b6101003660031901126103ee5761066a600435610432565b610675602435610432565b61067d6104a3565b5061068960a4356104c3565b60c43567ffffffffffffffff81116103ee576106a9903690600401610634565b506332ed1ba560e21b5f5260045ffd5b346103ee575f3660031901126103ee5760206040515f8152f35b346103ee575f3660031901126103ee5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b60409060031901126103ee5760043561072e81610432565b9060243561064f81610432565b346103ee5761074936610716565b61075161383d565b6107596132ae565b6001600160a01b03811691821515806107f2575b6107e3576107b46001600160a01b0392610799836001600160a01b03165f5261087460205260405f2090565b906001600160a01b03166001600160a01b0319825416179055565b167f323983f5343e25b2c1396361b1b791be31484841fdfb95b8615cd02d910b1e085f80a36100186001606555565b63a63e8c6b60e01b5f5260045ffd5b50604051637e062a3560e11b8152602081600481875afa90811561085b575f9161082c575b506001600160a01b038083169116141561076d565b61084e915060203d602011610854575b6108468183610582565b8101906132bf565b5f610817565b503d61083c565b6132d4565b67ffffffffffffffff81116105445760051b60200190565b9080601f830112156103ee57813561088f81610860565b9261089d6040519485610582565b81845260208085019260051b8201019283116103ee57602001905b8282106108c55750505090565b81358152602091820191016108b8565b9080601f830112156103ee5781356108ec81610860565b926108fa6040519485610582565b81845260208085019260051b8201019283116103ee57602001905b8282106109225750505090565b60208091833561093181610432565b815201910190610915565b92919061094881610860565b936109566040519586610582565b602085838152019160051b81019283116103ee57905b82821061097857505050565b813581526020918201910161096c565b9080601f830112156103ee5781602061064f9335910161093c565b60603660031901126103ee576004356109bb816104c3565b6024359067ffffffffffffffff82116103ee5760c060031983360301126103ee576109e46105a4565b918060040135835260248101356020840152604481013567ffffffffffffffff81116103ee57610a1a9060043691840101610878565b6040840152610a2b60648201610509565b6060840152610a3c60848201610452565b608084015260a48101359067ffffffffffffffff82116103ee576004610a6592369201016108d5565b60a08301526044359167ffffffffffffffff83116103ee57610a8e610018933690600401610988565b9161280f565b9181601f840112156103ee5782359167ffffffffffffffff83116103ee576020808501948460051b0101116103ee57565b346103ee5760603660031901126103ee5760043567ffffffffffffffff81116103ee578036039060606003198301126103ee57602435610b04816104c3565b60443567ffffffffffffffff81116103ee57610b24903690600401610a94565b919093610b2f6132ae565b60048401359061018219018112156103ee57610bbc94610bb793610b5a6004610bb0948801016129f1565b95610b6860808801516135ae565b506044610b74886131f0565b91013560208801519061016089015192610b8c6105a4565b998a5260208a01526040890152606088015260808701525f60a0870152369161093c565b90836135c4565b613646565b6100186001606555565b346103ee575f3660031901126103ee576020604051428152f35b90816101809103126103ee5790565b346103ee5760403660031901126103ee5760043567ffffffffffffffff81116103ee57610c20903690600401610be0565b602435610c2c826129fc565b6001600160a01b031691610c42602082016129fc565b6001600160a01b031690610c58604082016129fc565b6001600160a01b031690610c6e606082016129fc565b6001600160a01b0316610c83608083016129fc565b6001600160a01b031660e083013560c084013560a0850135610ca86101008701612a06565b93610cb66101208801612a06565b95610cc46101408901612a06565b976101608101610cd391612a10565b99909a610cde6105b3565b9d8e5260208e015260408d015260608c015260808b015260a08a015260c089015260e088015263ffffffff9081166101008801521661012086015263ffffffff166101408501523690610d30926105fe565b61016083015261001891339190613221565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee57610d73903690600401610be0565b610d7b6132ae565b60ff61086b5460e01c16610f2c5763ffffffff421690610140810190610db383610da484612a06565b63ffffffff9182169116101590565b610f1d5761012081019263ffffffff610dcb85612a06565b1610610f0e57610de3610dde3683612432565b6131f0565b90610df7825f5261087260205260405f2090565b54610f0057610e39610e337f3cee3e290f36226751cd0b3321b213890fe9c768e922f267fa6111836ce05c32935f5261087260205260405f2090565b60019055565b6060810135610ef360808301359260a08101359060c081013560e082013597610e70610e6a6101008501359b612a06565b91612a06565b604084013591843593610e9f610e9a610e93602089013598610160810190612a10565b36916105fe565b613748565b966040519a8b9a8b969394610120989563ffffffff9485939d9c9b98946101408b019e8b5260208b015260408a015260608901521660808701521660a085015260c084015260e08301526101008201520152565b0390a36100186001606555565b624be79160e21b5f5260045ffd5b63d642b7d960e01b5f5260045ffd5b630277ae7b60e21b5f5260045ffd5b633d90fc5560e11b5f5260045ffd5b346103ee5760203660031901126103ee57600435610f5881610432565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168030146103ee576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416036103ee57610fc161383d565b610fc96122c0565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610ffd5750610018906141e2565b6040516352d1902d60e01b8152906020826004816001600160a01b0387165afa5f9281611063575b5061102e575f80fd5b6100189261105e7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5f9414612a66565b61410e565b61108691935060203d60201161108d575b61107e8183610582565b8101906133bf565b915f611025565b503d611074565b60206003198201126103ee576004359067ffffffffffffffff82116103ee576110bf91600401610a94565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b602081016020825282518091526040820191602060408360051b8301019401925f915b83831061111957505050505090565b909192939460208061114a600193603f198682030187526040838b51805115158452015191818582015201906110c3565b9701930193019193929061110a565b346103ee5761116736611094565b61117081610860565b9161117e6040519384610582565b818352601f1961118d83610860565b015f5b8181106112025750505f5b8281106111b457604051806111b086826110e7565b0390f35b806111fc6111c460019387612a6d565b515f806111d2858989612a81565b906111e260405180938193612a98565b0390305af4906111f0612aa5565b60208201529015159052565b0161119b565b60209060405161121181610528565b5f815260608382015282828801015201611190565b346103ee575f3660031901126103ee5760206040516301e133808152f35b346103ee5760403660031901126103ee5760243560043561126361383d565b61126b6132ae565b61086c54680100000000000000008110156105445780600163ffffffff920161086c558361129882612741565b5084600182015555167fc86ba04c55bc5eb2f2876b91c438849a296dbec7b08751c3074d92e04f0a77af5f80a46001606555005b60403660031901126103ee576004356112e481610432565b60243567ffffffffffffffff81116103ee57611304903690600401610634565b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168030146103ee576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416036103ee5761136e61383d565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156113a25761001891506141e2565b6040516352d1902d60e01b81526020816004816001600160a01b0386165afa5f9181611404575b506113d2575f80fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc036103ee576100189160019161410e565b61141e91925060203d60201161108d5761107e8183610582565b905f6113c9565b346103ee575f3660031901126103ee5760206001600160a01b036108695416604051908152f35b346103ee575f3660031901126103ee576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036103ee5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b6101203660031901126103ee576114ce600435610432565b6114d9602435610432565b6114e4604435610432565b6114ec6104b3565b506114f860c4356104c3565b60e43567ffffffffffffffff81116103ee576106a9903690600401610634565b9181601f840112156103ee5782359167ffffffffffffffff83116103ee57602083818601950101116103ee57565b346103ee5760c03660031901126103ee5760043561156381610432565b6024356044359160643561157681610432565b60843567ffffffffffffffff81116103ee57611596903690600401611518565b9160a4359567ffffffffffffffff87116103ee576115bb610018973690600401611518565b969095612b27565b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346103ee575f3660031901126103ee57602060ff61086b5460e81c166040519015158152f35b346103ee575f3660031901126103ee5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346103ee575f3660031901126103ee5760206040517f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f8152f35b346103ee575f3660031901126103ee57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346103ee575f3660031901126103ee576116f561383d565b5f6001600160a01b03610c8c546001600160a01b03198116610c8c55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b801515036103ee57565b346103ee5760203660031901126103ee577fe88463c2f254e2b070013a2dc7ee1e099f9bc00534cbdf03af551dc26ae49219602060043561178281611738565b61178a61383d565b6117926132ae565b151561086b547fffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e81b8360e81b1691161761086b55604051908152a16001606555005b90602061064f9281815201906110c3565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee5761181a903690600401611518565b61182261383d565b61182a6132ae565b81016040828203126103ee5781359161184283610432565b60208101359167ffffffffffffffff83116103ee576001600160a01b039261186a9201610634565b911680156119015760048251106118f2575f8083516020850182855af190611890612aa5565b91156118e3577f41a941b8313293eca483f41d8faa2498e005e6d7700e2e93f41d3cb7e70a897d6118ca6111b094604051918291826117d8565b0390a26118d76001606555565b604051918291826117d8565b6348ebf0a960e11b5f5260045ffd5b637f5e6be560e01b5f5260045ffd5b634e93b52160e11b5f5260045ffd5b6101603660031901126103ee5760043561192981610432565b60243561193581610432565b6044359161194283610432565b60643561194e81610432565b60843560e43560c43560a43561196383610432565b61196b6104d1565b936119746104df565b95610144359967ffffffffffffffff8b116103ee5761199a6100189b3690600401611518565b9a9099612bc9565b6101803660031901126103ee576004356119bb81610432565b6024356119c781610432565b604435916119d483610432565b6064356119e081610432565b60843560a43560c4356119f1610443565b906119fa6104d1565b92611a036104df565b94611a0c6104ed565b96610164359a67ffffffffffffffff8c116103ee57611a326100189c3690600401611518565b9b909a612beb565b346103ee5760603660031901126103ee576020611a68600435611a5c81610432565b60243560443591612d11565b604051908152f35b346103ee5760603660031901126103ee5760043560243567ffffffffffffffff81116103ee57611aa4903690600401611518565b9060443567ffffffffffffffff81116103ee57611ac5903690600401611518565b9190936040516020810190611aee81611ae046898887612d4f565b03601f198101835282610582565b51902003611b7f575f93611b09828695611b129401906124ec565b92810190612d6c565b51611b49611b27335b6001600160a01b031690565b91611ae060405193849260208401966337bfd2c960e21b885260248501612e37565b5190305af4611b56612aa5565b9015611b5e57005b60405163b8fe37a760e01b8152908190611b7b90600483016117d8565b0390fd5b630f0c8f4760e11b5f5260045ffd5b346103ee5760403660031901126103ee57600435611bab816104c3565b611c02602435611bba81610432565b5f5492611be860ff600886901c1615611bd2565b1590565b80958196611c7c575b8115611c5c575b50612a66565b83611bf9600160ff195f5416175f55565b611c4557612e59565b611c0857005b611c1661ff00195f54165f55565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b611c5761010061ff00195f5416175f55565b612e59565b303b15915081611c6e575b505f611be2565b60ff1660011490505f611c67565b600160ff8216109150611bdb565b346103ee5760203660031901126103ee57600435611ca661383d565b611cae6132ae565b611cb781612741565b611cef576001815f80935501557f7c1af0646963afc3343245b103731965735a893347bfa0d58a5dc77a77ae691c5f80a26001606555005b634e487b7160e01b5f525f60045260245ffd5b6101a03660031901126103ee5760443560243560043560643560843560a4356101043560e43560c435611d336104df565b93611d3c6104ed565b95611d456104fb565b97610184359b67ffffffffffffffff8d116103ee57611d6b6100189d3690600401611518565b9c909b612f23565b346103ee575f3660031901126103ee5760206001600160a01b03610c8c5416604051908152f35b346103ee5760e03660031901126103ee5760043567ffffffffffffffff81116103ee57611dcb903690600401610be0565b602435604435916064356084359060a43567ffffffffffffffff81116103ee57611df9903690600401611518565b92909160c4359667ffffffffffffffff88116103ee57611e20610018983690600401611518565b979096612f9b565b346103ee5760603660031901126103ee57600435611e45816104c3565b60243590611e5282610432565b60443590611e5f82610432565b60ff5f5460081c16156103ee57611e939063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b6040805192611ea28285610582565b600984526020808501926820a1a927a9a996ab1960b91b8452611ec781519182610582565b6005815201640312e302e360dc1b815260ff5f5460081c16156103ee576005611f11936100189651902091209061047f5561048055611f04613bc9565b611f0c613bd8565b613bec565b613c44565b346103ee5760203660031901126103ee577f2d5b62420992e5a4afce0e77742636ca2608ef58289fd2e1baa5161ef6e7e41e6020600435611f5681611738565b611f5e61383d565b611f666132ae565b151561086b547fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e01b8360e01b1691161761086b55604051908152a16001606555005b346103ee575f3660031901126103ee576020604051468152f35b346103ee575f3660031901126103ee57602063ffffffff61086b5460c01c16604051908152f35b346103ee5760403660031901126103ee5760043560243561200d82613e2a565b6001600160a01b03821691825f5261087360205261203e60405f20336001600160a01b03165f5260205260405f2090565b549283156120d4576120875f9161205484613e2a565b61207133916001600160a01b03165f5261087360205260405f2090565b906001600160a01b03165f5260205260405f2090565b556120a483612095836135ae565b61209e856135ae565b90613c9c565b60405192835233927f6c172ea51018fb2eb2118f3f8a507c4df71eb519b8c0052834dc3c920182fef490602090a4005b6336542bf760e21b5f5260045ffd5b602081016020825282518091526040820191602060408360051b8301019401925f915b83831061211557505050505090565b9091929394602080612133600193603f1986820301875289516110c3565b97019301930191939290612106565b346103ee5761215036611094565b9061215a82613089565b915f5b81811061217257604051806111b086826120e3565b5f8061217f838587612a81565b9061218f60405180938193612a98565b0390305af461219c612aa5565b90156121c257906001916121b08287612a6d565b526121bb8186612a6d565b500161215d565b60448151106103ee578060248060046103ee94015183010191016130d2565b6101803660031901126103ee576044356024356004356064356084356101043560e43560c43560a435612213846104c3565b61221b6104df565b946122246104ed565b96610164359a67ffffffffffffffff8c116103ee5761224a6100189c3690600401611518565b9b909a613135565b346103ee5760206122906001600160a01b0361226d36610716565b91165f52610873835260405f20906001600160a01b03165f5260205260405f2090565b54604051908152f35b346103ee575f3660031901126103ee5760206001600160a01b0361086a5416604051908152f35b604051906122cf602083610582565b5f808352366020840137565b346103ee575f3660031901126103ee576111b06122f66122c0565b6040519182916020835260208301906110c3565b346103ee5760c03660031901126103ee5760043560243560443560643560843567ffffffffffffffff81116103ee57612347903690600401611518565b60a4939193359067ffffffffffffffff82116103ee577f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c26946123906123df933690600401611518565b92909161239b6132ae565b6123a48a613e2a565b6123d3898b89896123b63688886105fe565b926123c2368b8b6105fe565b946001600160a01b0346921661375d565b60405196879687612af4565b0390a36001606555005b346103ee5760203660031901126103ee576004355f52610872602052602060405f2054604051908152f35b346103ee575f3660031901126103ee57602060405163ffffffff8152f35b919091610180818403126103ee576124486105b3565b92813584526020820135602085015260408201356040850152606082013560608501526080820135608085015260a082013560a085015260c082013560c085015260e082013560e08501526101008201356101008501526124ac6101208301610509565b6101208501526124bf6101408301610509565b61014085015261016082013567ffffffffffffffff81116103ee576124e49201610634565b610160830152565b906020828203126103ee57813567ffffffffffffffff81116103ee5761064f9201612432565b346103ee5760203660031901126103ee5760043567ffffffffffffffff81116103ee57611a68610dde6020923690600401612432565b346103ee575f3660031901126103ee57602060ff61086b5460e01c166040519015158152f35b346103ee575f3660031901126103ee5760206040516ec097ce7bc90715b34b9f10000000008152f35b346103ee5760203660031901126103ee576125c76004356125b781610432565b6125bf61383d565b611f0c6132ae565b6001606555005b346103ee5760603660031901126103ee5760043567ffffffffffffffff81116103ee576125ff903690600401612432565b602435906044359061260f6132ae565b60ff61086b5460e01c16610f2c5761014081015163ffffffff1661263e4263ffffffff165b9163ffffffff1690565b1015806126a1575b61269257610bbc92612657826131f0565b60c0830151602084015190610160850151926126716105a4565b958652602086015260408501526060840152608083015260a08201526136bf565b630c3a9b9d60e41b5f5260045ffd5b506126af60408201516135ae565b6001600160a01b0316331415612646565b6101603660031901126103ee576044356024356004356064356101043560e43560c43560a4356084356126f2856104c3565b6101243595612700876104c3565b610144359967ffffffffffffffff8b116103ee576127256100189b3690600401611518565b9a909961328d565b634e487b7160e01b5f52603260045260245ffd5b61086c5481101561275f5761086c5f52600360205f20910201905f90565b61272d565b346103ee5760203660031901126103ee5760043561086c548110156103ee5761278e604091612741565b506001815491015482519182526020820152f35b346103ee5760203660031901126103ee576004356127bf81610432565b6127c761383d565b6001600160a01b038116156103ee5761001890613852565b346103ee5760203660031901126103ee576125c76004356127ff81610432565b61280761383d565b611f116132ae565b91906128196132ae565b60208101918251460361292557611bce6128419183600161283988612741565b5001546132df565b612916577ff4ad92585b1bc117fbdd644990adf0827bc4c95baeae8a23322af807b6d0020e63ffffffff6060830193612887612881865163ffffffff1690565b87613363565b61290981519185519560408101966128f36128e56128d48a51976128af8d5163ffffffff1690565b9860808701996128c68b516001600160a01b031690565b9160a08901978851946133db565b9351945199519a5163ffffffff1690565b95516001600160a01b031690565b90519086604051978897169b16993394876129a3565b0390a46104506001606555565b63582f497d60e11b5f5260045ffd5b633d23e4d160e11b5f5260045ffd5b90602080835192838152019201905f5b8181106129515750505090565b8251845260209384019390920191600101612944565b90602080835192838152019201905f5b8181106129845750505090565b82516001600160a01b0316845260209384019390920191600101612977565b949695919260a0946001600160a01b036129cf81966129e3958a5260c060208b015260c08a0190612934565b921660408801528682036060880152612967565b951515608085015216910152565b61064f903690612432565b3561064f81610432565b3561064f816104c3565b903590601e19813603018212156103ee570180359067ffffffffffffffff82116103ee576020019181360383136103ee57565b634e487b7160e01b5f52602160045260245ffd5b60031115612a6157565b612a43565b156103ee57565b805182101561275f5760209160051b010190565b9082101561275f576110bf9160051b810190612a10565b908092918237015f815290565b3d15612acf573d90612ab6826105e2565b91612ac46040519384610582565b82523d5f602084013e565b606090565b908060209392818452848401375f828201840152601f01601f1916010190565b94929093612b199261064f979587526020870152608060408701526080860191612ad4565b926060818503910152612ad4565b92957f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c26956001600160a01b039586612b91959a949916612b838a8c83612b6e3688886105fe565b91612b7a368b8b6105fe565b9346908d61375d565b604051978897169a87612af4565b0390a3565b634e487b7160e01b5f52601160045260245ffd5b9063ffffffff8091169116019063ffffffff8211612bc457565b612b96565b96949290916104509b9a9998969492612be963ffffffff42169889612baa565b985b9593919b999897969492909b612bff6132ae565b61086b5460ff8160e81c16612d025760c01c63ffffffff1696612c21886131d9565b612c489063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b612c506105c3565b9d6001600160a01b038f921682526001600160a01b031690602001526001600160a01b031660408d01526001600160a01b031660608c015260808b015260a08a015260c08901526001600160a01b031660e088015263ffffffff16610100870152610120860190612cc6919063ffffffff169052565b63ffffffff1661014085015263ffffffff166101608401523690612ce9926105fe565b610180820152612cf8906138fc565b6104506001606555565b630b4cba3160e31b5f5260045ffd5b916040519160208301936bffffffffffffffffffffffff199060601b1684526034830152605482015260548152612d49607482610582565b51902090565b939291602091612d6791604087526040870191612ad4565b930152565b908160209103126103ee57604051906020820182811067ffffffffffffffff8211176105445760405235815290565b9061018061016061064f93805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a081015160a085015260c081015160c085015260e081015160e0850152610100810151610100850152612e1561012082015161012086019063ffffffff169052565b6101408181015163ffffffff16908501520151918161016082015201906110c3565b612e4f60409295949395606083526060830190612d9b565b9460208201520152565b60ff5f5460081c16156103ee57612e6f33613852565b60ff5f5460081c16156103ee57612ea39063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b6040908151612eb28382610582565b600981526020808201936820a1a927a9a996ab1960b91b8552612ed781519182610582565b600581520190640312e302e360dc1b825260ff5f5460081c16156103ee576104509360059151902091209061047f5561048055612f12613bc9565b612f1a613bd8565b611f1181613bec565b9c9a9998979695949392919096612f386132ae565b60ff61086b5460e81c16612d0257612f51908e33612d11565b96604051809e612f6082610549565b81526020015260408d015260608c015260808b015260a08a015260c089015260e088015261010087015263ffffffff16610120860152612cc6565b979290959694939196612fac6132ae565b60ff61086b5460e01c16610f2c57612fc76101408a01612a06565b612fd64263ffffffff16612634565b10158061306a575b61269257612cf89861305f61306597612ffa610dde3685612432565b996130036105a4565b9a61300e3686612432565b8c5260208c01528560408c01528660608c015261302c36868b6105fe565b60808c015260a08b015261305761304384356135ae565b9860e06101008601359501359536916105fe565b9636916105fe565b9561375d565b6136bf565b5061307860408a01356135ae565b6001600160a01b0316331415612fde565b9061309382610860565b6130a06040519182610582565b82815280926130b1601f1991610860565b01905f5b8281106130c157505050565b8060606020809385010152016130b5565b6020818303126103ee5780519067ffffffffffffffff82116103ee570181601f820112156103ee57805190613106826105e2565b926131146040519485610582565b828452602083830101116103ee57815f9260208093018386015e8301015290565b9b999897969492909593916131486132ae565b61086b5460ff8160e81c16612d025760c01c63ffffffff169661316a886131d9565b6131919063ffffffff60c01b1963ffffffff60c01b61086b549260c01b1691161761086b55565b6131996105c3565b9d8e5260208e015260408d015260608c015260808b015260a08a015260c089015260e088015263ffffffff90811661010088015216610120860152612cc6565b63ffffffff1663ffffffff8114612bc45760010190565b604051612d498161320d6020820194604086526060830190612d9b565b46604083015203601f198101835282610582565b91909161322c6132ae565b60ff61086b5460e01c16610f2c5761014081015163ffffffff166132554263ffffffff16612634565b10158061326e575b61269257612cf892612657826131f0565b5061327c60408201516135ae565b6001600160a01b031633141561325d565b9a989795929693909491966132a963ffffffff42169788612baa565b976131485b6002606554146103ee576002606555565b908160209103126103ee575161064f81610432565b6040513d5f823e3d90fd5b61064f929160405161335a81611ae0602082019460208652805160408401526020810151606084015260a0613324604083015160c06080870152610100860190612934565b606083015163ffffffff168583015260808301516001600160a01b031660c0860152910151838203603f190160e0850152612967565b51902091613d22565b61336e600291612741565b500162ffffff8260081c1691825f5281602052600160ff60405f205492161b80809216146133b057825f528160205260405f205417915f5260205260405f2055565b63954476d960e01b5f5260045ffd5b908160209103126103ee575190565b91908201809211612bc457565b91959495939092935f968151908181510361359f578161345a575b50505082613405575b50505050565b63ffffffff61343c611b1b83611b1b7ffa7fa7cf6d7dde5f9be65a67e6a1a747e7aa864dcd2d793353c722d80fbbb3579588613de5565b6040805195865233602087015290959190911693a45f8080806133ff565b6040516370a0823160e01b81523060048201526020816024816001600160a01b0389165afa90811561085b575f91613580575b505f5f5b8481106134a0575050506133f6565b6134aa8187612a6d565b516134b8575b600101613491565b906134ce906134c78388612a6d565b51906133ce565b9082821161357157613508611bce6134f66134e98488612a6d565b516001600160a01b031690565b613500848a612a6d565b51908a613d73565b156134b0579a506135198b86612a6d565b5161356761355f8d61354a6134e96135438c6001600160a01b03165f5261087360205260405f2090565b9289612a6d565b6001600160a01b03165f5260205260405f2090565b9182546133ce565b905560019a6134b0565b632ddaa83160e11b5f5260045ffd5b613599915060203d60201161108d5761107e8183610582565b5f61348d565b6319a5316760e31b5f5260045ffd5b6001600160a01b03906135c081613e2a565b1690565b91611bce91613640936040815191015191604051916135e283610566565b825261335a6135fe602084019246845260408501958652612741565b505493604051928391613625602084019660208852516060604086015260a0850190612d9b565b9151606084015251608083015203601f198101835282610582565b61291657565b805163ffffffff6101208201511663ffffffff42911610610f0e57602082015190600261367c835f5261087260205260405f2090565b54146136b05761045092600261369d6001945f5261087260205260405f2090565b556136ab60025f8484613ed7565b613fd9565b630479306360e51b5f5260045ffd5b90815163ffffffff6101208201511663ffffffff42911610610f0e5760208301519260016136f6855f5261087260205260405f2090565b5403613741576001935b6002613715825f5261087260205260405f2090565b54146136b057610450945f9460026137396136ab945f5261087260205260405f2090565b558484613ed7565b5f93613700565b805190816137565750505f90565b6020012090565b9392604293610450979660208151910120906040519260208401947f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f86526040850152856060850152608084015260a083015260c082015260c081526137c460e082610582565b5190209061047f549061048054906040519160208301937fc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e85526040840152606083015260808201526080815261381c60a082610582565b519020906040519161190160f01b8352600283015260228201522090614243565b6001600160a01b03610c8c541633036103ee57565b6001600160a01b0380610c8c54921691826001600160a01b0319821617610c8c55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b91908203918211612bc457565b9692610140989563ffffffff95869492859361064f9e9d9a958c5260208c015260408b015260608a01521660808801521660a08601521660c084015260e08301526101008201528161012082015201906110c3565b6139068151613e2a565b6060810190815115613bbb57610120810190613932613929835163ffffffff1690565b63ffffffff1690565b804210908115613b82575b50613b7357610140810192613956845163ffffffff1690565b63ffffffff613987817f000000000000000000000000000000000000000000000000000000000000000016426133ce565b911611613b645761016082015163ffffffff16918280613b21575b5060408101918251926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001680941480613b18575b15613ac85760808301513403613ab957833b156103ee575f60049460405195868092630d0e30db60e41b825234905af190811561085b577f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad394613a9a92613a9f575b505b5191519260808101519060a081015160c082015197613a79613a6e6101008501519b5163ffffffff1690565b9b5163ffffffff1690565b83519b60208501519361018060e0870151960151966040519a8b9a8b6138a7565b0390a4565b80613aad5f613ab393610582565b806103e4565b5f613a40565b636452a35d60e01b5f5260045ffd5b925034613ab957613a9a83613b13613b04611b1b7f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad397516135ae565b6080860151903090339061432f565b613a42565b503415156139de565b6301e133801015613b4c575b60e081015115613b3d575f6139a2565b63495d907f60e01b5f5260045ffd5b91613b5e9063ffffffff421690612baa565b91613b2d565b63582e388960e01b5f5260045ffd5b63f722177f60e01b5f5260045ffd5b613b8d91504261389a565b63ffffffff7f000000000000000000000000000000000000000000000000000000000000000016105f61393d565b6231010160e51b5f5260045ffd5b60ff5f5460081c16156103ee57565b60ff5f5460081c16156103ee576001606555565b6001600160a01b03168015613c3557806001600160a01b0319610869541617610869557fa9e8c42c9e7fca7f62755189a16b2f5314d43d8fb24e91ba54e6d65f9314e8495f80a2565b63ba97b39d60e01b5f5260045ffd5b6001600160a01b03168015613c8d57806001600160a01b031961086a54161761086a557fa73e8909f8616742d7fe701153d82666f7b7cd480552e23ebb05d358c22fd04e5f80a2565b635b03092b60e11b5f5260045ffd5b6001600160a01b0316916001600160a01b036040519263a9059cbb60e01b5f521660045260245260205f60448180865af160015f5114811615613d03575b60409190915215613ce85750565b635274afe760e01b5f526001600160a01b031660045260245ffd5b6001811516613d19573d15833b15151616613cda565b503d5f823e3d90fd5b929091905f915b8451831015613d6b57613d3c8386612a6d565b519081811015613d5a575f52602052600160405f205b920191613d29565b905f52602052600160405f20613d52565b915092501490565b60405163a9059cbb60e01b60208281019182526001600160a01b039094166024830152604482019490945290925f91613daf8160648101611ae0565b519082855af1903d5f519083613dc6575b50505090565b91925090613ddb57503b15155b5f8080613dc0565b6001915014613dd3565b61086a5460405163a9059cbb60e01b60208201526001600160a01b03918216602482015260448082019390935291825261045092613e24606484610582565b16614451565b60a01c613e3357565b6379ec0ed760e11b5f5260045ffd5b613e4b82612a57565b52565b9a98969492909c9b99979593916101e08c019d8c5260208c015260408b015260608a0152608089015263ffffffff1660a088015263ffffffff1660c087015260e08601526101008501526101208401526101408301528051610160830152602081015161018083015260408101516101a08301526060015190613ed082612a57565b6101c00152565b7f44b559f101f8fbcc8a0ea43fa91a05a729a5ea6e14a7c75aa750374690137208909392936060830151613a9a60808501519260a08601519660c08701519660a08301519860e0820151986101008301519a613f3b61012085015163ffffffff1690565b61014085015163ffffffff1691604086015193865195613f9f613f6761016060208b01519a0151613748565b9960608c01519b6040613f7d6080830151613748565b910151906020613f8b6105d3565b9e8f528e015260408d015260608c01613e42565b6040519c8d9c8d613e4e565b9061064f94936080936001600160a01b038093168452602084015216604082015281606082015201906110c3565b906080613fe79101516135ae565b916080604083015192613ffd60608201516135ae565b92846001600160a01b03871691856001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001684145f146140ee5750156140da575b61405891506001600160a01b038516614375565b01519081511515806140d0575b61406f5750505050565b6001600160a01b0316803b156103ee576140a5935f809460405196879586948593633a5be8cb60e01b8552339160048601613fab565b03925af1801561085b576140bc575b8080806133ff565b80613aad5f6140ca93610582565b5f6140b4565b50803b1515614065565b6140e7913090339061432f565b5f84614044565b90614103576140fe92339061432f565b614058565b6140fe925087613c9c565b91614118836141e2565b6001600160a01b0383167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a2815115908115916141da575b5061415b575050565b6141d7915f8060405193614170606086610582565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c60208601527f206661696c6564000000000000000000000000000000000000000000000000006040860152602081519101845af46141d1612aa5565b916145b0565b50565b90505f614152565b803b156103ee576001600160a01b03166001600160a01b03197f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416177f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b919091614250828461457f565b9390926005851015612a615761427994159384614319575b50831561428e575b50505015151590565b61427f57565b63938a182160e01b5f5260045ffd5b5f935090611ae06142c68594936040519283916020830195630b135d3f60e11b875260248401526040604484015260648301906110c3565b51915afa6142d2612aa5565b8161430b575b816142e7575b505f8080614270565b9050614304630b135d3f60e11b91602080825183010191016133bf565b145f6142de565b9050602081511015906142d8565b6001600160a01b0384811691161493505f614268565b9091926001600160a01b036104509481604051956323b872dd60e01b6020880152166024860152166044840152606483015260648252614370608483610582565b614451565b906001600160a01b038216803b158015614442575b1561440e57506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156103ee57604051632e1a7d4d60e01b815260048101839052925f908490602490829084905af192831561085b57610450936143fa575b50614557565b80613aad5f61440893610582565b5f6143f4565b61045092506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016613c9c565b5061444c816144e5565b61438a565b906001600160a01b036144ac92165f8060405193614470604086610582565b602085527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564602086015260208151910182855af16141d1612aa5565b80519081159182156144c2575b5050156103ee57565b81925090602091810103126103ee57602001516144de81611738565b5f806144b9565b803b6144f0816105e2565b906144fe6040519283610582565b8082525f6020830180943c5190516001600160e81b03198116919060038210614538575b50506001600160e81b03191661ef0160f01b1490565b6001600160e81b0319600392830390921b82901b161690505f80614522565b8147106103ee575f8080936001600160a01b038294165af1614577612aa5565b50156103ee57565b9060418151145f146145a7576110bf91602082015190606060408401519301515f1a906145db565b50505f90600290565b919250156145cc578151156145c3575090565b3b156103ee5790565b5080519081156103ee57602001fd5b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161464b576020935f9360ff60809460405194855216868401526040830152606082015282805260015afa1561085b575f516001600160a01b0381161561464357905f90565b505f90600190565b505050505f9060039056fea2646970667358221220a6992c5bcd1891b440e8e807a838ad9b7b8c01886fce35fd9dd31b53759726a164736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"addToWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getWhitelist","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"isOnWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"removeFromWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":"0x608080604052346015576101cb908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081633a3ab67214610159575080638ab1d6811461011e578063d01f63f51461008a5763e43252d714610048575f80fd5b34610086576020366003190112610086576004356001600160a01b038116809103610086575f525f60205260405f20600160ff198254161790555f80f35b5f80fd5b34610086575f3660031901126100865760206040518181019080821067ffffffffffffffff83111761010a5790806040525f82525f36813760405192839281840190828552518091526040840192915f5b8281106100ea57505050500390f35b83516001600160a01b0316855286955093810193928101926001016100db565b634e487b7160e01b5f52604160045260245ffd5b34610086576020366003190112610086576004356001600160a01b038116809103610086575f525f60205260405f2060ff1981541690555f80f35b3461008657602036600319011261008657600435906001600160a01b038216809203610086576020915f525f825260ff60405f20541615158152f3fea26469706673582212208fd3b1da65a9cd615ca995625eadf08e627dbc547fa64b3438fd40bb8f77080864736f6c634300081e0033"}
1
+ {"abi":[{"type":"function","name":"addToWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getWhitelist","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"isOnWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"removeFromWhitelist","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":"0x608080604052346015576101cb908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081633a3ab67214610159575080638ab1d6811461011e578063d01f63f51461008a5763e43252d714610048575f80fd5b34610086576020366003190112610086576004356001600160a01b038116809103610086575f525f60205260405f20600160ff198254161790555f80f35b5f80fd5b34610086575f3660031901126100865760206040518181019080821067ffffffffffffffff83111761010a5790806040525f82525f36813760405192839281840190828552518091526040840192915f5b8281106100ea57505050500390f35b83516001600160a01b0316855286955093810193928101926001016100db565b634e487b7160e01b5f52604160045260245ffd5b34610086576020366003190112610086576004356001600160a01b038116809103610086575f525f60205260405f2060ff1981541690555f80f35b3461008657602036600319011261008657600435906001600160a01b038216809203610086576020915f525f825260ff60405f20541615158152f3fea2646970667358221220fa974822604516b863ebbd8cdbe711db07405c1d0656a56c48622bd3717fdf8564736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"changeImplementationAddress","inputs":[{"name":"interfaceName","type":"bytes32","internalType":"bytes32"},{"name":"implementationAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getImplementationAddress","inputs":[{"name":"interfaceName","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"interfaces","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"}],"bytecode":"0x6080806040523460155761015c908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306f6dbfb146100eb5750806331f9665e146100805763aafd5e401461003d575f80fd5b3461007c57602036600319011261007c576004355f525f602052602073ffffffffffffffffffffffffffffffffffffffff60405f205416604051908152f35b5f80fd5b3461007c57604036600319011261007c5760243573ffffffffffffffffffffffffffffffffffffffff811680910361007c576004355f525f60205260405f20907fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790555f80f35b3461007c57602036600319011261007c576020906004355f525f825273ffffffffffffffffffffffffffffffffffffffff60405f2054168152f3fea26469706673582212209c80001865132c83e66323aac0add0733cc5b224e45effa67529806559fc8f1364736f6c634300081e0033"}
1
+ {"abi":[{"type":"function","name":"changeImplementationAddress","inputs":[{"name":"interfaceName","type":"bytes32","internalType":"bytes32"},{"name":"implementationAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getImplementationAddress","inputs":[{"name":"interfaceName","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"interfaces","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"}],"bytecode":"0x6080806040523460155761015c908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306f6dbfb146100eb5750806331f9665e146100805763aafd5e401461003d575f80fd5b3461007c57602036600319011261007c576004355f525f602052602073ffffffffffffffffffffffffffffffffffffffff60405f205416604051908152f35b5f80fd5b3461007c57604036600319011261007c5760243573ffffffffffffffffffffffffffffffffffffffff811680910361007c576004355f525f60205260405f20907fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790555f80f35b3461007c57602036600319011261007c576020906004355f525f825273ffffffffffffffffffffffffffffffffffffffff60405f2054168152f3fea2646970667358221220eb89060f6b54bffad865b38488ab06a49b7ea4608fbb1be54472116dcdd6fba364736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"addSupportedIdentifier","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isIdentifierSupported","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"removeSupportedIdentifier","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportedIdentifiers","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":"0x6080806040523460145760f990816100198239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c806310a7e2011460985780638e0d3ca714607057806390978d1b1460405763cc09560d146040575f80fd5b34606c576020366003190112606c576004355f525f602052602060ff60405f2054166040519015158152f35b5f80fd5b34606c576020366003190112606c576004355f525f60205260405f2060ff1981541690555f80f35b34606c576020366003190112606c576004355f525f60205260405f20600160ff198254161790555f80f3fea26469706673582212208638003822576944a2eef93265b96ee521d039fa7ac938404e4601eb70b67d0064736f6c634300081e0033"}
1
+ {"abi":[{"type":"function","name":"addSupportedIdentifier","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isIdentifierSupported","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"removeSupportedIdentifier","inputs":[{"name":"identifier","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportedIdentifiers","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":"0x6080806040523460145760f990816100198239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c806310a7e2011460985780638e0d3ca714607057806390978d1b1460405763cc09560d146040575f80fd5b34606c576020366003190112606c576004355f525f602052602060ff60405f2054166040519015158152f35b5f80fd5b34606c576020366003190112606c576004355f525f60205260405f2060ff1981541690555f80f35b34606c576020366003190112606c576004355f525f60205260405f20600160ff198254161790555f80f3fea26469706673582212203ac51dfdd25cb1d85d1f66978a83af972230b87fdfb6b9b249317f45d5f4323964736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"createLpToken","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":"0x60808060405234601557610cef908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c63fc2f1b6e14610025575f80fd5b346101165760203660031901126101165760043573ffffffffffffffffffffffffffffffffffffffff81160361011657610b9f8082019082821067ffffffffffffffff8311176101025760e091839161011b833960608152600860608201527f4c5020546f6b656e000000000000000000000000000000000000000000000000608082015260a06020820152600360a08201526213141560ea1b60c0820152601260408201520301905ff080156100f75760209073ffffffffffffffffffffffffffffffffffffffff60405191168152f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe60806040523461033057610b9f8038038061001981610334565b9283398101906060818303126103305780516001600160401b0381116103305782610045918301610359565b60208201519092906001600160401b03811161033057604091610069918401610359565b91015160ff81168091036103305782516001600160401b03811161024157600354600181811c91168015610326575b602082101461022357601f81116102c3575b506020601f821160011461026057819293945f92610255575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161024157600454600181811c91168015610237575b602082101461022357601f81116101c0575b50602092601f821160011461015f57928192935f92610154575b50508160011b915f199060031b1c1916176004555b60ff1960055416176005556040516107f490816103ab8239f35b015190505f80610125565b601f1982169360045f52805f20915f5b8681106101a85750836001959610610190575b505050811b0160045561013a565b01515f1960f88460031b161c191690555f8080610182565b9192602060018192868501518155019401920161016f565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610219575b601f0160051c01905b81811061020e575061010b565b5f8155600101610201565b90915081906101f8565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060035f52805f20915f5b8181106102ab57509583600195969710610293575b505050811b016003556100d8565b01515f1960f88460031b161c191690555f8080610285565b9192602060018192868b015181550194019201610270565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061031c575b601f0160051c01905b81811061031157506100aa565b5f8155600101610304565b90915081906102fb565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024157604052565b81601f82011215610330578051906001600160401b03821161024157610388601f8301601f1916602001610334565b928284526020838301011161033057815f9260208093018386015e830101529056fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146104c257508063095ea7b31461049c57806318160ddd1461047f57806323b872dd14610447578063313ce5671461042757806339509351146103d857806340c10f191461035757806342966c681461033857806370a082311461030157806373cc802a146100d757806379cc6790146102d157806395d89b41146101b6578063983b2d56146100d7578063a457c2d714610165578063a9059cbb14610134578063dd62ed3e146100dc5763f44637ba146100d7575f80fd5b6105e7565b34610130576040366003190112610130576100f56105bb565b6001600160a01b036101056105d1565b91165f5260016020526001600160a01b0360405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346101305760403660031901126101305761015a6101506105bb565b60243590336106d9565b602060405160018152f35b346101305760403660031901126101305761017e6105bb565b60243590335f52600160205260405f206001600160a01b0382165f5260205260405f2054918083106101305761015a92039033610621565b34610130575f366003190112610130576040515f6004548060011c906001811680156102c7575b6020831081146102b3578285529081156102975750600114610242575b50819003601f01601f191681019067ffffffffffffffff82118183101761022e5761022a82918260405282610591565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b828210610281575060209150820101826101fa565b600181602092548385880101520191019061026c565b90506020925060ff191682840152151560051b820101826101fa565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101dd565b346101305760403660031901126101305761015a6102ed6105bb565b602435906102fc823383610684565b610757565b34610130576020366003190112610130576001600160a01b036103226105bb565b165f525f602052602060405f2054604051908152f35b346101305760203660031901126101305761035560043533610757565b005b34610130576040366003190112610130576103706105bb565b6001600160a01b03166024358115610130577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020826103b35f94600254610600565b60025584845283825260408420818154019055604051908152a3602060405160018152f35b346101305760403660031901126101305761015a6103f46105bb565b335f52600160205260405f206001600160a01b0382165f5260205261042060405f206024359054610600565b9033610621565b34610130575f36600319011261013057602060ff60055416604051908152f35b346101305760603660031901126101305761015a6104636105bb565b61046b6105d1565b6044359161047a833383610684565b6106d9565b34610130575f366003190112610130576020600254604051908152f35b346101305760403660031901126101305761015a6104b86105bb565b6024359033610621565b34610130575f366003190112610130575f6003548060011c90600181168015610587575b6020831081146102b35782855290811561029757506001146105325750819003601f01601f191681019067ffffffffffffffff82118183101761022e5761022a82918260405282610591565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b828210610571575060209150820101826101fa565b600181602092548385880101520191019061055c565b91607f16916104e6565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361013057565b602435906001600160a01b038216820361013057565b34610130576020366003190112610130576103556105bb565b9190820180921161060d57565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b0316908115610130576001600160a01b03169182156101305760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b906001600160a01b0382165f52600160205260405f206001600160a01b0382165f5260205260405f2054925f1984036106be575b50505050565b808410610130576106d0930391610621565b5f8080806106b8565b6001600160a01b0316908115610130576001600160a01b031691821561013057815f525f60205260405f205481811061013057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b6001600160a01b0316801561013057805f525f60205260405f205491808310610130576020817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef925f958587528684520360408620558060025403600255604051908152a356fea264697066735822122003bdb25d8f5d473bb515c5033081a312802daee497aea89951678240970d40d464736f6c634300081e0033a26469706673582212209083e53373849a89d1e61cd65b0ae252d95bb69facc81e4f1f3f3cc56f24278864736f6c634300081e0033"}
1
+ {"abi":[{"type":"function","name":"createLpToken","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":"0x60808060405234601557610cef908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c63fc2f1b6e14610025575f80fd5b346101165760203660031901126101165760043573ffffffffffffffffffffffffffffffffffffffff81160361011657610b9f8082019082821067ffffffffffffffff8311176101025760e091839161011b833960608152600860608201527f4c5020546f6b656e000000000000000000000000000000000000000000000000608082015260a06020820152600360a08201526213141560ea1b60c0820152601260408201520301905ff080156100f75760209073ffffffffffffffffffffffffffffffffffffffff60405191168152f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe60806040523461033057610b9f8038038061001981610334565b9283398101906060818303126103305780516001600160401b0381116103305782610045918301610359565b60208201519092906001600160401b03811161033057604091610069918401610359565b91015160ff81168091036103305782516001600160401b03811161024157600354600181811c91168015610326575b602082101461022357601f81116102c3575b506020601f821160011461026057819293945f92610255575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161024157600454600181811c91168015610237575b602082101461022357601f81116101c0575b50602092601f821160011461015f57928192935f92610154575b50508160011b915f199060031b1c1916176004555b60ff1960055416176005556040516107f490816103ab8239f35b015190505f80610125565b601f1982169360045f52805f20915f5b8681106101a85750836001959610610190575b505050811b0160045561013a565b01515f1960f88460031b161c191690555f8080610182565b9192602060018192868501518155019401920161016f565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610219575b601f0160051c01905b81811061020e575061010b565b5f8155600101610201565b90915081906101f8565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060035f52805f20915f5b8181106102ab57509583600195969710610293575b505050811b016003556100d8565b01515f1960f88460031b161c191690555f8080610285565b9192602060018192868b015181550194019201610270565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061031c575b601f0160051c01905b81811061031157506100aa565b5f8155600101610304565b90915081906102fb565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024157604052565b81601f82011215610330578051906001600160401b03821161024157610388601f8301601f1916602001610334565b928284526020838301011161033057815f9260208093018386015e830101529056fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146104c257508063095ea7b31461049c57806318160ddd1461047f57806323b872dd14610447578063313ce5671461042757806339509351146103d857806340c10f191461035757806342966c681461033857806370a082311461030157806373cc802a146100d757806379cc6790146102d157806395d89b41146101b6578063983b2d56146100d7578063a457c2d714610165578063a9059cbb14610134578063dd62ed3e146100dc5763f44637ba146100d7575f80fd5b6105e7565b34610130576040366003190112610130576100f56105bb565b6001600160a01b036101056105d1565b91165f5260016020526001600160a01b0360405f2091165f52602052602060405f2054604051908152f35b5f80fd5b346101305760403660031901126101305761015a6101506105bb565b60243590336106d9565b602060405160018152f35b346101305760403660031901126101305761017e6105bb565b60243590335f52600160205260405f206001600160a01b0382165f5260205260405f2054918083106101305761015a92039033610621565b34610130575f366003190112610130576040515f6004548060011c906001811680156102c7575b6020831081146102b3578285529081156102975750600114610242575b50819003601f01601f191681019067ffffffffffffffff82118183101761022e5761022a82918260405282610591565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b828210610281575060209150820101826101fa565b600181602092548385880101520191019061026c565b90506020925060ff191682840152151560051b820101826101fa565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101dd565b346101305760403660031901126101305761015a6102ed6105bb565b602435906102fc823383610684565b610757565b34610130576020366003190112610130576001600160a01b036103226105bb565b165f525f602052602060405f2054604051908152f35b346101305760203660031901126101305761035560043533610757565b005b34610130576040366003190112610130576103706105bb565b6001600160a01b03166024358115610130577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020826103b35f94600254610600565b60025584845283825260408420818154019055604051908152a3602060405160018152f35b346101305760403660031901126101305761015a6103f46105bb565b335f52600160205260405f206001600160a01b0382165f5260205261042060405f206024359054610600565b9033610621565b34610130575f36600319011261013057602060ff60055416604051908152f35b346101305760603660031901126101305761015a6104636105bb565b61046b6105d1565b6044359161047a833383610684565b6106d9565b34610130575f366003190112610130576020600254604051908152f35b346101305760403660031901126101305761015a6104b86105bb565b6024359033610621565b34610130575f366003190112610130575f6003548060011c90600181168015610587575b6020831081146102b35782855290811561029757506001146105325750819003601f01601f191681019067ffffffffffffffff82118183101761022e5761022a82918260405282610591565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b828210610571575060209150820101826101fa565b600181602092548385880101520191019061055c565b91607f16916104e6565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361013057565b602435906001600160a01b038216820361013057565b34610130576020366003190112610130576103556105bb565b9190820180921161060d57565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b0316908115610130576001600160a01b03169182156101305760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b906001600160a01b0382165f52600160205260405f206001600160a01b0382165f5260205260405f2054925f1984036106be575b50505050565b808410610130576106d0930391610621565b5f8080806106b8565b6001600160a01b0316908115610130576001600160a01b031691821561013057815f525f60205260405f205481811061013057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b6001600160a01b0316801561013057805f525f60205260405f205491808310610130576020817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef925f958587528684520360408620558060025403600255604051908152a356fea264697066735822122003bdb25d8f5d473bb515c5033081a312802daee497aea89951678240970d40d464736f6c634300081e0033a26469706673582212207e1859a9246b3def7bbce16c3ec5deacfcd30761f9da1f9e2e963fb911b9e3f564736f6c634300081e0033"}