Overview
Max Total Supply
8,000,000,000 BTW
Holders
5 (0.00%)
Transfers
-
0 (0%)
Market
Price
$0.05 @ 0.000034 ETH (+7.83%)
Onchain Market Cap
$434,300,053.90
Circulating Supply Market Cap
$119,432,514.82
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"address","name":"_lzEndpoint","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"amountSD","type":"uint256"}],"name":"AmountSDOverflowed","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":"InvalidDelegate","type":"error"},{"inputs":[],"name":"InvalidEndpointCall","type":"error"},{"inputs":[],"name":"InvalidLocalDecimals","type":"error"},{"inputs":[{"internalType":"bytes","name":"options","type":"bytes"}],"name":"InvalidOptions","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":[],"name":"OnlySelf","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":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[{"internalType":"bytes","name":"result","type":"bytes"}],"name":"SimulationResult","type":"error"},{"inputs":[{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"}],"name":"SlippageExceeded","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":[{"components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"},{"internalType":"bytes","name":"options","type":"bytes"}],"indexed":false,"internalType":"struct EnforcedOptionParam[]","name":"_enforcedOptions","type":"tuple[]"}],"name":"EnforcedOptionSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"inspector","type":"address"}],"name":"MsgInspectorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"guid","type":"bytes32"},{"indexed":false,"internalType":"uint32","name":"srcEid","type":"uint32"},{"indexed":true,"internalType":"address","name":"toAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"name":"OFTReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"guid","type":"bytes32"},{"indexed":false,"internalType":"uint32","name":"dstEid","type":"uint32"},{"indexed":true,"internalType":"address","name":"fromAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"name":"OFTSent","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":false,"internalType":"address","name":"preCrimeAddress","type":"address"}],"name":"PreCrimeSet","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":"SEND","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SEND_AND_CALL","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"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"}],"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":[],"name":"approvalRequired","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_eid","type":"uint32"},{"internalType":"uint16","name":"_msgType","type":"uint16"},{"internalType":"bytes","name":"_extraOptions","type":"bytes"}],"name":"combineOptions","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimalConversionRate","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":"endpoint","outputs":[{"internalType":"contract ILayerZeroEndpointV2","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"}],"name":"enforcedOptions","outputs":[{"internalType":"bytes","name":"enforcedOption","type":"bytes"}],"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":[{"internalType":"uint32","name":"_eid","type":"uint32"},{"internalType":"bytes32","name":"_peer","type":"bytes32"}],"name":"isPeer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"components":[{"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":"uint32","name":"dstEid","type":"uint32"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"bytes32","name":"guid","type":"bytes32"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"bytes","name":"message","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct InboundPacket[]","name":"_packets","type":"tuple[]"}],"name":"lzReceiveAndRevert","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"},{"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":"lzReceiveSimulate","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"msgInspector","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"oApp","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"oftVersion","outputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"},{"internalType":"uint64","name":"version","type":"uint64"}],"stateMutability":"pure","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":"preCrime","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"}],"name":"quoteOFT","outputs":[{"components":[{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"uint256","name":"maxAmountLD","type":"uint256"}],"internalType":"struct OFTLimit","name":"oftLimit","type":"tuple"},{"components":[{"internalType":"int256","name":"feeAmountLD","type":"int256"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct OFTFeeDetail[]","name":"oftFeeDetails","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"internalType":"struct OFTReceipt","name":"oftReceipt","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"},{"internalType":"bool","name":"_payInLzToken","type":"bool"}],"name":"quoteSend","outputs":[{"components":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"lzTokenFee","type":"uint256"}],"internalType":"struct MessagingFee","name":"msgFee","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"},{"components":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"lzTokenFee","type":"uint256"}],"internalType":"struct MessagingFee","name":"_fee","type":"tuple"},{"internalType":"address","name":"_refundAddress","type":"address"}],"name":"send","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"},{"components":[{"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"internalType":"struct OFTReceipt","name":"oftReceipt","type":"tuple"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"}],"name":"setDelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"},{"internalType":"bytes","name":"options","type":"bytes"}],"internalType":"struct EnforcedOptionParam[]","name":"_enforcedOptions","type":"tuple[]"}],"name":"setEnforcedOptions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_msgInspector","type":"address"}],"name":"setMsgInspector","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":[{"internalType":"address","name":"_preCrime","type":"address"}],"name":"setPreCrime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sharedDecimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"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"}]Contract Creation Code
60c060405234801561000f575f5ffd5b5060405161359038038061359083398101604081905261002e91610286565b83838383838360128484818181818d6001600160a01b03811661006a57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b6100738161017a565b506001600160a01b0380831660805281166100a157604051632d618d8160e21b815260040160405180910390fd5b60805160405163ca5eb5e160e01b81526001600160a01b0383811660048301529091169063ca5eb5e1906024015f604051808303815f87803b1580156100e5575f5ffd5b505af11580156100f7573d5f5f3e3d5ffd5b505050505050505061010d6101c960201b60201c565b60ff168360ff161015610133576040516301e9714b60e41b815260040160405180910390fd5b61013e60068461031f565b61014990600a610421565b60a052506008915061015d905083826104ba565b50600961016a82826104ba565b5050505050505050505050610574565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600690565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126101f1575f5ffd5b81516001600160401b0381111561020a5761020a6101ce565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610238576102386101ce565b60405281815283820160200185101561024f575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b80516001600160a01b0381168114610281575f5ffd5b919050565b5f5f5f5f60808587031215610299575f5ffd5b84516001600160401b038111156102ae575f5ffd5b6102ba878288016101e2565b602087015190955090506001600160401b038111156102d7575f5ffd5b6102e3878288016101e2565b9350506102f26040860161026b565b91506103006060860161026b565b905092959194509250565b634e487b7160e01b5f52601160045260245ffd5b60ff82811682821603908111156103385761033861030b565b92915050565b6001815b60018411156103795780850481111561035d5761035d61030b565b600184161561036b57908102905b60019390931c928002610342565b935093915050565b5f8261038f57506001610338565b8161039b57505f610338565b81600181146103b157600281146103bb576103d7565b6001915050610338565b60ff8411156103cc576103cc61030b565b50506001821b610338565b5060208310610133831016604e8410600b84101617156103fa575081810a610338565b6104065f19848461033e565b805f19048211156104195761041961030b565b029392505050565b5f61042f60ff841683610381565b9392505050565b600181811c9082168061044a57607f821691505b60208210810361046857634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156104b557805f5260205f20601f840160051c810160208510156104935750805b601f840160051c820191505b818110156104b2575f815560010161049f565b50505b505050565b81516001600160401b038111156104d3576104d36101ce565b6104e7816104e18454610436565b8461046e565b6020601f821160018114610519575f83156105025750848201515b5f19600385901b1c1916600184901b1784556104b2565b5f84815260208120601f198516915b828110156105485787850151825560209485019460019092019101610528565b508482101561056557868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b60805160a051612fb56105db5f395f81816105f701528181611a1601528181611a880152611c8601525f81816104c201528181610a0d01528181611042015281816112ac0152818161160401528181611da801528181611f0f0152611fc40152612fb55ff3fe608060405260043610610249575f3560e01c80637d25a05e11610134578063bb0b6a53116100b3578063d045a0dc11610078578063d045a0dc14610725578063d424388514610738578063dd62ed3e14610757578063f2fde38b1461079b578063fc0c546a1461044b578063ff7bd03d146107ba575f5ffd5b8063bb0b6a5314610688578063bc70b354146106b3578063bd815db0146106d2578063c7c7f5b3146106e5578063ca5eb5e114610706575f5ffd5b8063963efcaa116100f9578063963efcaa146105e65780639f68b96414610619578063a9059cbb1461062b578063b731ea0a1461064a578063b98bd07014610669575f5ffd5b80637d25a05e1461054b57806382413eac14610584578063857749b0146105a35780638da5cb5b146105b657806395d89b41146105d2575f5ffd5b806323b872dd116101cb5780635535d461116101905780635535d4611461045d5780635a0dfe4d1461047c5780635e280f11146104b15780636fc1b31e146104e457806370a0823114610503578063715018a614610537575f5ffd5b806323b872dd146103c0578063313ce567146103df5780633400288b146104005780633b6f743b1461041f57806352ae28791461044b575f5ffd5b8063134d4f2511610211578063134d4f2514610320578063156a0d0f1461034757806317442b701461036d57806318160ddd1461038e5780631f5e1334146103ac575f5ffd5b806306fdde031461024d578063095ea7b3146102775780630d35b415146102a6578063111ecdad146102d457806313137d651461030b575b5f5ffd5b348015610258575f5ffd5b506102616107d9565b60405161026e9190612110565b60405180910390f35b348015610282575f5ffd5b50610296610291366004612136565b610869565b604051901515815260200161026e565b3480156102b1575f5ffd5b506102c56102c0366004612176565b610882565b60405161026e939291906121a7565b3480156102df575f5ffd5b506004546102f3906001600160a01b031681565b6040516001600160a01b03909116815260200161026e565b61031e610319366004612296565b610a0b565b005b34801561032b575f5ffd5b50610334600281565b60405161ffff909116815260200161026e565b348015610352575f5ffd5b506040805162b9270b60e21b8152600160208201520161026e565b348015610378575f5ffd5b506040805160018152600260208201520161026e565b348015610399575f5ffd5b506007545b60405190815260200161026e565b3480156103b7575f5ffd5b50610334600181565b3480156103cb575f5ffd5b506102966103da366004612330565b610acb565b3480156103ea575f5ffd5b5060125b60405160ff909116815260200161026e565b34801561040b575f5ffd5b5061031e61041a366004612386565b610af0565b34801561042a575f5ffd5b5061043e6104393660046123ad565b610b06565b60405161026e91906123fb565b348015610456575f5ffd5b50306102f3565b348015610468575f5ffd5b50610261610477366004612423565b610b6a565b348015610487575f5ffd5b50610296610496366004612386565b63ffffffff919091165f908152600160205260409020541490565b3480156104bc575f5ffd5b506102f37f000000000000000000000000000000000000000000000000000000000000000081565b3480156104ef575f5ffd5b5061031e6104fe366004612454565b610c0c565b34801561050e575f5ffd5b5061039e61051d366004612454565b6001600160a01b03165f9081526005602052604090205490565b348015610542575f5ffd5b5061031e610c69565b348015610556575f5ffd5b5061056c610565366004612386565b5f92915050565b6040516001600160401b03909116815260200161026e565b34801561058f575f5ffd5b5061029661059e36600461246f565b610c7c565b3480156105ae575f5ffd5b5060066103ee565b3480156105c1575f5ffd5b505f546001600160a01b03166102f3565b3480156105dd575f5ffd5b50610261610c91565b3480156105f1575f5ffd5b5061039e7f000000000000000000000000000000000000000000000000000000000000000081565b348015610624575f5ffd5b505f610296565b348015610636575f5ffd5b50610296610645366004612136565b610ca0565b348015610655575f5ffd5b506002546102f3906001600160a01b031681565b348015610674575f5ffd5b5061031e610683366004612511565b610cad565b348015610693575f5ffd5b5061039e6106a236600461254f565b60016020525f908152604090205481565b3480156106be575f5ffd5b506102616106cd366004612568565b610cc7565b61031e6106e0366004612511565b610e68565b6106f86106f33660046125c4565b610fe8565b60405161026e92919061262c565b348015610711575f5ffd5b5061031e610720366004612454565b61101b565b61031e610733366004612296565b61109c565b348015610743575f5ffd5b5061031e610752366004612454565b6110cb565b348015610762575f5ffd5b5061039e61077136600461267d565b6001600160a01b039182165f90815260066020908152604080832093909416825291909152205490565b3480156107a6575f5ffd5b5061031e6107b5366004612454565b611121565b3480156107c5575f5ffd5b506102966107d43660046126a9565b61115e565b6060600880546107e8906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610814906126c3565b801561085f5780601f106108365761010080835404028352916020019161085f565b820191905f5260205f20905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b5f33610876818585611192565b60019150505b92915050565b604080518082019091525f808252602082015260606108b260405180604001604052805f81526020015f81525090565b5f5f90505f306001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f3573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091791906126f5565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610952573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109769190612710565b604080518082018252848152602080820184905282515f808252918101909352909750919250906109c9565b604080518082019091525f8152606060208201528152602001906001900390816109a25790505b5093505f806109ed604089013560608a01356109e860208c018c61254f565b6111a4565b60408051808201909152918252602082015296989597505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610a5b576040516391ac5e4f60e01b81523360048201526024015b60405180910390fd5b60208701803590610a7590610a70908a61254f565b6111df565b14610ab357610a87602088018861254f565b60405163309afaf360e21b815263ffffffff909116600482015260208801356024820152604401610a52565b610ac28787878787878761121a565b50505050505050565b5f33610ad8858285611378565b610ae38585856113f4565b60019150505b9392505050565b610af8611451565b610b02828261147d565b5050565b604080518082019091525f80825260208201525f610b34604085013560608601356109e8602088018861254f565b9150505f5f610b4386846114d1565b9092509050610b60610b58602088018861254f565b8383886115ef565b9695505050505050565b600360209081525f928352604080842090915290825290208054610b8d906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb9906126c3565b8015610c045780601f10610bdb57610100808354040283529160200191610c04565b820191905f5260205f20905b815481529060010190602001808311610be757829003601f168201915b505050505081565b610c14611451565b600480546001600160a01b0319166001600160a01b0383169081179091556040519081527ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d4414197906020015b60405180910390a150565b610c71611451565b610c7a5f6116cd565b565b6001600160a01b03811630145b949350505050565b6060600980546107e8906126c3565b5f336108768185856113f4565b610cb5611451565b610b02610cc282846127db565b61171c565b63ffffffff84165f90815260036020908152604080832061ffff87168452909152812080546060929190610cfa906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610d26906126c3565b8015610d715780601f10610d4857610100808354040283529160200191610d71565b820191905f5260205f20905b815481529060010190602001808311610d5457829003601f168201915b5050505050905080515f03610dbf5783838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929450610c899350505050565b5f839003610dce579050610c89565b60028310610e4b57610e1484848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061181d92505050565b80610e2284600281886128fc565b604051602001610e349392919061293a565b604051602081830303815290604052915050610c89565b8383604051639a6d49cd60e01b8152600401610a52929190612980565b5f5b81811015610f6b5736838383818110610e8557610e85612993565b9050602002810190610e9791906129a7565b9050610ec9610ea9602083018361254f565b602083013563ffffffff919091165f908152600160205260409020541490565b610ed35750610f63565b3063d045a0dc60c08301358360a0810135610ef26101008301836129c6565b610f03610100890160e08a01612454565b610f116101208a018a6129c6565b6040518963ffffffff1660e01b8152600401610f339796959493929190612a1c565b5f604051808303818588803b158015610f4a575f5ffd5b505af1158015610f5c573d5f5f3e3d5ffd5b5050505050505b600101610e6a565b50336001600160a01b0316638e9e70996040518163ffffffff1660e01b81526004015f60405180830381865afa158015610fa7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610fce9190810190612aa1565b604051638351eea760e01b8152600401610a529190612110565b610ff06120a2565b604080518082019091525f808252602082015261100e858585611849565b915091505b935093915050565b611023611451565b60405163ca5eb5e160e01b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063ca5eb5e1906024015f604051808303815f87803b158015611083575f5ffd5b505af1158015611095573d5f5f3e3d5ffd5b5050505050565b3330146110bc5760405163029a949d60e31b815260040160405180910390fd5b610ac287878787878787610ab3565b6110d3611451565b600280546001600160a01b0319166001600160a01b0383169081179091556040519081527fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c242776090602001610c5e565b611129611451565b6001600160a01b03811661115257604051631e4fbdf760e01b81525f6004820152602401610a52565b61115b816116cd565b50565b5f602082018035906001908390611175908661254f565b63ffffffff16815260208101919091526040015f20541492915050565b61119f8383836001611941565b505050565b5f5f6111af85611a13565b915081905083811015611013576040516371c4efed60e01b81526004810182905260248101859052604401610a52565b63ffffffff81165f908152600160205260408120548061087c5760405163f6ff4fb760e01b815263ffffffff84166004820152602401610a52565b5f61122b6112288787611a49565b90565b90505f6112568261124461123f8a8a611a60565b611a82565b61125160208d018d61254f565b611ab6565b90506028861115611316575f61129261127560608c0160408d01612b15565b61128260208d018d61254f565b8461128d8c8c611add565b611b27565b604051633e5ac80960e11b81529091506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637cb59012906112e79086908d905f908790600401612b30565b5f604051808303815f87803b1580156112fe575f5ffd5b505af1158015611310573d5f5f3e3d5ffd5b50505050505b6001600160a01b038216887fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c61134f60208d018d61254f565b6040805163ffffffff9092168252602082018690520160405180910390a3505050505050505050565b6001600160a01b038381165f908152600660209081526040808320938616835292905220545f198110156113ee57818110156113e057604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610a52565b6113ee84848484035f611941565b50505050565b6001600160a01b03831661141d57604051634b637e8f60e11b81525f6004820152602401610a52565b6001600160a01b0382166114465760405163ec442f0560e01b81525f6004820152602401610a52565b61119f838383611b59565b5f546001600160a01b03163314610c7a5760405163118cdaa760e01b8152336004820152602401610a52565b63ffffffff82165f81815260016020908152604091829020849055815192835282018390527f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b910160405180910390a15050565b6060805f61152c85602001356114e686611c7f565b6114f360a08901896129c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611cd892505050565b90935090505f8161153e576001611541565b60025b9050611561611553602088018861254f565b826106cd60808a018a6129c6565b6004549093506001600160a01b031680156115e55760405163043a78eb60e01b81526001600160a01b0382169063043a78eb906115a49088908890600401612b60565b602060405180830381865afa1580156115bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115e39190612b84565b505b5050509250929050565b604080518082019091525f80825260208201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ddc28c586040518060a001604052808863ffffffff168152602001611651896111df565b8152602001878152602001868152602001851515815250306040518363ffffffff1660e01b8152600401611686929190612b9f565b6040805180830381865afa1580156116a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116c49190612c46565b95945050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f5b81518110156117ed5761174d82828151811061173c5761173c612993565b60200260200101516040015161181d565b81818151811061175f5761175f612993565b60200260200101516040015160035f84848151811061178057611780612993565b60200260200101515f015163ffffffff1663ffffffff1681526020019081526020015f205f8484815181106117b7576117b7612993565b60200260200101516020015161ffff1661ffff1681526020019081526020015f2090816117e49190612ca4565b5060010161171e565b507fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b67481604051610c5e9190612d5e565b600281015161ffff8116600314610b025781604051639a6d49cd60e01b8152600401610a529190612110565b6118516120a2565b604080518082019091525f80825260208201525f8061188633604089013560608a013561188160208c018c61254f565b611d52565b915091505f5f61189689846114d1565b90925090506118c26118ab60208b018b61254f565b83836118bc368d90038d018d612dec565b8b611d77565b60408051808201909152858152602080820186905282519298509096503391907f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a90611910908d018d61254f565b6040805163ffffffff909216825260208201899052810187905260600160405180910390a350505050935093915050565b6001600160a01b03841661196a5760405163e602df0560e01b81525f6004820152602401610a52565b6001600160a01b03831661199357604051634a1406b160e11b81525f6004820152602401610a52565b6001600160a01b038085165f90815260066020908152604080832093871683529290522082905580156113ee57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051611a0591815260200190565b60405180910390a350505050565b5f7f0000000000000000000000000000000000000000000000000000000000000000611a3f8184612e31565b61087c9190612e50565b5f611a5760208284866128fc565b610ae991612e67565b5f611a6f6028602084866128fc565b611a7891612e84565b60c01c9392505050565b5f61087c7f00000000000000000000000000000000000000000000000000000000000000006001600160401b038416612e50565b5f6001600160a01b038416611acb5761dead93505b611ad58484611e7d565b509092915050565b6060611aec82602881866128fc565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929695505050505050565b606084848484604051602001611b409493929190612ebc565b6040516020818303038152906040529050949350505050565b6001600160a01b038316611b83578060075f828254611b789190612ef6565b90915550611bf39050565b6001600160a01b0383165f9081526005602052604090205481811015611bd55760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610a52565b6001600160a01b0384165f9081526005602052604090209082900390555b6001600160a01b038216611c0f57600780548290039055611c2d565b6001600160a01b0382165f9081526005602052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c7291815260200190565b60405180910390a3505050565b5f80611cab7f000000000000000000000000000000000000000000000000000000000000000084612e31565b90506001600160401b0381111561087c5760405163e2ce941360e01b815260048101829052602401610a52565b8051606090151580611d21578484604051602001611d0d92919091825260c01b6001600160c01b031916602082015260280190565b604051602081830303815290604052611d48565b84843385604051602001611d389493929190612f09565b6040516020818303038152906040525b9150935093915050565b5f5f611d5f8585856111a4565b9092509050611d6e8683611eb1565b94509492505050565b611d7f6120a2565b5f611d8c845f0151611ee5565b602085015190915015611da657611da68460200151611f0c565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632637a450826040518060a001604052808b63ffffffff168152602001611df68c6111df565b81526020018a81526020018981526020015f8960200151111515815250866040518463ffffffff1660e01b8152600401611e31929190612b9f565b60806040518083038185885af1158015611e4d573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190611e729190612f35565b979650505050505050565b6001600160a01b038216611ea65760405163ec442f0560e01b81525f6004820152602401610a52565b610b025f8383611b59565b6001600160a01b038216611eda57604051634b637e8f60e11b81525f6004820152602401610a52565b610b02825f83611b59565b5f813414611f08576040516304fb820960e51b8152346004820152602401610a52565b5090565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e4fe1d946040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8d91906126f5565b90506001600160a01b038116611fb6576040516329b99a9560e11b815260040160405180910390fd5b6040805133602482018190527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0381811660448501526064808501889052855180860390910181526084909401909452602080840180516001600160e01b03166323b872dd60e01b1781528451610b029688169589936113ee9388935f9283929091839182885af180612055576040513d5f823e3d81fd5b50505f513d9150811561206c578060011415612079565b6001600160a01b0384163b155b156113ee57604051635274afe760e01b81526001600160a01b0385166004820152602401610a52565b60405180606001604052805f81526020015f6001600160401b031681526020016120dd60405180604001604052805f81526020015f81525090565b905290565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610ae960208301846120e2565b6001600160a01b038116811461115b575f5ffd5b5f5f60408385031215612147575f5ffd5b823561215281612122565b946020939093013593505050565b5f60e08284031215612170575f5ffd5b50919050565b5f60208284031215612186575f5ffd5b81356001600160401b0381111561219b575f5ffd5b610c8984828501612160565b83518152602080850151908201525f60a0820160a0604084015280855180835260c08501915060c08160051b8601019250602087015f5b828110156122265760bf19878603018452815180518652602081015190506040602087015261221060408701826120e2565b95505060209384019391909101906001016121de565b5050855160608601525050602084015160808401529050610c89565b5f60608284031215612170575f5ffd5b5f5f83601f840112612262575f5ffd5b5081356001600160401b03811115612278575f5ffd5b60208301915083602082850101111561228f575f5ffd5b9250929050565b5f5f5f5f5f5f5f60e0888a0312156122ac575f5ffd5b6122b68989612242565b96506060880135955060808801356001600160401b038111156122d7575f5ffd5b6122e38a828b01612252565b90965094505060a08801356122f781612122565b925060c08801356001600160401b03811115612311575f5ffd5b61231d8a828b01612252565b989b979a50959850939692959293505050565b5f5f5f60608486031215612342575f5ffd5b833561234d81612122565b9250602084013561235d81612122565b929592945050506040919091013590565b803563ffffffff81168114612381575f5ffd5b919050565b5f5f60408385031215612397575f5ffd5b6121528361236e565b801515811461115b575f5ffd5b5f5f604083850312156123be575f5ffd5b82356001600160401b038111156123d3575f5ffd5b6123df85828601612160565b92505060208301356123f0816123a0565b809150509250929050565b81518152602080830151908201526040810161087c565b803561ffff81168114612381575f5ffd5b5f5f60408385031215612434575f5ffd5b61243d8361236e565b915061244b60208401612412565b90509250929050565b5f60208284031215612464575f5ffd5b8135610ae981612122565b5f5f5f5f60a08587031215612482575f5ffd5b61248c8686612242565b935060608501356001600160401b038111156124a6575f5ffd5b6124b287828801612252565b90945092505060808501356124c681612122565b939692955090935050565b5f5f83601f8401126124e1575f5ffd5b5081356001600160401b038111156124f7575f5ffd5b6020830191508360208260051b850101111561228f575f5ffd5b5f5f60208385031215612522575f5ffd5b82356001600160401b03811115612537575f5ffd5b612543858286016124d1565b90969095509350505050565b5f6020828403121561255f575f5ffd5b610ae98261236e565b5f5f5f5f6060858703121561257b575f5ffd5b6125848561236e565b935061259260208601612412565b925060408501356001600160401b038111156125ac575f5ffd5b6125b887828801612252565b95989497509550505050565b5f5f5f83850360808112156125d7575f5ffd5b84356001600160401b038111156125ec575f5ffd5b6125f887828801612160565b9450506040601f198201121561260c575f5ffd5b50602084019150606084013561262181612122565b809150509250925092565b5f60c082019050835182526001600160401b0360208501511660208301526040840151612666604084018280518252602090810151910152565b5082516080830152602083015160a0830152610ae9565b5f5f6040838503121561268e575f5ffd5b823561269981612122565b915060208301356123f081612122565b5f606082840312156126b9575f5ffd5b610ae98383612242565b600181811c908216806126d757607f821691505b60208210810361217057634e487b7160e01b5f52602260045260245ffd5b5f60208284031215612705575f5ffd5b8151610ae981612122565b5f60208284031215612720575f5ffd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b038111828210171561275d5761275d612727565b60405290565b604080519081016001600160401b038111828210171561275d5761275d612727565b604051601f8201601f191681016001600160401b03811182821017156127ad576127ad612727565b604052919050565b5f6001600160401b038211156127cd576127cd612727565b50601f01601f191660200190565b5f6001600160401b038311156127f3576127f3612727565b8260051b61280360208201612785565b8481529083019060208101903683111561281b575f5ffd5b845b838110156128f25780356001600160401b0381111561283a575f5ffd5b8601606036829003121561284c575f5ffd5b61285461273b565b61285d8261236e565b815261286b60208301612412565b602082015260408201356001600160401b03811115612888575f5ffd5b919091019036601f83011261289b575f5ffd5b81356128ae6128a9826127b5565b612785565b8181523660208386010111156128c2575f5ffd5b816020850160208301375f602083830101528060408401525050808552505060208301925060208101905061281d565b5095945050505050565b5f5f8585111561290a575f5ffd5b83861115612916575f5ffd5b5050820193919092039150565b5f81518060208401855e5f93019283525090919050565b5f6129458286612923565b838582375f930192835250909392505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c89602083018486612958565b634e487b7160e01b5f52603260045260245ffd5b5f823561013e198336030181126129bc575f5ffd5b9190910192915050565b5f5f8335601e198436030181126129db575f5ffd5b8301803591506001600160401b038211156129f4575f5ffd5b60200191503681900382131561228f575f5ffd5b6001600160401b038116811461115b575f5ffd5b63ffffffff612a2a8961236e565b168152602088810135908201525f6040890135612a4681612a08565b6001600160401b03811660408401525087606083015260e06080830152612a7160e083018789612958565b6001600160a01b03861660a084015282810360c0840152612a93818587612958565b9a9950505050505050505050565b5f60208284031215612ab1575f5ffd5b81516001600160401b03811115612ac6575f5ffd5b8201601f81018413612ad6575f5ffd5b8051612ae46128a9826127b5565b818152856020838501011115612af8575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b5f60208284031215612b25575f5ffd5b8135610ae981612a08565b60018060a01b038516815283602082015261ffff83166040820152608060608201525f610b6060808301846120e2565b604081525f612b7260408301856120e2565b82810360208401526116c481856120e2565b5f60208284031215612b94575f5ffd5b8151610ae9816123a0565b6040815263ffffffff8351166040820152602083015160608201525f604084015160a06080840152612bd460e08401826120e2565b90506060850151603f198483030160a0850152612bf182826120e2565b60809690960151151560c08501525050506001600160a01b039190911660209091015290565b5f60408284031215612c27575f5ffd5b612c2f612763565b825181526020928301519281019290925250919050565b5f60408284031215612c56575f5ffd5b610ae98383612c17565b601f82111561119f57805f5260205f20601f840160051c81016020851015612c855750805b601f840160051c820191505b81811015611095575f8155600101612c91565b81516001600160401b03811115612cbd57612cbd612727565b612cd181612ccb84546126c3565b84612c60565b6020601f821160018114612d03575f8315612cec5750848201515b5f19600385901b1c1916600184901b178455611095565b5f84815260208120601f198516915b82811015612d325787850151825560209485019460019092019101612d12565b5084821015612d4f57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015612de057603f19878603018452815163ffffffff815116865261ffff60208201511660208701526040810151905060606040870152612dca60608701826120e2565b9550506020938401939190910190600101612d84565b50929695505050505050565b5f6040828403128015612dfd575f5ffd5b50612e06612763565b823581526020928301359281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b5f82612e4b57634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761087c5761087c612e1d565b8035602083101561087c575f19602084900360031b1b1692915050565b80356001600160c01b03198116906008841015612eb5576001600160c01b0319600885900360031b81901b82161691505b5092915050565b60c085901b6001600160c01b031916815260e084901b6001600160e01b0319166008820152600c81018390525f610b60602c830184612923565b8082018082111561087c5761087c612e1d565b8481526001600160401b0360c01b8460c01b1660208201528260288201525f610b606048830184612923565b5f6080828403128015612f46575f5ffd5b50612f4f61273b565b825181526020830151612f6181612a08565b6020820152612f738460408501612c17565b6040820152939250505056fea26469706673582212202e272b5a54461ee0da34ffcdff0f3aceb225f680ea5e2805d8f4d8defd0ab7fd64736f6c634300081b0033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000001a44076050125825900e736c501f859c50fe728c0000000000000000000000001942c5b6b3072ba2cf859c5648b338afad978419000000000000000000000000000000000000000000000000000000000000000c42697477617920546f6b656e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034254570000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405260043610610249575f3560e01c80637d25a05e11610134578063bb0b6a53116100b3578063d045a0dc11610078578063d045a0dc14610725578063d424388514610738578063dd62ed3e14610757578063f2fde38b1461079b578063fc0c546a1461044b578063ff7bd03d146107ba575f5ffd5b8063bb0b6a5314610688578063bc70b354146106b3578063bd815db0146106d2578063c7c7f5b3146106e5578063ca5eb5e114610706575f5ffd5b8063963efcaa116100f9578063963efcaa146105e65780639f68b96414610619578063a9059cbb1461062b578063b731ea0a1461064a578063b98bd07014610669575f5ffd5b80637d25a05e1461054b57806382413eac14610584578063857749b0146105a35780638da5cb5b146105b657806395d89b41146105d2575f5ffd5b806323b872dd116101cb5780635535d461116101905780635535d4611461045d5780635a0dfe4d1461047c5780635e280f11146104b15780636fc1b31e146104e457806370a0823114610503578063715018a614610537575f5ffd5b806323b872dd146103c0578063313ce567146103df5780633400288b146104005780633b6f743b1461041f57806352ae28791461044b575f5ffd5b8063134d4f2511610211578063134d4f2514610320578063156a0d0f1461034757806317442b701461036d57806318160ddd1461038e5780631f5e1334146103ac575f5ffd5b806306fdde031461024d578063095ea7b3146102775780630d35b415146102a6578063111ecdad146102d457806313137d651461030b575b5f5ffd5b348015610258575f5ffd5b506102616107d9565b60405161026e9190612110565b60405180910390f35b348015610282575f5ffd5b50610296610291366004612136565b610869565b604051901515815260200161026e565b3480156102b1575f5ffd5b506102c56102c0366004612176565b610882565b60405161026e939291906121a7565b3480156102df575f5ffd5b506004546102f3906001600160a01b031681565b6040516001600160a01b03909116815260200161026e565b61031e610319366004612296565b610a0b565b005b34801561032b575f5ffd5b50610334600281565b60405161ffff909116815260200161026e565b348015610352575f5ffd5b506040805162b9270b60e21b8152600160208201520161026e565b348015610378575f5ffd5b506040805160018152600260208201520161026e565b348015610399575f5ffd5b506007545b60405190815260200161026e565b3480156103b7575f5ffd5b50610334600181565b3480156103cb575f5ffd5b506102966103da366004612330565b610acb565b3480156103ea575f5ffd5b5060125b60405160ff909116815260200161026e565b34801561040b575f5ffd5b5061031e61041a366004612386565b610af0565b34801561042a575f5ffd5b5061043e6104393660046123ad565b610b06565b60405161026e91906123fb565b348015610456575f5ffd5b50306102f3565b348015610468575f5ffd5b50610261610477366004612423565b610b6a565b348015610487575f5ffd5b50610296610496366004612386565b63ffffffff919091165f908152600160205260409020541490565b3480156104bc575f5ffd5b506102f37f0000000000000000000000001a44076050125825900e736c501f859c50fe728c81565b3480156104ef575f5ffd5b5061031e6104fe366004612454565b610c0c565b34801561050e575f5ffd5b5061039e61051d366004612454565b6001600160a01b03165f9081526005602052604090205490565b348015610542575f5ffd5b5061031e610c69565b348015610556575f5ffd5b5061056c610565366004612386565b5f92915050565b6040516001600160401b03909116815260200161026e565b34801561058f575f5ffd5b5061029661059e36600461246f565b610c7c565b3480156105ae575f5ffd5b5060066103ee565b3480156105c1575f5ffd5b505f546001600160a01b03166102f3565b3480156105dd575f5ffd5b50610261610c91565b3480156105f1575f5ffd5b5061039e7f000000000000000000000000000000000000000000000000000000e8d4a5100081565b348015610624575f5ffd5b505f610296565b348015610636575f5ffd5b50610296610645366004612136565b610ca0565b348015610655575f5ffd5b506002546102f3906001600160a01b031681565b348015610674575f5ffd5b5061031e610683366004612511565b610cad565b348015610693575f5ffd5b5061039e6106a236600461254f565b60016020525f908152604090205481565b3480156106be575f5ffd5b506102616106cd366004612568565b610cc7565b61031e6106e0366004612511565b610e68565b6106f86106f33660046125c4565b610fe8565b60405161026e92919061262c565b348015610711575f5ffd5b5061031e610720366004612454565b61101b565b61031e610733366004612296565b61109c565b348015610743575f5ffd5b5061031e610752366004612454565b6110cb565b348015610762575f5ffd5b5061039e61077136600461267d565b6001600160a01b039182165f90815260066020908152604080832093909416825291909152205490565b3480156107a6575f5ffd5b5061031e6107b5366004612454565b611121565b3480156107c5575f5ffd5b506102966107d43660046126a9565b61115e565b6060600880546107e8906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610814906126c3565b801561085f5780601f106108365761010080835404028352916020019161085f565b820191905f5260205f20905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b5f33610876818585611192565b60019150505b92915050565b604080518082019091525f808252602082015260606108b260405180604001604052805f81526020015f81525090565b5f5f90505f306001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f3573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091791906126f5565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610952573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109769190612710565b604080518082018252848152602080820184905282515f808252918101909352909750919250906109c9565b604080518082019091525f8152606060208201528152602001906001900390816109a25790505b5093505f806109ed604089013560608a01356109e860208c018c61254f565b6111a4565b60408051808201909152918252602082015296989597505050505050565b7f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b03163314610a5b576040516391ac5e4f60e01b81523360048201526024015b60405180910390fd5b60208701803590610a7590610a70908a61254f565b6111df565b14610ab357610a87602088018861254f565b60405163309afaf360e21b815263ffffffff909116600482015260208801356024820152604401610a52565b610ac28787878787878761121a565b50505050505050565b5f33610ad8858285611378565b610ae38585856113f4565b60019150505b9392505050565b610af8611451565b610b02828261147d565b5050565b604080518082019091525f80825260208201525f610b34604085013560608601356109e8602088018861254f565b9150505f5f610b4386846114d1565b9092509050610b60610b58602088018861254f565b8383886115ef565b9695505050505050565b600360209081525f928352604080842090915290825290208054610b8d906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb9906126c3565b8015610c045780601f10610bdb57610100808354040283529160200191610c04565b820191905f5260205f20905b815481529060010190602001808311610be757829003601f168201915b505050505081565b610c14611451565b600480546001600160a01b0319166001600160a01b0383169081179091556040519081527ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d4414197906020015b60405180910390a150565b610c71611451565b610c7a5f6116cd565b565b6001600160a01b03811630145b949350505050565b6060600980546107e8906126c3565b5f336108768185856113f4565b610cb5611451565b610b02610cc282846127db565b61171c565b63ffffffff84165f90815260036020908152604080832061ffff87168452909152812080546060929190610cfa906126c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610d26906126c3565b8015610d715780601f10610d4857610100808354040283529160200191610d71565b820191905f5260205f20905b815481529060010190602001808311610d5457829003601f168201915b5050505050905080515f03610dbf5783838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929450610c899350505050565b5f839003610dce579050610c89565b60028310610e4b57610e1484848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061181d92505050565b80610e2284600281886128fc565b604051602001610e349392919061293a565b604051602081830303815290604052915050610c89565b8383604051639a6d49cd60e01b8152600401610a52929190612980565b5f5b81811015610f6b5736838383818110610e8557610e85612993565b9050602002810190610e9791906129a7565b9050610ec9610ea9602083018361254f565b602083013563ffffffff919091165f908152600160205260409020541490565b610ed35750610f63565b3063d045a0dc60c08301358360a0810135610ef26101008301836129c6565b610f03610100890160e08a01612454565b610f116101208a018a6129c6565b6040518963ffffffff1660e01b8152600401610f339796959493929190612a1c565b5f604051808303818588803b158015610f4a575f5ffd5b505af1158015610f5c573d5f5f3e3d5ffd5b5050505050505b600101610e6a565b50336001600160a01b0316638e9e70996040518163ffffffff1660e01b81526004015f60405180830381865afa158015610fa7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610fce9190810190612aa1565b604051638351eea760e01b8152600401610a529190612110565b610ff06120a2565b604080518082019091525f808252602082015261100e858585611849565b915091505b935093915050565b611023611451565b60405163ca5eb5e160e01b81526001600160a01b0382811660048301527f0000000000000000000000001a44076050125825900e736c501f859c50fe728c169063ca5eb5e1906024015f604051808303815f87803b158015611083575f5ffd5b505af1158015611095573d5f5f3e3d5ffd5b5050505050565b3330146110bc5760405163029a949d60e31b815260040160405180910390fd5b610ac287878787878787610ab3565b6110d3611451565b600280546001600160a01b0319166001600160a01b0383169081179091556040519081527fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c242776090602001610c5e565b611129611451565b6001600160a01b03811661115257604051631e4fbdf760e01b81525f6004820152602401610a52565b61115b816116cd565b50565b5f602082018035906001908390611175908661254f565b63ffffffff16815260208101919091526040015f20541492915050565b61119f8383836001611941565b505050565b5f5f6111af85611a13565b915081905083811015611013576040516371c4efed60e01b81526004810182905260248101859052604401610a52565b63ffffffff81165f908152600160205260408120548061087c5760405163f6ff4fb760e01b815263ffffffff84166004820152602401610a52565b5f61122b6112288787611a49565b90565b90505f6112568261124461123f8a8a611a60565b611a82565b61125160208d018d61254f565b611ab6565b90506028861115611316575f61129261127560608c0160408d01612b15565b61128260208d018d61254f565b8461128d8c8c611add565b611b27565b604051633e5ac80960e11b81529091506001600160a01b037f0000000000000000000000001a44076050125825900e736c501f859c50fe728c1690637cb59012906112e79086908d905f908790600401612b30565b5f604051808303815f87803b1580156112fe575f5ffd5b505af1158015611310573d5f5f3e3d5ffd5b50505050505b6001600160a01b038216887fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c61134f60208d018d61254f565b6040805163ffffffff9092168252602082018690520160405180910390a3505050505050505050565b6001600160a01b038381165f908152600660209081526040808320938616835292905220545f198110156113ee57818110156113e057604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610a52565b6113ee84848484035f611941565b50505050565b6001600160a01b03831661141d57604051634b637e8f60e11b81525f6004820152602401610a52565b6001600160a01b0382166114465760405163ec442f0560e01b81525f6004820152602401610a52565b61119f838383611b59565b5f546001600160a01b03163314610c7a5760405163118cdaa760e01b8152336004820152602401610a52565b63ffffffff82165f81815260016020908152604091829020849055815192835282018390527f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b910160405180910390a15050565b6060805f61152c85602001356114e686611c7f565b6114f360a08901896129c6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250611cd892505050565b90935090505f8161153e576001611541565b60025b9050611561611553602088018861254f565b826106cd60808a018a6129c6565b6004549093506001600160a01b031680156115e55760405163043a78eb60e01b81526001600160a01b0382169063043a78eb906115a49088908890600401612b60565b602060405180830381865afa1580156115bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115e39190612b84565b505b5050509250929050565b604080518082019091525f80825260208201527f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b031663ddc28c586040518060a001604052808863ffffffff168152602001611651896111df565b8152602001878152602001868152602001851515815250306040518363ffffffff1660e01b8152600401611686929190612b9f565b6040805180830381865afa1580156116a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116c49190612c46565b95945050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f5b81518110156117ed5761174d82828151811061173c5761173c612993565b60200260200101516040015161181d565b81818151811061175f5761175f612993565b60200260200101516040015160035f84848151811061178057611780612993565b60200260200101515f015163ffffffff1663ffffffff1681526020019081526020015f205f8484815181106117b7576117b7612993565b60200260200101516020015161ffff1661ffff1681526020019081526020015f2090816117e49190612ca4565b5060010161171e565b507fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b67481604051610c5e9190612d5e565b600281015161ffff8116600314610b025781604051639a6d49cd60e01b8152600401610a529190612110565b6118516120a2565b604080518082019091525f80825260208201525f8061188633604089013560608a013561188160208c018c61254f565b611d52565b915091505f5f61189689846114d1565b90925090506118c26118ab60208b018b61254f565b83836118bc368d90038d018d612dec565b8b611d77565b60408051808201909152858152602080820186905282519298509096503391907f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a90611910908d018d61254f565b6040805163ffffffff909216825260208201899052810187905260600160405180910390a350505050935093915050565b6001600160a01b03841661196a5760405163e602df0560e01b81525f6004820152602401610a52565b6001600160a01b03831661199357604051634a1406b160e11b81525f6004820152602401610a52565b6001600160a01b038085165f90815260066020908152604080832093871683529290522082905580156113ee57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051611a0591815260200190565b60405180910390a350505050565b5f7f000000000000000000000000000000000000000000000000000000e8d4a51000611a3f8184612e31565b61087c9190612e50565b5f611a5760208284866128fc565b610ae991612e67565b5f611a6f6028602084866128fc565b611a7891612e84565b60c01c9392505050565b5f61087c7f000000000000000000000000000000000000000000000000000000e8d4a510006001600160401b038416612e50565b5f6001600160a01b038416611acb5761dead93505b611ad58484611e7d565b509092915050565b6060611aec82602881866128fc565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929695505050505050565b606084848484604051602001611b409493929190612ebc565b6040516020818303038152906040529050949350505050565b6001600160a01b038316611b83578060075f828254611b789190612ef6565b90915550611bf39050565b6001600160a01b0383165f9081526005602052604090205481811015611bd55760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610a52565b6001600160a01b0384165f9081526005602052604090209082900390555b6001600160a01b038216611c0f57600780548290039055611c2d565b6001600160a01b0382165f9081526005602052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611c7291815260200190565b60405180910390a3505050565b5f80611cab7f000000000000000000000000000000000000000000000000000000e8d4a5100084612e31565b90506001600160401b0381111561087c5760405163e2ce941360e01b815260048101829052602401610a52565b8051606090151580611d21578484604051602001611d0d92919091825260c01b6001600160c01b031916602082015260280190565b604051602081830303815290604052611d48565b84843385604051602001611d389493929190612f09565b6040516020818303038152906040525b9150935093915050565b5f5f611d5f8585856111a4565b9092509050611d6e8683611eb1565b94509492505050565b611d7f6120a2565b5f611d8c845f0151611ee5565b602085015190915015611da657611da68460200151611f0c565b7f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b0316632637a450826040518060a001604052808b63ffffffff168152602001611df68c6111df565b81526020018a81526020018981526020015f8960200151111515815250866040518463ffffffff1660e01b8152600401611e31929190612b9f565b60806040518083038185885af1158015611e4d573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190611e729190612f35565b979650505050505050565b6001600160a01b038216611ea65760405163ec442f0560e01b81525f6004820152602401610a52565b610b025f8383611b59565b6001600160a01b038216611eda57604051634b637e8f60e11b81525f6004820152602401610a52565b610b02825f83611b59565b5f813414611f08576040516304fb820960e51b8152346004820152602401610a52565b5090565b5f7f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b031663e4fe1d946040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8d91906126f5565b90506001600160a01b038116611fb6576040516329b99a9560e11b815260040160405180910390fd5b6040805133602482018190527f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b0381811660448501526064808501889052855180860390910181526084909401909452602080840180516001600160e01b03166323b872dd60e01b1781528451610b029688169589936113ee9388935f9283929091839182885af180612055576040513d5f823e3d81fd5b50505f513d9150811561206c578060011415612079565b6001600160a01b0384163b155b156113ee57604051635274afe760e01b81526001600160a01b0385166004820152602401610a52565b60405180606001604052805f81526020015f6001600160401b031681526020016120dd60405180604001604052805f81526020015f81525090565b905290565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610ae960208301846120e2565b6001600160a01b038116811461115b575f5ffd5b5f5f60408385031215612147575f5ffd5b823561215281612122565b946020939093013593505050565b5f60e08284031215612170575f5ffd5b50919050565b5f60208284031215612186575f5ffd5b81356001600160401b0381111561219b575f5ffd5b610c8984828501612160565b83518152602080850151908201525f60a0820160a0604084015280855180835260c08501915060c08160051b8601019250602087015f5b828110156122265760bf19878603018452815180518652602081015190506040602087015261221060408701826120e2565b95505060209384019391909101906001016121de565b5050855160608601525050602084015160808401529050610c89565b5f60608284031215612170575f5ffd5b5f5f83601f840112612262575f5ffd5b5081356001600160401b03811115612278575f5ffd5b60208301915083602082850101111561228f575f5ffd5b9250929050565b5f5f5f5f5f5f5f60e0888a0312156122ac575f5ffd5b6122b68989612242565b96506060880135955060808801356001600160401b038111156122d7575f5ffd5b6122e38a828b01612252565b90965094505060a08801356122f781612122565b925060c08801356001600160401b03811115612311575f5ffd5b61231d8a828b01612252565b989b979a50959850939692959293505050565b5f5f5f60608486031215612342575f5ffd5b833561234d81612122565b9250602084013561235d81612122565b929592945050506040919091013590565b803563ffffffff81168114612381575f5ffd5b919050565b5f5f60408385031215612397575f5ffd5b6121528361236e565b801515811461115b575f5ffd5b5f5f604083850312156123be575f5ffd5b82356001600160401b038111156123d3575f5ffd5b6123df85828601612160565b92505060208301356123f0816123a0565b809150509250929050565b81518152602080830151908201526040810161087c565b803561ffff81168114612381575f5ffd5b5f5f60408385031215612434575f5ffd5b61243d8361236e565b915061244b60208401612412565b90509250929050565b5f60208284031215612464575f5ffd5b8135610ae981612122565b5f5f5f5f60a08587031215612482575f5ffd5b61248c8686612242565b935060608501356001600160401b038111156124a6575f5ffd5b6124b287828801612252565b90945092505060808501356124c681612122565b939692955090935050565b5f5f83601f8401126124e1575f5ffd5b5081356001600160401b038111156124f7575f5ffd5b6020830191508360208260051b850101111561228f575f5ffd5b5f5f60208385031215612522575f5ffd5b82356001600160401b03811115612537575f5ffd5b612543858286016124d1565b90969095509350505050565b5f6020828403121561255f575f5ffd5b610ae98261236e565b5f5f5f5f6060858703121561257b575f5ffd5b6125848561236e565b935061259260208601612412565b925060408501356001600160401b038111156125ac575f5ffd5b6125b887828801612252565b95989497509550505050565b5f5f5f83850360808112156125d7575f5ffd5b84356001600160401b038111156125ec575f5ffd5b6125f887828801612160565b9450506040601f198201121561260c575f5ffd5b50602084019150606084013561262181612122565b809150509250925092565b5f60c082019050835182526001600160401b0360208501511660208301526040840151612666604084018280518252602090810151910152565b5082516080830152602083015160a0830152610ae9565b5f5f6040838503121561268e575f5ffd5b823561269981612122565b915060208301356123f081612122565b5f606082840312156126b9575f5ffd5b610ae98383612242565b600181811c908216806126d757607f821691505b60208210810361217057634e487b7160e01b5f52602260045260245ffd5b5f60208284031215612705575f5ffd5b8151610ae981612122565b5f60208284031215612720575f5ffd5b5051919050565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b038111828210171561275d5761275d612727565b60405290565b604080519081016001600160401b038111828210171561275d5761275d612727565b604051601f8201601f191681016001600160401b03811182821017156127ad576127ad612727565b604052919050565b5f6001600160401b038211156127cd576127cd612727565b50601f01601f191660200190565b5f6001600160401b038311156127f3576127f3612727565b8260051b61280360208201612785565b8481529083019060208101903683111561281b575f5ffd5b845b838110156128f25780356001600160401b0381111561283a575f5ffd5b8601606036829003121561284c575f5ffd5b61285461273b565b61285d8261236e565b815261286b60208301612412565b602082015260408201356001600160401b03811115612888575f5ffd5b919091019036601f83011261289b575f5ffd5b81356128ae6128a9826127b5565b612785565b8181523660208386010111156128c2575f5ffd5b816020850160208301375f602083830101528060408401525050808552505060208301925060208101905061281d565b5095945050505050565b5f5f8585111561290a575f5ffd5b83861115612916575f5ffd5b5050820193919092039150565b5f81518060208401855e5f93019283525090919050565b5f6129458286612923565b838582375f930192835250909392505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b602081525f610c89602083018486612958565b634e487b7160e01b5f52603260045260245ffd5b5f823561013e198336030181126129bc575f5ffd5b9190910192915050565b5f5f8335601e198436030181126129db575f5ffd5b8301803591506001600160401b038211156129f4575f5ffd5b60200191503681900382131561228f575f5ffd5b6001600160401b038116811461115b575f5ffd5b63ffffffff612a2a8961236e565b168152602088810135908201525f6040890135612a4681612a08565b6001600160401b03811660408401525087606083015260e06080830152612a7160e083018789612958565b6001600160a01b03861660a084015282810360c0840152612a93818587612958565b9a9950505050505050505050565b5f60208284031215612ab1575f5ffd5b81516001600160401b03811115612ac6575f5ffd5b8201601f81018413612ad6575f5ffd5b8051612ae46128a9826127b5565b818152856020838501011115612af8575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b5f60208284031215612b25575f5ffd5b8135610ae981612a08565b60018060a01b038516815283602082015261ffff83166040820152608060608201525f610b6060808301846120e2565b604081525f612b7260408301856120e2565b82810360208401526116c481856120e2565b5f60208284031215612b94575f5ffd5b8151610ae9816123a0565b6040815263ffffffff8351166040820152602083015160608201525f604084015160a06080840152612bd460e08401826120e2565b90506060850151603f198483030160a0850152612bf182826120e2565b60809690960151151560c08501525050506001600160a01b039190911660209091015290565b5f60408284031215612c27575f5ffd5b612c2f612763565b825181526020928301519281019290925250919050565b5f60408284031215612c56575f5ffd5b610ae98383612c17565b601f82111561119f57805f5260205f20601f840160051c81016020851015612c855750805b601f840160051c820191505b81811015611095575f8155600101612c91565b81516001600160401b03811115612cbd57612cbd612727565b612cd181612ccb84546126c3565b84612c60565b6020601f821160018114612d03575f8315612cec5750848201515b5f19600385901b1c1916600184901b178455611095565b5f84815260208120601f198516915b82811015612d325787850151825560209485019460019092019101612d12565b5084821015612d4f57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015612de057603f19878603018452815163ffffffff815116865261ffff60208201511660208701526040810151905060606040870152612dca60608701826120e2565b9550506020938401939190910190600101612d84565b50929695505050505050565b5f6040828403128015612dfd575f5ffd5b50612e06612763565b823581526020928301359281019290925250919050565b634e487b7160e01b5f52601160045260245ffd5b5f82612e4b57634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761087c5761087c612e1d565b8035602083101561087c575f19602084900360031b1b1692915050565b80356001600160c01b03198116906008841015612eb5576001600160c01b0319600885900360031b81901b82161691505b5092915050565b60c085901b6001600160c01b031916815260e084901b6001600160e01b0319166008820152600c81018390525f610b60602c830184612923565b8082018082111561087c5761087c612e1d565b8481526001600160401b0360c01b8460c01b1660208201528260288201525f610b606048830184612923565b5f6080828403128015612f46575f5ffd5b50612f4f61273b565b825181526020830151612f6181612a08565b6020820152612f738460408501612c17565b6040820152939250505056fea26469706673582212202e272b5a54461ee0da34ffcdff0f3aceb225f680ea5e2805d8f4d8defd0ab7fd64736f6c634300081b0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000001a44076050125825900e736c501f859c50fe728c0000000000000000000000001942c5b6b3072ba2cf859c5648b338afad978419000000000000000000000000000000000000000000000000000000000000000c42697477617920546f6b656e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034254570000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _name (string): Bitway Token
Arg [1] : _symbol (string): BTW
Arg [2] : _lzEndpoint (address): 0x1a44076050125825900e736c501f859c50fE728c
Arg [3] : _owner (address): 0x1942c5b6B3072Ba2cf859c5648b338afAd978419
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000001a44076050125825900e736c501f859c50fe728c
Arg [3] : 0000000000000000000000001942c5b6b3072ba2cf859c5648b338afad978419
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000c
Arg [5] : 42697477617920546f6b656e0000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 4254570000000000000000000000000000000000000000000000000000000000
🤖 Code Reader
Generate instant answers for your smart contract questions using Al Models. Read more.
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.
Add Token to MetaMask (Web3)

