2.1k txs
6.2k calls
constructor
constructor(string name, string symbol, address _leashToken, address _shibToken, address _leashpriceToken, address _shibPriceToken, address _moderator, uint256 _NAME_CHANGE_PRICE, uint256 _LEASH_PRICE)
functions
ALLOW_ETH_TIMESTAMP
viewfunction ALLOW_ETH_TIMESTAMP() view returns (uint256)
balanceOf
viewfunction balanceOf(address owner) view returns (uint256)
baseURI
viewfunction baseURI() view returns (string)
CAPPED_NFT_LIMIT_PER_USER
viewfunction CAPPED_NFT_LIMIT_PER_USER() view returns (uint256)
getApproved
viewfunction getApproved(uint256 tokenId) view returns (address)
getETHRate
viewfunction getETHRate() view returns (uint256, uint256, uint256)
getLEASHPerETHRate
viewfunction getLEASHPerETHRate() view returns (uint256, uint256, uint256)
getNameChangePrice
viewfunction getNameChangePrice() view returns (uint256)
getNFTPriceForETH
viewfunction getNFTPriceForETH(uint256 numberOfNfts) view returns (uint256)
getNFTPriceForLEASH
viewfunction getNFTPriceForLEASH(uint256 numberOfNfts) view returns (uint256)
isApprovedForAll
viewfunction isApprovedForAll(address owner, address operator) view returns (bool)
isNameReserved
viewfunction isNameReserved(string nameString) view returns (bool)
LEASH_PRICE
viewfunction LEASH_PRICE() view returns (uint256)
LEASH
viewfunction LEASH() view returns (address)
LeashPrice
viewfunction LeashPrice() view returns (address)
MAX_NFT_SUPPLY
viewfunction MAX_NFT_SUPPLY() view returns (uint256)
moderator
viewfunction moderator() view returns (address)
NAME_CHANGE_PRICE
viewfunction NAME_CHANGE_PRICE() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
ownerOf
viewfunction ownerOf(uint256 tokenId) view returns (address)
pausedLeashOracle
viewfunction pausedLeashOracle() view returns (bool)
pausedShibOracle
viewfunction pausedShibOracle() view returns (bool)
SALE_START_TIMESTAMP
viewfunction SALE_START_TIMESTAMP() view returns (uint256)
SHIB
viewfunction SHIB() view returns (address)
SHIBOSHIS_PROVENANCE
viewfunction SHIBOSHIS_PROVENANCE() view returns (string)
ShibPrice
viewfunction ShibPrice() view returns (address)
startingIndex
viewfunction startingIndex() view returns (uint256)
startingIndexBlock
viewfunction startingIndexBlock() view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
symbol
viewfunction symbol() view returns (string)
tokenByIndex
viewfunction tokenByIndex(uint256 index) view returns (uint256)
tokenNameByIndex
viewfunction tokenNameByIndex(uint256 index) view returns (string)
tokenOfOwnerByIndex
viewfunction tokenOfOwnerByIndex(address owner, uint256 index) view returns (uint256)
tokenURI
viewfunction tokenURI(uint256 tokenId) view returns (string)
toLower
purefunction toLower(string str) pure returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
validateName
purefunction validateName(string str) pure returns (bool)
approve
nonpayablefunction approve(address to, uint256 tokenId)
changeCappedNFTLimitPerUser
nonpayablefunction changeCappedNFTLimitPerUser(uint256 _CAPPED_NFT_LIMIT_PER_USER) returns (bool)
changeModerator
nonpayablefunction changeModerator(address _moderator)
changeName
nonpayablefunction changeName(uint256 tokenId, string newName)
finalizeStartingIndex
nonpayablefunction finalizeStartingIndex()
flipLeashOracle
nonpayablefunction flipLeashOracle()
flipShibOracle
nonpayablefunction flipShibOracle()
mintNFT
payablefunction mintNFT(uint256 numberOfNfts, uint256 _value, bool _isETH) payable
renounceOwnership
nonpayablefunction renounceOwnership()
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId, bytes _data)
safeTransferFrom
nonpayablefunction safeTransferFrom(address from, address to, uint256 tokenId)
setApprovalForAll
nonpayablefunction setApprovalForAll(address operator, bool approved)
setBaseURI
nonpayablefunction setBaseURI(string baseURI)
setETHRate
nonpayablefunction setETHRate(uint256 _tier1ETH, uint256 _tier2ETH, uint256 _tier3ETH) returns (uint256, uint256, uint256)
setLeashEthPrice
nonpayablefunction setLeashEthPrice(uint256 _LEASH_PRICE)
setLEASHPerETHRate
nonpayablefunction setLEASHPerETHRate(uint256 _tier1Leash, uint256 _tier2Leash, uint256 _tier3Leash) returns (uint256, uint256, uint256)
setNameChangePrice
nonpayablefunction setNameChangePrice(uint256 _NAME_CHANGE_PRICE)
setProvenanceHash
nonpayablefunction setProvenanceHash(string provenanceHash)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 tokenId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawETH
nonpayablefunction withdrawETH()
withdrawLEASH
nonpayablefunction withdrawLEASH()
events
Approval
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)
ApprovalForAll
event ApprovalForAll(address indexed owner, address indexed operator, bool approved)
NameChange
event NameChange(uint256 indexed NFTIndex, string newName)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Transfer
event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)
errors
No errors.
creation bytecode
0x610120604081905260006101008190526200001d91600b91620003ef565b50600a600c81905560125560146013819055601e905567016345785d8a00006015556702c68af0bb140000601655670429d069189e00006017556018805461ffff191690553480156200006f57600080fd5b5060405162004bae38038062004bae83398181016040526101208110156200009657600080fd5b8101908080516040519392919084640100000000821115620000b757600080fd5b908301906020820185811115620000cd57600080fd5b8251640100000000811182820188101715620000e857600080fd5b82525081516020918201929091019080838360005b8381101562000117578181015183820152602001620000fd565b50505050905090810190601f168015620001455780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200016957600080fd5b9083019060208201858111156200017f57600080fd5b82516401000000008111828201881017156200019a57600080fd5b82525081516020918201929091019080838360005b83811015620001c9578181015183820152602001620001af565b50505050905090810190601f168015620001f75780820380516001836020036101000a031916815260200191505b5060409081526020820151908201516060830151608084015160a085015160c086015160e0909601519497509295509093909288886200023e6301ffc9a760e01b62000314565b815162000253906006906020850190620003ef565b50805162000269906007906020840190620003ef565b506200027c6380ac58cd60e01b62000314565b6200028e635b5e139f60e01b62000314565b620002a063780e9d6360e01b62000314565b50620002b79050620002b162000399565b6200039d565b606096871b6001600160601b031990811660805295871b861660a05293861b851660c0529190941b90921660e052601180546001600160a01b0319166001600160a01b0390941693909317909255600d55600e55506200048b9050565b6001600160e01b0319808216141562000374576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b3390565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200043257805160ff191683800117855562000462565b8280016001018555821562000462579182015b828111156200046257825182559160200191906001019062000445565b506200047092915062000474565b5090565b5b8082111562000470576000815560010162000475565b60805160601c60a05160601c60c05160601c60e05160601c6146be620004f06000398061288852806133005250806110f05280613633525080612b3f5280612cee52806131e6525080611cc55280611dcc5280612430528061271952506146be6000f3fe6080604052600436106103975760003560e01c80636d522418116101dc578063b045d1fb11610102578063cb774d47116100a0578063e36d64981161006f578063e36d649814610fc5578063e985e9c514610fda578063f2fde38b14611015578063f5ad24fc1461104857610397565b8063cb774d4714610f71578063d53713f614610f86578063e086e5ec14610f9b578063e24b85e714610fb057610397565b8063c04b78fe116100dc578063c04b78fe14610e4f578063c336bf4a14610e7a578063c39cbef114610e8f578063c87b56dd14610f4757610397565b8063b045d1fb14610d54578063b5077f4414610d69578063b88d4fde14610d7e57610397565b80638fc84cab1161017a5780639f9231d2116101495780639f9231d214610c3e5780639ffdb65a14610c53578063a22cb46514610d04578063ad39e5fd14610d3f57610397565b80638fc84cab14610b395780639416b42314610b63578063946807fd14610c1457806395d89b4114610c2957610397565b806374df39c9116101b657806374df39c914610ad05780637f6d81b414610ae557806384a1b90214610afa5780638da5cb5b14610b2457610397565b80636d52241814610a5e57806370a0823114610a88578063715018a614610abb57610397565b80633b0172e0116102c15780634f97ba491161025f5780636155c2f51161022e5780636155c2f5146109e05780636352211e146109f55780636992b92b14610a1f5780636c0360eb14610a4957610397565b80634f97ba49146108f05780634ff07ce11461090557806354b6f1611461091a57806355f804b31461092f57610397565b8063444e7e741161029b578063444e7e7414610848578063466429211461085d5780634bb8c54b146108905780634f6ccce7146108c657610397565b80633b0172e0146107c65780633dc1641f146107f057806342842e0e1461080557610397565b806311e2f4dc116103395780631eeb758b116103085780631eeb758b1461072057806323b872dd146107355780632f745c591461077857806338743904146107b157610397565b806311e2f4dc146105df57806315b56d101461063357806318160ddd146106e45780631d28f3931461070b57610397565b806306fdde031161037557806306fdde031461043f578063081812fc146104c9578063095ea7b3146104f3578063109695231461052e57610397565b8063017c16f11461039c57806301ffc9a7146103da57806305d44a191461040e575b600080fd5b3480156103a857600080fd5b506103c6600480360360208110156103bf57600080fd5b503561105d565b604080519115158252519081900360200190f35b3480156103e657600080fd5b506103c6600480360360208110156103fd57600080fd5b50356001600160e01b0319166110cf565b34801561041a57600080fd5b506104236110ee565b604080516001600160a01b039092168252519081900360200190f35b34801561044b57600080fd5b50610454611112565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561048e578181015183820152602001610476565b50505050905090810190601f1680156104bb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104d557600080fd5b50610423600480360360208110156104ec57600080fd5b50356111a9565b3480156104ff57600080fd5b5061052c6004803603604081101561051657600080fd5b506001600160a01b03813516906020013561120b565b005b34801561053a57600080fd5b5061052c6004803603602081101561055157600080fd5b810190602081018135600160201b81111561056b57600080fd5b82018360208201111561057d57600080fd5b803590602001918460018302840111600160201b8311171561059e57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506112e6945050505050565b3480156105eb57600080fd5b506106156004803603606081101561060257600080fd5b508035906020810135906040013561135f565b60408051938452602084019290925282820152519081900360600190f35b34801561063f57600080fd5b506103c66004803603602081101561065657600080fd5b810190602081018135600160201b81111561067057600080fd5b82018360208201111561068257600080fd5b803590602001918460018302840111600160201b831117156106a357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506113df945050505050565b3480156106f057600080fd5b506106f9611452565b60408051918252519081900360200190f35b34801561071757600080fd5b5061052c611463565b34801561072c57600080fd5b506106f96114e2565b34801561074157600080fd5b5061052c6004803603606081101561075857600080fd5b506001600160a01b038135811691602081013590911690604001356114e8565b34801561078457600080fd5b506106f96004803603604081101561079b57600080fd5b506001600160a01b03813516906020013561153f565b3480156107bd57600080fd5b5061042361156a565b3480156107d257600080fd5b506106f9600480360360208110156107e957600080fd5b5035611579565b3480156107fc57600080fd5b506103c66116a8565b34801561081157600080fd5b5061052c6004803603606081101561082857600080fd5b506001600160a01b038135811691602081013590911690604001356116b1565b34801561085457600080fd5b506106156116cc565b34801561086957600080fd5b5061052c6004803603602081101561088057600080fd5b50356001600160a01b03166116da565b34801561089c57600080fd5b50610615600480360360608110156108b357600080fd5b508035906020810135906040013561175e565b3480156108d257600080fd5b506106f9600480360360208110156108e957600080fd5b50356117de565b3480156108fc57600080fd5b506106156117f4565b34801561091157600080fd5b50610454611802565b34801561092657600080fd5b506106f9611890565b34801561093b57600080fd5b5061052c6004803603602081101561095257600080fd5b810190602081018135600160201b81111561096c57600080fd5b82018360208201111561097e57600080fd5b803590602001918460018302840111600160201b8311171561099f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611896945050505050565b3480156109ec57600080fd5b506106f9611901565b348015610a0157600080fd5b5061042360048036036020811015610a1857600080fd5b5035611907565b348015610a2b57600080fd5b5061052c60048036036020811015610a4257600080fd5b503561192f565b348015610a5557600080fd5b50610454611996565b348015610a6a57600080fd5b5061045460048036036020811015610a8157600080fd5b50356119f7565b348015610a9457600080fd5b506106f960048036036020811015610aab57600080fd5b50356001600160a01b0316611a98565b348015610ac757600080fd5b5061052c611b00565b348015610adc57600080fd5b5061052c611b6e565b348015610af157600080fd5b5061052c611c5f565b348015610b0657600080fd5b5061052c60048036036020811015610b1d57600080fd5b5035611e3e565b348015610b3057600080fd5b50610423611ea5565b348015610b4557600080fd5b506106f960048036036020811015610b5c57600080fd5b5035611eb4565b348015610b6f57600080fd5b5061045460048036036020811015610b8657600080fd5b810190602081018135600160201b811115610ba057600080fd5b820183602082011115610bb257600080fd5b803590602001918460018302840111600160201b83111715610bd357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611fab945050505050565b348015610c2057600080fd5b506106f96120cd565b348015610c3557600080fd5b506104546120d5565b348015610c4a57600080fd5b506106f9612136565b348015610c5f57600080fd5b506103c660048036036020811015610c7657600080fd5b810190602081018135600160201b811115610c9057600080fd5b820183602082011115610ca257600080fd5b803590602001918460018302840111600160201b83111715610cc357600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061213e945050505050565b348015610d1057600080fd5b5061052c60048036036040811015610d2757600080fd5b506001600160a01b0381351690602001351515612329565b348015610d4b57600080fd5b5061042361242e565b348015610d6057600080fd5b506103c6612452565b348015610d7557600080fd5b506106f9612460565b348015610d8a57600080fd5b5061052c60048036036080811015610da157600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b811115610ddb57600080fd5b820183602082011115610ded57600080fd5b803590602001918460018302840111600160201b83111715610e0e57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612466945050505050565b61052c60048036036060811015610e6557600080fd5b508035906020810135906040013515156124c4565b348015610e8657600080fd5b50610423612886565b348015610e9b57600080fd5b5061052c60048036036040811015610eb257600080fd5b81359190810190604081016020820135600160201b811115610ed357600080fd5b820183602082011115610ee557600080fd5b803590602001918460018302840111600160201b83111715610f0657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506128aa945050505050565b348015610f5357600080fd5b5061045460048036036020811015610f6a57600080fd5b5035612e10565b348015610f7d57600080fd5b506106f9613093565b348015610f9257600080fd5b5061052c613099565b348015610fa757600080fd5b5061052c61310f565b348015610fbc57600080fd5b506104236131e4565b348015610fd157600080fd5b506106f9613208565b348015610fe657600080fd5b506103c660048036036040811015610ffd57600080fd5b506001600160a01b038135811691602001351661320e565b34801561102157600080fd5b5061052c6004803603602081101561103857600080fd5b50356001600160a01b031661323c565b34801561105457600080fd5b506106f96132ec565b6000611067613399565b6001600160a01b0316611078611ea5565b6001600160a01b0316146110c1576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b50600c81905560015b919050565b6001600160e01b03191660009081526020819052604090205460ff1690565b7f000000000000000000000000000000000000000000000000000000000000000081565b60068054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561119e5780601f106111735761010080835404028352916020019161119e565b820191906000526020600020905b81548152906001019060200180831161118157829003601f168201915b505050505090505b90565b60006111b48261339d565b6111ef5760405162461bcd60e51b815260040180806020018281038252602c81526020018061454f602c913960400191505060405180910390fd5b506000908152600460205260409020546001600160a01b031690565b600061121682611907565b9050806001600160a01b0316836001600160a01b031614156112695760405162461bcd60e51b81526004018080602001828103825260218152602001806146376021913960400191505060405180910390fd5b806001600160a01b031661127b613399565b6001600160a01b0316148061129c575061129c81611297613399565b61320e565b6112d75760405162461bcd60e51b81526004018080602001828103825260388152602001806144816038913960400191505060405180910390fd5b6112e183836133aa565b505050565b6112ee613399565b6001600160a01b03166112ff611ea5565b6001600160a01b031614611348576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b805161135b90600b9060208401906142fd565b5050565b600080600061136c613399565b6001600160a01b031661137d611ea5565b6001600160a01b0316146113c6576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b5050506015839055601682905560178190559192909190565b6000601a6113ec83611fab565b6040518082805190602001908083835b6020831061141b5780518252601f1990920191602091820191016113fc565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16949350505050565b600061145e6002613418565b905090565b61146b613399565b6001600160a01b031661147c611ea5565b6001600160a01b0316146114c5576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b6018805461ff001981166101009182900460ff1615909102179055565b600e5481565b6114f96114f3613399565b82613423565b6115345760405162461bcd60e51b81526004018080602001828103825260318152602001806146586031913960400191505060405180910390fd5b6112e18383836134c7565b6001600160a01b03821660009081526001602052604081206115619083613613565b90505b92915050565b6011546001600160a01b031681565b6000636168a1584210156115cb576040805162461bcd60e51b815260206004820152601460248201527314d85b19481a185cc81b9bdd081cdd185c9d195960621b604482015290519081900360640190fd5b6127106115d6611452565b10611621576040805162461bcd60e51b815260206004820152601660248201527514d85b19481a185cc8185b1c9958591e48195b99195960521b604482015290519081900360640190fd5b600061162b611452565b9050600080600061163a6116cc565b92509250925061232884106116755761166a8661165e60646116648561165e61361f565b906136c6565b9061371f565b9450505050506110ca565b610bb884106116935761166a8661165e60646116648661165e61361f565b61166a8661165e60646116648761165e61361f565b60185460ff1681565b6112e183838360405180602001604052806000815250612466565b601254601354601454909192565b6116e2613399565b6001600160a01b03166116f3611ea5565b6001600160a01b03161461173c576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b601180546001600160a01b0319166001600160a01b0392909216919091179055565b600080600061176b613399565b6001600160a01b031661177c611ea5565b6001600160a01b0316146117c5576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b5050506012839055601382905560148190559192909190565b6000806117ec600284613786565b509392505050565b601554601654601754909192565b600b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156118885780601f1061185d57610100808354040283529160200191611888565b820191906000526020600020905b81548152906001019060200180831161186b57829003601f168201915b505050505081565b600d5481565b6011546001600160a01b031633146118f5576040805162461bcd60e51b815260206004820152601b60248201527f43616c6c6572206973206e6f7420746865206d6f64657261746f720000000000604482015290519081900360640190fd5b6118fe816137a2565b50565b600c5481565b6000611564826040518060600160405280602981526020016144e360299139600291906137b5565b611937613399565b6001600160a01b0316611948611ea5565b6001600160a01b031614611991576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b600e55565b60098054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561119e5780601f106111735761010080835404028352916020019161119e565b60008181526019602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015611a8c5780601f10611a6157610100808354040283529160200191611a8c565b820191906000526020600020905b815481529060010190602001808311611a6f57829003601f168201915b50505050509050919050565b60006001600160a01b038216611adf5760405162461bcd60e51b815260040180806020018281038252602a8152602001806144b9602a913960400191505060405180910390fd5b6001600160a01b038216600090815260016020526040902061156490613418565b611b08613399565b6001600160a01b0316611b19611ea5565b6001600160a01b031614611b62576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b611b6c60006137cc565b565b60105415611bc3576040805162461bcd60e51b815260206004820152601d60248201527f5374617274696e6720696e64657820697320616c726561647920736574000000604482015290519081900360640190fd5b600f54611c17576040805162461bcd60e51b815260206004820181905260248201527f5374617274696e6720696e64657820626c6f636b206d75737420626520736574604482015290519081900360640190fd5b600f5461271081400660105560ff90611c3190439061381e565b1115611c4557612710600019430140066010555b601054611b6c57601054611c5a90600161387b565b601055565b611c67613399565b6001600160a01b0316611c78611ea5565b6001600160a01b031614611cc1576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b5051905080611da5576040805162461bcd60e51b815260206004820152601260248201527104c454153482062616c616e636520697320360741b604482015290519081900360640190fd5b6040805163a9059cbb60e01b81523360048201526024810183905290516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163a9059cbb9160448083019260209291908290030181600087803b158015611e1457600080fd5b505af1158015611e28573d6000803e3d6000fd5b505050506040513d60208110156112e157600080fd5b611e46613399565b6001600160a01b0316611e57611ea5565b6001600160a01b031614611ea0576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b600d55565b600a546001600160a01b031690565b6000636168a158421015611f06576040805162461bcd60e51b815260206004820152601460248201527314d85b19481a185cc81b9bdd081cdd185c9d195960621b604482015290519081900360640190fd5b612710611f11611452565b10611f5c576040805162461bcd60e51b815260206004820152601660248201527514d85b19481a185cc8185b1c9958591e48195b99195960521b604482015290519081900360640190fd5b6000611f66611452565b90506000806000611f756117f4565b925092509250611f408410611f8e5761166a86826136c6565b610bb88410611fa15761166a86836136c6565b61166a86846136c6565b6060808290506060815167ffffffffffffffff81118015611fcb57600080fd5b506040519080825280601f01601f191660200182016040528015611ff6576020820181803683370190505b50905060005b82518110156117ec57604183828151811061201357fe5b016020015160f81c1080159061203d5750605a83828151811061203257fe5b016020015160f81c11155b1561208a5782818151811061204e57fe5b602001015160f81c60f81b60f81c60200160f81b82828151811061206e57fe5b60200101906001600160f81b031916908160001a9053506120c5565b82818151811061209657fe5b602001015160f81c60f81b8282815181106120ad57fe5b60200101906001600160f81b031916908160001a9053505b600101611ffc565b636168a15881565b60078054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561119e5780601f106111735761010080835404028352916020019161119e565b636169f2d881565b600060608290506001815110156121595760009150506110ca565b60198151111561216d5760009150506110ca565b8060008151811061217a57fe5b6020910101516001600160f81b031916600160fd1b141561219f5760009150506110ca565b806001825103815181106121af57fe5b6020910101516001600160f81b031916600160fd1b14156121d45760009150506110ca565b6000816000815181106121e357fe5b01602001516001600160f81b031916905060005b825181101561231e57600083828151811061220e57fe5b01602001516001600160f81b0319169050600160fd1b8114801561223f5750600160fd1b6001600160f81b03198416145b156122515760009450505050506110ca565b600360fc1b6001600160f81b031982161080159061227d5750603960f81b6001600160f81b0319821611155b1580156122b35750604160f81b6001600160f81b03198216108015906122b15750602d60f91b6001600160f81b0319821611155b155b80156122e85750606160f81b6001600160f81b03198216108015906122e65750603d60f91b6001600160f81b0319821611155b155b80156123025750600160fd1b6001600160f81b0319821614155b156123145760009450505050506110ca565b91506001016121f7565b506001949350505050565b612331613399565b6001600160a01b0316826001600160a01b03161415612397576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b80600560006123a4613399565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff1916921515929092179091556123e8613399565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b7f000000000000000000000000000000000000000000000000000000000000000081565b601854610100900460ff1681565b61271081565b612477612471613399565b83613423565b6124b25760405162461bcd60e51b81526004018080602001828103825260318152602001806146586031913960400191505060405180910390fd5b6124be848484846138d5565b50505050565b6127106124cf611452565b1061251a576040805162461bcd60e51b815260206004820152601660248201527514d85b19481a185cc8185b1c9958591e48195b99195960521b604482015290519081900360640190fd5b6000831161256f576040805162461bcd60e51b815260206004820152601860248201527f6e756d6265724f664e6674732063616e6e6f7420626520300000000000000000604482015290519081900360640190fd5b6127106125848461257e611452565b9061387b565b11156125d0576040805162461bcd60e51b815260206004820152601660248201527545786365656473204d41585f4e46545f535550504c5960501b604482015290519081900360640190fd5b600c54604080516370a0823160e01b8152336004820152905161264891869130916370a08231916024808301926020929190829003018186803b15801561261657600080fd5b505afa15801561262a573d6000803e3d6000fd5b505050506040513d602081101561264057600080fd5b50519061387b565b11156126855760405162461bcd60e51b81526004018080602001828103825260218152602001806145f36021913960400191505060405180910390fd5b636169f2d84211612793578161269a84611579565b146126ec576040805162461bcd60e51b815260206004820152601f60248201527f4c454153482076616c75652073656e74206973206e6f7420636f727265637400604482015290519081900360640190fd5b604080516323b872dd60e01b81523360048201523060248201526044810184905290516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd9160648083019260209291908290030181600087803b15801561276157600080fd5b505af1158015612775573d6000803e3d6000fd5b505050506040513d602081101561278b57600080fd5b506128249050565b636169f2d8421180156127a4575080155b156127b3578161269a84611579565b636169f2d8421180156127c35750805b1561282457346127d284611eb4565b14612824576040805162461bcd60e51b815260206004820152601d60248201527f4554482076616c75652073656e74206973206e6f7420636f7272656374000000604482015290519081900360640190fd5b60005b8381101561285f576000612839611452565b9050612710612846611452565b1015612856576128563382613927565b50600101612827565b50600f541580156128785750612710612876611452565b145b156112e15743600f55505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006128b583611907565b9050806001600160a01b03166128c9613399565b6001600160a01b031614612924576040805162461bcd60e51b815260206004820152601f60248201527f4552433732313a2063616c6c6572206973206e6f7420746865206f776e657200604482015290519081900360640190fd5b61292d8261213e565b151560011461297a576040805162461bcd60e51b81526020600482015260146024820152734e6f7420612076616c6964206e6577206e616d6560601b604482015290519081900360640190fd5b60026019600085815260200190815260200160002060405180828054600181600116156101000203166002900480156129ea5780601f106129c85761010080835404028352918201916129ea565b820191906000526020600020905b8154815290600101906020018083116129d6575b5050915050602060405180830381855afa158015612a0c573d6000803e3d6000fd5b5050506040513d6020811015612a2157600080fd5b505160405183516002918591819060208401908083835b60208310612a575780518252601f199092019160209182019101612a38565b51815160209384036101000a60001901801990921691161790526040519190930194509192505080830381855afa158015612a96573d6000803e3d6000fd5b5050506040513d6020811015612aab57600080fd5b50511415612aea5760405162461bcd60e51b81526004018080602001828103825260238152602001806146146023913960400191505060405180910390fd5b612af3826113df565b15612b3d576040805162461bcd60e51b815260206004820152601560248201527413985b5948185b1c9958591e481c995cd95c9d9959605a1b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd3330612b766132ec565b6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015612bcc57600080fd5b505af1158015612be0573d6000803e3d6000fd5b505050506040513d6020811015612bf657600080fd5b50506000838152601960205260409020546002600019610100600184161502019091160415612cc15760008381526019602090815260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452612cc19392830182828015612cb55780601f10612c8a57610100808354040283529160200191612cb5565b820191906000526020600020905b815481529060010190602001808311612c9857829003601f168201915b50505050506000613941565b612ccc826001613941565b60008381526019602090815260409091208351612ceb928501906142fd565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166342966c68612d236132ec565b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612d5957600080fd5b505af1158015612d6d573d6000803e3d6000fd5b50505050827f7e632a301794d8d4a81ea7e20f37d1947158d36e66403af04ba85dd194b66f1b836040518080602001828103825283818151815260200191508051906020019080838360005b83811015612dd1578181015183820152602001612db9565b50505050905090810190601f168015612dfe5780820380516001836020036101000a031916815260200191505b509250505060405180910390a2505050565b6060612e1b8261339d565b612e565760405162461bcd60e51b815260040180806020018281038252602f8152602001806145c4602f913960400191505060405180910390fd5b60008281526008602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015612eeb5780601f10612ec057610100808354040283529160200191612eeb565b820191906000526020600020905b815481529060010190602001808311612ece57829003601f168201915b505050505090506060612efc611996565b9050805160001415612f10575090506110ca565b815115612fd15780826040516020018083805190602001908083835b60208310612f4b5780518252601f199092019160209182019101612f2c565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b60208310612f935780518252601f199092019160209182019101612f74565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052925050506110ca565b80612fdb856139bd565b6040516020018083805190602001908083835b6020831061300d5780518252601f199092019160209182019101612fee565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106130555780518252601f199092019160209182019101613036565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405292505050919050565b60105481565b6130a1613399565b6001600160a01b03166130b2611ea5565b6001600160a01b0316146130fb576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b6018805460ff19811660ff90911615179055565b613117613399565b6001600160a01b0316613128611ea5565b6001600160a01b031614613171576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b47806131b7576040805162461bcd60e51b815260206004820152601060248201526f04554482062616c616e636520697320360841b604482015290519081900360640190fd5b604051339082156108fc029083906000818181858888f1935050505015801561135b573d6000803e3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000081565b600f5481565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b613244613399565b6001600160a01b0316613255611ea5565b6001600160a01b03161461329e576040805162461bcd60e51b8152602060048201819052602482015260008051602061457b833981519152604482015290519081900360640190fd5b6001600160a01b0381166132e35760405162461bcd60e51b81526004018080602001828103825260268152602001806143e56026913960400191505060405180910390fd5b6118fe816137cc565b60185460009060ff166133905761338960647f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a035b1fe6040518163ffffffff1660e01b815260040160206040518083038186803b15801561335757600080fd5b505afa15801561336b573d6000803e3d6000fd5b505050506040513d602081101561338157600080fd5b5051906136c6565b90506111a6565b50600d546111a6565b3390565b6000611564600283613a98565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906133df82611907565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600061156482613aa4565b600061342e8261339d565b6134695760405162461bcd60e51b815260040180806020018281038252602c815260200180614455602c913960400191505060405180910390fd5b600061347483611907565b9050806001600160a01b0316846001600160a01b031614806134af5750836001600160a01b03166134a4846111a9565b6001600160a01b0316145b806134bf57506134bf818561320e565b949350505050565b826001600160a01b03166134da82611907565b6001600160a01b03161461351f5760405162461bcd60e51b815260040180806020018281038252602981526020018061459b6029913960400191505060405180910390fd5b6001600160a01b0382166135645760405162461bcd60e51b815260040180806020018281038252602481526020018061440b6024913960400191505060405180910390fd5b61356f8383836112e1565b61357a6000826133aa565b6001600160a01b038316600090815260016020526040902061359c9082613aa8565b506001600160a01b03821660009081526001602052604090206135bf9082613ab4565b506135cc60028284613ac0565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b60006115618383613ad6565b601854600090610100900460ff166136bd577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a035b1fe6040518163ffffffff1660e01b815260040160206040518083038186803b15801561368a57600080fd5b505afa15801561369e573d6000803e3d6000fd5b505050506040513d60208110156136b457600080fd5b505190506111a6565b50600e546111a6565b6000826136d557506000611564565b828202828482816136e257fe5b04146115615760405162461bcd60e51b815260040180806020018281038252602181526020018061452e6021913960400191505060405180910390fd5b6000808211613775576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161377e57fe5b049392505050565b60008080806137958686613b3a565b9097909650945050505050565b805161135b9060099060208401906142fd565b60006137c2848484613bb5565b90505b9392505050565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600082821115613875576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015611561576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6138e08484846134c7565b6138ec84848484613c7f565b6124be5760405162461bcd60e51b81526004018080602001828103825260328152602001806143b36032913960400191505060405180910390fd5b61135b828260405180602001604052806000815250613de7565b80601a61394d84611fab565b6040518082805190602001908083835b6020831061397c5780518252601f19909201916020918201910161395d565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220805460ff19169315159390931790925550505050565b6060816139e257506040805180820190915260018152600360fc1b60208201526110ca565b8160005b81156139fa57600101600a820491506139e6565b60608167ffffffffffffffff81118015613a1357600080fd5b506040519080825280601f01601f191660200182016040528015613a3e576020820181803683370190505b50859350905060001982015b8315613a8f57600a840660300160f81b82828060019003935081518110613a6d57fe5b60200101906001600160f81b031916908160001a905350600a84049350613a4a565b50949350505050565b60006115618383613e39565b5490565b60006115618383613e51565b60006115618383613f17565b60006137c284846001600160a01b038516613f61565b81546000908210613b185760405162461bcd60e51b81526004018080602001828103825260228152602001806143916022913960400191505060405180910390fd5b826000018281548110613b2757fe5b9060005260206000200154905092915050565b815460009081908310613b7e5760405162461bcd60e51b815260040180806020018281038252602281526020018061450c6022913960400191505060405180910390fd5b6000846000018481548110613b8f57fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b60008281526001840160205260408120548281613c505760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613c15578181015183820152602001613bfd565b50505050905090810190601f168015613c425780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50846000016001820381548110613c6357fe5b9060005260206000209060020201600101549150509392505050565b6000613c93846001600160a01b0316613ff8565b613c9f575060016134bf565b6060613dad630a85bd0160e11b613cb4613399565b88878760405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015613d1b578181015183820152602001613d03565b50505050905090810190601f168015613d485780820380516001836020036101000a031916815260200191505b5095505050505050604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b0383818316178352505050506040518060600160405280603281526020016143b3603291396001600160a01b0388169190613ffe565b90506000818060200190516020811015613dc657600080fd5b50516001600160e01b031916630a85bd0160e11b1492505050949350505050565b613df1838361400d565b613dfe6000848484613c7f565b6112e15760405162461bcd60e51b81526004018080602001828103825260328152602001806143b36032913960400191505060405180910390fd5b60009081526001919091016020526040902054151590565b60008181526001830160205260408120548015613f0d5783546000198083019190810190600090879083908110613e8457fe5b9060005260206000200154905080876000018481548110613ea157fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080613ed157fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050611564565b6000915050611564565b6000613f238383613e39565b613f5957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611564565b506000611564565b600082815260018401602052604081205480613fc65750506040805180820182528381526020808201848152865460018181018955600089815284812095516002909302909501918255915190820155865486845281880190925292909120556137c5565b82856000016001830381548110613fd957fe5b90600052602060002090600202016001018190555060009150506137c5565b3b151590565b60606137c2848460008561413b565b6001600160a01b038216614068576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6140718161339d565b156140c3576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b6140cf600083836112e1565b6001600160a01b03821660009081526001602052604090206140f19082613ab4565b506140fe60028284613ac0565b5060405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b60608247101561417c5760405162461bcd60e51b815260040180806020018281038252602681526020018061442f6026913960400191505060405180910390fd5b61418585613ff8565b6141d6576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106142155780518252601f1990920191602091820191016141f6565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114614277576040519150601f19603f3d011682016040523d82523d6000602084013e61427c565b606091505b509150915061428c828286614297565b979650505050505050565b606083156142a65750816137c5565b8251156142b65782518084602001fd5b60405162461bcd60e51b8152602060048201818152845160248401528451859391928392604401919085019080838360008315613c15578181015183820152602001613bfd565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061433e57805160ff191683800117855561436b565b8280016001018555821561436b579182015b8281111561436b578251825591602001919060010190614350565b5061437792915061437b565b5090565b5b80821115614377576000815560010161437c56fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734552433732313a207472616e7366657220746f20746865207a65726f2061646472657373416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e6473536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65724552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e45786365656473204341505045445f4e46545f4c494d49545f5045525f555345524e6577206e616d652069732073616d65206173207468652063757272656e74206f6e654552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a26469706673582212204a59c0995afca05af40afaf89ce1e30c1fed4a8bd310a6f8ad3450b210bb820464736f6c634300070000330000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000027c70cd1946795b66be9d954418546998b54663400000000000000000000000095ad61b0a150d79219dcf64e1e6cc01f0b64c4ce000000000000000000000000441cb57f2189e1df10f7010d55115f9374bae562000000000000000000000000fcd80cbf131d545d8279b665bc55a56b3b08c60b000000000000000000000000c7d0445ac2947760b3dd388b8586adf079972bf300000000000000000000000000000000000000000002ec067f8aadc7c5480000000000000000000000000000000000000000000000000000126f2400940c00000000000000000000000000000000000000000000000000000000000000000009534849424f53484953000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045342534800000000000000000000000000000000000000000000000000000000