[ { "inputs": [ { "internalType": "address", "name": "router_", "type": "address" }, { "internalType": "address", "name": "taxWallet_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "taxWallet_", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "status_", "type": "bool" } ], "name": "Blacklist", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "_maxTxAmount", "type": "uint256" } ], "name": "MaxTxAmountUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "taxWallet_", "type": "address" } ], "name": "TaxWalletUpdate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "DENOMINATOR", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "addLiquidity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "addedLP", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "blacklist", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "changeMaxTaxSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "changeTaxSwapThreshold", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "taxWallet_", "type": "address" }, { "internalType": "address", "name": "devWallet_", "type": "address" }, { "internalType": "address", "name": "mktWallet_", "type": "address" } ], "name": "changeTaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "excludeFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "finalBuyTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "finalSellTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTax", "outputs": [ { "internalType": "uint256", "name": "_buy", "type": "uint256" }, { "internalType": "uint256", "name": "_sell", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "inSwap", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" } ], "name": "includeFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "initialBuyTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "initialSellTax", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manualSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "maxTaxSwap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTxAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWalletSize", "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": [], "name": "removeLimits", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "bool", "name": "_isBlacklist", "type": "bool" } ], "name": "setBlacklist", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setMaxTxPercentToDefault", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "buy_", "type": "uint256" }, { "internalType": "uint256", "name": "sell_", "type": "uint256" } ], "name": "setTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "startTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "taxSwapThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "taxWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingOpen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "uniswapV2Pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040526107d06009556107d0600a556101f4600b556101f4600c55601c600d556000600e556012601055601054600a6200003c919062000429565b6200004b90629896806200043e565b60115560408051808201909152600b81526a4f4154204e6574776f726b60a81b60208201526012906200007f9082620004ff565b5060408051808201909152600381526213d05560ea1b6020820152601390620000a99082620004ff565b506127106011546101f4620000bf91906200043e565b620000cb9190620005cb565b6014556127106011546064620000e291906200043e565b620000ee9190620005cb565b60155561271060115460326200010591906200043e565b620001119190620005cb565b60165561271060115460326200012891906200043e565b620001349190620005cb565b6017556019805463ffffffff60a01b191690553480156200015457600080fd5b5060405162002b3538038062002b3583398101604081905262000177916200060b565b33806200019e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620001a981620002c4565b50600680546001600160a01b03199081166001600160a01b03848116918217845560078054841683179055600880548416909217909155336000908152600360209081526040808320805460ff199081166001908117909255308552828520805482168317905596548516845281842080549097168117909655601880549095168885161790945560115482548416835294815283822085905581549351948552929091169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36006546040516001600160a01b0390911681527f9a5950144c135c4ca7cfeed1549eeb7309d0270f4269aabbe564ba06adb4584d9060200160405180910390a1505062000643565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200036b5781600019048211156200034f576200034f62000314565b808516156200035d57918102915b93841c93908002906200032f565b509250929050565b600082620003845750600162000423565b81620003935750600062000423565b8160018114620003ac5760028114620003b757620003d7565b600191505062000423565b60ff841115620003cb57620003cb62000314565b50506001821b62000423565b5060208310610133831016604e8410600b8410161715620003fc575081810a62000423565b6200040883836200032a565b80600019048211156200041f576200041f62000314565b0290505b92915050565b600062000437838362000373565b9392505050565b808202811582820484141762000423576200042362000314565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200048357607f821691505b602082108103620004a457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620004fa576000816000526020600020601f850160051c81016020861015620004d55750805b601f850160051c820191505b81811015620004f657828155600101620004e1565b5050505b505050565b81516001600160401b038111156200051b576200051b62000458565b62000533816200052c84546200046e565b84620004aa565b602080601f8311600181146200056b5760008415620005525750858301515b600019600386901b1c1916600185901b178555620004f6565b600085815260208120601f198616915b828110156200059c578886015182559484019460019091019084016200057b565b5085821015620005bb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600082620005e957634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160a01b03811681146200060657600080fd5b919050565b600080604083850312156200061f57600080fd5b6200062a83620005ee565b91506200063a60208401620005ee565b90509250929050565b6124e280620006536000396000f3fe6080604052600436106102605760003560e01c806370a0823111610144578063a9059cbb116100b6578063e6fe10b61161007a578063e6fe10b6146106f5578063e8078d941461070a578063f2fde38b1461071f578063f9f92be41461073f578063ff5118281461076f578063ffb54a991461078f57600080fd5b8063a9059cbb14610639578063c96c516314610659578063d830678614610679578063db05944c1461069a578063dd62ed3e146106af57600080fd5b80638a8c523c116101085780638a8c523c146105b15780638c0b5e22146105c65780638da5cb5b146105db5780638f3fa860146105f9578063918f86741461060e57806395d89b411461062457600080fd5b806370a082311461051b578063715018a614610551578063751039fc1461056657806378e979251461057b5780637efd4be71461059157600080fd5b80633912ff97116101dd57806358d37533116101a157806358d37533146104865780635e7b655c1461049b57806362997f8c146104b0578063667f6526146104c55780636727ba9b146104e55780636ddd1713146104fa57600080fd5b80633912ff97146103f2578063437823ec1461040757806349bd5a5e1461042757806351bc3c851461044757806354b762a61461045c57600080fd5b806317e92c751161022457806317e92c751461033e57806318160ddd1461035e57806323b872dd1461037d5780632dc0562d1461039d578063313ce567146103dd57600080fd5b8063050197701461026c57806306fdde03146102a2578063095ea7b3146102c4578063153b0d1e146102e45780631694505e1461030657600080fd5b3661026757005b600080fd5b34801561027857600080fd5b5060195461028d90600160b81b900460ff1681565b60405190151581526020015b60405180910390f35b3480156102ae57600080fd5b506102b76107b0565b60405161029991906120e1565b3480156102d057600080fd5b5061028d6102df366004612145565b610842565b3480156102f057600080fd5b506103046102ff36600461217f565b610859565b005b34801561031257600080fd5b50601854610326906001600160a01b031681565b6040516001600160a01b039091168152602001610299565b34801561034a57600080fd5b506103046103593660046121b8565b610900565b34801561036a57600080fd5b506011545b604051908152602001610299565b34801561038957600080fd5b5061028d6103983660046121d1565b610985565b3480156103a957600080fd5b50600654600754600854604080516001600160a01b0394851681529284166020840152921691810191909152606001610299565b3480156103e957600080fd5b5060105461036f565b3480156103fe57600080fd5b5060095461036f565b34801561041357600080fd5b50610304610422366004612212565b610a48565b34801561043357600080fd5b50601954610326906001600160a01b031681565b34801561045357600080fd5b50610304610a74565b34801561046857600080fd5b50610471610ada565b60408051928352602083019190915201610299565b34801561049257600080fd5b50600b5461036f565b3480156104a757600080fd5b5060165461036f565b3480156104bc57600080fd5b5060175461036f565b3480156104d157600080fd5b506103046104e036600461222f565b610b3b565b3480156104f157600080fd5b50610304610b4e565b34801561050657600080fd5b5060195461028d90600160b01b900460ff1681565b34801561052757600080fd5b5061036f610536366004612212565b6001600160a01b031660009081526001602052604090205490565b34801561055d57600080fd5b50610304610ba0565b34801561057257600080fd5b50610304610bb4565b34801561058757600080fd5b5061036f600f5481565b34801561059d57600080fd5b506103046105ac3660046121b8565b610bf9565b3480156105bd57600080fd5b50610304610c7e565b3480156105d257600080fd5b5060145461036f565b3480156105e757600080fd5b506000546001600160a01b0316610326565b34801561060557600080fd5b5060155461036f565b34801561061a57600080fd5b5061036f61271081565b34801561063057600080fd5b506102b7610e94565b34801561064557600080fd5b5061028d610654366004612145565b610ea3565b34801561066557600080fd5b50610304610674366004612251565b610eb0565b34801561068557600080fd5b5060195461028d90600160a81b900460ff1681565b3480156106a657600080fd5b50600a5461036f565b3480156106bb57600080fd5b5061036f6106ca36600461229c565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561070157600080fd5b50600c5461036f565b34801561071657600080fd5b506103046110cb565b34801561072b57600080fd5b5061030461073a366004612212565b611481565b34801561074b57600080fd5b5061028d61075a366004612212565b60056020526000908152604090205460ff1681565b34801561077b57600080fd5b5061030461078a366004612212565b6114bf565b34801561079b57600080fd5b5060195461028d90600160a01b900460ff1681565b6060601280546107bf906122ca565b80601f01602080910402602001604051908101604052809291908181526020018280546107eb906122ca565b80156108385780601f1061080d57610100808354040283529160200191610838565b820191906000526020600020905b81548152906001019060200180831161081b57829003601f168201915b5050505050905090565b600061084f3384846114e8565b5060015b92915050565b61086161160c565b6006546001600160a01b0316336001600160a01b03161461089d5760405162461bcd60e51b815260040161089490612304565b60405180910390fd5b6001600160a01b038216600081815260056020908152604091829020805460ff19168515159081179091558251938452908301527ff7e58a63a036e3a7ef7921f83b6ae47930cf5c293dd3bfe7a857c6863409046d910160405180910390a15050565b6006546001600160a01b0316336001600160a01b0316146109335760405162461bcd60e51b815260040161089490612304565b600081118015610944575060115481105b6109805760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642076616c756560981b6044820152606401610894565b601755565b6001600160a01b03831660009081526002602090815260408083203384529091528120548211156109f85760405162461bcd60e51b815260206004820152601c60248201527f45524332303a20416c6c6f77616e636573206e6f7420656e6f756768000000006044820152606401610894565b610a03848484611639565b6001600160a01b038416600090815260026020908152604080832033808552925290912054610a3e918691610a39908690612343565b6114e8565b5060019392505050565b610a5061160c565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6006546001600160a01b0316336001600160a01b031614610aa75760405162461bcd60e51b815260040161089490612304565b306000908152600160205260409020548015610ac657610ac681611db6565b478015610ad657610ad681611f49565b5050565b600080600f54600003610af3575050600954600a549091565b42600f54610708610b049190612356565b10610b15575050600954600a549091565b600f54610b2490610708612356565b421115610b37575050600b54600c549091565b9091565b610b4361160c565b600b91909155600c55565b610b5661160c565b6064601154610b659190612369565b60148190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906020015b60405180910390a1565b610ba861160c565b610bb26000612079565b565b610bbc61160c565b601154601481905560158190556040519081527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf90602001610b96565b600081118015610c0a575060115481105b610c465760405162461bcd60e51b815260206004820152600d60248201526c496e76616c69642076616c756560981b6044820152606401610894565b6006546001600160a01b0316336001600160a01b031614610c795760405162461bcd60e51b815260040161089490612304565b601655565b610c8661160c565b601954600160a01b900460ff1615610cda5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610894565b6019546001600160a01b0316610e7757601860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d3d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d61919061238b565b6001600160a01b031663e6a4390530601860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de7919061238b565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610e32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e56919061238b565b601980546001600160a01b0319166001600160a01b03929092169190911790555b6019805462ff00ff60a01b19166201000160a01b17905542600f55565b6060601380546107bf906122ca565b600061084f338484611639565b6006546001600160a01b0316336001600160a01b031614610ee35760405162461bcd60e51b815260040161089490612304565b6001600160a01b038316610f395760405162461bcd60e51b815260206004820152601a60248201527f496e76616c696420616464726573732074617857616c6c65745f0000000000006044820152606401610894565b6001600160a01b038216610f8f5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c696420616464726573732064657657616c6c65745f0000000000006044820152606401610894565b6001600160a01b038116610fe55760405162461bcd60e51b815260206004820152601a60248201527f496e76616c69642061646472657373206d6b7457616c6c65745f0000000000006044820152606401610894565b600680546001600160a01b039081166000908152600360209081526040808320805460ff199081169091556007805486168552828520805483169055600880548716865283862080548416905587546001600160a01b03199081168c89169081178a55835482168c8a1617845582549091168a891617825586528386208054841660019081179091559154871686528386208054841683179055548616855293829020805490911690931790925592549051911681527f9a5950144c135c4ca7cfeed1549eeb7309d0270f4269aabbe564ba06adb4584d910160405180910390a1505050565b6110d361160c565b601954600160a01b900460ff161580156110f75750601954600160b81b900460ff16155b61113d5760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610894565b60185460115461115a9130916001600160a01b03909116906114e8565b601860009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111d1919061238b565b6001600160a01b031663c9c6539630601860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611233573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611257919061238b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156112a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c8919061238b565b601980546001600160a01b039283166001600160a01b031990911681179091556000908152600360205260409020805460ff191660011790556018541663f305d719473061132b816001600160a01b031660009081526001602052604090205490565b6000806113406000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156113a8573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906113cd91906123a8565b505060195460185460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015611426573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144a91906123d6565b50601980546001600160a01b03166000908152600360205260409020805460ff19169055805460ff60b81b1916600160b81b179055565b61148961160c565b6001600160a01b0381166114b357604051631e4fbdf760e01b815260006004820152602401610894565b6114bc81612079565b50565b6114c761160c565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6001600160a01b03831661154a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610894565b6001600160a01b0382166115ab5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610894565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000546001600160a01b03163314610bb25760405163118cdaa760e01b8152336004820152602401610894565b6001600160a01b03831661169d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610894565b6001600160a01b0382166116ff5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610894565b600081116117685760405162461bcd60e51b815260206004820152603060248201527f45524332303a205472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b6064820152608401610894565b6001600160a01b03831660009081526005602052604090205460ff161580156117aa57506001600160a01b03821660009081526005602052604090205460ff16155b6117ed5760405162461bcd60e51b8152602060048201526014602482015273165bdd48185c99481a5b88189b1858dadb1a5cdd60621b6044820152606401610894565b600080806117f9610ada565b9150915061180f6000546001600160a01b031690565b6001600160a01b0316866001600160a01b03161415801561183e57506000546001600160a01b03868116911614155b15611bf9576019546001600160a01b03878116911614801561186e57506018546001600160a01b03868116911614155b801561189357506001600160a01b03851660009081526003602052604090205460ff16155b15611a41576014548411156118e65760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610894565b601954600160a01b900460ff166119325760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b6044820152606401610894565b60155484611955876001600160a01b031660009081526001602052604090205490565b61195f9190612356565b11156119ad5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610894565b600d54600e541015611a0857843b15611a085760405162461bcd60e51b815260206004820152601a60248201527f4e6f7420616c6c6f7720636f6e747261637420627579206e6f770000000000006044820152606401610894565b600e8054906000611a18836123f3565b90915550506001600160a01b0385166000908152600460205260409020805460ff191660011790555b612710611a4e838661240c565b611a589190612369565b6019549093506001600160a01b038681169116148015611a8157506001600160a01b0386163014155b15611b5957601454841115611ad45760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610894565b612710611ae1828661240c565b611aeb9190612369565b9250600d54600e541180611b1757506001600160a01b03861660009081526004602052604090205460ff165b611b595760405162461bcd60e51b815260206004820152601360248201527229b2b63632b91034b9903737ba10313abcb2b960691b6044820152606401610894565b30600090815260016020526040902054601754601954600160a81b900460ff16158015611b9357506019546001600160a01b038881169116145b8015611ba85750601954600160b01b900460ff165b8015611bb5575060165482115b8015611bc45750600d54600e54115b15611bf657611be4611bdf87611bda85856120c9565b6120c9565b611db6565b478015611bf457611bf447611f49565b505b50505b6001600160a01b03851660009081526003602052604090205460ff168015611c2e57506019546001600160a01b038681169116145b15611c3857600092505b6019546001600160a01b03868116911614801590611c6457506019546001600160a01b03878116911614155b15611c6e57600092505b8215611ce95730600090815260016020526040902054611c8f908490612356565b30600081815260016020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611ce09087815260200190565b60405180910390a35b6001600160a01b038616600090815260016020526040902054611d0d908590612343565b6001600160a01b038716600090815260016020526040902055611d308385612343565b6001600160a01b038616600090815260016020526040902054611d539190612356565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611d9d8688612343565b60405190815260200160405180910390a3505050505050565b6019805460ff60a81b1916600160a81b1790558015611f3957601954600160a01b900460ff1615611f39576040805160028082526060820183526000926020830190803683370190505090503081600081518110611e1657611e16612423565b6001600160a01b03928316602091820292909201810191909152601854604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611e6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e93919061238b565b81600181518110611ea657611ea6612423565b6001600160a01b039283166020918202929092010152601854611ecc91309116846114e8565b60185460405163791ac94760e01b81526001600160a01b039091169063791ac94790611f05908590600090869030904290600401612439565b600060405180830381600087803b158015611f1f57600080fd5b505af1158015611f33573d6000803e3d6000fd5b50505050505b506019805460ff60a81b19169055565b6000611f56600283612369565b90506000600a611f6784600261240c565b611f719190612369565b90506000611f7f8284612356565b611f899085612343565b6006549091506001600160a01b031615611fd9576006546040516001600160a01b039091169084156108fc029085906000818181858888f19350505050158015611fd7573d6000803e3d6000fd5b505b6008546001600160a01b031615612026576008546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612024573d6000803e3d6000fd5b505b6007546001600160a01b031615612073576007546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612071573d6000803e3d6000fd5b505b50505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008183116120d857826120da565b815b9392505050565b60006020808352835180602085015260005b8181101561210f578581018301518582016040015282016120f3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146114bc57600080fd5b6000806040838503121561215857600080fd5b823561216381612130565b946020939093013593505050565b80151581146114bc57600080fd5b6000806040838503121561219257600080fd5b823561219d81612130565b915060208301356121ad81612171565b809150509250929050565b6000602082840312156121ca57600080fd5b5035919050565b6000806000606084860312156121e657600080fd5b83356121f181612130565b9250602084013561220181612130565b929592945050506040919091013590565b60006020828403121561222457600080fd5b81356120da81612130565b6000806040838503121561224257600080fd5b50508035926020909101359150565b60008060006060848603121561226657600080fd5b833561227181612130565b9250602084013561228181612130565b9150604084013561229181612130565b809150509250925092565b600080604083850312156122af57600080fd5b82356122ba81612130565b915060208301356121ad81612130565b600181811c908216806122de57607f821691505b6020821081036122fe57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252600f908201526e13db9b1e481d185e081dd85b1b195d608a1b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156108535761085361232d565b808201808211156108535761085361232d565b60008261238657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561239d57600080fd5b81516120da81612130565b6000806000606084860312156123bd57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156123e857600080fd5b81516120da81612171565b6000600182016124055761240561232d565b5060010190565b80820281158282048414176108535761085361232d565b634e487b7160e01b600052603260045260246000fd5b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b8181101561248b5784516001600160a01b031683529383019391830191600101612466565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122021dbe9f6804f8eeac89385bfd9d7276da9bc6ddffb4a2d9f9ee7f4240aeb7c0b64736f6c634300081700330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000000d03b92e075c6cf636fa5602fa901f96bcd8aace