5 txs
14 calls
constructor
constructor(address _router, address _ccipClient)
functions
allowedPeer
viewfunction allowedPeer(uint64, address) view returns (bool)
calculateFeeAndMessage
viewfunction calculateFeeAndMessage(uint64 destinationChainSelector, address messageReceiver, address sender, address recipient, uint256 value, bytes extraArgs) view returns (uint256 fee, tuple evm2AnyMessage)
ccipClient
viewfunction ccipClient() view returns (address)
getRouter
viewfunction getRouter() view returns (address)
owner
viewfunction owner() view returns (address)
supportsInterface
purefunction supportsInterface(bytes4 interfaceId) pure returns (bool)
acceptOwnership
nonpayablefunction acceptOwnership()
ccipReceive
nonpayablefunction ccipReceive(tuple message)
setAllowedPeer
nonpayablefunction setAllowedPeer(uint64 chainSelector, address messager, bool allowed)
transferOwnership
nonpayablefunction transferOwnership(address to)
transferToChain
payablefunction transferToChain(uint64 destinationChainSelector, address messageReceiver, address recipient, uint256 value, bytes extraArgs) payable returns (bytes32 messageId)
events
AllowedPeer
event AllowedPeer(uint64 chainSelector, address messager, bool allowed)
CCReceive
event CCReceive(bytes32 indexed messageID, bytes messageData)
CCSend
event CCSend(bytes32 indexed messageID, bytes messageData)
OwnershipTransferred
event OwnershipTransferred(address indexed from, address indexed to)
OwnershipTransferRequested
event OwnershipTransferRequested(address indexed from, address indexed to)
errors
InvalidRouter
error InvalidRouter(address router)
NotAllowlisted
error NotAllowlisted(uint64 chainSelector, address messager)
creation bytecode
0x60a06040523480156200001157600080fd5b5060405162001796380380620017968339810160408190526200003491620001ee565b33806000846001600160a01b03811662000069576040516335fdcccd60e21b8152600060048201526024015b60405180910390fd5b6001600160a01b039081166080528216620000c75760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f0000000000000000604482015260640162000060565b600080546001600160a01b0319166001600160a01b0384811691909117909155811615620000fa57620000fa8162000126565b5050600280546001600160a01b0319166001600160a01b03939093169290921790915550620002269050565b336001600160a01b03821603620001805760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000604482015260640162000060565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b80516001600160a01b0381168114620001e957600080fd5b919050565b600080604083850312156200020257600080fd5b6200020d83620001d1565b91506200021d60208401620001d1565b90509250929050565b6080516115386200025e6000396000818161020e0152818161054d0152818161066e015281816108840152610aac01526115386000f3fe6080604052600436106100bc5760003560e01c806379ba509711610074578063b0f479a11161004e578063b0f479a1146101ff578063b4c3d37f14610232578063f2fde38b1461026057600080fd5b806379ba5097146101ac57806385572ffb146101c15780638da5cb5b146101e157600080fd5b8063045e3af2116100a5578063045e3af2146101185780631fbae57e1461015357806354e6ca701461017457600080fd5b806301ffc9a7146100c1578063024135f6146100f6575b600080fd5b3480156100cd57600080fd5b506100e16100dc366004610da5565b610280565b60405190151581526020015b60405180910390f35b34801561010257600080fd5b50610116610111366004610e20565b610319565b005b34801561012457600080fd5b506100e1610133366004610e6e565b600360209081526000928352604080842090915290825290205460ff1681565b610166610161366004610eee565b610362565b6040519081526020016100ed565b34801561018057600080fd5b50600254610194906001600160a01b031681565b6040516001600160a01b0390911681526020016100ed565b3480156101b857600080fd5b506101166107bb565b3480156101cd57600080fd5b506101166101dc366004610f71565b610879565b3480156101ed57600080fd5b506000546001600160a01b0316610194565b34801561020b57600080fd5b507f0000000000000000000000000000000000000000000000000000000000000000610194565b34801561023e57600080fd5b5061025261024d366004610fac565b6108f1565b6040516100ed929190611155565b34801561026c57600080fd5b5061011661027b366004611176565b610b33565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f85572ffb00000000000000000000000000000000000000000000000000000000148061031357507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b610321610b44565b67ffffffffffffffff90921660009081526003602090815260408083206001600160a01b03909416835292905220805491151560ff19909216919091179055565b67ffffffffffffffff861660009081526003602090815260408083206001600160a01b038916845290915281205460ff166103d05760405163596613ef60e11b815267ffffffffffffffff881660048201526001600160a01b03871660248201526044015b60405180910390fd5b6002546040517f8ec8eda30000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038781166024830152604482018790526000921690638ec8eda3906064016000604051808303816000875af1158015610443573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261046b919081019061124e565b6040805160a0810182526001600160a01b038a1660c0808301919091528251808303909101815260e08201835281526020808201849052825160008082529181018452939450929091820190836104e4565b60408051808201909152600080825260208201528152602001906001900390816104bd5790505b50815260200160006001600160a01b0316815260200186868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250506040516320487ded60e01b8152929350916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506320487ded90610585908d9086906004016112ca565b602060405180830381865afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906112ed565b90508034101561063e5760405162461bcd60e51b815260206004820152602360248201527f434357535442544d657373616765723a20494e53554646494349454e545f465560448201527f4e4453000000000000000000000000000000000000000000000000000000000060648201526084016103c7565b6040517f96f4e9f90000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906396f4e9f99083906106a7908e9087906004016112ca565b60206040518083038185885af11580156106c5573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906106ea91906112ed565b935060006106f88234611306565b1115610776576000336108fc61070e8434611306565b6040518115909202916000818181858888f193505050509050806107745760405162461bcd60e51b815260206004820181905260248201527f434357535442544d657373616765723a205452414e534645525f4641494c454460448201526064016103c7565b505b837fda8e2b0b9a96c24814e67697564048ae4ed9e0a079edffc1a26891a87c559a05846040516107a69190611327565b60405180910390a25050509695505050505050565b6001546001600160a01b031633146108155760405162461bcd60e51b815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e65720000000000000000000060448201526064016103c7565b600080543373ffffffffffffffffffffffffffffffffffffffff19808316821784556001805490911690556040516001600160a01b0390921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108dd576040517fd7f733340000000000000000000000000000000000000000000000000000000081523360048201526024016103c7565b6108ee6108e982611438565b610ba0565b50565b600061092e6040518060a0016040528060608152602001606081526020016060815260200160006001600160a01b03168152602001606081525090565b6002546040517f6092d2250000000000000000000000000000000000000000000000000000000081526001600160a01b0389811660048301528881166024830152604482018890526000921690636092d22590606401600060405180830381865afa1580156109a1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109c9919081019061124e565b6040805160a081019091526001600160a01b038b1660c08201529091508060e0810160408051808303601f190181529181529082526020808301859052815160008082529181018352929091019190610a44565b6040805180820190915260008082526020820152815260200190600190039081610a1d5790505b50815260200160006001600160a01b0316815260200186868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050509152506040516320487ded60e01b81529092506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906320487ded90610ae3908d9086906004016112ca565b602060405180830381865afa158015610b00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2491906112ed565b92505097509795505050505050565b610b3b610b44565b6108ee81610cef565b6000546001600160a01b03163314610b9e5760405162461bcd60e51b815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e65720000000000000000000060448201526064016103c7565b565b60008160400151806020019051810190610bba91906114e5565b60208084015167ffffffffffffffff1660009081526003825260408082206001600160a01b0385168352909252205490915060ff16610c2d57602082015160405163596613ef60e11b815267ffffffffffffffff90911660048201526001600160a01b03821660248201526044016103c7565b60025460608301516040517ff6ec1c4d0000000000000000000000000000000000000000000000000000000081526001600160a01b039092169163f6ec1c4d91610c7991600401611327565b600060405180830381600087803b158015610c9357600080fd5b505af1158015610ca7573d6000803e3d6000fd5b5050505081600001517fa76e8bfca7bc12668a76418f51e4b6a884e03734335e3ad93d4d6355af6497708360600151604051610ce39190611327565b60405180910390a25050565b336001600160a01b03821603610d475760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c6600000000000000000060448201526064016103c7565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b600060208284031215610db757600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610de757600080fd5b9392505050565b803567ffffffffffffffff81168114610e0657600080fd5b919050565b6001600160a01b03811681146108ee57600080fd5b600080600060608486031215610e3557600080fd5b610e3e84610dee565b92506020840135610e4e81610e0b565b915060408401358015158114610e6357600080fd5b809150509250925092565b60008060408385031215610e8157600080fd5b610e8a83610dee565b91506020830135610e9a81610e0b565b809150509250929050565b60008083601f840112610eb757600080fd5b50813567ffffffffffffffff811115610ecf57600080fd5b602083019150836020828501011115610ee757600080fd5b9250929050565b60008060008060008060a08789031215610f0757600080fd5b610f1087610dee565b95506020870135610f2081610e0b565b94506040870135610f3081610e0b565b935060608701359250608087013567ffffffffffffffff811115610f5357600080fd5b610f5f89828a01610ea5565b979a9699509497509295939492505050565b600060208284031215610f8357600080fd5b813567ffffffffffffffff811115610f9a57600080fd5b820160a08185031215610de757600080fd5b600080600080600080600060c0888a031215610fc757600080fd5b610fd088610dee565b96506020880135610fe081610e0b565b95506040880135610ff081610e0b565b9450606088013561100081610e0b565b93506080880135925060a088013567ffffffffffffffff81111561102357600080fd5b61102f8a828b01610ea5565b989b979a50959850939692959293505050565b60005b8381101561105d578181015183820152602001611045565b50506000910152565b6000815180845261107e816020860160208601611042565b601f01601f19169290920160200192915050565b6000815160a084526110a760a0850182611066565b9050602080840151858303828701526110c08382611066565b60408681015188830389830152805180845290850195509092506000918401905b8083101561111357855180516001600160a01b03168352850151858301529484019460019290920191908301906110e1565b506060870151945061113060608901866001600160a01b03169052565b6080870151945087810360808901526111498186611066565b98975050505050505050565b82815260406020820152600061116e6040830184611092565b949350505050565b60006020828403121561118857600080fd5b8135610de781610e0b565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156111cc576111cc611193565b60405290565b60405160a0810167ffffffffffffffff811182821017156111cc576111cc611193565b604051601f8201601f1916810167ffffffffffffffff8111828210171561121e5761121e611193565b604052919050565b600067ffffffffffffffff82111561124057611240611193565b50601f01601f191660200190565b60006020828403121561126057600080fd5b815167ffffffffffffffff81111561127757600080fd5b8201601f8101841361128857600080fd5b805161129b61129682611226565b6111f5565b8181528560208385010111156112b057600080fd5b6112c1826020830160208601611042565b95945050505050565b67ffffffffffffffff8316815260406020820152600061116e6040830184611092565b6000602082840312156112ff57600080fd5b5051919050565b8181038181111561031357634e487b7160e01b600052601160045260246000fd5b602081526000610de76020830184611066565b600082601f83011261134b57600080fd5b813561135961129682611226565b81815284602083860101111561136e57600080fd5b816020850160208301376000918101602001919091529392505050565b600082601f83011261139c57600080fd5b8135602067ffffffffffffffff8211156113b8576113b8611193565b6113c6818360051b016111f5565b82815260069290921b840181019181810190868411156113e557600080fd5b8286015b8481101561142d57604081890312156114025760008081fd5b61140a6111a9565b813561141581610e0b565b815281850135858201528352918301916040016113e9565b509695505050505050565b600060a0823603121561144a57600080fd5b6114526111d2565b8235815261146260208401610dee565b6020820152604083013567ffffffffffffffff8082111561148257600080fd5b61148e3683870161133a565b604084015260608501359150808211156114a757600080fd5b6114b33683870161133a565b606084015260808501359150808211156114cc57600080fd5b506114d93682860161138b565b60808301525092915050565b6000602082840312156114f757600080fd5b8151610de781610e0b56fea2646970667358221220afd6e42d7c1e1b32c8191aa21e1b624f6e1387bf664ac7c686bf42c94405fb4964736f6c6343000813003300000000000000000000000034b03cb9086d7d758ac55af71584f81a598759fe00000000000000000000000088bfaaa980fab8fb57a0c9979e2abc21aa930f82