[{"type":"constructor","inputs":[{"name":"tokenMessenger","type":"address","internalType":"contract ITokenMessenger"},{"name":"cctpMessageTransmitterProxy","type":"address","internalType":"contract CCTPMessageTransmitterProxy"},{"name":"token","type":"address","internalType":"contract IERC20"},{"name":"allowlist","type":"address[]","internalType":"address[]"},{"name":"rmnProxy","type":"address","internalType":"address"},{"name":"router","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"FINALITY_THRESHOLD","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"MIN_USDC_MESSAGE_LENGTH","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"acceptOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addRemotePool","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applyAllowListUpdates","inputs":[{"name":"removes","type":"address[]","internalType":"address[]"},{"name":"adds","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applyAuthorizedCallerUpdates","inputs":[{"name":"authorizedCallerArgs","type":"tuple","internalType":"struct AuthorizedCallers.AuthorizedCallerArgs","components":[{"name":"addedCallers","type":"address[]","internalType":"address[]"},{"name":"removedCallers","type":"address[]","internalType":"address[]"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applyChainUpdates","inputs":[{"name":"remoteChainSelectorsToRemove","type":"uint64[]","internalType":"uint64[]"},{"name":"chainsToAdd","type":"tuple[]","internalType":"struct TokenPool.ChainUpdate[]","components":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddresses","type":"bytes[]","internalType":"bytes[]"},{"name":"remoteTokenAddress","type":"bytes","internalType":"bytes"},{"name":"outboundRateLimiterConfig","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]},{"name":"inboundRateLimiterConfig","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllAuthorizedCallers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"getAllowList","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"getAllowListEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getCurrentInboundRateLimiterState","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct RateLimiter.TokenBucket","components":[{"name":"tokens","type":"uint128","internalType":"uint128"},{"name":"lastUpdated","type":"uint32","internalType":"uint32"},{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"getCurrentOutboundRateLimiterState","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct RateLimiter.TokenBucket","components":[{"name":"tokens","type":"uint128","internalType":"uint128"},{"name":"lastUpdated","type":"uint32","internalType":"uint32"},{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"getDomain","inputs":[{"name":"chainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct USDCTokenPool.Domain","components":[{"name":"allowedCaller","type":"bytes32","internalType":"bytes32"},{"name":"mintRecipient","type":"bytes32","internalType":"bytes32"},{"name":"domainIdentifier","type":"uint32","internalType":"uint32"},{"name":"enabled","type":"bool","internalType":"bool"},{"name":"useLegacySourcePoolDataFormat","type":"bool","internalType":"bool"}]}],"stateMutability":"view"},{"type":"function","name":"getRateLimitAdmin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getRemotePools","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"bytes[]","internalType":"bytes[]"}],"stateMutability":"view"},{"type":"function","name":"getRemoteToken","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getRmnProxy","inputs":[],"outputs":[{"name":"rmnProxy","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getRouter","inputs":[],"outputs":[{"name":"router","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getSupportedChains","inputs":[],"outputs":[{"name":"","type":"uint64[]","internalType":"uint64[]"}],"stateMutability":"view"},{"type":"function","name":"getToken","inputs":[],"outputs":[{"name":"token","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getTokenDecimals","inputs":[],"outputs":[{"name":"decimals","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"i_localDomainIdentifier","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"i_messageTransmitterProxy","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract CCTPMessageTransmitterProxy"}],"stateMutability":"view"},{"type":"function","name":"i_supportedUSDCVersion","inputs":[],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"i_tokenMessenger","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ITokenMessenger"}],"stateMutability":"view"},{"type":"function","name":"isRemotePool","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isSupportedChain","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isSupportedToken","inputs":[{"name":"token","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"lockOrBurn","inputs":[{"name":"lockOrBurnIn","type":"tuple","internalType":"struct Pool.LockOrBurnInV1","components":[{"name":"receiver","type":"bytes","internalType":"bytes"},{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"originalSender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"localToken","type":"address","internalType":"address"}]}],"outputs":[{"name":"","type":"tuple","internalType":"struct Pool.LockOrBurnOutV1","components":[{"name":"destTokenAddress","type":"bytes","internalType":"bytes"},{"name":"destPoolData","type":"bytes","internalType":"bytes"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"releaseOrMint","inputs":[{"name":"releaseOrMintIn","type":"tuple","internalType":"struct Pool.ReleaseOrMintInV1","components":[{"name":"originalSender","type":"bytes","internalType":"bytes"},{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"receiver","type":"address","internalType":"address"},{"name":"sourceDenominatedAmount","type":"uint256","internalType":"uint256"},{"name":"localToken","type":"address","internalType":"address"},{"name":"sourcePoolAddress","type":"bytes","internalType":"bytes"},{"name":"sourcePoolData","type":"bytes","internalType":"bytes"},{"name":"offchainTokenData","type":"bytes","internalType":"bytes"}]}],"outputs":[{"name":"","type":"tuple","internalType":"struct Pool.ReleaseOrMintOutV1","components":[{"name":"destinationAmount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"removeRemotePool","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setChainRateLimiterConfig","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"outboundConfig","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]},{"name":"inboundConfig","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setChainRateLimiterConfigs","inputs":[{"name":"remoteChainSelectors","type":"uint64[]","internalType":"uint64[]"},{"name":"outboundConfigs","type":"tuple[]","internalType":"struct RateLimiter.Config[]","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]},{"name":"inboundConfigs","type":"tuple[]","internalType":"struct RateLimiter.Config[]","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDomains","inputs":[{"name":"domains","type":"tuple[]","internalType":"struct USDCTokenPool.DomainUpdate[]","components":[{"name":"allowedCaller","type":"bytes32","internalType":"bytes32"},{"name":"mintRecipient","type":"bytes32","internalType":"bytes32"},{"name":"domainIdentifier","type":"uint32","internalType":"uint32"},{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"enabled","type":"bool","internalType":"bool"},{"name":"useLegacySourcePoolDataFormat","type":"bool","internalType":"bool"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRateLimitAdmin","inputs":[{"name":"rateLimitAdmin","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRouter","inputs":[{"name":"newRouter","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"function","name":"transferOwnership","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"typeAndVersion","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"event","name":"AllowListAdd","inputs":[{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowListRemove","inputs":[{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AuthorizedCallerAdded","inputs":[{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AuthorizedCallerRemoved","inputs":[{"name":"caller","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ChainAdded","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"remoteToken","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"outboundRateLimiterConfig","type":"tuple","indexed":false,"internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]},{"name":"inboundRateLimiterConfig","type":"tuple","indexed":false,"internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"anonymous":false},{"type":"event","name":"ChainConfigured","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"outboundRateLimiterConfig","type":"tuple","indexed":false,"internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]},{"name":"inboundRateLimiterConfig","type":"tuple","indexed":false,"internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"anonymous":false},{"type":"event","name":"ChainRemoved","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":false,"internalType":"uint64"}],"anonymous":false},{"type":"event","name":"ConfigChanged","inputs":[{"name":"config","type":"tuple","indexed":false,"internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}],"anonymous":false},{"type":"event","name":"ConfigSet","inputs":[{"name":"tokenMessenger","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"DomainsSet","inputs":[{"name":"","type":"tuple[]","indexed":false,"internalType":"struct USDCTokenPool.DomainUpdate[]","components":[{"name":"allowedCaller","type":"bytes32","internalType":"bytes32"},{"name":"mintRecipient","type":"bytes32","internalType":"bytes32"},{"name":"domainIdentifier","type":"uint32","internalType":"uint32"},{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"enabled","type":"bool","internalType":"bool"},{"name":"useLegacySourcePoolDataFormat","type":"bool","internalType":"bool"}]}],"anonymous":false},{"type":"event","name":"InboundRateLimitConsumed","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"LockedOrBurned","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OutboundRateLimitConsumed","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferRequested","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RateLimitAdminSet","inputs":[{"name":"rateLimitAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ReleasedOrMinted","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"},{"name":"recipient","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RemotePoolAdded","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RemotePoolRemoved","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"RouterUpdated","inputs":[{"name":"oldRouter","type":"address","indexed":false,"internalType":"address"},{"name":"newRouter","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AllowListNotEnabled","inputs":[]},{"type":"error","name":"BucketOverfilled","inputs":[]},{"type":"error","name":"CallerIsNotARampOnRouter","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"CannotTransferToSelf","inputs":[]},{"type":"error","name":"ChainAlreadyExists","inputs":[{"name":"chainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"ChainNotAllowed","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"CursedByRMN","inputs":[]},{"type":"error","name":"DisabledNonZeroRateLimit","inputs":[{"name":"config","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}]},{"type":"error","name":"InvalidBurnToken","inputs":[{"name":"expected","type":"address","internalType":"address"},{"name":"got","type":"address","internalType":"address"}]},{"type":"error","name":"InvalidConfig","inputs":[]},{"type":"error","name":"InvalidDecimalArgs","inputs":[{"name":"expected","type":"uint8","internalType":"uint8"},{"name":"actual","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InvalidDepositHash","inputs":[{"name":"expected","type":"bytes32","internalType":"bytes32"},{"name":"got","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"InvalidDestinationDomain","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidDomain","inputs":[{"name":"domain","type":"tuple","internalType":"struct USDCTokenPool.DomainUpdate","components":[{"name":"allowedCaller","type":"bytes32","internalType":"bytes32"},{"name":"mintRecipient","type":"bytes32","internalType":"bytes32"},{"name":"domainIdentifier","type":"uint32","internalType":"uint32"},{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"enabled","type":"bool","internalType":"bool"},{"name":"useLegacySourcePoolDataFormat","type":"bool","internalType":"bool"}]}]},{"type":"error","name":"InvalidExecutionFinalityThreshold","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidMessageLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidMessageVersion","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidMinFee","inputs":[{"name":"maxAcceptableFee","type":"uint256","internalType":"uint256"},{"name":"actualFee","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidMinFinalityThreshold","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidNonce","inputs":[{"name":"expected","type":"uint64","internalType":"uint64"},{"name":"got","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"InvalidPreviousPool","inputs":[]},{"type":"error","name":"InvalidRateLimitRate","inputs":[{"name":"rateLimiterConfig","type":"tuple","internalType":"struct RateLimiter.Config","components":[{"name":"isEnabled","type":"bool","internalType":"bool"},{"name":"capacity","type":"uint128","internalType":"uint128"},{"name":"rate","type":"uint128","internalType":"uint128"}]}]},{"type":"error","name":"InvalidReceiver","inputs":[{"name":"receiver","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"InvalidRemoteChainDecimals","inputs":[{"name":"sourcePoolData","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"InvalidRemotePoolForChain","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"InvalidSourceDomain","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidSourcePoolAddress","inputs":[{"name":"sourcePoolAddress","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"InvalidToken","inputs":[{"name":"token","type":"address","internalType":"address"}]},{"type":"error","name":"InvalidTokenMessengerVersion","inputs":[{"name":"expected","type":"uint32","internalType":"uint32"},{"name":"got","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"InvalidTransmitterInProxy","inputs":[]},{"type":"error","name":"InvalidVersion","inputs":[{"name":"version","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"MismatchedArrayLengths","inputs":[]},{"type":"error","name":"MustBeProposedOwner","inputs":[]},{"type":"error","name":"NonExistentChain","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"OnlyCallableByOwner","inputs":[]},{"type":"error","name":"OverflowDetected","inputs":[{"name":"remoteDecimals","type":"uint8","internalType":"uint8"},{"name":"localDecimals","type":"uint8","internalType":"uint8"},{"name":"remoteAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"OwnerCannotBeZero","inputs":[]},{"type":"error","name":"PoolAlreadyAdded","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"remotePoolAddress","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"SenderNotAllowed","inputs":[{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"TokenMaxCapacityExceeded","inputs":[{"name":"capacity","type":"uint256","internalType":"uint256"},{"name":"requested","type":"uint256","internalType":"uint256"},{"name":"tokenAddress","type":"address","internalType":"address"}]},{"type":"error","name":"TokenRateLimitReached","inputs":[{"name":"minWaitInSeconds","type":"uint256","internalType":"uint256"},{"name":"available","type":"uint256","internalType":"uint256"},{"name":"tokenAddress","type":"address","internalType":"address"}]},{"type":"error","name":"Unauthorized","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"UnauthorizedCaller","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"UnknownDomain","inputs":[{"name":"domain","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"UnlockingUSDCFailed","inputs":[]},{"type":"error","name":"ZeroAddressInvalid","inputs":[]},{"type":"error","name":"ZeroAddressNotAllowed","inputs":[]}]