Token
Base Colors (COLOR...)
ERC-721
Source Code
Overview
Max Total Supply
1,175 COLOR...
Holders
28
Market
Onchain Market Cap
-
Circulating Supply Market Cap
-
Other Info
Token Contract
Balance
1 COLORSLoading...
Loading
Loading...
Loading
Loading...
Loading
Contract Source Code (Solidity Standard Json-Input format)
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ApprovalCallerNotOwnerNorApproved","type":"error"},{"inputs":[],"name":"ApprovalQueryForNonexistentToken","type":"error"},{"inputs":[],"name":"BalanceQueryForZeroAddress","type":"error"},{"inputs":[],"name":"MintERC2309QuantityExceedsLimit","type":"error"},{"inputs":[],"name":"MintToZeroAddress","type":"error"},{"inputs":[],"name":"MintZeroQuantity","type":"error"},{"inputs":[],"name":"NotCompatibleWithSpotMints","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":[],"name":"OwnerQueryForNonexistentToken","type":"error"},{"inputs":[],"name":"OwnershipNotInitializedForExtraData","type":"error"},{"inputs":[],"name":"SequentialMintExceedsLimit","type":"error"},{"inputs":[],"name":"SequentialUpToTooSmall","type":"error"},{"inputs":[],"name":"SpotMintTokenIdTooSmall","type":"error"},{"inputs":[],"name":"TokenAlreadyExists","type":"error"},{"inputs":[],"name":"TransferCallerNotOwnerNorApproved","type":"error"},{"inputs":[],"name":"TransferFromIncorrectOwner","type":"error"},{"inputs":[],"name":"TransferToNonERC721ReceiverImplementer","type":"error"},{"inputs":[],"name":"TransferToZeroAddress","type":"error"},{"inputs":[],"name":"URIQueryForNonexistentToken","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_tokenId","type":"uint256"},{"indexed":false,"internalType":"string","name":"traitType","type":"string"}],"name":"AttributeRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"fromTokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"toTokenId","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"ConsecutiveTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_token","type":"uint256"}],"name":"MetadataUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newMintPrice","type":"uint256"}],"name":"MintPriceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"uint256","name":"_tokenId","type":"uint256"},{"indexed":false,"internalType":"string","name":"color","type":"string"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"NameChanged","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":true,"internalType":"uint256","name":"_tokenId","type":"uint256"},{"indexed":false,"internalType":"string[]","name":"keys","type":"string[]"},{"indexed":false,"internalType":"string[]","name":"values","type":"string[]"}],"name":"TokenAttributesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":true,"internalType":"uint256","name":"_tokenId","type":"uint256"},{"indexed":false,"internalType":"string","name":"color","type":"string"},{"indexed":false,"internalType":"string","name":"name","type":"string"}],"name":"TokenMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"string[]","name":"colors","type":"string[]"},{"indexed":false,"internalType":"string[]","name":"names","type":"string[]"}],"name":"TokensMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MAX_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newPrice","type":"uint256"}],"name":"_changeMintPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_disableNameOverwrite","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_disablePriceChange","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"newName","type":"string"}],"name":"_overwriteColorName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"string[]","name":"newNames","type":"string[]"}],"name":"_overwriteColorNamesBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"traitType","type":"string"}],"name":"_removeTokenTrait","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"_revokeTokenTraitModificationPrivileges","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_toggleMintingEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string[]","name":"traitTypes","type":"string[]"},{"internalType":"string[]","name":"values","type":"string[]"}],"name":"_updateTokenAttributes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"string[][]","name":"traitTypes","type":"string[][]"},{"internalType":"string[][]","name":"values","type":"string[][]"}],"name":"_updateTokenAttributesBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"traitType","type":"string"},{"internalType":"bool","name":"isUserModifiable","type":"bool"},{"internalType":"bool","name":"isEnabledForAllTokens","type":"bool"},{"internalType":"uint256[]","name":"eligibleTokens","type":"uint256[]"}],"name":"_updateUserModifiableAttribute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"traitType","type":"string"}],"name":"getAttributeData","outputs":[{"components":[{"internalType":"bool","name":"isUserModifiable","type":"bool"},{"internalType":"bool","name":"isEnabledForAllTokens","type":"bool"}],"internalType":"struct BASECOLORS.AttributeData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getAttributesAsJson","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"color","type":"string"}],"name":"getColorData","outputs":[{"components":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bool","name":"isUsed","type":"bool"},{"internalType":"uint256","name":"nameChangeCount","type":"uint256"},{"internalType":"string[]","name":"modifiableTraits","type":"string[]"}],"internalType":"struct BASECOLORS.ColorData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"name":"getMintedColorsRange","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isAdminNameOverwriteEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isAdminPriceChangeEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isMintingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"}],"name":"isNameTaken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"isUserModifiableAttribute","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"hexString","type":"string"}],"name":"isValidHex","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"color","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"address","name":"recipient","type":"address"}],"name":"mint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"string[]","name":"colors","type":"string[]"},{"internalType":"string[]","name":"names","type":"string[]"},{"internalType":"uint256","name":"quantity","type":"uint256"},{"internalType":"address","name":"recipient","type":"address"}],"name":"mintBatch","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"mintPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"newName","type":"string"}],"name":"setColorName","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"},{"internalType":"string[]","name":"newNames","type":"string[]"}],"name":"setColorNamesBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"tokenIdToColor","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"string","name":"traitType","type":"string"},{"internalType":"string","name":"value","type":"string"}],"name":"updateTokenAttribute","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405266038d7ea4c68000600b55600c805462ffffff191661010117905534801561002b57600080fd5b50336040518060400160405280600b81526020016a4261736520436f6c6f727360a81b81525060405180604001604052806006815260200165434f4c4f525360d01b815250816002908161007f91906101c3565b50600361008c82826101c3565b505060008055506001600160a01b0381166100c157604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100ca816100d0565b50610282565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168061014c57607f821691505b60208210810361016c57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156101be576000816000526020600020601f850160051c8101602086101561019b5750805b601f850160051c820191505b818110156101ba578281556001016101a7565b5050505b505050565b81516001600160401b038111156101dc576101dc610122565b6101f0816101ea8454610138565b84610172565b602080601f831160018114610225576000841561020d5750858301515b600019600386901b1c1916600185901b1785556101ba565b600085815260208120601f198616915b8281101561025457888601518255948401946001909101908401610235565b50858210156102725787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b615b5a806102916000396000f3fe6080604052600436106102925760003560e01c80636817c76c1161015a578063b88d4fde116100c1578063e17f7e081161007a578063e17f7e08146107a1578063e985e9c5146107ce578063ea22071714610817578063f2fde38b14610837578063fd5c8e9c14610857578063fe5831631461087757600080fd5b8063b88d4fde146106e9578063c10eb14d146106fc578063c87b56dd14610711578063cad43d7b14610731578063cc6934761461076c578063d7220ca71461078c57600080fd5b806395d89b411161011357806395d89b4114610635578063a17776411461064a578063a22cb4651461066a578063ada424ea1461068a578063b3da4e34146106a9578063b65d8fbd146106c957600080fd5b80636817c76c1461059957806370a08231146105af578063715018a6146105cf5780638da5cb5b146105e45780638f093a9e14610602578063904c57471461062257600080fd5b806332cb6b0c116101fe578063450960d2116101b7578063450960d2146104f15780634c42c97a1461051157806355c7ba141461052457806360745a01146105445780636277b47e146105595780636352211e1461057957600080fd5b806332cb6b0c1461045157806338853c90146104695780633d84d15c1461047e57806342842e0e1461049e5780634373f8c1146104b157806344ef8f7d146104d157600080fd5b806318160ddd1161025057806318160ddd1461037f5780631a09cc6b146103985780631e40c312146103c5578063209ebe20146103df57806323b872dd1461041e578063270ab5531461043157600080fd5b80629a9b7b1461029757806301ffc9a7146102c057806306fdde03146102f0578063081812fc14610312578063095ea7b31461034a578063152a68091461035f575b600080fd5b3480156102a357600080fd5b506102ad600a5481565b6040519081526020015b60405180910390f35b3480156102cc57600080fd5b506102e06102db366004614949565b610897565b60405190151581526020016102b7565b3480156102fc57600080fd5b506103056108e9565b6040516102b791906149b6565b34801561031e57600080fd5b5061033261032d3660046149c9565b61097b565b6040516001600160a01b0390911681526020016102b7565b61035d6103583660046149f9565b6109b6565b005b34801561036b57600080fd5b5061035d61037a366004614ae0565b6109c6565b34801561038b57600080fd5b50600154600054036102ad565b3480156103a457600080fd5b506103b86103b3366004614b26565b610da9565b6040516102b79190614ba2565b3480156103d157600080fd5b50600c546102e09060ff1681565b3480156103eb57600080fd5b506103ff6103fa366004614bb5565b610f98565b60408051825115158152602092830151151592810192909252016102b7565b61035d61042c366004614be9565b610ff5565b34801561043d57600080fd5b5061035d61044c366004614ae0565b61115a565b34801561045d57600080fd5b506102ad630100000081565b34801561047557600080fd5b5061035d611313565b34801561048a57600080fd5b5061035d6104993660046149c9565b61137f565b61035d6104ac366004614be9565b611406565b3480156104bd57600080fd5b5061035d6104cc366004614d36565b611426565b3480156104dd57600080fd5b506103056104ec3660046149c9565b6114d3565b3480156104fd57600080fd5b5061035d61050c366004614e0e565b611753565b61035d61051f366004614e95565b611b41565b34801561053057600080fd5b50600c546102e09062010000900460ff1681565b34801561055057600080fd5b5061035d6120ee565b34801561056557600080fd5b5061035d610574366004614ae0565b61214b565b34801561058557600080fd5b506103326105943660046149c9565b6124f6565b3480156105a557600080fd5b506102ad600b5481565b3480156105bb57600080fd5b506102ad6105ca366004614f12565b612501565b3480156105db57600080fd5b5061035d612546565b3480156105f057600080fd5b506009546001600160a01b0316610332565b34801561060e57600080fd5b5061035d61061d366004614d36565b61255a565b61035d610630366004614f2d565b61260f565b34801561064157600080fd5b50610305612a81565b34801561065657600080fd5b5061035d610665366004614fa0565b612a90565b34801561067657600080fd5b5061035d610685366004615012565b612e12565b34801561069657600080fd5b50600c546102e090610100900460ff1681565b3480156106b557600080fd5b506102e06106c4366004614bb5565b612e7e565b3480156106d557600080fd5b5061035d6106e4366004615045565b612eb1565b61035d6106f73660046150c9565b61312b565b34801561070857600080fd5b5061035d613166565b34801561071d57600080fd5b5061030561072c3660046149c9565b613263565b34801561073d57600080fd5b506102e061074c366004614bb5565b805160208183018101805160138252928201919093012091525460ff1681565b34801561077857600080fd5b506102e0610787366004614bb5565b6132e7565b34801561079857600080fd5b5061035d613392565b3480156107ad57600080fd5b506107c16107bc366004614bb5565b6133b9565b6040516102b79190615138565b3480156107da57600080fd5b506102e06107e93660046151c3565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b34801561082357600080fd5b506103056108323660046149c9565b61355c565b34801561084357600080fd5b5061035d610852366004614f12565b6135f6565b34801561086357600080fd5b5061035d6108723660046149c9565b613634565b34801561088357600080fd5b5061035d6108923660046151ed565b613774565b60006301ffc9a760e01b6001600160e01b0319831614806108c857506380ac58cd60e01b6001600160e01b03198316145b806108e35750635b5e139f60e01b6001600160e01b03198316145b92915050565b6060600280546108f89061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546109249061524f565b80156109715780601f1061094657610100808354040283529160200191610971565b820191906000526020600020905b81548152906001019060200180831161095457829003601f168201915b5050505050905090565b600061098682613bb5565b61099a5761099a6333d1c03960e21b613bfa565b506000908152600660205260409020546001600160a01b031690565b6109c282826001613c04565b5050565b6109ce613ca7565b6000828152600f602052604081208054610a6f91906109ec9061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a189061524f565b8015610a655780601f10610a3a57610100808354040283529160200191610a65565b820191906000526020600020905b815481529060010190602001808311610a4857829003601f168201915b5050505050613cd4565b90506000610a7c83613e3a565b600c54909150610100900460ff16610adb5760405162461bcd60e51b815260206004820152601b60248201527f41646d696e206e616d65206368616e6765732064697361626c6564000000000060448201526064015b60405180910390fd5b610ae483613f8a565b610b005760405162461bcd60e51b8152600401610ad290615289565b601081604051610b1091906152b8565b9081526040519081900360200190205460ff1615610b405760405162461bcd60e51b8152600401610ad2906152d4565b610b49826132e7565b610b655760405162461bcd60e51b8152600401610ad2906152ff565b600d82604051610b7591906152b8565b9081526040519081900360200190206001015460ff16610bce5760405162461bcd60e51b81526020600482015260146024820152731211560818dbdb1bdc881b9bdd081b5a5b9d195960621b6044820152606401610ad2565b6000848152601160205260408082209051610be890615336565b90815260200160405180910390208054610c019061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2d9061524f565b8015610c7a5780601f10610c4f57610100808354040283529160200191610c7a565b820191906000526020600020905b815481529060010190602001808311610c5d57829003601f168201915b505050505090508051600014610cc55760006010610c9783613e3a565b604051610ca491906152b8565b908152604051908190036020019020805491151560ff199092169190911790555b8360116000878152602001908152602001600020604051610ce590615336565b90815260200160405180910390209081610cff919061539c565b506001601083604051610d1291906152b8565b908152604051908190036020019020805491151560ff19909216919091179055600a54610d3e866124f6565b6001600160a01b03167f11d98fcd54f8ff0f3f311777817838bac16cfa4d7d86d49df15d7c1512b408a08587604051610d7892919061545b565b60405180910390a3604051858152600080516020615b05833981519152906020015b60405180910390a15050505050565b6060818310610e0a5760405162461bcd60e51b815260206004820152602760248201527f537461727420696e646578206d757374206265206c657373207468616e20656e6044820152660c840d2dcc8caf60cb1b6064820152608401610ad2565b600a54821115610e5c5760405162461bcd60e51b815260206004820152601760248201527f456e6420696e646578206f7574206f6620626f756e64730000000000000000006044820152606401610ad2565b6000610e68848461549f565b90506000816001600160401b03811115610e8457610e84614a23565b604051908082528060200260200182016040528015610eb757816020015b6060815260200190600190039081610ea25790505b50905060005b82811015610f8f57600f6000610ed383896154b2565b81526020019081526020016000208054610eec9061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610f189061524f565b8015610f655780601f10610f3a57610100808354040283529160200191610f65565b820191906000526020600020905b815481529060010190602001808311610f4857829003601f168201915b5050505050828281518110610f7c57610f7c6154c5565b6020908102919091010152600101610ebd565b50949350505050565b60408051808201909152600080825260208201526000600e83604051610fbe91906152b8565b908152604080519182900360209081018320838301909252905460ff80821615158452610100909104161515908201529392505050565b600061100082614083565b6001600160a01b0394851694909150811684146110265761102662a1148160e81b613bfa565b60008281526006602052604090208054338082146001600160a01b0388169091141761106a5761105686336107e9565b61106a5761106a632ce44b5f60e11b613bfa565b801561107557600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040812091909155600160e11b84169003611107576001840160008181526004602052604081205490036111055760005481146111055760008181526004602052604090208490555b505b6001600160a01b0385168481887fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a48060000361115157611151633a954ecd60e21b613bfa565b50505050505050565b611162613ca7565b60008281526011602052604090819020905161117f9083906152b8565b908152602001604051809103902080546111989061524f565b90506000036111e95760405162461bcd60e51b815260206004820152601860248201527f41747472696275746520646f6573206e6f7420657869737400000000000000006044820152606401610ad2565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528151908201207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b0161127f5760405162461bcd60e51b815260206004820152601d60248201527f43616e27742072656d6f766520436f6c6f72204e616d652074726169740000006044820152606401610ad2565b60008281526011602052604090819020905161129c9083906152b8565b908152602001604051809103902060006112b69190614853565b817f1b8bf668c1d8df3ecd1b0a184c49eee003d08c2f4207ae84ed3cda6a608ca334826040516112e691906149b6565b60405180910390a2604051828152600080516020615b058339815191529060200160405180910390a15050565b61131b613ca7565b600c54610100900460ff166113725760405162461bcd60e51b815260206004820152601d60248201527f4e616d65206f766572777269746520616c7265616479206c6f636b65640000006044820152606401610ad2565b600c805461ff0019169055565b611387613ca7565b600c5460ff166113cb5760405162461bcd60e51b815260206004820152600f60248201526e141c9a58d9481a5cc81b1bd8dad959608a1b6044820152606401610ad2565b600b8190556040518181527f25b1f9f6b6e61dfca5575239769e4450ed2e49176670837f5d1a82a9a2fc693f9060200160405180910390a150565b6114218383836040518060200160405280600081525061312b565b505050565b80518251146114835760405162461bcd60e51b815260206004820152602360248201527f546f6b656e2049447320616e64206e616d6573206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152608401610ad2565b60005b8251811015611421576114cb8382815181106114a4576114a46154c5565b60200260200101518383815181106114be576114be6154c5565b602002602001015161214b565b600101611486565b6000818152601260209081526040808320805482518185028101850190935280835260609493849084015b828210156115aa57838290600052602060002001805461151d9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546115499061524f565b80156115965780601f1061156b57610100808354040283529160200191611596565b820191906000526020600020905b81548152906001019060200180831161157957829003601f168201915b5050505050815260200190600101906114fe565b505082516040805180820190915260018152605b60f81b6020820152939450929150600090505b828110156117285760008482815181106115ed576115ed6154c5565b602002602001015190506000601160008981526020019081526020016000208260405161161a91906152b8565b908152602001604051809103902080546116339061524f565b80601f016020809104026020016040519081016040528092919081815260200182805461165f9061524f565b80156116ac5780601f10611681576101008083540402835291602001916116ac565b820191906000526020600020905b81548152906001019060200180831161168f57829003601f168201915b505050505090508382826001886116c3919061549f565b86106116de57604051806020016040528060008152506116f9565b604051806040016040528060018152602001600b60fa1b8152505b60405160200161170c94939291906154db565b60408051808303601f19018152919052935050506001016115d1565b508060405160200161173a9190615591565b60408051601f1981840301815291905295945050505050565b61175b613ca7565b8151835114801561176d575080518351145b6117b95760405162461bcd60e51b815260206004820152601b60248201527f496e707574206172726179206c656e677468206d69736d6174636800000000006044820152606401610ad2565b60005b8351811015611b3b578181815181106117d7576117d76154c5565b6020026020010151518382815181106117f2576117f26154c5565b6020026020010151511461180582614119565b60405160200161181591906155b6565b604051602081830303815290604052906118425760405162461bcd60e51b8152600401610ad291906149b6565b506000848281518110611857576118576154c5565b6020026020010151905060005b848381518110611876576118766154c5565b602002602001015151811015611aa45760408051808201909152600a815269436f6c6f72204e616d6560b01b60209091015284517f5de74e5437c01bf27eecca00b1c143684462ab3029b82b188de9ed9f5e4e02e5908690859081106118de576118de6154c5565b602002602001015182815181106118f7576118f76154c5565b602002602001015180519060200120036119235760405162461bcd60e51b8152600401610ad290615621565b60008281526011602052604090208551869085908110611945576119456154c5565b6020026020010151828151811061195e5761195e6154c5565b602002602001015160405161197391906152b8565b9081526020016040518091039020805461198c9061524f565b90506000036119fb57600082815260126020526040902085518690859081106119b7576119b76154c5565b602002602001015182815181106119d0576119d06154c5565b602090810291909101810151825460018101845560009384529190922001906119f9908261539c565b505b838381518110611a0d57611a0d6154c5565b60200260200101518181518110611a2657611a266154c5565b602002602001015160116000848152602001908152602001600020868581518110611a5357611a536154c5565b60200260200101518381518110611a6c57611a6c6154c5565b6020026020010151604051611a8191906152b8565b90815260200160405180910390209081611a9b919061539c565b50600101611864565b50807f4c31e0209a068dae7e59990a6e69a648f85997b252e0ba038b641867c80451d8858481518110611ad957611ad96154c5565b6020026020010151858581518110611af357611af36154c5565b6020026020010151604051611b09929190615695565b60405180910390a2604051818152600080516020615b058339815191529060200160405180910390a1506001016117bc565b50505050565b8251845114611ba05760405162461bcd60e51b815260206004820152602560248201527f436f6c6f727320616e64206e616d6573206d757374206d6174636820696e206c6044820152640cadccee8d60db1b6064820152608401610ad2565b600c5462010000900460ff161515600114611bfd5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e67206d75737420626520656e61626c65642062792061646d696e6044820152606401610ad2565b81845114611c4d5760405162461bcd60e51b815260206004820152601e60248201527f436f6c6f727320616e64207175616e74697479206d757374206d6174636800006044820152606401610ad2565b81600b54611c5b91906156ba565b341015611ca15760405162461bcd60e51b8152602060048201526014602482015273125b98dbdc9c9958dd0811551208185b5bdd5b9d60621b6044820152606401610ad2565b630100000082600a54611cb491906154b2565b1115611d025760405162461bcd60e51b815260206004820152601f60248201527f4d696e74696e6720776f756c6420657863656564206d617820737570706c79006044820152606401610ad2565b600a5460005b83811015612082576000611d1c82846154b2565b90506000611d42888481518110611d3557611d356154c5565b6020026020010151613cd4565b90506000611d68888581518110611d5b57611d5b6154c5565b6020026020010151613e3a565b9050611d73826132e7565b611d8f5760405162461bcd60e51b8152600401610ad2906152ff565b611db1888581518110611da457611da46154c5565b6020026020010151613f8a565b611dcd5760405162461bcd60e51b8152600401610ad290615289565b611dd782826141ab565b611df35760405162461bcd60e51b8152600401610ad2906156d1565b600d82604051611e0391906152b8565b9081526040519081900360200190206001015460ff1615611e5e5760405162461bcd60e51b81526020600482015260156024820152741211560818dbd91948185b1c9958591e481d5cd959605a1b6044820152606401610ad2565b601081604051611e6e91906152b8565b9081526040519081900360200190205460ff1615611e9e5760405162461bcd60e51b8152600401610ad2906152d4565b604080516001808252818301909252600091816020015b6060815260200190600190039081611eb55790505090506040518060200160405280600081525081600081518110611eef57611eef6154c5565b602002602001018190525060405180608001604052808581526020016001151581526020016000815260200182815250600d84604051611f2f91906152b8565b9081526040805160209281900383019020835181558383015160018201805460ff1916911515919091179055908301516002820155606083015180519192611f7f9260038501929091019061488d565b5050506000848152600f60205260409020611f9a848261539c565b506001601083604051611fad91906152b8565b908152604051908190036020019020805491151560ff199092169190911790558851899086908110611fe157611fe16154c5565b60200260200101516011600086815260200190815260200160002060405161200890615336565b90815260200160405180910390209081612022919061539c565b5060008481526012602090815260408083208054600181018255908452928290208151808301909252600a825269436f6c6f72204e616d6560b01b92820192909252910190612071908261539c565b505060019093019250611d08915050565b5061208d82846141ff565b816001600160a01b03167faf123eddc2f8407409724cdf32d91921ff69e838afb133befd4db491960bf88b86866040516120c8929190615695565b60405180910390a282600a60008282546120e291906154b2565b90915550505050505050565b6120f6613ca7565b600c5460ff1661213f5760405162461bcd60e51b8152602060048201526014602482015273141c9a58d948185b1c9958591e481b1bd8dad95960621b6044820152606401610ad2565b600c805460ff19169055565b600061215682613e3a565b6000848152600f60205260408120805492935090916121749061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546121a09061524f565b80156121ed5780601f106121c2576101008083540402835291602001916121ed565b820191906000526020600020905b8154815290600101906020018083116121d057829003601f168201915b5050505050905060006121ff82613cd4565b90503361220b866124f6565b6001600160a01b03161461225d5760405162461bcd60e51b815260206004820152601960248201527821b0b63632b91034b9903737ba103a37b5b2b71037bbb732b960391b6044820152606401610ad2565b61226684613f8a565b6122825760405162461bcd60e51b8152600401610ad290615289565b61228c81846141ab565b6122a85760405162461bcd60e51b8152600401610ad2906156d1565b6010836040516122b891906152b8565b9081526040519081900360200190205460ff16156122e85760405162461bcd60e51b8152600401610ad2906152d4565b600085815260116020526040808220905161230290615336565b9081526020016040518091039020805461231b9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546123479061524f565b80156123945780601f1061236957610100808354040283529160200191612394565b820191906000526020600020905b81548152906001019060200180831161237757829003601f168201915b5050505050905080516000146123df57600060106123b183613e3a565b6040516123be91906152b8565b908152604051908190036020019020805491151560ff199092169190911790555b84601160008881526020019081526020016000206040516123ff90615336565b90815260200160405180910390209081612419919061539c565b50600d8260405161242a91906152b8565b908152604051908190036020019020600201805490600061244a83615713565b9190505550600160108560405161246191906152b8565b908152604051908190036020019020805491151560ff199092169190911790558561248b816124f6565b6001600160a01b03167f11d98fcd54f8ff0f3f311777817838bac16cfa4d7d86d49df15d7c1512b408a084886040516124c592919061545b565b60405180910390a3604051868152600080516020615b058339815191529060200160405180910390a1505050505050565b60006108e382614083565b60006001600160a01b038216612521576125216323d3ad8160e21b613bfa565b506001600160a01b03166000908152600560205260409020546001600160401b031690565b61254e613ca7565b6125586000614219565b565b612562613ca7565b80518251146125bf5760405162461bcd60e51b815260206004820152602360248201527f546f6b656e2049447320616e64204e616d6573206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152608401610ad2565b60005b8251811015611421576126078382815181106125e0576125e06154c5565b60200260200101518383815181106125fa576125fa6154c5565b60200260200101516109c6565b6001016125c2565b600b54341015801561262b5750600b546126299034615742565b155b61266e5760405162461bcd60e51b8152602060048201526014602482015273125b98dbdc9c9958dd0811551208185b5bdd5b9d60621b6044820152606401610ad2565b600c5462010000900460ff1615156001146126cb5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e67206d75737420626520656e61626c65642062792061646d696e6044820152606401610ad2565b60006126d684613cd4565b905060006126e384613e3a565b90506301000000600a541061273a5760405162461bcd60e51b815260206004820152601f60248201527f4d696e74696e6720776f756c6420657863656564206d617820737570706c79006044820152606401610ad2565b612743826132e7565b61275f5760405162461bcd60e51b8152600401610ad2906152ff565b61276884613f8a565b6127845760405162461bcd60e51b8152600401610ad290615289565b61278e82826141ab565b6127aa5760405162461bcd60e51b8152600401610ad2906156d1565b600d826040516127ba91906152b8565b9081526040519081900360200190206001015460ff16156128165760405162461bcd60e51b81526020600482015260166024820152751211560818dbdb1bdc88185b1c9958591e481d5cd95960521b6044820152606401610ad2565b60108160405161282691906152b8565b9081526040519081900360200190205460ff16156128565760405162461bcd60e51b8152600401610ad2906152d4565b6128618360016141ff565b604080516001808252818301909252600091816020015b606081526020019060019003908161287857905050905060405180602001604052806000815250816000815181106128b2576128b26154c5565b60200260200101819052506040518060800160405280600a5481526020016001151581526020016000815260200182815250600d846040516128f491906152b8565b9081526040805160209281900383019020835181558383015160018201805460ff19169115159190911790559083015160028201556060830151805191926129449260038501929091019061488d565b5050600a546000908152600f602052604090209050612963848261539c565b50600160108360405161297691906152b8565b9081526040805160209281900383018120805460ff191694151594909417909355600a5460009081526011909252902086916129b190615336565b908152602001604051809103902090816129cb919061539c565b50600a80546000908152601260209081526040808320805460018101825590845292829020815180830190925293815269436f6c6f72204e616d6560b01b91810191909152910190612a1d908261539c565b50600a54846001600160a01b03167f4e501b7ed20ed00ab45bf6bdfe315ee8cea82218c0680b05b465207dafd47d018588604051612a5c92919061545b565b60405180910390a3600a8054906000612a7483615713565b9190505550505050505050565b6060600380546108f89061524f565b612a98613ca7565b8051825114612afc5760405162461bcd60e51b815260206004820152602a60248201527f41747472696275746520747970657320616e642076616c756573206c656e67746044820152690d040dad2e6dac2e8c6d60b31b6064820152608401610ad2565b600082516001600160401b03811115612b1757612b17614a23565b604051908082528060200260200182016040528015612b4a57816020015b6060815260200190600190039081612b355790505b509050600082516001600160401b03811115612b6857612b68614a23565b604051908082528060200260200182016040528015612b9b57816020015b6060815260200190600190039081612b865790505b50905060005b8451811015612db95760408051808201909152600a815269436f6c6f72204e616d6560b01b60209091015284517f5de74e5437c01bf27eecca00b1c143684462ab3029b82b188de9ed9f5e4e02e590869083908110612c0257612c026154c5565b60200260200101518051906020012003612c2e5760405162461bcd60e51b8152600401610ad290615621565b60008681526011602052604090208551869083908110612c5057612c506154c5565b6020026020010151604051612c6591906152b8565b90815260200160405180910390208054612c7e9061524f565b9050600003612cd45760008681526012602052604090208551869083908110612ca957612ca96154c5565b60209081029190910181015182546001810184556000938452919092200190612cd2908261539c565b505b838181518110612ce657612ce66154c5565b602002602001015160116000888152602001908152602001600020868381518110612d1357612d136154c5565b6020026020010151604051612d2891906152b8565b90815260200160405180910390209081612d42919061539c565b50848181518110612d5557612d556154c5565b6020026020010151838281518110612d6f57612d6f6154c5565b6020026020010181905250838181518110612d8c57612d8c6154c5565b6020026020010151828281518110612da657612da66154c5565b6020908102919091010152600101612ba1565b50847f4c31e0209a068dae7e59990a6e69a648f85997b252e0ba038b641867c80451d88383604051612dec929190615695565b60405180910390a2604051858152600080516020615b0583398151915290602001610d9a565b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60006010612e8b83613e3a565b604051612e9891906152b8565b9081526040519081900360200190205460ff1692915050565b612eb9613ca7565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528451908501207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b01612f4f5760405162461bcd60e51b815260206004820152601d60248201527f43616e27742072656d6f766520436f6c6f72204e616d652074726169740000006044820152606401610ad2565b82600e85604051612f6091906152b8565b908152604051908190036020018120805492151560ff19909316929092179091558290600e90612f919087906152b8565b90815260405190819003602001902080549115156101000261ff001990921691909117905560005b815181101561312457600a54828281518110612fd757612fd76154c5565b6020026020010151106130235760405162461bcd60e51b8152602060048201526014602482015273151bdad95b881b9bdd081b5a5b9d1959081e595d60621b6044820152606401610ad2565b6000600f600084848151811061303b5761303b6154c5565b60200260200101518152602001908152602001600020805461305c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546130889061524f565b80156130d55780601f106130aa576101008083540402835291602001916130d5565b820191906000526020600020905b8154815290600101906020018083116130b857829003601f168201915b50505050509050600d816040516130ec91906152b8565b90815260405160209181900382019020600301805460018101825560009182529190200161311a878261539c565b5050600101612fb9565b5050505050565b613136848484610ff5565b6001600160a01b0383163b15611b3b576131528484848461426b565b611b3b57611b3b6368d2bf6b60e11b613bfa565b61316e613ca7565b47806131bc5760405162461bcd60e51b815260206004820152601960248201527f4e6f206574686572206c65667420746f207769746864726177000000000000006044820152606401610ad2565b60006131d06009546001600160a01b031690565b6001600160a01b03168260405160006040518083038185875af1925050503d806000811461321a576040519150601f19603f3d011682016040523d82523d6000602084013e61321f565b606091505b50509050806109c25760405162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b6044820152606401610ad2565b60606000613270836124f6565b6001600160a01b0316036132de5760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610ad2565b6108e38261434e565b805160009082906007146132fe5750600092915050565b602360f81b6001600160f81b03191681600081518110613320576133206154c5565b01602001516001600160f81b0319161461333d5750600092915050565b60015b81518110156133885761337282828151811061335e5761335e6154c5565b01602001516001600160f81b031916614469565b613380575060009392505050565b600101613340565b5060019392505050565b61339a613ca7565b600c805462ff0000198116620100009182900460ff1615909102179055565b6133e660405180608001604052806000815260200160001515815260200160008152602001606081525090565b60006133f183613cd4565b90506000600d8260405161340591906152b8565b90815260408051918290036020908101832060808401835280548452600181015460ff161515848301526002810154848401526003810180548451818502810185019095528085529193606086019390929060009084015b8282101561350957838290600052602060002001805461347c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546134a89061524f565b80156134f55780601f106134ca576101008083540402835291602001916134f5565b820191906000526020600020905b8154815290600101906020018083116134d857829003601f168201915b50505050508152602001906001019061345d565b5050505081525050905080602001516135555760405162461bcd60e51b815260206004820152600e60248201526d10dbdb1bdc881b9bdd081d5cd95960921b6044820152606401610ad2565b9392505050565b600f60205260009081526040902080546135759061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546135a19061524f565b80156135ee5780601f106135c3576101008083540402835291602001916135ee565b820191906000526020600020905b8154815290600101906020018083116135d157829003601f168201915b505050505081565b6135fe613ca7565b6001600160a01b03811661362857604051631e4fbdf760e01b815260006004820152602401610ad2565b61363181614219565b50565b61363c613ca7565b6000818152600f6020526040812080546136559061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546136819061524f565b80156136ce5780601f106136a3576101008083540402835291602001916136ce565b820191906000526020600020905b8154815290600101906020018083116136b157829003601f168201915b50505050509050600d816040516136e591906152b8565b908152604051908190036020019020600301546000036137475760405162461bcd60e51b815260206004820152601a60248201527f4e6f206d6f6469666961626c65207472616974732061646465640000000000006044820152606401610ad2565b600d8160405161375791906152b8565b908152602001604051809103902060030160006109c291906148e3565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528251908301207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b016138415760405162461bcd60e51b815260206004820152604860248201527f43616e6e6f742075706461746520436f6c6f72204e616d65207468726f75676860448201527f20746869732066756e6374696f6e2c2075736520736574436f6c6f724e616d65606482015267081a5b9cdd19585960c21b608482015260a401610ad2565b3361384b846124f6565b6001600160a01b03161461389d5760405162461bcd60e51b815260206004820152601960248201527821b0b63632b91034b9903737ba103a37b5b2b71037bbb732b960391b6044820152606401610ad2565b600e826040516138ad91906152b8565b9081526040519081900360200190205460ff166139255760405162461bcd60e51b815260206004820152603060248201527f55706461746573206e6f7420656e61626c65642062792061646d696e20666f7260448201526f2074686973207472616974207479706560801b6064820152608401610ad2565b6000600e8360405161393791906152b8565b9081526040519081900360200190205460ff61010090910416905080613a8f576000848152600f6020526040812080546139709061524f565b80601f016020809104026020016040519081016040528092919081815260200182805461399c9061524f565b80156139e95780601f106139be576101008083540402835291602001916139e9565b820191906000526020600020905b8154815290600101906020018083116139cc57829003601f168201915b5050505050905060005b600d82604051613a0391906152b8565b90815260405190819003602001902060030154811015613a8c57600d82604051613a2d91906152b8565b90815260200160405180910390206003018181548110613a4f57613a4f6154c5565b90600052602060002001604051613a669190615756565b6040518091039020858051906020012003613a845760019250613a8c565b6001016139f3565b50505b80613ae85760405162461bcd60e51b815260206004820152602360248201527f5472616974206e6f74206d6f6469666961626c6520666f72207468697320746f60448201526235b2b760e91b6064820152608401610ad2565b600084815260116020526040908190209051613b059085906152b8565b90815260200160405180910390208054613b1e9061524f565b9050600003613b5157600084815260126020908152604082208054600181018255908352912001613b4f848261539c565b505b816011600086815260200190815260200160002084604051613b7391906152b8565b90815260200160405180910390209081613b8d919061539c565b50604051848152600080516020615b058339815191529060200160405180910390a150505050565b60008054821015613bf55760005b5060008281526004602052604081205490819003613beb57613be4836157cc565b9250613bc3565b600160e01b161590505b919050565b8060005260046000fd5b6000613c0f836124f6565b9050818015613c275750336001600160a01b03821614155b15613c4a57613c3681336107e9565b613c4a57613c4a6367d9dca160e11b613bfa565b60008381526006602052604080822080546001600160a01b0319166001600160a01b0388811691821790925591518693918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a450505050565b6009546001600160a01b031633146125585760405163118cdaa760e01b8152336004820152602401610ad2565b60606000829050600081516001600160401b03811115613cf657613cf6614a23565b6040519080825280601f01601f191660200182016040528015613d20576020820181803683370190505b50905060005b8251811015613e3257606160f81b838281518110613d4657613d466154c5565b01602001516001600160f81b03191610801590613d875750603d60f91b838281518110613d7557613d756154c5565b01602001516001600160f81b03191611155b15613de3576020838281518110613da057613da06154c5565b0160200151613db2919060f81c6157e3565b60f81b828281518110613dc757613dc76154c5565b60200101906001600160f81b031916908160001a905350613e2a565b828181518110613df557613df56154c5565b602001015160f81c60f81b828281518110613e1257613e126154c5565b60200101906001600160f81b031916908160001a9053505b600101613d26565b509392505050565b60606000829050600081516001600160401b03811115613e5c57613e5c614a23565b6040519080825280601f01601f191660200182016040528015613e86576020820181803683370190505b50905060005b8251811015613e32576041838281518110613ea957613ea96154c5565b016020015160f81c10801590613ed95750605a838281518110613ece57613ece6154c5565b016020015160f81c11155b15613f3b57828181518110613ef057613ef06154c5565b602001015160f81c60f81b60f81c6020613f0a91906157fc565b60f81b828281518110613f1f57613f1f6154c5565b60200101906001600160f81b031916908160001a905350613f82565b828181518110613f4d57613f4d6154c5565b602001015160f81c60f81b828281518110613f6a57613f6a6154c5565b60200101906001600160f81b031916908160001a9053505b600101613e8c565b805160009082901580613f9e575060208151115b15613fac5750600092915050565b60005b8151811015613388576000828281518110613fcc57613fcc6154c5565b01602001516001600160f81b0319169050600360fc1b8110801590613fff5750603960f81b6001600160f81b0319821611155b1580156140355750604160f81b6001600160f81b03198216108015906140335750602d60f91b6001600160f81b0319821611155b155b801561406a5750606160f81b6001600160f81b03198216108015906140685750603d60f91b6001600160f81b0319821611155b155b1561407a57506000949350505050565b50600101613faf565b600081815260046020526040902054806000036140f65760005482106140b3576140b3636f96cda160e11b613bfa565b5b506000190160008181526004602052604090205480156140b457600160e01b81166000036140e157919050565b6140f1636f96cda160e11b613bfa565b6140b4565b600160e01b811660000361410957919050565b613bf5636f96cda160e11b613bfa565b6060600061412683614500565b60010190506000816001600160401b0381111561414557614145614a23565b6040519080825280601f01601f19166020018201604052801561416f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461417957509392505050565b6000806141d6836040516020016141c29190615815565b604051602081830303815290604052613cd4565b90506141e1816132e7565b156133885783805190602001208180519060200120149150506108e3565b6109c28282604051806020016040528060008152506145d8565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906142a090339089908890889060040161583e565b6020604051808303816000875af19250505080156142db575060408051601f3d908101601f191682019092526142d89181019061587b565b60015b614330573d808015614309576040519150601f19603f3d011682016040523d82523d6000602084013e61430e565b606091505b508051600003614328576143286368d2bf6b60e11b613bfa565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b6000818152600f602052604081208054606092919061436c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546143989061524f565b80156143e55780601f106143ba576101008083540402835291602001916143e5565b820191906000526020600020905b8154815290600101906020018083116143c857829003601f168201915b505050505090506000614416826040516020016144029190615898565b604051602081830303815290604052614635565b90506000614423856114d3565b9050600061443f84848460405160200161440293929190615948565b60405160200161444f9190615a6b565b60408051601f198184030181529190529695505050505050565b6000600360fc1b6001600160f81b03198316108015906144975750603960f81b6001600160f81b0319831611155b806144c95750604160f81b6001600160f81b03198316108015906144c95750602360f91b6001600160f81b0319831611155b806108e35750606160f81b6001600160f81b03198316108015906108e35750603360f91b6001600160f81b03198316111592915050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061453f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061456b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061458957662386f26fc10000830492506010015b6305f5e10083106145a1576305f5e100830492506008015b61271083106145b557612710830492506004015b606483106145c7576064830492506002015b600a83106108e35760010192915050565b6145e28383614794565b6001600160a01b0383163b15611421576000548281035b61460c600086838060010194508661426b565b614620576146206368d2bf6b60e11b613bfa565b8181106145f957816000541461312457600080fd5b6060815160000361465457505060408051602081019091526000815290565b6000604051806060016040528060408152602001615ac5604091399050600060038451600261468391906154b2565b61468d9190615ab0565b6146989060046156ba565b6001600160401b038111156146af576146af614a23565b6040519080825280601f01601f1916602001820160405280156146d9576020820181803683370190505b50905060018201602082018586518701602081018051600082525b8284101561474f576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f81168701518653506001850194506146f4565b905250508551600390066001811461476e576002811461478157614789565b603d6001830353603d6002830353614789565b603d60018303535b509195945050505050565b60008054908290036147b0576147b063b562e8dd60e01b613bfa565b60008181526004602090815260408083206001600160a01b0387164260a01b6001881460e11b1781179091558084526005909252822080546801000000000000000186020190559081900361480e5761480e622e076360e81b613bfa565b818301825b808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4818160010191508103614813575060005550505050565b50805461485f9061524f565b6000825580601f1061486f575050565b601f0160209004906000526020600020908101906136319190614901565b8280548282559060005260206000209081019282156148d3579160200282015b828111156148d357825182906148c3908261539c565b50916020019190600101906148ad565b506148df929150614916565b5090565b50805460008255906000526020600020908101906136319190614916565b5b808211156148df5760008155600101614902565b808211156148df57600061492a8282614853565b50600101614916565b6001600160e01b03198116811461363157600080fd5b60006020828403121561495b57600080fd5b813561355581614933565b60005b83811015614981578181015183820152602001614969565b50506000910152565b600081518084526149a2816020860160208601614966565b601f01601f19169290920160200192915050565b602081526000613555602083018461498a565b6000602082840312156149db57600080fd5b5035919050565b80356001600160a01b0381168114613bf557600080fd5b60008060408385031215614a0c57600080fd5b614a15836149e2565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614a6157614a61614a23565b604052919050565b60006001600160401b03831115614a8257614a82614a23565b614a95601f8401601f1916602001614a39565b9050828152838383011115614aa957600080fd5b828260208301376000602084830101529392505050565b600082601f830112614ad157600080fd5b61355583833560208501614a69565b60008060408385031215614af357600080fd5b8235915060208301356001600160401b03811115614b1057600080fd5b614b1c85828601614ac0565b9150509250929050565b60008060408385031215614b3957600080fd5b50508035926020909101359150565b60008282518085526020808601955060208260051b8401016020860160005b84811015614b9557601f19868403018952614b8383835161498a565b98840198925090830190600101614b67565b5090979650505050505050565b6020815260006135556020830184614b48565b600060208284031215614bc757600080fd5b81356001600160401b03811115614bdd57600080fd5b61434684828501614ac0565b600080600060608486031215614bfe57600080fd5b614c07846149e2565b9250614c15602085016149e2565b9150604084013590509250925092565b60006001600160401b03821115614c3e57614c3e614a23565b5060051b60200190565b600082601f830112614c5957600080fd5b81356020614c6e614c6983614c25565b614a39565b8083825260208201915060208460051b870101935086841115614c9057600080fd5b602086015b84811015614cac5780358352918301918301614c95565b509695505050505050565b600082601f830112614cc857600080fd5b81356020614cd8614c6983614c25565b82815260059290921b84018101918181019086841115614cf757600080fd5b8286015b84811015614cac5780356001600160401b03811115614d1a5760008081fd5b614d288986838b0101614ac0565b845250918301918301614cfb565b60008060408385031215614d4957600080fd5b82356001600160401b0380821115614d6057600080fd5b614d6c86838701614c48565b93506020850135915080821115614d8257600080fd5b50614b1c85828601614cb7565b600082601f830112614da057600080fd5b81356020614db0614c6983614c25565b82815260059290921b84018101918181019086841115614dcf57600080fd5b8286015b84811015614cac5780356001600160401b03811115614df25760008081fd5b614e008986838b0101614cb7565b845250918301918301614dd3565b600080600060608486031215614e2357600080fd5b83356001600160401b0380821115614e3a57600080fd5b614e4687838801614c48565b94506020860135915080821115614e5c57600080fd5b614e6887838801614d8f565b93506040860135915080821115614e7e57600080fd5b50614e8b86828701614d8f565b9150509250925092565b60008060008060808587031215614eab57600080fd5b84356001600160401b0380821115614ec257600080fd5b614ece88838901614cb7565b95506020870135915080821115614ee457600080fd5b50614ef187828801614cb7565b93505060408501359150614f07606086016149e2565b905092959194509250565b600060208284031215614f2457600080fd5b613555826149e2565b600080600060608486031215614f4257600080fd5b83356001600160401b0380821115614f5957600080fd5b614f6587838801614ac0565b94506020860135915080821115614f7b57600080fd5b50614f8886828701614ac0565b925050614f97604085016149e2565b90509250925092565b600080600060608486031215614fb557600080fd5b8335925060208401356001600160401b0380821115614fd357600080fd5b614fdf87838801614cb7565b93506040860135915080821115614ff557600080fd5b50614e8b86828701614cb7565b80358015158114613bf557600080fd5b6000806040838503121561502557600080fd5b61502e836149e2565b915061503c60208401615002565b90509250929050565b6000806000806080858703121561505b57600080fd5b84356001600160401b038082111561507257600080fd5b61507e88838901614ac0565b955061508c60208801615002565b945061509a60408801615002565b935060608701359150808211156150b057600080fd5b506150bd87828801614c48565b91505092959194509250565b600080600080608085870312156150df57600080fd5b6150e8856149e2565b93506150f6602086016149e2565b92506040850135915060608501356001600160401b0381111561511857600080fd5b8501601f8101871361512957600080fd5b6150bd87823560208401614a69565b6000602080835260a08301845182850152818501511515604085015260408501516060850152606085015160808086015281815180845260c08701915060c08160051b8801019350848301925060005b818110156151b65760bf198886030183526151a485855161498a565b94509285019291850191600101615188565b5092979650505050505050565b600080604083850312156151d657600080fd5b6151df836149e2565b915061503c602084016149e2565b60008060006060848603121561520257600080fd5b8335925060208401356001600160401b038082111561522057600080fd5b61522c87838801614ac0565b9350604086013591508082111561524257600080fd5b50614e8b86828701614ac0565b600181811c9082168061526357607f821691505b60208210810361528357634e487b7160e01b600052602260045260246000fd5b50919050565b602080825260159082015274125b9d985b1a59081b985b59481c1c9bdd9a591959605a1b604082015260600190565b600082516152ca818460208701614966565b9190910192915050565b60208082526011908201527013985b5948185b1c9958591e481d5cd959607a1b604082015260600190565b60208082526019908201527f496e76616c69642048455820636f64652070726f766964656400000000000000604082015260600190565b69436f6c6f72204e616d6560b01b8152600a0190565b601f821115611421576000816000526020600020601f850160051c810160208610156153755750805b601f850160051c820191505b8181101561539457828155600101615381565b505050505050565b81516001600160401b038111156153b5576153b5614a23565b6153c9816153c3845461524f565b8461534c565b602080601f8311600181146153fe57600084156153e65750858301515b600019600386901b1c1916600185901b178555615394565b600085815260208120601f198616915b8281101561542d5788860151825594840194600190910190840161540e565b508582101561544b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60408152600061546e604083018561498a565b8281036020840152615480818561498a565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156108e3576108e3615489565b808201808211156108e3576108e3615489565b634e487b7160e01b600052603260045260246000fd5b600085516154ed818460208a01614966565b607b60f81b9083019081526d113a3930b4ba2fba3cb832911d1160911b6001820152855161552281600f840160208a01614966565b61088b60f21b600f929091019182015268113b30b63ab2911d1160b91b6011820152845161555781601a840160208901614966565b601160f91b601a9290910191820152607d60f81b601b820152835161558381601c840160208801614966565b01601c019695505050505050565b600082516155a3818460208701614966565b605d60f81b920191825250600101919050565b7f547261697420747970657320616e642076616c756573206c656e677468206d6981527f736d6174636820666f7220746f6b656e20696e64657820000000000000000000602082015260008251615614816037850160208701614966565b9190910160370192915050565b6020808252604e908201527f43616e6e6f742075706461746520436f6c6f72204e616d65207468726f75676860408201527f20746869732066756e6374696f6e2c20757365206f7665727772697465436f6c60608201526d1bdc93985b59481a5b9cdd19585960921b608082015260a00190565b6040815260006156a86040830185614b48565b82810360208401526154808185614b48565b80820281158282048414176108e3576108e3615489565b60208082526022908201527f4e616d6520726573657276656420666f7220616e6f746865722048455820636f604082015261646560f01b606082015260800190565b60006001820161572557615725615489565b5060010190565b634e487b7160e01b600052601260045260246000fd5b6000826157515761575161572c565b500690565b60008083546157648161524f565b6001828116801561577c5760018114615791576157c0565b60ff19841687528215158302870194506157c0565b8760005260208060002060005b858110156157b75781548a82015290840190820161579e565b50505082870194505b50929695505050505050565b6000816157db576157db615489565b506000190190565b60ff82811682821603908111156108e3576108e3615489565b60ff81811683821601908111156108e3576108e3615489565b602360f81b815260008251615831816001850160208701614966565b9190910160010192915050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906158719083018461498a565b9695505050505050565b60006020828403121561588d57600080fd5b815161355581614933565b7f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323081527f30302f737667222076696577426f783d223020302031303020313030223e3c7260208201527f6563742077696474683d2231303022206865696768743d22313030222066696c604082015262361e9160e91b606082015260008251615928816063850160208701614966565b6811179f1e17b9bb339f60b91b6063939091019283015250606c01919050565b683d913730b6b2911d1160b91b8152835160009061596d816009850160208901614966565b7f222c226465736372697074696f6e223a224261736520436f6c6f7273206973206009918401918201527f746865204e465420636f6c6c656374696f6e20666f7220657665727920636f6c60298201527337b91037b7103a34329034b73a32b93732ba171160611b60498201527f2c22696d616765223a22646174613a696d6167652f7376672b786d6c3b626173605d82015263194d8d0b60e21b607d8201528451615a20816081840160208901614966565b6e11161130ba3a3934b13aba32b9911d60891b608192909101918201528351615a50816090840160208801614966565b607d60f81b6090929091019182015260910195945050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815260008251615aa381601d850160208701614966565b91909101601d0192915050565b600082615abf57615abf61572c565b50049056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce7a2646970667358221220fbe6b64667484686577be397b82f778ad88644c8d0d370f491571a45c3a5c88664736f6c63430008190033
Deployed Bytecode
0x6080604052600436106102925760003560e01c80636817c76c1161015a578063b88d4fde116100c1578063e17f7e081161007a578063e17f7e08146107a1578063e985e9c5146107ce578063ea22071714610817578063f2fde38b14610837578063fd5c8e9c14610857578063fe5831631461087757600080fd5b8063b88d4fde146106e9578063c10eb14d146106fc578063c87b56dd14610711578063cad43d7b14610731578063cc6934761461076c578063d7220ca71461078c57600080fd5b806395d89b411161011357806395d89b4114610635578063a17776411461064a578063a22cb4651461066a578063ada424ea1461068a578063b3da4e34146106a9578063b65d8fbd146106c957600080fd5b80636817c76c1461059957806370a08231146105af578063715018a6146105cf5780638da5cb5b146105e45780638f093a9e14610602578063904c57471461062257600080fd5b806332cb6b0c116101fe578063450960d2116101b7578063450960d2146104f15780634c42c97a1461051157806355c7ba141461052457806360745a01146105445780636277b47e146105595780636352211e1461057957600080fd5b806332cb6b0c1461045157806338853c90146104695780633d84d15c1461047e57806342842e0e1461049e5780634373f8c1146104b157806344ef8f7d146104d157600080fd5b806318160ddd1161025057806318160ddd1461037f5780631a09cc6b146103985780631e40c312146103c5578063209ebe20146103df57806323b872dd1461041e578063270ab5531461043157600080fd5b80629a9b7b1461029757806301ffc9a7146102c057806306fdde03146102f0578063081812fc14610312578063095ea7b31461034a578063152a68091461035f575b600080fd5b3480156102a357600080fd5b506102ad600a5481565b6040519081526020015b60405180910390f35b3480156102cc57600080fd5b506102e06102db366004614949565b610897565b60405190151581526020016102b7565b3480156102fc57600080fd5b506103056108e9565b6040516102b791906149b6565b34801561031e57600080fd5b5061033261032d3660046149c9565b61097b565b6040516001600160a01b0390911681526020016102b7565b61035d6103583660046149f9565b6109b6565b005b34801561036b57600080fd5b5061035d61037a366004614ae0565b6109c6565b34801561038b57600080fd5b50600154600054036102ad565b3480156103a457600080fd5b506103b86103b3366004614b26565b610da9565b6040516102b79190614ba2565b3480156103d157600080fd5b50600c546102e09060ff1681565b3480156103eb57600080fd5b506103ff6103fa366004614bb5565b610f98565b60408051825115158152602092830151151592810192909252016102b7565b61035d61042c366004614be9565b610ff5565b34801561043d57600080fd5b5061035d61044c366004614ae0565b61115a565b34801561045d57600080fd5b506102ad630100000081565b34801561047557600080fd5b5061035d611313565b34801561048a57600080fd5b5061035d6104993660046149c9565b61137f565b61035d6104ac366004614be9565b611406565b3480156104bd57600080fd5b5061035d6104cc366004614d36565b611426565b3480156104dd57600080fd5b506103056104ec3660046149c9565b6114d3565b3480156104fd57600080fd5b5061035d61050c366004614e0e565b611753565b61035d61051f366004614e95565b611b41565b34801561053057600080fd5b50600c546102e09062010000900460ff1681565b34801561055057600080fd5b5061035d6120ee565b34801561056557600080fd5b5061035d610574366004614ae0565b61214b565b34801561058557600080fd5b506103326105943660046149c9565b6124f6565b3480156105a557600080fd5b506102ad600b5481565b3480156105bb57600080fd5b506102ad6105ca366004614f12565b612501565b3480156105db57600080fd5b5061035d612546565b3480156105f057600080fd5b506009546001600160a01b0316610332565b34801561060e57600080fd5b5061035d61061d366004614d36565b61255a565b61035d610630366004614f2d565b61260f565b34801561064157600080fd5b50610305612a81565b34801561065657600080fd5b5061035d610665366004614fa0565b612a90565b34801561067657600080fd5b5061035d610685366004615012565b612e12565b34801561069657600080fd5b50600c546102e090610100900460ff1681565b3480156106b557600080fd5b506102e06106c4366004614bb5565b612e7e565b3480156106d557600080fd5b5061035d6106e4366004615045565b612eb1565b61035d6106f73660046150c9565b61312b565b34801561070857600080fd5b5061035d613166565b34801561071d57600080fd5b5061030561072c3660046149c9565b613263565b34801561073d57600080fd5b506102e061074c366004614bb5565b805160208183018101805160138252928201919093012091525460ff1681565b34801561077857600080fd5b506102e0610787366004614bb5565b6132e7565b34801561079857600080fd5b5061035d613392565b3480156107ad57600080fd5b506107c16107bc366004614bb5565b6133b9565b6040516102b79190615138565b3480156107da57600080fd5b506102e06107e93660046151c3565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b34801561082357600080fd5b506103056108323660046149c9565b61355c565b34801561084357600080fd5b5061035d610852366004614f12565b6135f6565b34801561086357600080fd5b5061035d6108723660046149c9565b613634565b34801561088357600080fd5b5061035d6108923660046151ed565b613774565b60006301ffc9a760e01b6001600160e01b0319831614806108c857506380ac58cd60e01b6001600160e01b03198316145b806108e35750635b5e139f60e01b6001600160e01b03198316145b92915050565b6060600280546108f89061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546109249061524f565b80156109715780601f1061094657610100808354040283529160200191610971565b820191906000526020600020905b81548152906001019060200180831161095457829003601f168201915b5050505050905090565b600061098682613bb5565b61099a5761099a6333d1c03960e21b613bfa565b506000908152600660205260409020546001600160a01b031690565b6109c282826001613c04565b5050565b6109ce613ca7565b6000828152600f602052604081208054610a6f91906109ec9061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a189061524f565b8015610a655780601f10610a3a57610100808354040283529160200191610a65565b820191906000526020600020905b815481529060010190602001808311610a4857829003601f168201915b5050505050613cd4565b90506000610a7c83613e3a565b600c54909150610100900460ff16610adb5760405162461bcd60e51b815260206004820152601b60248201527f41646d696e206e616d65206368616e6765732064697361626c6564000000000060448201526064015b60405180910390fd5b610ae483613f8a565b610b005760405162461bcd60e51b8152600401610ad290615289565b601081604051610b1091906152b8565b9081526040519081900360200190205460ff1615610b405760405162461bcd60e51b8152600401610ad2906152d4565b610b49826132e7565b610b655760405162461bcd60e51b8152600401610ad2906152ff565b600d82604051610b7591906152b8565b9081526040519081900360200190206001015460ff16610bce5760405162461bcd60e51b81526020600482015260146024820152731211560818dbdb1bdc881b9bdd081b5a5b9d195960621b6044820152606401610ad2565b6000848152601160205260408082209051610be890615336565b90815260200160405180910390208054610c019061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2d9061524f565b8015610c7a5780601f10610c4f57610100808354040283529160200191610c7a565b820191906000526020600020905b815481529060010190602001808311610c5d57829003601f168201915b505050505090508051600014610cc55760006010610c9783613e3a565b604051610ca491906152b8565b908152604051908190036020019020805491151560ff199092169190911790555b8360116000878152602001908152602001600020604051610ce590615336565b90815260200160405180910390209081610cff919061539c565b506001601083604051610d1291906152b8565b908152604051908190036020019020805491151560ff19909216919091179055600a54610d3e866124f6565b6001600160a01b03167f11d98fcd54f8ff0f3f311777817838bac16cfa4d7d86d49df15d7c1512b408a08587604051610d7892919061545b565b60405180910390a3604051858152600080516020615b05833981519152906020015b60405180910390a15050505050565b6060818310610e0a5760405162461bcd60e51b815260206004820152602760248201527f537461727420696e646578206d757374206265206c657373207468616e20656e6044820152660c840d2dcc8caf60cb1b6064820152608401610ad2565b600a54821115610e5c5760405162461bcd60e51b815260206004820152601760248201527f456e6420696e646578206f7574206f6620626f756e64730000000000000000006044820152606401610ad2565b6000610e68848461549f565b90506000816001600160401b03811115610e8457610e84614a23565b604051908082528060200260200182016040528015610eb757816020015b6060815260200190600190039081610ea25790505b50905060005b82811015610f8f57600f6000610ed383896154b2565b81526020019081526020016000208054610eec9061524f565b80601f0160208091040260200160405190810160405280929190818152602001828054610f189061524f565b8015610f655780601f10610f3a57610100808354040283529160200191610f65565b820191906000526020600020905b815481529060010190602001808311610f4857829003601f168201915b5050505050828281518110610f7c57610f7c6154c5565b6020908102919091010152600101610ebd565b50949350505050565b60408051808201909152600080825260208201526000600e83604051610fbe91906152b8565b908152604080519182900360209081018320838301909252905460ff80821615158452610100909104161515908201529392505050565b600061100082614083565b6001600160a01b0394851694909150811684146110265761102662a1148160e81b613bfa565b60008281526006602052604090208054338082146001600160a01b0388169091141761106a5761105686336107e9565b61106a5761106a632ce44b5f60e11b613bfa565b801561107557600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040812091909155600160e11b84169003611107576001840160008181526004602052604081205490036111055760005481146111055760008181526004602052604090208490555b505b6001600160a01b0385168481887fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a48060000361115157611151633a954ecd60e21b613bfa565b50505050505050565b611162613ca7565b60008281526011602052604090819020905161117f9083906152b8565b908152602001604051809103902080546111989061524f565b90506000036111e95760405162461bcd60e51b815260206004820152601860248201527f41747472696275746520646f6573206e6f7420657869737400000000000000006044820152606401610ad2565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528151908201207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b0161127f5760405162461bcd60e51b815260206004820152601d60248201527f43616e27742072656d6f766520436f6c6f72204e616d652074726169740000006044820152606401610ad2565b60008281526011602052604090819020905161129c9083906152b8565b908152602001604051809103902060006112b69190614853565b817f1b8bf668c1d8df3ecd1b0a184c49eee003d08c2f4207ae84ed3cda6a608ca334826040516112e691906149b6565b60405180910390a2604051828152600080516020615b058339815191529060200160405180910390a15050565b61131b613ca7565b600c54610100900460ff166113725760405162461bcd60e51b815260206004820152601d60248201527f4e616d65206f766572777269746520616c7265616479206c6f636b65640000006044820152606401610ad2565b600c805461ff0019169055565b611387613ca7565b600c5460ff166113cb5760405162461bcd60e51b815260206004820152600f60248201526e141c9a58d9481a5cc81b1bd8dad959608a1b6044820152606401610ad2565b600b8190556040518181527f25b1f9f6b6e61dfca5575239769e4450ed2e49176670837f5d1a82a9a2fc693f9060200160405180910390a150565b6114218383836040518060200160405280600081525061312b565b505050565b80518251146114835760405162461bcd60e51b815260206004820152602360248201527f546f6b656e2049447320616e64206e616d6573206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152608401610ad2565b60005b8251811015611421576114cb8382815181106114a4576114a46154c5565b60200260200101518383815181106114be576114be6154c5565b602002602001015161214b565b600101611486565b6000818152601260209081526040808320805482518185028101850190935280835260609493849084015b828210156115aa57838290600052602060002001805461151d9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546115499061524f565b80156115965780601f1061156b57610100808354040283529160200191611596565b820191906000526020600020905b81548152906001019060200180831161157957829003601f168201915b5050505050815260200190600101906114fe565b505082516040805180820190915260018152605b60f81b6020820152939450929150600090505b828110156117285760008482815181106115ed576115ed6154c5565b602002602001015190506000601160008981526020019081526020016000208260405161161a91906152b8565b908152602001604051809103902080546116339061524f565b80601f016020809104026020016040519081016040528092919081815260200182805461165f9061524f565b80156116ac5780601f10611681576101008083540402835291602001916116ac565b820191906000526020600020905b81548152906001019060200180831161168f57829003601f168201915b505050505090508382826001886116c3919061549f565b86106116de57604051806020016040528060008152506116f9565b604051806040016040528060018152602001600b60fa1b8152505b60405160200161170c94939291906154db565b60408051808303601f19018152919052935050506001016115d1565b508060405160200161173a9190615591565b60408051601f1981840301815291905295945050505050565b61175b613ca7565b8151835114801561176d575080518351145b6117b95760405162461bcd60e51b815260206004820152601b60248201527f496e707574206172726179206c656e677468206d69736d6174636800000000006044820152606401610ad2565b60005b8351811015611b3b578181815181106117d7576117d76154c5565b6020026020010151518382815181106117f2576117f26154c5565b6020026020010151511461180582614119565b60405160200161181591906155b6565b604051602081830303815290604052906118425760405162461bcd60e51b8152600401610ad291906149b6565b506000848281518110611857576118576154c5565b6020026020010151905060005b848381518110611876576118766154c5565b602002602001015151811015611aa45760408051808201909152600a815269436f6c6f72204e616d6560b01b60209091015284517f5de74e5437c01bf27eecca00b1c143684462ab3029b82b188de9ed9f5e4e02e5908690859081106118de576118de6154c5565b602002602001015182815181106118f7576118f76154c5565b602002602001015180519060200120036119235760405162461bcd60e51b8152600401610ad290615621565b60008281526011602052604090208551869085908110611945576119456154c5565b6020026020010151828151811061195e5761195e6154c5565b602002602001015160405161197391906152b8565b9081526020016040518091039020805461198c9061524f565b90506000036119fb57600082815260126020526040902085518690859081106119b7576119b76154c5565b602002602001015182815181106119d0576119d06154c5565b602090810291909101810151825460018101845560009384529190922001906119f9908261539c565b505b838381518110611a0d57611a0d6154c5565b60200260200101518181518110611a2657611a266154c5565b602002602001015160116000848152602001908152602001600020868581518110611a5357611a536154c5565b60200260200101518381518110611a6c57611a6c6154c5565b6020026020010151604051611a8191906152b8565b90815260200160405180910390209081611a9b919061539c565b50600101611864565b50807f4c31e0209a068dae7e59990a6e69a648f85997b252e0ba038b641867c80451d8858481518110611ad957611ad96154c5565b6020026020010151858581518110611af357611af36154c5565b6020026020010151604051611b09929190615695565b60405180910390a2604051818152600080516020615b058339815191529060200160405180910390a1506001016117bc565b50505050565b8251845114611ba05760405162461bcd60e51b815260206004820152602560248201527f436f6c6f727320616e64206e616d6573206d757374206d6174636820696e206c6044820152640cadccee8d60db1b6064820152608401610ad2565b600c5462010000900460ff161515600114611bfd5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e67206d75737420626520656e61626c65642062792061646d696e6044820152606401610ad2565b81845114611c4d5760405162461bcd60e51b815260206004820152601e60248201527f436f6c6f727320616e64207175616e74697479206d757374206d6174636800006044820152606401610ad2565b81600b54611c5b91906156ba565b341015611ca15760405162461bcd60e51b8152602060048201526014602482015273125b98dbdc9c9958dd0811551208185b5bdd5b9d60621b6044820152606401610ad2565b630100000082600a54611cb491906154b2565b1115611d025760405162461bcd60e51b815260206004820152601f60248201527f4d696e74696e6720776f756c6420657863656564206d617820737570706c79006044820152606401610ad2565b600a5460005b83811015612082576000611d1c82846154b2565b90506000611d42888481518110611d3557611d356154c5565b6020026020010151613cd4565b90506000611d68888581518110611d5b57611d5b6154c5565b6020026020010151613e3a565b9050611d73826132e7565b611d8f5760405162461bcd60e51b8152600401610ad2906152ff565b611db1888581518110611da457611da46154c5565b6020026020010151613f8a565b611dcd5760405162461bcd60e51b8152600401610ad290615289565b611dd782826141ab565b611df35760405162461bcd60e51b8152600401610ad2906156d1565b600d82604051611e0391906152b8565b9081526040519081900360200190206001015460ff1615611e5e5760405162461bcd60e51b81526020600482015260156024820152741211560818dbd91948185b1c9958591e481d5cd959605a1b6044820152606401610ad2565b601081604051611e6e91906152b8565b9081526040519081900360200190205460ff1615611e9e5760405162461bcd60e51b8152600401610ad2906152d4565b604080516001808252818301909252600091816020015b6060815260200190600190039081611eb55790505090506040518060200160405280600081525081600081518110611eef57611eef6154c5565b602002602001018190525060405180608001604052808581526020016001151581526020016000815260200182815250600d84604051611f2f91906152b8565b9081526040805160209281900383019020835181558383015160018201805460ff1916911515919091179055908301516002820155606083015180519192611f7f9260038501929091019061488d565b5050506000848152600f60205260409020611f9a848261539c565b506001601083604051611fad91906152b8565b908152604051908190036020019020805491151560ff199092169190911790558851899086908110611fe157611fe16154c5565b60200260200101516011600086815260200190815260200160002060405161200890615336565b90815260200160405180910390209081612022919061539c565b5060008481526012602090815260408083208054600181018255908452928290208151808301909252600a825269436f6c6f72204e616d6560b01b92820192909252910190612071908261539c565b505060019093019250611d08915050565b5061208d82846141ff565b816001600160a01b03167faf123eddc2f8407409724cdf32d91921ff69e838afb133befd4db491960bf88b86866040516120c8929190615695565b60405180910390a282600a60008282546120e291906154b2565b90915550505050505050565b6120f6613ca7565b600c5460ff1661213f5760405162461bcd60e51b8152602060048201526014602482015273141c9a58d948185b1c9958591e481b1bd8dad95960621b6044820152606401610ad2565b600c805460ff19169055565b600061215682613e3a565b6000848152600f60205260408120805492935090916121749061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546121a09061524f565b80156121ed5780601f106121c2576101008083540402835291602001916121ed565b820191906000526020600020905b8154815290600101906020018083116121d057829003601f168201915b5050505050905060006121ff82613cd4565b90503361220b866124f6565b6001600160a01b03161461225d5760405162461bcd60e51b815260206004820152601960248201527821b0b63632b91034b9903737ba103a37b5b2b71037bbb732b960391b6044820152606401610ad2565b61226684613f8a565b6122825760405162461bcd60e51b8152600401610ad290615289565b61228c81846141ab565b6122a85760405162461bcd60e51b8152600401610ad2906156d1565b6010836040516122b891906152b8565b9081526040519081900360200190205460ff16156122e85760405162461bcd60e51b8152600401610ad2906152d4565b600085815260116020526040808220905161230290615336565b9081526020016040518091039020805461231b9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546123479061524f565b80156123945780601f1061236957610100808354040283529160200191612394565b820191906000526020600020905b81548152906001019060200180831161237757829003601f168201915b5050505050905080516000146123df57600060106123b183613e3a565b6040516123be91906152b8565b908152604051908190036020019020805491151560ff199092169190911790555b84601160008881526020019081526020016000206040516123ff90615336565b90815260200160405180910390209081612419919061539c565b50600d8260405161242a91906152b8565b908152604051908190036020019020600201805490600061244a83615713565b9190505550600160108560405161246191906152b8565b908152604051908190036020019020805491151560ff199092169190911790558561248b816124f6565b6001600160a01b03167f11d98fcd54f8ff0f3f311777817838bac16cfa4d7d86d49df15d7c1512b408a084886040516124c592919061545b565b60405180910390a3604051868152600080516020615b058339815191529060200160405180910390a1505050505050565b60006108e382614083565b60006001600160a01b038216612521576125216323d3ad8160e21b613bfa565b506001600160a01b03166000908152600560205260409020546001600160401b031690565b61254e613ca7565b6125586000614219565b565b612562613ca7565b80518251146125bf5760405162461bcd60e51b815260206004820152602360248201527f546f6b656e2049447320616e64204e616d6573206c656e677468206d69736d616044820152620e8c6d60eb1b6064820152608401610ad2565b60005b8251811015611421576126078382815181106125e0576125e06154c5565b60200260200101518383815181106125fa576125fa6154c5565b60200260200101516109c6565b6001016125c2565b600b54341015801561262b5750600b546126299034615742565b155b61266e5760405162461bcd60e51b8152602060048201526014602482015273125b98dbdc9c9958dd0811551208185b5bdd5b9d60621b6044820152606401610ad2565b600c5462010000900460ff1615156001146126cb5760405162461bcd60e51b815260206004820181905260248201527f4d696e74696e67206d75737420626520656e61626c65642062792061646d696e6044820152606401610ad2565b60006126d684613cd4565b905060006126e384613e3a565b90506301000000600a541061273a5760405162461bcd60e51b815260206004820152601f60248201527f4d696e74696e6720776f756c6420657863656564206d617820737570706c79006044820152606401610ad2565b612743826132e7565b61275f5760405162461bcd60e51b8152600401610ad2906152ff565b61276884613f8a565b6127845760405162461bcd60e51b8152600401610ad290615289565b61278e82826141ab565b6127aa5760405162461bcd60e51b8152600401610ad2906156d1565b600d826040516127ba91906152b8565b9081526040519081900360200190206001015460ff16156128165760405162461bcd60e51b81526020600482015260166024820152751211560818dbdb1bdc88185b1c9958591e481d5cd95960521b6044820152606401610ad2565b60108160405161282691906152b8565b9081526040519081900360200190205460ff16156128565760405162461bcd60e51b8152600401610ad2906152d4565b6128618360016141ff565b604080516001808252818301909252600091816020015b606081526020019060019003908161287857905050905060405180602001604052806000815250816000815181106128b2576128b26154c5565b60200260200101819052506040518060800160405280600a5481526020016001151581526020016000815260200182815250600d846040516128f491906152b8565b9081526040805160209281900383019020835181558383015160018201805460ff19169115159190911790559083015160028201556060830151805191926129449260038501929091019061488d565b5050600a546000908152600f602052604090209050612963848261539c565b50600160108360405161297691906152b8565b9081526040805160209281900383018120805460ff191694151594909417909355600a5460009081526011909252902086916129b190615336565b908152602001604051809103902090816129cb919061539c565b50600a80546000908152601260209081526040808320805460018101825590845292829020815180830190925293815269436f6c6f72204e616d6560b01b91810191909152910190612a1d908261539c565b50600a54846001600160a01b03167f4e501b7ed20ed00ab45bf6bdfe315ee8cea82218c0680b05b465207dafd47d018588604051612a5c92919061545b565b60405180910390a3600a8054906000612a7483615713565b9190505550505050505050565b6060600380546108f89061524f565b612a98613ca7565b8051825114612afc5760405162461bcd60e51b815260206004820152602a60248201527f41747472696275746520747970657320616e642076616c756573206c656e67746044820152690d040dad2e6dac2e8c6d60b31b6064820152608401610ad2565b600082516001600160401b03811115612b1757612b17614a23565b604051908082528060200260200182016040528015612b4a57816020015b6060815260200190600190039081612b355790505b509050600082516001600160401b03811115612b6857612b68614a23565b604051908082528060200260200182016040528015612b9b57816020015b6060815260200190600190039081612b865790505b50905060005b8451811015612db95760408051808201909152600a815269436f6c6f72204e616d6560b01b60209091015284517f5de74e5437c01bf27eecca00b1c143684462ab3029b82b188de9ed9f5e4e02e590869083908110612c0257612c026154c5565b60200260200101518051906020012003612c2e5760405162461bcd60e51b8152600401610ad290615621565b60008681526011602052604090208551869083908110612c5057612c506154c5565b6020026020010151604051612c6591906152b8565b90815260200160405180910390208054612c7e9061524f565b9050600003612cd45760008681526012602052604090208551869083908110612ca957612ca96154c5565b60209081029190910181015182546001810184556000938452919092200190612cd2908261539c565b505b838181518110612ce657612ce66154c5565b602002602001015160116000888152602001908152602001600020868381518110612d1357612d136154c5565b6020026020010151604051612d2891906152b8565b90815260200160405180910390209081612d42919061539c565b50848181518110612d5557612d556154c5565b6020026020010151838281518110612d6f57612d6f6154c5565b6020026020010181905250838181518110612d8c57612d8c6154c5565b6020026020010151828281518110612da657612da66154c5565b6020908102919091010152600101612ba1565b50847f4c31e0209a068dae7e59990a6e69a648f85997b252e0ba038b641867c80451d88383604051612dec929190615695565b60405180910390a2604051858152600080516020615b0583398151915290602001610d9a565b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60006010612e8b83613e3a565b604051612e9891906152b8565b9081526040519081900360200190205460ff1692915050565b612eb9613ca7565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528451908501207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b01612f4f5760405162461bcd60e51b815260206004820152601d60248201527f43616e27742072656d6f766520436f6c6f72204e616d652074726169740000006044820152606401610ad2565b82600e85604051612f6091906152b8565b908152604051908190036020018120805492151560ff19909316929092179091558290600e90612f919087906152b8565b90815260405190819003602001902080549115156101000261ff001990921691909117905560005b815181101561312457600a54828281518110612fd757612fd76154c5565b6020026020010151106130235760405162461bcd60e51b8152602060048201526014602482015273151bdad95b881b9bdd081b5a5b9d1959081e595d60621b6044820152606401610ad2565b6000600f600084848151811061303b5761303b6154c5565b60200260200101518152602001908152602001600020805461305c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546130889061524f565b80156130d55780601f106130aa576101008083540402835291602001916130d5565b820191906000526020600020905b8154815290600101906020018083116130b857829003601f168201915b50505050509050600d816040516130ec91906152b8565b90815260405160209181900382019020600301805460018101825560009182529190200161311a878261539c565b5050600101612fb9565b5050505050565b613136848484610ff5565b6001600160a01b0383163b15611b3b576131528484848461426b565b611b3b57611b3b6368d2bf6b60e11b613bfa565b61316e613ca7565b47806131bc5760405162461bcd60e51b815260206004820152601960248201527f4e6f206574686572206c65667420746f207769746864726177000000000000006044820152606401610ad2565b60006131d06009546001600160a01b031690565b6001600160a01b03168260405160006040518083038185875af1925050503d806000811461321a576040519150601f19603f3d011682016040523d82523d6000602084013e61321f565b606091505b50509050806109c25760405162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b6044820152606401610ad2565b60606000613270836124f6565b6001600160a01b0316036132de5760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610ad2565b6108e38261434e565b805160009082906007146132fe5750600092915050565b602360f81b6001600160f81b03191681600081518110613320576133206154c5565b01602001516001600160f81b0319161461333d5750600092915050565b60015b81518110156133885761337282828151811061335e5761335e6154c5565b01602001516001600160f81b031916614469565b613380575060009392505050565b600101613340565b5060019392505050565b61339a613ca7565b600c805462ff0000198116620100009182900460ff1615909102179055565b6133e660405180608001604052806000815260200160001515815260200160008152602001606081525090565b60006133f183613cd4565b90506000600d8260405161340591906152b8565b90815260408051918290036020908101832060808401835280548452600181015460ff161515848301526002810154848401526003810180548451818502810185019095528085529193606086019390929060009084015b8282101561350957838290600052602060002001805461347c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546134a89061524f565b80156134f55780601f106134ca576101008083540402835291602001916134f5565b820191906000526020600020905b8154815290600101906020018083116134d857829003601f168201915b50505050508152602001906001019061345d565b5050505081525050905080602001516135555760405162461bcd60e51b815260206004820152600e60248201526d10dbdb1bdc881b9bdd081d5cd95960921b6044820152606401610ad2565b9392505050565b600f60205260009081526040902080546135759061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546135a19061524f565b80156135ee5780601f106135c3576101008083540402835291602001916135ee565b820191906000526020600020905b8154815290600101906020018083116135d157829003601f168201915b505050505081565b6135fe613ca7565b6001600160a01b03811661362857604051631e4fbdf760e01b815260006004820152602401610ad2565b61363181614219565b50565b61363c613ca7565b6000818152600f6020526040812080546136559061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546136819061524f565b80156136ce5780601f106136a3576101008083540402835291602001916136ce565b820191906000526020600020905b8154815290600101906020018083116136b157829003601f168201915b50505050509050600d816040516136e591906152b8565b908152604051908190036020019020600301546000036137475760405162461bcd60e51b815260206004820152601a60248201527f4e6f206d6f6469666961626c65207472616974732061646465640000000000006044820152606401610ad2565b600d8160405161375791906152b8565b908152602001604051809103902060030160006109c291906148e3565b60408051808201909152600a815269436f6c6f72204e616d6560b01b6020918201528251908301207fa218b1abc83fe40d811335ff4e3ebc97bb9d54cfd647d4e772161260a1b1fd1b016138415760405162461bcd60e51b815260206004820152604860248201527f43616e6e6f742075706461746520436f6c6f72204e616d65207468726f75676860448201527f20746869732066756e6374696f6e2c2075736520736574436f6c6f724e616d65606482015267081a5b9cdd19585960c21b608482015260a401610ad2565b3361384b846124f6565b6001600160a01b03161461389d5760405162461bcd60e51b815260206004820152601960248201527821b0b63632b91034b9903737ba103a37b5b2b71037bbb732b960391b6044820152606401610ad2565b600e826040516138ad91906152b8565b9081526040519081900360200190205460ff166139255760405162461bcd60e51b815260206004820152603060248201527f55706461746573206e6f7420656e61626c65642062792061646d696e20666f7260448201526f2074686973207472616974207479706560801b6064820152608401610ad2565b6000600e8360405161393791906152b8565b9081526040519081900360200190205460ff61010090910416905080613a8f576000848152600f6020526040812080546139709061524f565b80601f016020809104026020016040519081016040528092919081815260200182805461399c9061524f565b80156139e95780601f106139be576101008083540402835291602001916139e9565b820191906000526020600020905b8154815290600101906020018083116139cc57829003601f168201915b5050505050905060005b600d82604051613a0391906152b8565b90815260405190819003602001902060030154811015613a8c57600d82604051613a2d91906152b8565b90815260200160405180910390206003018181548110613a4f57613a4f6154c5565b90600052602060002001604051613a669190615756565b6040518091039020858051906020012003613a845760019250613a8c565b6001016139f3565b50505b80613ae85760405162461bcd60e51b815260206004820152602360248201527f5472616974206e6f74206d6f6469666961626c6520666f72207468697320746f60448201526235b2b760e91b6064820152608401610ad2565b600084815260116020526040908190209051613b059085906152b8565b90815260200160405180910390208054613b1e9061524f565b9050600003613b5157600084815260126020908152604082208054600181018255908352912001613b4f848261539c565b505b816011600086815260200190815260200160002084604051613b7391906152b8565b90815260200160405180910390209081613b8d919061539c565b50604051848152600080516020615b058339815191529060200160405180910390a150505050565b60008054821015613bf55760005b5060008281526004602052604081205490819003613beb57613be4836157cc565b9250613bc3565b600160e01b161590505b919050565b8060005260046000fd5b6000613c0f836124f6565b9050818015613c275750336001600160a01b03821614155b15613c4a57613c3681336107e9565b613c4a57613c4a6367d9dca160e11b613bfa565b60008381526006602052604080822080546001600160a01b0319166001600160a01b0388811691821790925591518693918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a450505050565b6009546001600160a01b031633146125585760405163118cdaa760e01b8152336004820152602401610ad2565b60606000829050600081516001600160401b03811115613cf657613cf6614a23565b6040519080825280601f01601f191660200182016040528015613d20576020820181803683370190505b50905060005b8251811015613e3257606160f81b838281518110613d4657613d466154c5565b01602001516001600160f81b03191610801590613d875750603d60f91b838281518110613d7557613d756154c5565b01602001516001600160f81b03191611155b15613de3576020838281518110613da057613da06154c5565b0160200151613db2919060f81c6157e3565b60f81b828281518110613dc757613dc76154c5565b60200101906001600160f81b031916908160001a905350613e2a565b828181518110613df557613df56154c5565b602001015160f81c60f81b828281518110613e1257613e126154c5565b60200101906001600160f81b031916908160001a9053505b600101613d26565b509392505050565b60606000829050600081516001600160401b03811115613e5c57613e5c614a23565b6040519080825280601f01601f191660200182016040528015613e86576020820181803683370190505b50905060005b8251811015613e32576041838281518110613ea957613ea96154c5565b016020015160f81c10801590613ed95750605a838281518110613ece57613ece6154c5565b016020015160f81c11155b15613f3b57828181518110613ef057613ef06154c5565b602001015160f81c60f81b60f81c6020613f0a91906157fc565b60f81b828281518110613f1f57613f1f6154c5565b60200101906001600160f81b031916908160001a905350613f82565b828181518110613f4d57613f4d6154c5565b602001015160f81c60f81b828281518110613f6a57613f6a6154c5565b60200101906001600160f81b031916908160001a9053505b600101613e8c565b805160009082901580613f9e575060208151115b15613fac5750600092915050565b60005b8151811015613388576000828281518110613fcc57613fcc6154c5565b01602001516001600160f81b0319169050600360fc1b8110801590613fff5750603960f81b6001600160f81b0319821611155b1580156140355750604160f81b6001600160f81b03198216108015906140335750602d60f91b6001600160f81b0319821611155b155b801561406a5750606160f81b6001600160f81b03198216108015906140685750603d60f91b6001600160f81b0319821611155b155b1561407a57506000949350505050565b50600101613faf565b600081815260046020526040902054806000036140f65760005482106140b3576140b3636f96cda160e11b613bfa565b5b506000190160008181526004602052604090205480156140b457600160e01b81166000036140e157919050565b6140f1636f96cda160e11b613bfa565b6140b4565b600160e01b811660000361410957919050565b613bf5636f96cda160e11b613bfa565b6060600061412683614500565b60010190506000816001600160401b0381111561414557614145614a23565b6040519080825280601f01601f19166020018201604052801561416f576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461417957509392505050565b6000806141d6836040516020016141c29190615815565b604051602081830303815290604052613cd4565b90506141e1816132e7565b156133885783805190602001208180519060200120149150506108e3565b6109c28282604051806020016040528060008152506145d8565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906142a090339089908890889060040161583e565b6020604051808303816000875af19250505080156142db575060408051601f3d908101601f191682019092526142d89181019061587b565b60015b614330573d808015614309576040519150601f19603f3d011682016040523d82523d6000602084013e61430e565b606091505b508051600003614328576143286368d2bf6b60e11b613bfa565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b6000818152600f602052604081208054606092919061436c9061524f565b80601f01602080910402602001604051908101604052809291908181526020018280546143989061524f565b80156143e55780601f106143ba576101008083540402835291602001916143e5565b820191906000526020600020905b8154815290600101906020018083116143c857829003601f168201915b505050505090506000614416826040516020016144029190615898565b604051602081830303815290604052614635565b90506000614423856114d3565b9050600061443f84848460405160200161440293929190615948565b60405160200161444f9190615a6b565b60408051601f198184030181529190529695505050505050565b6000600360fc1b6001600160f81b03198316108015906144975750603960f81b6001600160f81b0319831611155b806144c95750604160f81b6001600160f81b03198316108015906144c95750602360f91b6001600160f81b0319831611155b806108e35750606160f81b6001600160f81b03198316108015906108e35750603360f91b6001600160f81b03198316111592915050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061453f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef8100000000831061456b576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061458957662386f26fc10000830492506010015b6305f5e10083106145a1576305f5e100830492506008015b61271083106145b557612710830492506004015b606483106145c7576064830492506002015b600a83106108e35760010192915050565b6145e28383614794565b6001600160a01b0383163b15611421576000548281035b61460c600086838060010194508661426b565b614620576146206368d2bf6b60e11b613bfa565b8181106145f957816000541461312457600080fd5b6060815160000361465457505060408051602081019091526000815290565b6000604051806060016040528060408152602001615ac5604091399050600060038451600261468391906154b2565b61468d9190615ab0565b6146989060046156ba565b6001600160401b038111156146af576146af614a23565b6040519080825280601f01601f1916602001820160405280156146d9576020820181803683370190505b50905060018201602082018586518701602081018051600082525b8284101561474f576003840193508351603f8160121c168701518653600186019550603f81600c1c168701518653600186019550603f8160061c168701518653600186019550603f81168701518653506001850194506146f4565b905250508551600390066001811461476e576002811461478157614789565b603d6001830353603d6002830353614789565b603d60018303535b509195945050505050565b60008054908290036147b0576147b063b562e8dd60e01b613bfa565b60008181526004602090815260408083206001600160a01b0387164260a01b6001881460e11b1781179091558084526005909252822080546801000000000000000186020190559081900361480e5761480e622e076360e81b613bfa565b818301825b808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4818160010191508103614813575060005550505050565b50805461485f9061524f565b6000825580601f1061486f575050565b601f0160209004906000526020600020908101906136319190614901565b8280548282559060005260206000209081019282156148d3579160200282015b828111156148d357825182906148c3908261539c565b50916020019190600101906148ad565b506148df929150614916565b5090565b50805460008255906000526020600020908101906136319190614916565b5b808211156148df5760008155600101614902565b808211156148df57600061492a8282614853565b50600101614916565b6001600160e01b03198116811461363157600080fd5b60006020828403121561495b57600080fd5b813561355581614933565b60005b83811015614981578181015183820152602001614969565b50506000910152565b600081518084526149a2816020860160208601614966565b601f01601f19169290920160200192915050565b602081526000613555602083018461498a565b6000602082840312156149db57600080fd5b5035919050565b80356001600160a01b0381168114613bf557600080fd5b60008060408385031215614a0c57600080fd5b614a15836149e2565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614a6157614a61614a23565b604052919050565b60006001600160401b03831115614a8257614a82614a23565b614a95601f8401601f1916602001614a39565b9050828152838383011115614aa957600080fd5b828260208301376000602084830101529392505050565b600082601f830112614ad157600080fd5b61355583833560208501614a69565b60008060408385031215614af357600080fd5b8235915060208301356001600160401b03811115614b1057600080fd5b614b1c85828601614ac0565b9150509250929050565b60008060408385031215614b3957600080fd5b50508035926020909101359150565b60008282518085526020808601955060208260051b8401016020860160005b84811015614b9557601f19868403018952614b8383835161498a565b98840198925090830190600101614b67565b5090979650505050505050565b6020815260006135556020830184614b48565b600060208284031215614bc757600080fd5b81356001600160401b03811115614bdd57600080fd5b61434684828501614ac0565b600080600060608486031215614bfe57600080fd5b614c07846149e2565b9250614c15602085016149e2565b9150604084013590509250925092565b60006001600160401b03821115614c3e57614c3e614a23565b5060051b60200190565b600082601f830112614c5957600080fd5b81356020614c6e614c6983614c25565b614a39565b8083825260208201915060208460051b870101935086841115614c9057600080fd5b602086015b84811015614cac5780358352918301918301614c95565b509695505050505050565b600082601f830112614cc857600080fd5b81356020614cd8614c6983614c25565b82815260059290921b84018101918181019086841115614cf757600080fd5b8286015b84811015614cac5780356001600160401b03811115614d1a5760008081fd5b614d288986838b0101614ac0565b845250918301918301614cfb565b60008060408385031215614d4957600080fd5b82356001600160401b0380821115614d6057600080fd5b614d6c86838701614c48565b93506020850135915080821115614d8257600080fd5b50614b1c85828601614cb7565b600082601f830112614da057600080fd5b81356020614db0614c6983614c25565b82815260059290921b84018101918181019086841115614dcf57600080fd5b8286015b84811015614cac5780356001600160401b03811115614df25760008081fd5b614e008986838b0101614cb7565b845250918301918301614dd3565b600080600060608486031215614e2357600080fd5b83356001600160401b0380821115614e3a57600080fd5b614e4687838801614c48565b94506020860135915080821115614e5c57600080fd5b614e6887838801614d8f565b93506040860135915080821115614e7e57600080fd5b50614e8b86828701614d8f565b9150509250925092565b60008060008060808587031215614eab57600080fd5b84356001600160401b0380821115614ec257600080fd5b614ece88838901614cb7565b95506020870135915080821115614ee457600080fd5b50614ef187828801614cb7565b93505060408501359150614f07606086016149e2565b905092959194509250565b600060208284031215614f2457600080fd5b613555826149e2565b600080600060608486031215614f4257600080fd5b83356001600160401b0380821115614f5957600080fd5b614f6587838801614ac0565b94506020860135915080821115614f7b57600080fd5b50614f8886828701614ac0565b925050614f97604085016149e2565b90509250925092565b600080600060608486031215614fb557600080fd5b8335925060208401356001600160401b0380821115614fd357600080fd5b614fdf87838801614cb7565b93506040860135915080821115614ff557600080fd5b50614e8b86828701614cb7565b80358015158114613bf557600080fd5b6000806040838503121561502557600080fd5b61502e836149e2565b915061503c60208401615002565b90509250929050565b6000806000806080858703121561505b57600080fd5b84356001600160401b038082111561507257600080fd5b61507e88838901614ac0565b955061508c60208801615002565b945061509a60408801615002565b935060608701359150808211156150b057600080fd5b506150bd87828801614c48565b91505092959194509250565b600080600080608085870312156150df57600080fd5b6150e8856149e2565b93506150f6602086016149e2565b92506040850135915060608501356001600160401b0381111561511857600080fd5b8501601f8101871361512957600080fd5b6150bd87823560208401614a69565b6000602080835260a08301845182850152818501511515604085015260408501516060850152606085015160808086015281815180845260c08701915060c08160051b8801019350848301925060005b818110156151b65760bf198886030183526151a485855161498a565b94509285019291850191600101615188565b5092979650505050505050565b600080604083850312156151d657600080fd5b6151df836149e2565b915061503c602084016149e2565b60008060006060848603121561520257600080fd5b8335925060208401356001600160401b038082111561522057600080fd5b61522c87838801614ac0565b9350604086013591508082111561524257600080fd5b50614e8b86828701614ac0565b600181811c9082168061526357607f821691505b60208210810361528357634e487b7160e01b600052602260045260246000fd5b50919050565b602080825260159082015274125b9d985b1a59081b985b59481c1c9bdd9a591959605a1b604082015260600190565b600082516152ca818460208701614966565b9190910192915050565b60208082526011908201527013985b5948185b1c9958591e481d5cd959607a1b604082015260600190565b60208082526019908201527f496e76616c69642048455820636f64652070726f766964656400000000000000604082015260600190565b69436f6c6f72204e616d6560b01b8152600a0190565b601f821115611421576000816000526020600020601f850160051c810160208610156153755750805b601f850160051c820191505b8181101561539457828155600101615381565b505050505050565b81516001600160401b038111156153b5576153b5614a23565b6153c9816153c3845461524f565b8461534c565b602080601f8311600181146153fe57600084156153e65750858301515b600019600386901b1c1916600185901b178555615394565b600085815260208120601f198616915b8281101561542d5788860151825594840194600190910190840161540e565b508582101561544b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60408152600061546e604083018561498a565b8281036020840152615480818561498a565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156108e3576108e3615489565b808201808211156108e3576108e3615489565b634e487b7160e01b600052603260045260246000fd5b600085516154ed818460208a01614966565b607b60f81b9083019081526d113a3930b4ba2fba3cb832911d1160911b6001820152855161552281600f840160208a01614966565b61088b60f21b600f929091019182015268113b30b63ab2911d1160b91b6011820152845161555781601a840160208901614966565b601160f91b601a9290910191820152607d60f81b601b820152835161558381601c840160208801614966565b01601c019695505050505050565b600082516155a3818460208701614966565b605d60f81b920191825250600101919050565b7f547261697420747970657320616e642076616c756573206c656e677468206d6981527f736d6174636820666f7220746f6b656e20696e64657820000000000000000000602082015260008251615614816037850160208701614966565b9190910160370192915050565b6020808252604e908201527f43616e6e6f742075706461746520436f6c6f72204e616d65207468726f75676860408201527f20746869732066756e6374696f6e2c20757365206f7665727772697465436f6c60608201526d1bdc93985b59481a5b9cdd19585960921b608082015260a00190565b6040815260006156a86040830185614b48565b82810360208401526154808185614b48565b80820281158282048414176108e3576108e3615489565b60208082526022908201527f4e616d6520726573657276656420666f7220616e6f746865722048455820636f604082015261646560f01b606082015260800190565b60006001820161572557615725615489565b5060010190565b634e487b7160e01b600052601260045260246000fd5b6000826157515761575161572c565b500690565b60008083546157648161524f565b6001828116801561577c5760018114615791576157c0565b60ff19841687528215158302870194506157c0565b8760005260208060002060005b858110156157b75781548a82015290840190820161579e565b50505082870194505b50929695505050505050565b6000816157db576157db615489565b506000190190565b60ff82811682821603908111156108e3576108e3615489565b60ff81811683821601908111156108e3576108e3615489565b602360f81b815260008251615831816001850160208701614966565b9190910160010192915050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906158719083018461498a565b9695505050505050565b60006020828403121561588d57600080fd5b815161355581614933565b7f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323081527f30302f737667222076696577426f783d223020302031303020313030223e3c7260208201527f6563742077696474683d2231303022206865696768743d22313030222066696c604082015262361e9160e91b606082015260008251615928816063850160208701614966565b6811179f1e17b9bb339f60b91b6063939091019283015250606c01919050565b683d913730b6b2911d1160b91b8152835160009061596d816009850160208901614966565b7f222c226465736372697074696f6e223a224261736520436f6c6f7273206973206009918401918201527f746865204e465420636f6c6c656374696f6e20666f7220657665727920636f6c60298201527337b91037b7103a34329034b73a32b93732ba171160611b60498201527f2c22696d616765223a22646174613a696d6167652f7376672b786d6c3b626173605d82015263194d8d0b60e21b607d8201528451615a20816081840160208901614966565b6e11161130ba3a3934b13aba32b9911d60891b608192909101918201528351615a50816090840160208801614966565b607d60f81b6090929091019182015260910195945050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000815260008251615aa381601d850160208701614966565b91909101601d0192915050565b600082615abf57615abf61572c565b50049056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce7a2646970667358221220fbe6b64667484686577be397b82f778ad88644c8d0d370f491571a45c3a5c88664736f6c63430008190033
[ 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.