[ { "inputs": [ { "internalType": "string", "name": "_name", "type": "string" }, { "internalType": "string", "name": "_symbol", "type": "string" }, { "internalType": "string", "name": "_initBaseURI", "type": "string" }, { "internalType": "address", "name": "admin", "type": "address" }, { "internalType": "address", "name": "admin2", "type": "address" }, { "internalType": "address", "name": "admin3", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "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", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_price", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "_signatoryAddresses", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_tokenIdTracker", "outputs": [ { "internalType": "uint256", "name": "_value", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "addr", "type": "address" } ], "name": "addToWhiteList", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseExtension", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "signatorAddress", "type": "address" } ], "name": "changeSignatory2", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "signatorAddress", "type": "address" } ], "name": "changeSignatory3", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "signatorAddress", "type": "address" } ], "name": "changeSignatory4", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "claimReward", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "claimRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "currentRate", "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": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getReflectionBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getReflectionBalances", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getSignatories", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "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": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "isWhitelisted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "lastDividendAt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxMintForTx", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "minter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "onlyWhitelisted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "reflectToOwners", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "reflectionBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "uint256", "name": "royaltyAmount", "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": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "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": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_newBaseExtension", "type": "string" } ], "name": "setBaseExtension", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_newBaseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_newCost", "type": "uint256" } ], "name": "setCost", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setMaxSupply", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "setOnlyWhitelisted", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "signTx", "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": "index", "type": "uint256" } ], "name": "tokenByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenMinter", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenOfOwnerByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "totalDividend", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "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": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "whiteListAddresses", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "_users", "type": "address[]" } ], "name": "whitelistUsers", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "whitelistedAddresses", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
6000601355600160145560c06040526005608081905264173539b7b760d91b60a09081526200003291601991906200025c565b50670de0b6b3a7640000601a556108ae601b556028601c556000601d55610258601e556025805461ffff19166101011790553480156200007157600080fd5b5060405162003a3a38038062003a3a8339810160408190526200009491620003d6565b3386868160009080519060200190620000af9291906200025c565b508051620000c59060019060208401906200025c565b505050620000e2620000dc6200018e60201b60201c565b62000192565b600e80546001600160a01b039092166001600160a01b03199283168117909155601280546001810182556000919091527fbb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec34440180549092161790556200014784620001e4565b602180546001600160a01b039485166001600160a01b03199182161790915560228054938516938216939093179092556023805491909316911617905550620004f1915050565b3390565b600d80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600d546001600160a01b03163314620002435760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390fd5b8051620002589060189060208401906200025c565b5050565b8280546200026a906200049e565b90600052602060002090601f0160209004810192826200028e5760008555620002d9565b82601f10620002a957805160ff1916838001178555620002d9565b82800160010185558215620002d9579182015b82811115620002d9578251825591602001919060010190620002bc565b50620002e7929150620002eb565b5090565b5b80821115620002e75760008155600101620002ec565b80516001600160a01b03811681146200031a57600080fd5b919050565b600082601f8301126200033157600080fd5b81516001600160401b03808211156200034e576200034e620004db565b604051601f8301601f19908116603f01168101908282118183101715620003795762000379620004db565b816040528381526020925086838588010111156200039657600080fd5b600091505b83821015620003ba57858201830151818301840152908201906200039b565b83821115620003cc5760008385830101525b9695505050505050565b60008060008060008060c08789031215620003f057600080fd5b86516001600160401b03808211156200040857600080fd5b620004168a838b016200031f565b975060208901519150808211156200042d57600080fd5b6200043b8a838b016200031f565b965060408901519150808211156200045257600080fd5b506200046189828a016200031f565b945050620004726060880162000302565b9250620004826080880162000302565b91506200049260a0880162000302565b90509295509295509295565b600181811c90821680620004b357607f821691505b60208210811415620004d557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b61353980620005016000396000f3fe60806040526004361061036a5760003560e01c80636352211e116101c6578063ac8d856c116100f7578063c87b56dd11610095578063e985e9c51161006f578063e985e9c5146109e2578063edec5f2714610a2b578063f2fde38b14610a4b578063f9f8bdb714610a6b57600080fd5b8063c87b56dd14610975578063d206885714610995578063da3ef23f146109c257600080fd5b8063ba4e5c49116100d1578063ba4e5c4914610900578063be99c36d14610920578063c6147fb514610940578063c66828621461096057600080fd5b8063ac8d856c1461088a578063ae169a50146108c0578063b88d4fde146108e057600080fd5b8063920674dc116101645780639c70b5121161013e5780639c70b51214610822578063a0712d6814610841578063a11ce10014610854578063a22cb4651461086a57600080fd5b8063920674dc146107c657806395d89b41146107f657806398bcede91461080b57600080fd5b8063715018a6116101a0578063715018a61461073b5780637c57d947146107505780638da5cb5b14610786578063906685b5146107a457600080fd5b80636352211e146106db5780636f8b44b0146106fb57806370a082311461071b57600080fd5b8063372500ab116102a057806347ee03941161023e57806354906c251161021857806354906c251461066157806355f804b3146106815780635c975abb146106a1578063605e29d5146106bb57600080fd5b806347ee03941461060b5780634b6acafb1461062b5780634f6ccce71461064157600080fd5b80634131ff991161027a5780634131ff99146105a057806342842e0e146105b657806344a0d68a146105d6578063469d30e0146105f657600080fd5b8063372500ab1461054b5780633af32abf146105605780633c9527641461058057600080fd5b8063095ea7b31161030d578063235b6ea1116102e7578063235b6ea1146104b657806323b872dd146104cc5780632a55205a146104ec5780632f745c591461052b57600080fd5b8063095ea7b31461046b578063145065241461048b57806318160ddd146104a157600080fd5b806302329a291161034957806302329a29146103e7578063047d5e801461040957806306fdde0314610411578063081812fc1461043357600080fd5b8062fe50c61461036f57806301eb99ec146103a257806301ffc9a7146103b7575b600080fd5b34801561037b57600080fd5b5061038f61038a36600461313a565b610a80565b6040519081526020015b60405180910390f35b3480156103ae57600080fd5b5061038f610aa3565b3480156103c357600080fd5b506103d76103d23660046130b7565b610afb565b6040519015158152602001610399565b3480156103f357600080fd5b5061040761040236600461309c565b610b06565b005b610407610bc0565b34801561041d57600080fd5b50610426610bcb565b604051610399919061325a565b34801561043f57600080fd5b5061045361044e36600461313a565b610c5d565b6040516001600160a01b039091168152602001610399565b34801561047757600080fd5b50610407610486366004612ffd565b610cf2565b34801561049757600080fd5b5061038f601b5481565b3480156104ad57600080fd5b5060095461038f565b3480156104c257600080fd5b5061038f601a5481565b3480156104d857600080fd5b506104076104e7366004612f1b565b610e08565b3480156104f857600080fd5b5061050c610507366004613153565b610e39565b604080516001600160a01b039093168352602083019190915201610399565b34801561053757600080fd5b5061038f610546366004612ffd565b610e92565b34801561055757600080fd5b50610407610f28565b34801561056c57600080fd5b506103d761057b366004612ecd565b610fbb565b34801561058c57600080fd5b5061040761059b36600461309c565b611025565b3480156105ac57600080fd5b5061038f601f5481565b3480156105c257600080fd5b506104076105d1366004612f1b565b611069565b3480156105e257600080fd5b506104076105f136600461313a565b611084565b34801561060257600080fd5b506104076110b3565b34801561061757600080fd5b50610407610626366004612ecd565b6111ea565b34801561063757600080fd5b5061038f60205481565b34801561064d57600080fd5b5061038f61065c36600461313a565b611378565b34801561066d57600080fd5b5061040761067c366004612ecd565b61140b565b34801561068d57600080fd5b5061040761069c3660046130f1565b611457565b3480156106ad57600080fd5b506025546103d79060ff1681565b3480156106c757600080fd5b506104076106d6366004612ecd565b611498565b3480156106e757600080fd5b506104536106f636600461313a565b6114e4565b34801561070757600080fd5b5061040761071636600461313a565b61155b565b34801561072757600080fd5b5061038f610736366004612ecd565b61166e565b34801561074757600080fd5b506104076116f5565b34801561075c57600080fd5b5061045361076b36600461313a565b6000908152602460205260409020546001600160a01b031690565b34801561079257600080fd5b50600d546001600160a01b0316610453565b3480156107b057600080fd5b506107b9611729565b604051610399919061320d565b3480156107d257600080fd5b506103d76107e1366004612ecd565b60286020526000908152604090205460ff1681565b34801561080257600080fd5b5061042661178a565b34801561081757600080fd5b5060175461038f9081565b34801561082e57600080fd5b506025546103d790610100900460ff1681565b61040761084f36600461313a565b611799565b34801561086057600080fd5b5061038f601c5481565b34801561087657600080fd5b50610407610885366004612fd3565b611a21565b34801561089657600080fd5b506104536108a536600461313a565b6024602052600090815260409020546001600160a01b031681565b3480156108cc57600080fd5b506104076108db36600461313a565b611ae6565b3480156108ec57600080fd5b506104076108fb366004612f57565b611be4565b34801561090c57600080fd5b5061045361091b36600461313a565b611c1c565b34801561092c57600080fd5b5061040761093b366004612ecd565b611c46565b34801561094c57600080fd5b5061045361095b36600461313a565b611c92565b34801561096c57600080fd5b50610426611ca2565b34801561098157600080fd5b5061042661099036600461313a565b611d30565b3480156109a157600080fd5b5061038f6109b036600461313a565b60276020526000908152604090205481565b3480156109ce57600080fd5b506104076109dd3660046130f1565b611d3b565b3480156109ee57600080fd5b506103d76109fd366004612ee8565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b348015610a3757600080fd5b50610407610a46366004613027565b611d78565b348015610a5757600080fd5b50610407610a66366004612ecd565b611dba565b348015610a7757600080fd5b5061038f611e55565b60008181526027602090815260408220549054610a9d91906133d2565b92915050565b600080610aaf3361166e565b90506000805b82811015610af4576000610ac93383610e92565b9050610ad481610a80565b610ade9084613387565b9250508080610aec90613450565b915050610ab5565b5092915050565b6000610a9d82611e7f565b600e546000906001600160a01b0316331415610b2457506001610b86565b60005b601254811015610b8457336001600160a01b031660128281548110610b4e57610b4e6134c1565b6000918252602090912001546001600160a01b03161415610b725760019150610b84565b80610b7c81613450565b915050610b27565b505b80610bac5760405162461bcd60e51b8152600401610ba3906132bf565b60405180910390fd5b506025805460ff1916911515919091179055565b610bc934611ea4565b565b606060008054610bda90613415565b80601f0160208091040260200160405190810160405280929190818152602001828054610c0690613415565b8015610c535780601f10610c2857610100808354040283529160200191610c53565b820191906000526020600020905b815481529060010190602001808311610c3657829003601f168201915b5050505050905090565b6000818152600260205260408120546001600160a01b0316610cd65760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b6064820152608401610ba3565b506000908152600460205260409020546001600160a01b031690565b6000610cfd826114e4565b9050806001600160a01b0316836001600160a01b03161415610d6b5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610ba3565b336001600160a01b0382161480610d875750610d8781336109fd565b610df95760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c00000000000000006064820152608401610ba3565b610e038383611ed5565b505050565b610e123382611f43565b610e2e5760405162461bcd60e51b8152600401610ba390613336565b610e0383838361203a565b6000828152601660209081526040808320815180830190925280546001600160a01b0316808352600190910154928201839052839261271090610e7c90876133b3565b610e86919061339f565b92509250509250929050565b6000610e9d8361166e565b8210610eff5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610ba3565b506001600160a01b03919091166000908152600760209081526040808320938352929052205490565b6000610f333361166e565b90506000805b82811015610f8d576000610f4d3383610e92565b9050610f5881610a80565b610f629084613387565b6020805460009384526027909152604090922091909155915080610f8581613450565b915050610f39565b50604051339082156108fc029083906000818181858888f19350505050158015610e03573d6000803e3d6000fd5b6000805b60265481101561101c57826001600160a01b031660268281548110610fe657610fe66134c1565b6000918252602090912001546001600160a01b0316141561100a5750600192915050565b8061101481613450565b915050610fbf565b50600092915050565b600d546001600160a01b0316331461104f5760405162461bcd60e51b8152600401610ba390613301565b602580549115156101000261ff0019909216919091179055565b610e0383838360405180602001604052806000815250611be4565b600d546001600160a01b031633146110ae5760405162461bcd60e51b8152600401610ba390613301565b601a55565b600e546001600160a01b03163314806110d65750600f546001600160a01b031633145b806110eb57506010546001600160a01b031633145b8061110057506011546001600160a01b031633145b61114c5760405162461bcd60e51b815260206004820152601e60248201527f4552524f523a20596f7520617265206e6f742061207369676e61746f727900006044820152606401610ba3565b3360009081526015602052604090205460ff16156111bb5760405162461bcd60e51b815260206004820152602660248201527f4552524f523a20596f75206861766520616c7265616479207369676e656420746044820152650d0d2e640e8f60d31b6064820152608401610ba3565b336000908152601560205260408120805460ff1916600117905560138054916111e383613450565b9190505550565b600e546000906001600160a01b03163314156112085750600161126a565b60005b60125481101561126857336001600160a01b031660128281548110611232576112326134c1565b6000918252602090912001546001600160a01b031614156112565760019150611268565b8061126081613450565b91505061120b565b505b806112875760405162461bcd60e51b8152600401610ba3906132bf565b60255460ff16156112da5760405162461bcd60e51b815260206004820152601760248201527f4552524f523a20436f6e747261637420706175736564210000000000000000006044820152606401610ba3565b600a601d541061133e5760405162461bcd60e51b815260206004820152602960248201527f4552524f523a204d4158206e756d626572206f662066726565206164647265736044820152681cd95cc8185919195960ba1b6064820152608401610ba3565b6001600160a01b0382166000908152602860205260408120805460ff19166001179055601d80549161136f83613450565b91905055505050565b600061138360095490565b82106113e65760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610ba3565b600982815481106113f9576113f96134c1565b90600052602060002001549050919050565b600d546001600160a01b031633146114355760405162461bcd60e51b8152600401610ba390613301565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600d546001600160a01b031633146114815760405162461bcd60e51b8152600401610ba390613301565b8051611494906018906020840190612d21565b5050565b600d546001600160a01b031633146114c25760405162461bcd60e51b8152600401610ba390613301565b601180546001600160a01b0319166001600160a01b0392909216919091179055565b6000818152600260205260408120546001600160a01b031680610a9d5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201526832b73a103a37b5b2b760b91b6064820152608401610ba3565b600e546000906001600160a01b0316331415611579575060016115db565b60005b6012548110156115d957336001600160a01b0316601282815481106115a3576115a36134c1565b6000918252602090912001546001600160a01b031614156115c757600191506115d9565b806115d181613450565b91505061157c565b505b806115f85760405162461bcd60e51b8152600401610ba3906132bf565b601b5482116116685760405162461bcd60e51b815260206004820152603660248201527f4552524f523a204d617820737570706c792069732063757272656e746c7920736044820152756d616c6c6572207468616e206e657720737570706c7960501b6064820152608401610ba3565b50601b55565b60006001600160a01b0382166116d95760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a65604482015269726f206164647265737360b01b6064820152608401610ba3565b506001600160a01b031660009081526003602052604090205490565b600d546001600160a01b0316331461171f5760405162461bcd60e51b8152600401610ba390613301565b610bc960006121e5565b60606012805480602002602001604051908101604052809291908181526020018280548015610c5357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611763575050505050905090565b606060018054610bda90613415565b601b54816117a660175490565b6117b09190613387565b11156118245760405162461bcd60e51b815260206004820152603760248201527f417661706967656f6e733a206e6f7420656e6f7567682061766178207069676560448201527f6f6e73206c65667420746f206d696e7420616d6f756e740000000000000000006064820152608401610ba3565b601c548111156118825760405162461bcd60e51b8152602060048201526024808201527f6d6178206d696e7420616d6f756e74207065722073657373696f6e20657863636044820152631959195960e21b6064820152608401610ba3565b600d546001600160a01b031633146119515760255460ff610100909104161515600114156118ff576118b333610fbb565b6118ff5760405162461bcd60e51b815260206004820152601760248201527f75736572206973206e6f742077686974656c69737465640000000000000000006044820152606401610ba3565b80601a5461190d91906133b3565b3410156119515760405162461bcd60e51b8152602060048201526012602482015271696e73756666696369656e742066756e647360701b6044820152606401610ba3565b60005b818110156114945761196e3361196960175490565b612237565b61198e61197a60175490565b600d546001600160a01b0316601e54612385565b336024600061199c60175490565b815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602054602760006119de60175490565b81526020810191909152604001600020556119fd601780546001019055565b611a0f611a0a833461339f565b61241f565b80611a1981613450565b915050611954565b6001600160a01b038216331415611a7a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610ba3565b3360008181526005602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b33611af0826114e4565b6001600160a01b03161480611b15575033611b0a82610c5d565b6001600160a01b0316145b611b7e5760405162461bcd60e51b815260206004820152603460248201527f417661706967656f6e733a204f6e6c79206f776e6572206f7220617070726f7660448201527365642063616e20636c61696d207265776172647360601b6064820152608401610ba3565b6000611b8982610a80565b9050611b94826114e4565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015611bcc573d6000803e3d6000fd5b50506020805460009283526027909152604090912055565b611bee3383611f43565b611c0a5760405162461bcd60e51b8152600401610ba390613336565b611c168484848461253d565b50505050565b60268181548110611c2c57600080fd5b6000918252602090912001546001600160a01b0316905081565b600d546001600160a01b03163314611c705760405162461bcd60e51b8152600401610ba390613301565b601080546001600160a01b0319166001600160a01b0392909216919091179055565b60128181548110611c2c57600080fd5b60198054611caf90613415565b80601f0160208091040260200160405190810160405280929190818152602001828054611cdb90613415565b8015611d285780601f10611cfd57610100808354040283529160200191611d28565b820191906000526020600020905b815481529060010190602001808311611d0b57829003601f168201915b505050505081565b6060610a9d82612570565b600d546001600160a01b03163314611d655760405162461bcd60e51b8152600401610ba390613301565b8051611494906019906020840190612d21565b600d546001600160a01b03163314611da25760405162461bcd60e51b8152600401610ba390613301565b611dae60266000612da5565b610e0360268383612dc3565b600d546001600160a01b03163314611de45760405162461bcd60e51b8152600401610ba390613301565b6001600160a01b038116611e495760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610ba3565b611e52816121e5565b50565b6000611e6060095490565b611e6a5750600090565b600954601f54611e7a919061339f565b905090565b60006001600160e01b0319821663152a902d60e11b1480610a9d5750610a9d826126e2565b80601f54611eb29190613387565b601f55600954611ec2908261339f565b602054611ecf9190613387565b60205550565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190611f0a826114e4565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000818152600260205260408120546001600160a01b0316611fbc5760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b6064820152608401610ba3565b6000611fc7836114e4565b9050806001600160a01b0316846001600160a01b031614806120025750836001600160a01b0316611ff784610c5d565b6001600160a01b0316145b8061203257506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b949350505050565b826001600160a01b031661204d826114e4565b6001600160a01b0316146120b55760405162461bcd60e51b815260206004820152602960248201527f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960448201526839903737ba1037bbb760b91b6064820152608401610ba3565b6001600160a01b0382166121175760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610ba3565b612122838383612707565b61212d600082611ed5565b6001600160a01b03831660009081526003602052604081208054600192906121569084906133d2565b90915550506001600160a01b0382166000908152600360205260408120805460019290612184908490613387565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b600d80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03821661228d5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610ba3565b6000818152600260205260409020546001600160a01b0316156122f25760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610ba3565b6122fe60008383612707565b6001600160a01b0382166000908152600360205260408120805460019290612327908490613387565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6127108111156123d75760405162461bcd60e51b815260206004820152601a60248201527f45524332393831526f79616c746965733a20546f6f20686967680000000000006044820152606401610ba3565b6040805180820182526001600160a01b03938416815260208082019384526000958652601690529320925183546001600160a01b031916921691909117825551600190910155565b600061242c600a8361339f565b90506000600361243c83856133d2565b612446919061339f565b90506000600361245684866133d2565b612460919061339f565b90506000600361247085876133d2565b61247a919061339f565b905061248584611ea4565b6021546040516001600160a01b039091169084156108fc029085906000818181858888f193505050501580156124bf573d6000803e3d6000fd5b506022546040516001600160a01b039091169083156108fc029084906000818181858888f193505050501580156124fa573d6000803e3d6000fd5b506023546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612535573d6000803e3d6000fd5b505050505050565b61254884848461203a565b6125548484848461272b565b611c165760405162461bcd60e51b8152600401610ba39061326d565b6000818152600260205260409020546060906001600160a01b03166125f15760405162461bcd60e51b815260206004820152603160248201527f45524337323155524953746f726167653a2055524920717565727920666f72206044820152703737b732bc34b9ba32b73a103a37b5b2b760791b6064820152608401610ba3565b6000828152600c60205260408120805461260a90613415565b80601f016020809104026020016040519081016040528092919081815260200182805461263690613415565b80156126835780601f1061265857610100808354040283529160200191612683565b820191906000526020600020905b81548152906001019060200180831161266657829003601f168201915b505050505090506000612694612838565b90508051600014156126a7575092915050565b8151156126d95780826040516020016126c19291906131a1565b60405160208183030381529060405292505050919050565b61203284612847565b60006001600160e01b0319821663780e9d6360e01b1480610a9d5750610a9d82612922565b8061271160095490565b11156127205761272081611ae6565b610e03838383612972565b60006001600160a01b0384163b1561282d57604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061276f9033908990889088906004016131d0565b602060405180830381600087803b15801561278957600080fd5b505af19250505080156127b9575060408051601f3d908101601f191682019092526127b6918101906130d4565b60015b612813573d8080156127e7576040519150601f19603f3d011682016040523d82523d6000602084013e6127ec565b606091505b50805161280b5760405162461bcd60e51b8152600401610ba39061326d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050612032565b506001949350505050565b606060188054610bda90613415565b6000818152600260205260409020546060906001600160a01b03166128c65760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610ba3565b60006128d0612838565b905060008151116128f0576040518060200160405280600081525061291b565b806128fa84612a65565b60405160200161290b9291906131a1565b6040516020818303038152906040525b9392505050565b60006001600160e01b031982166380ac58cd60e01b148061295357506001600160e01b03198216635b5e139f60e01b145b80610a9d57506301ffc9a760e01b6001600160e01b0319831614610a9d565b6001600160a01b0383166129fe576129c881600980546000838152600a60205260408120829055600182018355919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af0155565b6129d28183612b63565b6000818152600b6020526040902080546001600160a01b0319166001600160a01b038416179055612a21565b816001600160a01b0316836001600160a01b031614612a2157612a218382612b91565b6001600160a01b038216612a3857610e0381612c2e565b826001600160a01b0316826001600160a01b031614610e0357612a5b8282612cdd565b610e038183612b63565b606081612a895750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612ab35780612a9d81613450565b9150612aac9050600a8361339f565b9150612a8d565b60008167ffffffffffffffff811115612ace57612ace6134d7565b6040519080825280601f01601f191660200182016040528015612af8576020820181803683370190505b5090505b841561203257612b0d6001836133d2565b9150612b1a600a8661346b565b612b25906030613387565b60f81b818381518110612b3a57612b3a6134c1565b60200101906001600160f81b031916908160001a905350612b5c600a8661339f565b9450612afc565b60009182526006602052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b60006001612b9e8461166e565b612ba891906133d2565b600083815260086020526040902054909150808214612bfb576001600160a01b03841660009081526007602090815260408083208584528252808320548484528184208190558352600890915290208190555b5060009182526008602090815260408084208490556001600160a01b039094168352600781528383209183525290812055565b600954600090612c40906001906133d2565b6000838152600a602052604081205460098054939450909284908110612c6857612c686134c1565b906000526020600020015490508060098381548110612c8957612c896134c1565b6000918252602080832090910192909255828152600a90915260408082208490558582528120556009805480612cc157612cc16134ab565b6001900381819060005260206000200160009055905550505050565b6000612ce88361166e565b6001600160a01b039093166000908152600760209081526040808320868452825280832085905593825260089052919091209190915550565b828054612d2d90613415565b90600052602060002090601f016020900481019282612d4f5760008555612d95565b82601f10612d6857805160ff1916838001178555612d95565b82800160010185558215612d95579182015b82811115612d95578251825591602001919060010190612d7a565b50612da1929150612e16565b5090565b5080546000825590600052602060002090810190611e529190612e16565b828054828255906000526020600020908101928215612d95579160200282015b82811115612d955781546001600160a01b0319166001600160a01b03843516178255602090920191600190910190612de3565b5b80821115612da15760008155600101612e17565b600067ffffffffffffffff80841115612e4657612e466134d7565b604051601f8501601f19908116603f01168101908282118183101715612e6e57612e6e6134d7565b81604052809350858152868686011115612e8757600080fd5b858560208301376000602087830101525050509392505050565b80356001600160a01b0381168114612eb857600080fd5b919050565b80358015158114612eb857600080fd5b600060208284031215612edf57600080fd5b61291b82612ea1565b60008060408385031215612efb57600080fd5b612f0483612ea1565b9150612f1260208401612ea1565b90509250929050565b600080600060608486031215612f3057600080fd5b612f3984612ea1565b9250612f4760208501612ea1565b9150604084013590509250925092565b60008060008060808587031215612f6d57600080fd5b612f7685612ea1565b9350612f8460208601612ea1565b925060408501359150606085013567ffffffffffffffff811115612fa757600080fd5b8501601f81018713612fb857600080fd5b612fc787823560208401612e2b565b91505092959194509250565b60008060408385031215612fe657600080fd5b612fef83612ea1565b9150612f1260208401612ebd565b6000806040838503121561301057600080fd5b61301983612ea1565b946020939093013593505050565b6000806020838503121561303a57600080fd5b823567ffffffffffffffff8082111561305257600080fd5b818501915085601f83011261306657600080fd5b81358181111561307557600080fd5b8660208260051b850101111561308a57600080fd5b60209290920196919550909350505050565b6000602082840312156130ae57600080fd5b61291b82612ebd565b6000602082840312156130c957600080fd5b813561291b816134ed565b6000602082840312156130e657600080fd5b815161291b816134ed565b60006020828403121561310357600080fd5b813567ffffffffffffffff81111561311a57600080fd5b8201601f8101841361312b57600080fd5b61203284823560208401612e2b565b60006020828403121561314c57600080fd5b5035919050565b6000806040838503121561316657600080fd5b50508035926020909101359150565b6000815180845261318d8160208601602086016133e9565b601f01601f19169290920160200192915050565b600083516131b38184602088016133e9565b8351908301906131c78183602088016133e9565b01949350505050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061320390830184613175565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561324e5783516001600160a01b031683529284019291840191600101613229565b50909695505050505050565b60208152600061291b6020830184613175565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60208082526022908201527f4f776e61626c653a2063616c6c6572206973206e6f742061207369676e61746f604082015261727960f01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526031908201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f6040820152701ddb995c881b9bdc88185c1c1c9bdd9959607a1b606082015260800190565b6000821982111561339a5761339a61347f565b500190565b6000826133ae576133ae613495565b500490565b60008160001904831182151516156133cd576133cd61347f565b500290565b6000828210156133e4576133e461347f565b500390565b60005b838110156134045781810151838201526020016133ec565b83811115611c165750506000910152565b600181811c9082168061342957607f821691505b6020821081141561344a57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156134645761346461347f565b5060010190565b60008261347a5761347a613495565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b031981168114611e5257600080fdfea264697066735822122046d1720c67ef25a1e92371420648035e69ce799ed4a6684d42e05582a9e039fa64736f6c6343000807003300000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000014000000000000000000000000099504913cee55e5c236f5fc7983c93fe39f8a4c700000000000000000000000090f8bf6a479f320ead074411a4b0e7944ea8c9c100000000000000000000000090f8bf6a479f320ead074411a4b0e7944ea8c9c1000000000000000000000000000000000000000000000000000000000000000f417661706967656f6e7320436c756200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003415043000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106c6b6a6c6b6173646a666c64732e686c00000000000000000000000000000000