Loading
[ { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" }, { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_symbol", "type": "string" }, { "internalType": "uint32", "name": "_originLzEndpoint", "type": "uint32" }, { "internalType": "address", "name": "_lzEndpoint", "type": "address" }, { "internalType": "address", "name": "_genesisToken", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "target", "type": "address" } ], "name": "AddressEmptyCode", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "AddressInsufficientBalance", "type": "error" }, { "inputs": [], "name": "CannotUnwrapOnMainnet", "type": "error" }, { "inputs": [], "name": "CannotWrapOnMainnet", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [], "name": "FailedInnerCall", "type": "error" }, { "inputs": [], "name": "GasLimitCannotBeZero", "type": "error" }, { "inputs": [], "name": "InvalidDelegate", "type": "error" }, { "inputs": [], "name": "InvalidEndpointCall", "type": "error" }, { "inputs": [ { "internalType": "uint16", "name": "optionType", "type": "uint16" } ], "name": "InvalidOptionType", "type": "error" }, { "inputs": [], "name": "LzTokenUnavailable", "type": "error" }, { "inputs": [ { "internalType": "uint32", "name": "eid", "type": "uint32" } ], "name": "NoPeer", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "msgValue", "type": "uint256" } ], "name": "NotEnoughNative", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "addr", "type": "address" } ], "name": "OnlyEndpoint", "type": "error" }, { "inputs": [ { "internalType": "uint32", "name": "eid", "type": "uint32" }, { "internalType": "bytes32", "name": "sender", "type": "bytes32" } ], "name": "OnlyPeer", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "inputs": [ { "internalType": "uint8", "name": "bits", "type": "uint8" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "SafeCastOverflowedUintDowncast", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "SafeERC20FailedOperation", "type": "error" }, { "inputs": [], "name": "ZeroAddress", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "pool", "type": "address" } ], "name": "NewPoolAttached", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "guid", "type": "bytes32" }, { "indexed": true, "internalType": "uint32", "name": "srcEid", "type": "uint32" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amountOrId", "type": "uint256" } ], "name": "OFTReceived", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "guid", "type": "bytes32" }, { "indexed": true, "internalType": "uint32", "name": "dstEid", "type": "uint32" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amountOrId", "type": "uint256" } ], "name": "OFTSent", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint32", "name": "originLzEndpoint", "type": "uint32" } ], "name": "OriginLzEndpointUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint32", "name": "eid", "type": "uint32" }, { "indexed": false, "internalType": "bytes32", "name": "peer", "type": "bytes32" } ], "name": "PeerSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "MAINNET_LZ_ENDPOINT_ID", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "addRewardOnMainnet", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint32", "name": "srcEid", "type": "uint32" }, { "internalType": "bytes32", "name": "sender", "type": "bytes32" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" } ], "internalType": "struct Origin", "name": "origin", "type": "tuple" } ], "name": "allowInitializePath", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_pool", "type": "address" } ], "name": "attachPool", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "defaultLzOption", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "endpoint", "outputs": [ { "internalType": "contract ILayerZeroEndpointV2", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "_dstEid", "type": "uint32" }, { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "estimateFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "genesisToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint32", "name": "srcEid", "type": "uint32" }, { "internalType": "bytes32", "name": "sender", "type": "bytes32" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" } ], "internalType": "struct Origin", "name": "", "type": "tuple" }, { "internalType": "bytes", "name": "", "type": "bytes" }, { "internalType": "address", "name": "_sender", "type": "address" } ], "name": "isComposeMsgSender", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lzGasLimit", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint32", "name": "srcEid", "type": "uint32" }, { "internalType": "bytes32", "name": "sender", "type": "bytes32" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" } ], "internalType": "struct Origin", "name": "_origin", "type": "tuple" }, { "internalType": "bytes32", "name": "_guid", "type": "bytes32" }, { "internalType": "bytes", "name": "_message", "type": "bytes" }, { "internalType": "address", "name": "_executor", "type": "address" }, { "internalType": "bytes", "name": "_extraData", "type": "bytes" } ], "name": "lzReceive", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "", "type": "uint32" }, { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "name": "nextNonce", "outputs": [ { "internalType": "uint64", "name": "nonce", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "oAppVersion", "outputs": [ { "internalType": "uint64", "name": "senderVersion", "type": "uint64" }, { "internalType": "uint64", "name": "receiverVersion", "type": "uint64" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "originLzEndpoint", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "eid", "type": "uint32" } ], "name": "peers", "outputs": [ { "internalType": "bytes32", "name": "peer", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pool", "outputs": [ { "internalType": "contract IGenesisTokenPool", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" } ], "name": "retrieveToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_delegate", "type": "address" } ], "name": "setDelegate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "_eid", "type": "uint32" }, { "internalType": "bytes32", "name": "_peer", "type": "bytes32" } ], "name": "setPeer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_amountIn", "type": "uint256" } ], "name": "unwrap", "outputs": [ { "components": [ { "internalType": "bytes32", "name": "guid", "type": "bytes32" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "components": [ { "internalType": "uint256", "name": "nativeFee", "type": "uint256" }, { "internalType": "uint256", "name": "lzTokenFee", "type": "uint256" } ], "internalType": "struct MessagingFee", "name": "fee", "type": "tuple" } ], "internalType": "struct MessagingReceipt", "name": "msgReceipt", "type": "tuple" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "_lzGasLimit", "type": "uint32" } ], "name": "updateLayerZeroGasLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "_originLzEndpoint", "type": "uint32" } ], "name": "updateOriginLzEndpoint", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60c080604052346100e857612af790813803809261001c82610103565b82398082810192126100e85761003061017f565b60e0516001600160401b0393919291908481116100e857816100539184016101e6565b93610100519081116100e85761006992016101e6565b916101205163ffffffff811681036100e85761009693610087610195565b926100906101ac565b9461023a565b60405161220190816108f682396080518181816105b101528181610c77015281816112aa0152818161190901528181611b990152611f21015260a051818181610ee801528181611443015261167e0152f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b60c0601f91909101601f19168101906001600160401b0382119082101761012957604052565b6100ed565b6001600160401b03811161012957604052565b604081019081106001600160401b0382111761012957604052565b601f909101601f19168101906001600160401b0382119082101761012957604052565b60c051906001600160a01b03821682036100e857565b61014051906001600160a01b03821682036100e857565b61016051906001600160a01b03821682036100e857565b60005b8381106101d65750506000910152565b81810151838201526020016101c6565b81601f820112156100e85780516001600160401b0381116101295760405192610219601f8301601f19166020018561015c565b818452602082840101116100e85761023791602080850191016101c3565b90565b81519095939492916001600160401b038211610129576102648261025f60035461041c565b61046d565b602090816001601f8511146103795750918061029c926102a4959460009261036e575b50508160011b916000199060031b1c19161790565b600355610526565b6001600160a01b039084821615610355576102be856107ec565b1680608052803b156100e85760405163ca5eb5e160e01b81526001600160a01b039490941660048501526000908490602490829084905af19283156103505761032d93610337575b5060a05267ffffffff000000006007549160201b169067ffffffff00000000191617600755565b6103356106ea565b565b8061034461034a9261012e565b80610405565b38610306565b610410565b604051631e4fbdf760e01b815260006004820152602490fd5b015190503880610287565b60036000529190601f1984167fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b936000905b8282106103ed5750509160019391856102a4979694106103d4575b505050811b01600355610526565b015160001960f88460031b161c191690553880806103c6565b806001869782949787015181550196019401906103ab565b60009103126100e857565b6040513d6000823e3d90fd5b90600182811c9216801561044c575b602083101461043657565b634e487b7160e01b600052602260045260246000fd5b91607f169161042b565b818110610461575050565b60008155600101610456565b90601f821161047a575050565b6103359160036000526020600020906020601f840160051c830193106104a8575b601f0160051c0190610456565b909150819061049b565b90601f82116104bf575050565b6103359160046000526020600020906020601f840160051c830193106104a857601f0160051c0190610456565b90601f82116104f9575050565b6103359160086000526020600020906020601f840160051c830193106104a857601f0160051c0190610456565b80519091906001600160401b0381116101295761054d8161054860045461041c565b6104b2565b602080601f83116001146105845750819061057f939460009261036e5750508160011b916000199060031b1c19161790565b600455565b6004600052601f198316949091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b926000905b8782106105f05750508360019596106105d7575b505050811b01600455565b015160001960f88460031b161c191690553880806105cc565b806001859682949686015181550195019301906105b8565b80519091906001600160401b0381116101295761062f8161062a60085461041c565b6104ec565b602080601f831160011461066657508190610661939460009261036e5750508160011b916000199060031b1c19161790565b600855565b6008600052601f198316949091907ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3926000905b8782106106d25750508360019596106106b9575b505050811b01600855565b015160001960f88460031b161c191690553880806106ae565b8060018596829496860151815501950193019061069a565b6007805463ffffffff191662030d4017905560408051600360f01b60208201526002815261071781610141565b61ffff906003826107278361084b565b16036107df578251610c3560861b6020820152601081529061074882610141565b6003836107548361084b565b16036107bd57815183811161079f57831660010192831161079a57610787610795926103359551948593602085016108a0565b03601f19810183528261015c565b610608565b610835565b6044908551906306dfcc6560e41b8252601060048301526024820152fd5b83836107ca60249361084b565b9151633a51740d60e01b815291166004820152fd5b602493506107ca9061084b565b600580546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b634e487b7160e01b600052601160045260246000fd5b600281511061085b576002015190565b60405162461bcd60e51b815260206004820152601460248201527f746f55696e7431365f6f75744f66426f756e64730000000000000000000000006044820152606490fd5b6020906108b76004959493828151948592016101c3565b600160f81b910181815260f09290921b6001600160f01b031916600183015260038201528151916108f0908390858401906020016101c3565b01019056fe6080604052600436101561001257600080fd5b60003560e01c806306fdde0314610237578063095ea7b314610232578063098d56111461022d57806312b1ee6c1461022857806313137d651461022357806314127a3b1461021e57806316f0115b1461021957806317442b701461021457806318160ddd1461020f5780631dafbfdf1461020a57806323b872dd146102055780632a092d5a14610200578063313ce567146101fb5780633400288b146101f657806339f47693146101f157806343d58a55146101ec57806348494b19146101e75780635e280f11146101e257806370a08231146101dd578063715018a6146101d85780637d25a05e146101d357806382413eac146101ce5780638da5cb5b146101c957806395d89b41146101c4578063a2866ddd146101bf578063a9059cbb146101ba578063bb0b6a53146101b5578063c30fe1f4146101b0578063ca5eb5e1146101ab578063dd62ed3e146101a6578063e6b81bd8146101a1578063f2fde38b1461019c578063fda237f8146101975763ff7bd03d1461019257600080fd5b611472565b61142d565b61139b565b611375565b611312565b611279565b611241565b610fd6565b610fa1565b610e97565b610def565b610dc6565b610d68565b610d41565b610ce3565b610ca6565b610c61565b610c44565b610b05565b6109f3565b61096c565b610950565b6108f0565b61083c565b6107c5565b610799565b610777565b61074e565b610656565b610553565b610489565b610465565b610397565b610298565b60005b83811061024f5750506000910152565b818101518382015260200161023f565b906020916102788151809281855285808601910161023c565b601f01601f1916010190565b90602061029592818152019061025f565b90565b346103815760008060031936011261037e576040519080600354906102bc82611011565b8085529160209160019182811690811561035157506001146102f9575b6102f5866102e98188038261116c565b60405191829182610284565b0390f35b9350600384527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b83851061033e575050505081016020016102e9826102f5386102d9565b8054868601840152938201938101610321565b90508695506102f5969350602092506102e994915060ff191682840152151560051b8201019293386102d9565b80fd5b600080fd5b6001600160a01b0381160361038157565b34610381576040366003190112610381576004356103b481610386565b602435331561044c576001600160a01b0382169182156104335733600090815260016020526040902082916103fb915b9060018060a01b0316600052602052604060002090565b556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b604051634a1406b160e11b815260006004820152602490fd5b60405163e602df0560e01b815260006004820152602490fd5b3461038157600036600319011261038157602063ffffffff60075416604051908152f35b34610381576020366003190112610381576004356104a681610386565b6104ae61155c565b6001600160a01b03168015610503576020817ffd94cc30026926a59f29ee88fe4fe000d8b68d9662fff715f340627b13ebd869926bffffffffffffffffffffffff60a01b6009541617600955604051908152a1005b60405163d92e233d60e01b8152600490fd5b606090600319011261038157600490565b9181601f84011215610381578235916001600160401b038311610381576020838186019501011161038157565b60e03660031901126103815761056836610515565b6001600160401b0360843581811161038157610588903690600401610526565b9161059460a435610386565b60c435908111610381576105ac903690600401610526565b5050337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03160361063e576105ef6105ea846114b8565b6115da565b92602081013580940361060c5761060a935060643590611624565b005b61061684916114b8565b60405163309afaf360e21b815263ffffffff9190911660048201526024810191909152604490fd5b6040516391ac5e4f60e01b8152336004820152602490fd5b34610381576020806003193601126103815760043561067481610386565b61067c61155c565b6040516370a0823160e01b81523060048201526001600160a01b0391909116908281602481855afa90811561071c5760009284926106e6928591610721575b5060405163a9059cbb60e01b8152336004820152602481019190915293849283919082906044820190565b03925af1801561071c576106f657005b8161060a92903d10610715575b61070d818361116c565b8101906114e7565b503d610703565b6114d1565b6107419150843d8611610747575b610739818361116c565b8101906114c2565b386106bb565b503d61072f565b34610381576000366003190112610381576009546040516001600160a01b039091168152602090f35b3461038157600036600319011261038157604080516001815260026020820152f35b34610381576000366003190112610381576020600254604051908152f35b63ffffffff81160361038157565b34610381576020366003190112610381577f0976a3045948ef7fd44ba4c4ccaad765961d30589dc3b143e6c4e0ad3342d0ea6020600435610805816107b7565b61080d61155c565b60075467ffffffff0000000082841b169067ffffffff0000000019161760075563ffffffff60405191168152a1005b346103815760603660031901126103815760043561085981610386565b60243561086581610386565b6001600160a01b0382166000908152600160209081526040808320338452909152902060443591905492600184016108ae575b6108a29350611738565b60405160018152602090f35b8284106108ca576108c5836108a295033383611dac565b610898565b604051637dc7a0d960e11b81523360048201526024810185905260448101849052606490fd5b34610381576060366003190112610381576020610947600435610912816107b7565b61092a60243561092181610386565b60443590611855565b604051916109428361093b8161104b565b038461116c565b61196e565b51604051908152f35b3461038157600036600319011261038157602060405160128152f35b34610381576040366003190112610381577f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b6004356109aa816107b7565b602435906109b661155c565b63ffffffff81166000526006602052816040600020556109ee604051928392836020909392919363ffffffff60408201951681520152565b0390a1005b604036600319011261038157600435610a0b81610386565b610a13611534565b506001600160a01b03811615610503576102f590610a76604051610a4181610a3a8161104b565b038261116c565b610a56610a4f6024356119a7565b8094611855565b60075460201c63ffffffff1691610a6e81838561196e565b913393611c0d565b90815163ffffffff610a9160075463ffffffff9060201c1690565b16907ffff873bb909b73d08a8c1af4b21779e87103bb8ea8cf3b3a0067eb8526b8b80a60405180610ac83396829190602083019252565b0390a4604051918291829190916060602060406080840195805185526001600160401b038382015116838601520151805160408501520151910152565b3461038157602036600319011261038157600435610b22816107b7565b610b2a61155c565b63ffffffff81168015610c325763ffffffff196007541617600755604090815190600360f01b602083015260028252610b628261111b565b61ffff91600383610b72836120a7565b1603610c1057835160809290921b63ffffffff60801b16602083015260108252610b9b8261111b565b600383610ba7836120a7565b1603610c10578151838111610bf2578316600101928311610bed57610bda610be89261060a9551948593602085016120f3565b03601f19810183528261116c565b611cce565b611ebe565b6044908551906306dfcc6560e41b8252601060048301526024820152fd5b8383610c1d6024936120a7565b9151633a51740d60e01b815291166004820152fd5b6040516387d9959360e01b8152600490fd5b346103815760003660031901126103815760206040516175958152f35b34610381576000366003190112610381576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461038157602036600319011261038157600435610cc381610386565b60018060a01b031660005260006020526020604060002054604051908152f35b346103815760008060031936011261037e57610cfd61155c565b600580546001600160a01b0319811690915581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b3461038157604036600319011261038157610d5d6004356107b7565b602060405160008152f35b346103815760a036600319011261038157610d8236610515565b506064356001600160401b03811161038157610da2903690600401610526565b50506020608435610db281610386565b6040516001600160a01b0390911630148152f35b34610381576000366003190112610381576005546040516001600160a01b039091168152602090f35b346103815760008060031936011261037e57604051908060045490610e1382611011565b808552916020916001918281169081156103515750600114610e3f576102f5866102e98188038261116c565b9350600484527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b838510610e84575050505081016020016102e9826102f5386102d9565b8054868601840152938201938101610e67565b602036600319011261038157600435610eae61155c565b60014614610f8f576040516323b872dd60e01b81523360048201523060248201526044810182905260208160648160006001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1801561071c57610f70575b50617595610f3f610f2461118d565b610f2d84611880565b3391610f3981836118a4565b91611b19565b5160405192835233927ffff873bb909b73d08a8c1af4b21779e87103bb8ea8cf3b3a0067eb8526b8b80a90602090a4005b610f889060203d6020116107155761070d818361116c565b5038610f15565b60405163a325b09560e01b8152600490fd5b3461038157604036600319011261038157610fcb600435610fc181610386565b6024359033611738565b602060405160018152f35b346103815760203660031901126103815763ffffffff600435610ff8816107b7565b1660005260066020526020604060002054604051908152f35b90600182811c92168015611041575b602083101461102b57565b634e487b7160e01b600052602260045260246000fd5b91607f1691611020565b6008546000929161105b82611011565b808252916020906001908181169081156110c8575060011461107e575b50505050565b9293945060086000526000805160206121ac833981519152926000935b8585106110b5575050506020925001019038808080611078565b805485850184015293820193810161109b565b92505050602093945060ff929192191683830152151560051b01019038808080611078565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161111657604052565b6110ed565b604081019081106001600160401b0382111761111657604052565b606081019081106001600160401b0382111761111657604052565b608081019081106001600160401b0382111761111657604052565b90601f801991011681019081106001600160401b0382111761111657604052565b60405190600082600854916111a183611011565b8083529260209060019081811690811561121d57506001146111ce575b50506111cc9250038361116c565b565b91509260086000526000805160206121ac833981519152936000925b82841061120557506111cc94505050810160200138806111be565b855488850183015294850194879450928101926111ea565b915050602092506111cc94915060ff191682840152151560051b82010138806111be565b34610381576000366003190112610381576102f560405161126581610a3a8161104b565b60405191829160208352602083019061025f565b34610381576000602036600319011261037e5760043561129881610386565b6112a061155c565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811691839190833b1561130e5760249083604051958694859363ca5eb5e160e01b85521660048401525af1801561071c57611302575080f35b61130b90611103565b80f35b8280fd5b3461038157604036600319011261038157602061136c60043561133481610386565b6024359061134182610386565b60018060a01b03166000526001835260406000209060018060a01b0316600052602052604060002090565b54604051908152f35b3461038157600036600319011261038157602060075463ffffffff60405191831c168152f35b34610381576020366003190112610381576004356113b881610386565b6113c061155c565b6001600160a01b0390811690811561141457600554826bffffffffffffffffffffffff60a01b821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b604051631e4fbdf760e01b815260006004820152602490fd5b34610381576000366003190112610381576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461038157606036600319011261038157602061148e36610515565b63ffffffff813561149e816107b7565b166000526006825260406000205482604051920135148152f35b35610295816107b7565b90816020910312610381575190565b6040513d6000823e3d90fd5b8015150361038157565b908160209103126103815751610295816114dd565b6040519060a082018281106001600160401b0382111761111657604052565b604051906115288261111b565b60006020838281520152565b6040519061154182611136565b816000815260006020820152604061155761151b565b910152565b6005546001600160a01b0316330361157057565b60405163118cdaa760e01b8152336004820152602490fd5b617595600081905260066020527f96eb4ad63cb431d771d3938f1c0c511768090e0d031aaa2f376484fb8bbe4079549081156115c2575090565b6024906040519063f6ff4fb760e01b82526004820152fd5b63ffffffff168060005260066020526040600020549081156115c2575090565b9081606091031261038157803561161081610386565b9160406020830135920135610295816114dd565b929161163391928101906115fa565b6001600160a01b0392831694919390156116c857505060405163a9059cbb60e01b81526001600160a01b039390931660048401526024830191909152602090829060449082906000907f0000000000000000000000000000000000000000000000000000000000000000165af1801561071c576116ad5750565b6116c59060203d6020116107155761070d818361116c565b50565b91509161172d63ffffffff61171b6117157fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c948815600014611732576009546001600160a01b0316611de6565b956114b8565b60405195865216939081906020820190565b0390a4565b88611de6565b916001600160a01b038084169290831561183c578116938415611823576001600160a01b0381166000908152602081905260409020548381106117f4576117ef9284926117be7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef966117d994039160018060a01b03166000526000602052604060002090565b556001600160a01b0316600090815260208190526040902090565b8054820190556040519081529081906020820190565b0390a3565b60405163391434e360e21b81526001600160a01b03929092166004830152602482015260448101839052606490fd5b60405163ec442f0560e01b815260006004820152602490fd5b604051634b637e8f60e11b815260006004820152602490fd5b906040519160018060a01b031660208301526040820152600160608201526060815261029581611151565b60405190600060208301526040820152600060608201526060815261029581611151565b604090611905926118b361151b565b506118bc61151b565b506118c5611588565b916118ce6114fc565b6175958152925b602084015283830152606082015260006080820152815180938192631bb8518b60e31b8352309060048401611aab565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa90811561071c57600091611945575090565b610295915060403d604011611967575b61195f818361116c565b810190611ed4565b503d611955565b6119059260409261197d61151b565b5061198661151b565b50611990836115da565b6118d561199b6114fc565b63ffffffff9095168552565b331561183c5733600090815260208190526040902054818110611a1257336000908152602081905260409020908290039055806002540360025560006040518281527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a390565b60405163391434e360e21b815233600482015260248101919091526044810191909152606490fd5b919082604091031261038157604051611a528161111b565b6020808294805184520151910152565b6080818303126103815760405191611a7983611136565b8151835260208201516001600160401b0381168103610381576020840152611aa391604001611a3a565b604082015290565b906020909392936040835263ffffffff81511660408401528181015160608401526080611aff611ae9604084015160a08488015260e087019061025f565b6060840151868203603f190160a088015261025f565b910151151560c08401526001600160a01b03909416910152565b91611b959391611b79608094611b2d611534565b506020611b3a8551611ee8565b940192835180611bfe575b50611b4e611588565b9351151591611b5b6114fc565b6175958152945b602086015260408501526060840152151585830152565b6040518095819482936302637a4560e41b845260048401611aab565b03917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af190811561071c57600091611bd5575090565b610295915060803d608011611bf7575b611bef818361116c565b810190611a62565b503d611be5565b611c0790611f0a565b38611b45565b611b7960809492611b959694611c21611534565b506020611c2e8651611ee8565b950191825180611c5f575b50611c43856115da565b9251151592611b62611c536114fc565b63ffffffff9097168752565b611c6890611f0a565b38611c39565b601f8111611c7a575050565b60009060086000526000805160206121ac833981519152906020601f850160051c83019410611cc4575b601f0160051c01915b828110611cb957505050565b818155600101611cad565b9092508290611ca4565b9081516001600160401b03811161111657611cf381611cee600854611011565b611c6e565b602080601f8311600114611d3657508190611d269394600092611d2b575b50508160011b916000199060031b1c19161790565b600855565b015190503880611d11565b90601f19831694611d5760086000526000805160206121ac83398151915290565b926000905b878210611d94575050836001959610611d7b575b505050811b01600855565b015160001960f88460031b161c19169055388080611d70565b80600185968294968601518155019501930190611d5c565b906001600160a01b038083161561044c57811615610433576103e4611de39260018060a01b03166000526001602052604060002090565b55565b6009546001600160a01b0390811682821680611e71575050600554811691505b81169081156118235760025490838201809211610bed57611e3c9160025560018060a01b03166000526000602052604060002090565b82815401905560007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020604051858152a390565b8114611e7e575b50611e06565b803b156103815760008091602460405180948193633c6b16ab60e01b83528960048401525af1801561071c5715611e7857611eb890611103565b38611e78565b634e487b7160e01b600052601160045260246000fd5b906040828203126103815761029591611a3a565b803403611ef25790565b6040516304fb820960e51b8152346004820152602490fd5b60405163393f876560e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116926020929091908381600481885afa90811561071c57600091612071575b501692831561205f576040516323b872dd60e01b8482019081523360248301526001600160a01b03929092166044820152606480820193909352918252601f19916000918291611fb160848261116c565b519082875af1903d15612052573d916001600160401b03831161111657611ff692611fe68560405194601f840116018461116c565b82523d60008584013e5b84612148565b908151918215159182612032575b5050905061200f5750565b604051635274afe760e01b81526001600160a01b03919091166004820152602490fd5b61204692508061204a9483010191016114e7565b1590565b803880612004565b50611ff690606090611ff0565b6040516329b99a9560e11b8152600490fd5b90508381813d83116120a0575b612088818361116c565b81010312610381575161209a81610386565b38611f60565b503d61207e565b60028151106120b7576002015190565b60405162461bcd60e51b8152602060048201526014602482015273746f55696e7431365f6f75744f66426f756e647360601b6044820152606490fd5b60209061210a60049594938281519485920161023c565b600160f81b910181815260f09290921b6001600160f01b031916600183015260038201528151916121439083908584019060200161023c565b010190565b9061216f575080511561215d57805190602001fd5b604051630a12f52160e11b8152600490fd5b815115806121a2575b612180575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561217856fef3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3a26469706673582212209c2c653559bceed27cc3d854ba282938dc32be7369b56ca03f5cf8609bcf616064736f6c63430008190033000000000000000000000000c90b92d70af24ef1369389f1a1e3887305cd89c900000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000759a0000000000000000000000001a44076050125825900e736c501f859c50fe728c000000000000000000000000ccf580e697b8bba73748ba881c1872dd4fb01cda000000000000000000000000000000000000000000000000000000000000000e57726170706564204c55455947490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007574c554559474900000000000000000000000000000000000000000000000000
0x000000000000000000000000c90b92d70af24ef1369389f1a1e3887305cd89c900000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000759a0000000000000000000000001a44076050125825900e736c501f859c50fe728c000000000000000000000000ccf580e697b8bba73748ba881c1872dd4fb01cda000000000000000000000000000000000000000000000000000000000000000e57726170706564204c55455947490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007574c554559474900000000000000000000000000000000000000000000000000
----Decoded View------------Arg [0] : _owner (address): 0xc90B92d70AF24eF1369389f1A1E3887305cD89c9Arg [1] : _name (string): Wrapped LUEYGIArg [2] : _symbol (string): WLUEYGIArg [3] : _originLzEndpoint (uint32): 30106Arg [4] : _lzEndpoint (address): 0x1a44076050125825900e736c501f859c50fE728cArg [5] : _genesisToken (address): 0xcCF580E697B8bBA73748BA881C1872DD4fB01cdA
----Encoded View------------Arg [0] : 0x000000000000000000000000c90b92d70af24ef1369389f1a1e3887305cd89c9Arg [1] : 0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000e57726170706564204c5545594749000000000000000000000000000000000000Arg [2] : 0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000007574c554559474900000000000000000000000000000000000000000000000000Arg [3] : 0x000000000000000000000000000000000000000000000000000000000000759aArg [4] : 0x0000000000000000000000001a44076050125825900e736c501f859c50fe728cArg [5] : 0x000000000000000000000000ccf580e697b8bba73748ba881c1872dd4fb01cda