[{"type":"constructor","inputs":[{"name":"dynamicConfig","type":"tuple","internalType":"struct CommitteeVerifier.DynamicConfig","components":[{"name":"feeAggregator","type":"address","internalType":"address"},{"name":"allowlistAdmin","type":"address","internalType":"address"}]},{"name":"storageLocations","type":"string[]","internalType":"string[]"},{"name":"rmn","type":"address","internalType":"address"},{"name":"versionTag","type":"bytes4","internalType":"bytes4"}],"stateMutability":"nonpayable"},{"type":"function","name":"acceptOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"acceptStorageLocationsAdmin","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applyAllowlistUpdates","inputs":[{"name":"allowlistConfigArgsItems","type":"tuple[]","internalType":"struct BaseVerifier.AllowlistConfigArgs[]","components":[{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"allowlistEnabled","type":"bool","internalType":"bool"},{"name":"addedAllowlistedSenders","type":"address[]","internalType":"address[]"},{"name":"removedAllowlistedSenders","type":"address[]","internalType":"address[]"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applyRemoteChainConfigUpdates","inputs":[{"name":"remoteChainConfigArgs","type":"tuple[]","internalType":"struct BaseVerifier.RemoteChainConfigArgs[]","components":[{"name":"router","type":"address","internalType":"contract IRouter"},{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"allowlistEnabled","type":"bool","internalType":"bool"},{"name":"feeUSDCents","type":"uint16","internalType":"uint16"},{"name":"gasForVerification","type":"uint32","internalType":"uint32"},{"name":"payloadSizeBytes","type":"uint16","internalType":"uint16"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applySignatureConfigs","inputs":[{"name":"sourceChainSelectorsToRemove","type":"uint64[]","internalType":"uint64[]"},{"name":"signatureConfigs","type":"tuple[]","internalType":"struct SignatureQuorumValidator.SignatureConfig[]","components":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"},{"name":"threshold","type":"uint8","internalType":"uint8"},{"name":"signers","type":"address[]","internalType":"address[]"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forwardToVerifier","inputs":[{"name":"message","type":"tuple","internalType":"struct MessageV1Codec.MessageV1","components":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"},{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"messageNumber","type":"uint64","internalType":"uint64"},{"name":"executionGasLimit","type":"uint32","internalType":"uint32"},{"name":"ccipReceiveGasLimit","type":"uint32","internalType":"uint32"},{"name":"finality","type":"bytes4","internalType":"bytes4"},{"name":"ccvAndExecutorHash","type":"bytes32","internalType":"bytes32"},{"name":"onRampAddress","type":"bytes","internalType":"bytes"},{"name":"offRampAddress","type":"bytes","internalType":"bytes"},{"name":"sender","type":"bytes","internalType":"bytes"},{"name":"receiver","type":"bytes","internalType":"bytes"},{"name":"destBlob","type":"bytes","internalType":"bytes"},{"name":"tokenTransfer","type":"tuple[]","internalType":"struct MessageV1Codec.TokenTransferV1[]","components":[{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"sourcePoolAddress","type":"bytes","internalType":"bytes"},{"name":"sourceTokenAddress","type":"bytes","internalType":"bytes"},{"name":"destTokenAddress","type":"bytes","internalType":"bytes"},{"name":"tokenReceiver","type":"bytes","internalType":"bytes"},{"name":"extraData","type":"bytes","internalType":"bytes"}]},{"name":"data","type":"bytes","internalType":"bytes"}]},{"name":"","type":"bytes32","internalType":"bytes32"},{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"verifierReturnData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getAllSignatureConfigs","inputs":[],"outputs":[{"name":"configs","type":"tuple[]","internalType":"struct SignatureQuorumValidator.SignatureConfig[]","components":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"},{"name":"threshold","type":"uint8","internalType":"uint8"},{"name":"signers","type":"address[]","internalType":"address[]"}]}],"stateMutability":"view"},{"type":"function","name":"getAllowedFinalityConfig","inputs":[],"outputs":[{"name":"allowedFinality","type":"bytes4","internalType":"bytes4"}],"stateMutability":"view"},{"type":"function","name":"getDynamicConfig","inputs":[],"outputs":[{"name":"dynamicConfig","type":"tuple","internalType":"struct CommitteeVerifier.DynamicConfig","components":[{"name":"feeAggregator","type":"address","internalType":"address"},{"name":"allowlistAdmin","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getFee","inputs":[{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"","type":"tuple","internalType":"struct Client.EVM2AnyMessage","components":[{"name":"receiver","type":"bytes","internalType":"bytes"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"tokenAmounts","type":"tuple[]","internalType":"struct Client.EVMTokenAmount[]","components":[{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"name":"feeToken","type":"address","internalType":"address"},{"name":"extraArgs","type":"bytes","internalType":"bytes"}]},{"name":"","type":"bytes","internalType":"bytes"},{"name":"requestedFinality","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"feeUSDCents","type":"uint16","internalType":"uint16"},{"name":"gasForVerification","type":"uint32","internalType":"uint32"},{"name":"payloadSizeBytes","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"getPendingStorageLocationsAdmin","inputs":[],"outputs":[{"name":"pendingStorageLocationsAdmin","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getRemoteChainConfig","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"remoteChainConfig","type":"tuple","internalType":"struct BaseVerifier.RemoteChainConfigArgs","components":[{"name":"router","type":"address","internalType":"contract IRouter"},{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"},{"name":"allowlistEnabled","type":"bool","internalType":"bool"},{"name":"feeUSDCents","type":"uint16","internalType":"uint16"},{"name":"gasForVerification","type":"uint32","internalType":"uint32"},{"name":"payloadSizeBytes","type":"uint16","internalType":"uint16"}]},{"name":"allowedSendersList","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"getSignatureConfig","inputs":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"signers","type":"address[]","internalType":"address[]"},{"name":"threshold","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"getStorageLocations","inputs":[],"outputs":[{"name":"","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"getStorageLocationsAdmin","inputs":[],"outputs":[{"name":"storageLocationsAdmin","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"setAllowedFinalityConfig","inputs":[{"name":"allowedFinality","type":"bytes4","internalType":"bytes4"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicConfig","inputs":[{"name":"dynamicConfig","type":"tuple","internalType":"struct CommitteeVerifier.DynamicConfig","components":[{"name":"feeAggregator","type":"address","internalType":"address"},{"name":"allowlistAdmin","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":"transferStorageLocationsAdmin","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"typeAndVersion","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"updateStorageLocations","inputs":[{"name":"newLocations","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"verifyMessage","inputs":[{"name":"message","type":"tuple","internalType":"struct MessageV1Codec.MessageV1","components":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"},{"name":"destChainSelector","type":"uint64","internalType":"uint64"},{"name":"messageNumber","type":"uint64","internalType":"uint64"},{"name":"executionGasLimit","type":"uint32","internalType":"uint32"},{"name":"ccipReceiveGasLimit","type":"uint32","internalType":"uint32"},{"name":"finality","type":"bytes4","internalType":"bytes4"},{"name":"ccvAndExecutorHash","type":"bytes32","internalType":"bytes32"},{"name":"onRampAddress","type":"bytes","internalType":"bytes"},{"name":"offRampAddress","type":"bytes","internalType":"bytes"},{"name":"sender","type":"bytes","internalType":"bytes"},{"name":"receiver","type":"bytes","internalType":"bytes"},{"name":"destBlob","type":"bytes","internalType":"bytes"},{"name":"tokenTransfer","type":"tuple[]","internalType":"struct MessageV1Codec.TokenTransferV1[]","components":[{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"sourcePoolAddress","type":"bytes","internalType":"bytes"},{"name":"sourceTokenAddress","type":"bytes","internalType":"bytes"},{"name":"destTokenAddress","type":"bytes","internalType":"bytes"},{"name":"tokenReceiver","type":"bytes","internalType":"bytes"},{"name":"extraData","type":"bytes","internalType":"bytes"}]},{"name":"data","type":"bytes","internalType":"bytes"}]},{"name":"messageHash","type":"bytes32","internalType":"bytes32"},{"name":"verifierResults","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"view"},{"type":"function","name":"versionTag","inputs":[],"outputs":[{"name":"tag","type":"bytes4","internalType":"bytes4"}],"stateMutability":"view"},{"type":"function","name":"withdrawFeeTokens","inputs":[{"name":"feeTokens","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"AllowListSendersAdded","inputs":[{"name":"destChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"senders","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowListSendersRemoved","inputs":[{"name":"destChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"senders","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowListStateChanged","inputs":[{"name":"destChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"allowlistEnabled","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"ConfigSet","inputs":[{"name":"dynamicConfig","type":"tuple","indexed":false,"internalType":"struct CommitteeVerifier.DynamicConfig","components":[{"name":"feeAggregator","type":"address","internalType":"address"},{"name":"allowlistAdmin","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"FeeTokenWithdrawn","inputs":[{"name":"receiver","type":"address","indexed":true,"internalType":"address"},{"name":"feeToken","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"FinalityConfigSet","inputs":[{"name":"allowedFinality","type":"bytes4","indexed":false,"internalType":"bytes4"}],"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":"RemoteChainConfigSet","inputs":[{"name":"remoteChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"router","type":"address","indexed":false,"internalType":"address"},{"name":"allowlistEnabled","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"SignatureConfigSet","inputs":[{"name":"sourceChainSelector","type":"uint64","indexed":true,"internalType":"uint64"},{"name":"signers","type":"address[]","indexed":false,"internalType":"address[]"},{"name":"threshold","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"StorageLocationsAdminTransferRequested","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StorageLocationsAdminTransferred","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StorageLocationsUpdated","inputs":[{"name":"oldLocations","type":"string[]","indexed":false,"internalType":"string[]"},{"name":"newLocations","type":"string[]","indexed":false,"internalType":"string[]"}],"anonymous":false},{"type":"error","name":"CallerIsNotARampOnRouter","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"CannotTransferToSelf","inputs":[]},{"type":"error","name":"CursedByRMN","inputs":[{"name":"destChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"DestGasCannotBeZero","inputs":[{"name":"destChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"ForkedChain","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidAllowListRequest","inputs":[{"name":"destChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"InvalidCCVVersion","inputs":[{"name":"verifierVersion","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"InvalidRemoteChainConfig","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"InvalidRequestedFinality","inputs":[{"name":"requestedFinality","type":"bytes4","internalType":"bytes4"},{"name":"allowedFinality","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"InvalidSignatureConfig","inputs":[]},{"type":"error","name":"InvalidVerifierResults","inputs":[]},{"type":"error","name":"MustBeProposedOwner","inputs":[]},{"type":"error","name":"MustBeProposedStorageLocationsAdmin","inputs":[]},{"type":"error","name":"NonOrderedOrNonUniqueSignatures","inputs":[]},{"type":"error","name":"OnlyCallableByOwner","inputs":[]},{"type":"error","name":"OnlyCallableByOwnerOrAllowlistAdmin","inputs":[]},{"type":"error","name":"OnlyCallableByStorageLocationsAdmin","inputs":[]},{"type":"error","name":"OwnerCannotBeZero","inputs":[]},{"type":"error","name":"RemoteChainNotSupported","inputs":[{"name":"remoteChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"RequestedFinalityCanOnlyHaveOneMode","inputs":[{"name":"encodedFinality","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]},{"type":"error","name":"SenderNotAllowed","inputs":[{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"SignerCannotBeZeroAddress","inputs":[]},{"type":"error","name":"SourceNotConfigured","inputs":[{"name":"sourceChainSelector","type":"uint64","internalType":"uint64"}]},{"type":"error","name":"UnauthorizedSigner","inputs":[]},{"type":"error","name":"VersionTagCannotBeZero","inputs":[]},{"type":"error","name":"WrongNumberOfSignatures","inputs":[]},{"type":"error","name":"ZeroAddressNotAllowed","inputs":[]},{"type":"error","name":"ZeroAddressNotAllowed","inputs":[]}]