2 txs
273 calls
constructor
constructor(address _ADAPTER_MESH, address _OFT_MESH, address _EXECUTOR)
functions
ADAPTER_MESH
viewfunction ADAPTER_MESH() view returns (address)
decodeSendParam
purefunction decodeSendParam(bytes sendParamBytes) pure returns (tuple sendParam)
ENDPOINT
viewfunction ENDPOINT() view returns (address)
EXECUTOR
viewfunction EXECUTOR() view returns (address)
failedMessages
viewfunction failedMessages(bytes32 guid) view returns (address oft, tuple sendParam, address refundOFT, tuple refundSendParam, uint256 msgValue)
OFT_MESH
viewfunction OFT_MESH() view returns (address)
lzCompose
payablefunction lzCompose(address _refundOFT, bytes32 _guid, bytes _message, address, bytes) payable
refund
payablefunction refund(bytes32 _guid) payable
retry
payablefunction retry(bytes32 _guid) payable
send
payablefunction send(address _oft, tuple _sendParam) payable
events
DecodeFailed
event DecodeFailed(bytes32 indexed guid, address indexed oft, bytes message)
Refunded
event Refunded(bytes32 indexed guid, address indexed oft)
Retried
event Retried(bytes32 indexed guid, address indexed oft)
SendFailed
event SendFailed(bytes32 indexed guid, address indexed oft)
Sent
event Sent(bytes32 indexed guid, address indexed oft)
errors
InvalidAdapterMesh
error InvalidAdapterMesh()
InvalidOFTMesh
error InvalidOFTMesh()
InvalidSendParam
error InvalidSendParam((uint32 dstEid, bytes32 to, uint256 amountLD, uint256 minAmountLD, bytes extraOptions, bytes composeMsg, bytes oftCmd) sendParam)
OnlyEndpoint
error OnlyEndpoint(address caller)
OnlyOFT
error OnlyOFT(address oft)
OnlySelf
error OnlySelf(address caller)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
creation bytecode
0x6101006040523480156200001257600080fd5b506040516200289b3803806200289b8339810160408190526200003591620002d7565b60016000556001600160a01b03808416608081905290831660a05260408051635e280f1160e01b81529051635e280f11916004808201926020929091908290030181865afa1580156200008c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000b291906200032b565b6001600160a01b0390811660c05281811660e052608051604080516327da2e5960e21b815290519190921691639f68b9649160048083019260209291908290030181865afa15801562000109573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200012f919062000352565b6200014d5760405163e882424560e01b815260040160405180910390fd5b60a0516001600160a01b0316639f68b9646040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200018e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b4919062000352565b15620001d357604051632af728ed60e21b815260040160405180910390fd5b6080516001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000214573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023a91906200032b565b60805160405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b3906044016020604051808303816000875af11580156200028e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b4919062000352565b5050505062000376565b6001600160a01b0381168114620002d457600080fd5b50565b600080600060608486031215620002ed57600080fd5b8351620002fa81620002be565b60208501519093506200030d81620002be565b60408501519092506200032081620002be565b809150509250925092565b6000602082840312156200033e57600080fd5b81516200034b81620002be565b9392505050565b6000602082840312156200036557600080fd5b815180151581146200034b57600080fd5b60805160a05160c05160e0516124bb620003e06000396000818161016901526107d001526000818161019d015261126901526000818160e9015281816112e801526113a9015260008181610135015281816112ab0152818161134a015261138301526124bb6000f3fe6080604052600436106100955760003560e01c80637249fbb6116100595780637249fbb6146101bf578063749075ff146101d45780638871e021146101e7578063a4e7f8bd146101fa578063d0a102601461022b57600080fd5b80630837ef0b146100a15780631620fb25146100d7578063408e7b8b14610123578063630dc7cb146101575780636fad06f51461018b57600080fd5b3661009c57005b600080fd5b3480156100ad57600080fd5b506100c16100bc366004611b80565b61023e565b6040516100ce9190611c90565b60405180910390f35b3480156100e357600080fd5b5061010b7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100ce565b34801561012f57600080fd5b5061010b7f000000000000000000000000000000000000000000000000000000000000000081565b34801561016357600080fd5b5061010b7f000000000000000000000000000000000000000000000000000000000000000081565b34801561019757600080fd5b5061010b7f000000000000000000000000000000000000000000000000000000000000000081565b6101d26101cd366004611ca3565b610259565b005b6101d26101e2366004611ea2565b61083d565b6101d26101f5366004611ca3565b610881565b34801561020657600080fd5b5061021a610215366004611ca3565b610e34565b6040516100ce959493929190611eef565b6101d2610239366004611f3f565b61125e565b610246611aa4565b61025282840184611fdc565b9392505050565b61026161194d565b6000818152600160208181526040808420815160a08101835281546001600160a01b03168152825160e081018452948201805463ffffffff1686526002830154868601526003830154938601939093526004820154606086015260058201805491959294860193916080840191906102d890612018565b80601f016020809104026020016040519081016040528092919081815260200182805461030490612018565b80156103515780601f1061032657610100808354040283529160200191610351565b820191906000526020600020905b81548152906001019060200180831161033457829003601f168201915b5050505050815260200160058201805461036a90612018565b80601f016020809104026020016040519081016040528092919081815260200182805461039690612018565b80156103e35780601f106103b8576101008083540402835291602001916103e3565b820191906000526020600020905b8154815290600101906020018083116103c657829003601f168201915b505050505081526020016006820180546103fc90612018565b80601f016020809104026020016040519081016040528092919081815260200182805461042890612018565b80156104755780601f1061044a57610100808354040283529160200191610475565b820191906000526020600020905b81548152906001019060200180831161045857829003601f168201915b50505091909252505050815260088201546001600160a01b03166020808301919091526040805160e08101825260098501805463ffffffff168252600a86015493820193909352600b85015481830152600c8501546060820152600d8501805492909401939092916080840191906104ec90612018565b80601f016020809104026020016040519081016040528092919081815260200182805461051890612018565b80156105655780601f1061053a57610100808354040283529160200191610565565b820191906000526020600020905b81548152906001019060200180831161054857829003601f168201915b5050505050815260200160058201805461057e90612018565b80601f01602080910402602001604051908101604052809291908181526020018280546105aa90612018565b80156105f75780601f106105cc576101008083540402835291602001916105f7565b820191906000526020600020905b8154815290600101906020018083116105da57829003601f168201915b5050505050815260200160068201805461061090612018565b80601f016020809104026020016040519081016040528092919081815260200182805461063c90612018565b80156106895780601f1061065e57610100808354040283529160200191610689565b820191906000526020600020905b81548152906001019060200180831161066c57829003601f168201915b5050509190925250505081526010919091015460209091015260408101519091506001600160a01b03166106df578060600151604051639af5461d60e01b81526004016106d69190611c90565b60405180910390fd5b6000828152600160208190526040822080546001600160a01b0319168155908101805463ffffffff19168155600282018390556003820183905560048201839055909190816107316005850182611aea565b61073f600583016000611aea565b61074d600683016000611aea565b50506008820180546001600160a01b031916905560098201805463ffffffff191681556000600a8401819055600b8401819055600c8401819055610794600d850182611aea565b6107a2600583016000611aea565b6107b0600683016000611aea565b5050601082016000905550506107f48160400151826060015183608001517f0000000000000000000000000000000000000000000000000000000000000000611977565b80604001516001600160a01b0316827f5e9f0820fcfb53b644becb775b651bae68c337106f21433e526551d1e02c1c0e60405160405180910390a35061083a6001600055565b50565b61084561194d565b3330146108665760405162a19dbf60e81b81523360048201526024016106d6565b6108738282600032611977565b61087d6001600055565b5050565b61088961194d565b6000818152600160208181526040808420815160a08101835281546001600160a01b03168152825160e081018452948201805463ffffffff16865260028301548686015260038301549386019390935260048201546060860152600582018054919592948601939160808401919061090090612018565b80601f016020809104026020016040519081016040528092919081815260200182805461092c90612018565b80156109795780601f1061094e57610100808354040283529160200191610979565b820191906000526020600020905b81548152906001019060200180831161095c57829003601f168201915b5050505050815260200160058201805461099290612018565b80601f01602080910402602001604051908101604052809291908181526020018280546109be90612018565b8015610a0b5780601f106109e057610100808354040283529160200191610a0b565b820191906000526020600020905b8154815290600101906020018083116109ee57829003601f168201915b50505050508152602001600682018054610a2490612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610a5090612018565b8015610a9d5780601f10610a7257610100808354040283529160200191610a9d565b820191906000526020600020905b815481529060010190602001808311610a8057829003601f168201915b50505091909252505050815260088201546001600160a01b03166020808301919091526040805160e08101825260098501805463ffffffff168252600a86015493820193909352600b85015481830152600c8501546060820152600d850180549290940193909291608084019190610b1490612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4090612018565b8015610b8d5780601f10610b6257610100808354040283529160200191610b8d565b820191906000526020600020905b815481529060010190602001808311610b7057829003601f168201915b50505050508152602001600582018054610ba690612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd290612018565b8015610c1f5780601f10610bf457610100808354040283529160200191610c1f565b820191906000526020600020905b815481529060010190602001808311610c0257829003601f168201915b50505050508152602001600682018054610c3890612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610c6490612018565b8015610cb15780601f10610c8657610100808354040283529160200191610cb1565b820191906000526020600020905b815481529060010190602001808311610c9457829003601f168201915b5050509190925250505081526010919091015460209091015280519091506001600160a01b0316610cfb578060200151604051639af5461d60e01b81526004016106d69190611c90565b6000828152600160208190526040822080546001600160a01b0319168155908101805463ffffffff1916815560028201839055600382018390556004820183905590919081610d4d6005850182611aea565b610d5b600583016000611aea565b610d69600683016000611aea565b50506008820180546001600160a01b031916905560098201805463ffffffff191681556000600a8401819055600b8401819055600c8401819055610db0600d850182611aea565b610dbe600583016000611aea565b610dcc600683016000611aea565b505060108201600090555050610df081600001518260200151836080015132611977565b80516040516001600160a01b039091169083907f89aa520f505c5aa04ca7d9e62b09f7a69cd3a6d3a6468930e54edf220ec76f0590600090a35061083a6001600055565b6001602081815260009283526040928390208054845160e081018652938201805463ffffffff168552600283015493850193909352600382015494840194909452600481015460608401526005810180546001600160a01b039095169491939291608084019190610ea490612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610ed090612018565b8015610f1d5780601f10610ef257610100808354040283529160200191610f1d565b820191906000526020600020905b815481529060010190602001808311610f0057829003601f168201915b50505050508152602001600582018054610f3690612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610f6290612018565b8015610faf5780601f10610f8457610100808354040283529160200191610faf565b820191906000526020600020905b815481529060010190602001808311610f9257829003601f168201915b50505050508152602001600682018054610fc890612018565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff490612018565b80156110415780601f1061101657610100808354040283529160200191611041565b820191906000526020600020905b81548152906001019060200180831161102457829003601f168201915b5050509190925250505060088201546040805160e08101825260098501805463ffffffff168252600a8601546020830152600b86015492820192909252600c8501546060820152600d8501805494956001600160a01b03909416949192916080840191906110ae90612018565b80601f01602080910402602001604051908101604052809291908181526020018280546110da90612018565b80156111275780601f106110fc57610100808354040283529160200191611127565b820191906000526020600020905b81548152906001019060200180831161110a57829003601f168201915b5050505050815260200160058201805461114090612018565b80601f016020809104026020016040519081016040528092919081815260200182805461116c90612018565b80156111b95780601f1061118e576101008083540402835291602001916111b9565b820191906000526020600020905b81548152906001019060200180831161119c57829003601f168201915b505050505081526020016006820180546111d290612018565b80601f01602080910402602001604051908101604052809291908181526020018280546111fe90612018565b801561124b5780601f106112205761010080835404028352916020019161124b565b820191906000526020600020905b81548152906001019060200180831161122e57829003601f168201915b5050509190925250505060109091015485565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146112a9576040516391ac5e4f60e01b81523360048201526024016106d6565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b03161415801561131d57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b031614155b156113465760405163012518af60e01b81526001600160a01b03881660048201526024016106d6565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b0316146113a7577f00000000000000000000000000000000000000000000000000000000000000006113c9565b7f00000000000000000000000000000000000000000000000000000000000000005b905060006113d78787611a0b565b905060006113e58888611a30565b905060006113f38989611a49565b905060006114018a8a611a59565b905061140b611aa4565b63ffffffff85168152602081018390526040810184905261142a611aa4565b604051630837ef0b60e01b81523090630837ef0b9061144d908690600401612052565b600060405180830381865afa92505050801561148b57506040513d6000823e601f3d908101601f1916820160405261148891908101906120b5565b60015b61169e576040518060a0016040528060006001600160a01b031681526020018281526020018f6001600160a01b0316815260200183815260200134815250600160008f815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160008201518160000160006101000a81548163ffffffff021916908363ffffffff160217905550602082015181600101556040820151816002015560608201518160030155608082015181600401908161156c91906121e9565b5060a0820151600582019061158190826121e9565b5060c0820151600682019061159690826121e9565b5050506040828101516008830180546001600160a01b0319166001600160a01b03909216919091179055606080840151805160098501805463ffffffff191663ffffffff9092169190911781556020820151600a86015592810151600b85015590810151600c8401556080810151909190600d84019061161690826121e9565b5060a0820151600582019061162b90826121e9565b5060c0820151600682019061164090826121e9565b50505060808201518160100155905050866001600160a01b03168d7fbc772e673f79f215a678a2c670fb005499e971d3b0a9b9c26b12e4bdce15d6c38560405161168a9190612052565b60405180910390a350505050505050611944565b6040810186905260006060820152905060405163749075ff60e01b8152309063749075ff9034906116d5908b9086906004016122a8565b6000604051808303818588803b1580156116ee57600080fd5b505af193505050508015611700575060015b611906576040518060a00160405280886001600160a01b031681526020018281526020018f6001600160a01b0316815260200183815260200134815250600160008f815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160010155604082015181600201556060820151816003015560808201518160040190816117e091906121e9565b5060a082015160058201906117f590826121e9565b5060c0820151600682019061180a90826121e9565b5050506040828101516008830180546001600160a01b0319166001600160a01b03909216919091179055606080840151805160098501805463ffffffff191663ffffffff9092169190911781556020820151600a86015592810151600b85015590810151600c8401556080810151909190600d84019061188a90826121e9565b5060a0820151600582019061189f90826121e9565b5060c082015160068201906118b490826121e9565b505050608091909101516010909101556040516001600160a01b038816908e907ff541998e7eedd92b9bdf229af34c5948d21a53ea0d6096e0a7129534dbc679e590600090a350505050505050611944565b6040516001600160a01b038816908e907f694312179c29178a99acf06670f5965230682449c6800c13d8a41928b1494ba390600090a3505050505050505b50505050505050565b60026000540361197057604051633ee5aeb560e01b815260040160405180910390fd5b6002600055565b600061198383346122cc565b60408051808201825282815260006020820152905163c7c7f5b360e01b81529192506001600160a01b0387169163c7c7f5b39184916119c891899188906004016122ed565b60c06040518083038185885af11580156119e6573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611944919061237a565b6000611a1b600c6008848661240d565b611a2491612437565b60e01c90505b92915050565b6000611a40602c600c848661240d565b61025291612467565b6000611a40604c602c848661240d565b6060611a6882604c818661240d565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b6040518060e00160405280600063ffffffff1681526020016000801916815260200160008152602001600081526020016060815260200160608152602001606081525090565b508054611af690612018565b6000825580601f10611b06575050565b601f01602090049060005260206000209081019061083a91905b80821115611b345760008155600101611b20565b5090565b60008083601f840112611b4a57600080fd5b5081356001600160401b03811115611b6157600080fd5b602083019150836020828501011115611b7957600080fd5b9250929050565b60008060208385031215611b9357600080fd5b82356001600160401b03811115611ba957600080fd5b611bb585828601611b38565b90969095509350505050565b60005b83811015611bdc578181015183820152602001611bc4565b50506000910152565b60008151808452611bfd816020860160208601611bc1565b601f01601f19169290920160200192915050565b63ffffffff81511682526020810151602083015260408101516040830152606081015160608301526000608082015160e06080850152611c5460e0850182611be5565b905060a083015184820360a0860152611c6d8282611be5565b91505060c083015184820360c0860152611c878282611be5565b95945050505050565b6020815260006102526020830184611c11565b600060208284031215611cb557600080fd5b5035919050565b80356001600160a01b0381168114611cd357600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715611d1057611d10611cd8565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611d3e57611d3e611cd8565b604052919050565b63ffffffff8116811461083a57600080fd5b8035611cd381611d46565b60006001600160401b03821115611d7c57611d7c611cd8565b50601f01601f191660200190565b600082601f830112611d9b57600080fd5b8135611dae611da982611d63565b611d16565b818152846020838601011115611dc357600080fd5b816020850160208301376000918101602001919091529392505050565b600060e08284031215611df257600080fd5b611dfa611cee565b9050611e0582611d58565b815260208201356020820152604082013560408201526060820135606082015260808201356001600160401b0380821115611e3f57600080fd5b611e4b85838601611d8a565b608084015260a0840135915080821115611e6457600080fd5b611e7085838601611d8a565b60a084015260c0840135915080821115611e8957600080fd5b50611e9684828501611d8a565b60c08301525092915050565b60008060408385031215611eb557600080fd5b611ebe83611cbc565b915060208301356001600160401b03811115611ed957600080fd5b611ee585828601611de0565b9150509250929050565b600060018060a01b03808816835260a06020840152611f1160a0840188611c11565b81871660408501528381036060850152611f2b8187611c11565b925050508260808301529695505050505050565b600080600080600080600060a0888a031215611f5a57600080fd5b611f6388611cbc565b96506020880135955060408801356001600160401b0380821115611f8657600080fd5b611f928b838c01611b38565b9097509550859150611fa660608b01611cbc565b945060808a0135915080821115611fbc57600080fd5b50611fc98a828b01611b38565b989b979a50959850939692959293505050565b600060208284031215611fee57600080fd5b81356001600160401b0381111561200457600080fd5b61201084828501611de0565b949350505050565b600181811c9082168061202c57607f821691505b60208210810361204c57634e487b7160e01b600052602260045260246000fd5b50919050565b6020815260006102526020830184611be5565b8051611cd381611d46565b600082601f83011261208157600080fd5b815161208f611da982611d63565b8181528460208386010111156120a457600080fd5b612010826020830160208701611bc1565b6000602082840312156120c757600080fd5b81516001600160401b03808211156120de57600080fd5b9083019060e082860312156120f257600080fd5b6120fa611cee565b61210383612065565b815260208301516020820152604083015160408201526060830151606082015260808301518281111561213557600080fd5b61214187828601612070565b60808301525060a08301518281111561215957600080fd5b61216587828601612070565b60a08301525060c08301518281111561217d57600080fd5b61218987828601612070565b60c08301525095945050505050565b601f8211156121e4576000816000526020600020601f850160051c810160208610156121c15750805b601f850160051c820191505b818110156121e0578281556001016121cd565b5050505b505050565b81516001600160401b0381111561220257612202611cd8565b612216816122108454612018565b84612198565b602080601f83116001811461224b57600084156122335750858301515b600019600386901b1c1916600185901b1785556121e0565b600085815260208120601f198616915b8281101561227a5788860151825594840194600190910190840161225b565b50858210156122985787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038316815260406020820181905260009061201090830184611c11565b80820180821115611a2a57634e487b7160e01b600052601160045260246000fd5b6080815260006123006080830186611c11565b8451602084810191909152909401516040830152506001600160a01b0391909116606090910152919050565b60006040828403121561233e57600080fd5b604051604081018181106001600160401b038211171561236057612360611cd8565b604052825181526020928301519281019290925250919050565b60008082840360c081121561238e57600080fd5b608081121561239c57600080fd5b50604051606081016001600160401b0382821081831117156123c0576123c0611cd8565b81604052855183526020860151915080821682146123dd57600080fd5b5060208201526123f0856040860161232c565b60408201529150612404846080850161232c565b90509250929050565b6000808585111561241d57600080fd5b8386111561242a57600080fd5b5050820193919092039150565b6001600160e01b0319813581811691600485101561245f5780818660040360031b1b83161692505b505092915050565b80356020831015611a2a57600019602084900360031b1b169291505056fea26469706673582212201dddb2c99e46117f4a04e1b7484d3f819f5959c2c3df8a2291fa2de1f6cdf17264736f6c6343000816003300000000000000000000000077652d5aba086137b595875263fc200182919b9200000000000000000000000014e4a1b13bf7f943c8ff7c51fb60fa964a298d92000000000000000000000000e93685f3bba03016f02bd1828badd6195988d950