[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "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": true, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "BurnWalletUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeFromFees", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "LiquidityWalletUpdated", "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": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "RewardWalletUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "pair", "type": "address" }, { "indexed": true, "internalType": "bool", "name": "value", "type": "bool" } ], "name": "SetAutomatedMarketMakerPair", "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" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newAddress", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldAddress", "type": "address" } ], "name": "UpdateUniswapV2Router", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldWallet", "type": "address" } ], "name": "botWalletUpdated", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "UpdateBurnWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_Bot", "type": "uint256" }, { "internalType": "uint256", "name": "_reward", "type": "uint256" }, { "internalType": "uint256", "name": "_burn", "type": "uint256" }, { "internalType": "uint256", "name": "_liquidity", "type": "uint256" } ], "name": "UpdatePercentages", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "UpdateRewardWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_isExcludedFromMaxWallet", "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": "", "type": "address" } ], "name": "automatedMarketMakerPairs", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "botWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "burnt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyBotFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyBurnFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyRewardFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyTotalFees", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "deadAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "excludeFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "updAds", "type": "address" }, { "internalType": "bool", "name": "isEx", "type": "bool" } ], "name": "excludedFromMaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExcludedFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "launch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "launchedAt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "launchedAtTimestamp", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "limitsInEffect", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "liquidityWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWallet", "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": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellBotFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellBurnFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellRewardFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellTotalFees", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingActive", "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" }, { "inputs": [ { "internalType": "uint256", "name": "_BotFee", "type": "uint256" }, { "internalType": "uint256", "name": "_rewardFee", "type": "uint256" }, { "internalType": "uint256", "name": "_burnFee", "type": "uint256" }, { "internalType": "uint256", "name": "_liquidityFee", "type": "uint256" } ], "name": "updateBuyFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "updateLiquidityWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newNum", "type": "uint256" } ], "name": "updateMaxWalletAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_BotFee", "type": "uint256" }, { "internalType": "uint256", "name": "_rewardFee", "type": "uint256" }, { "internalType": "uint256", "name": "_burnFee", "type": "uint256" }, { "internalType": "uint256", "name": "_liquidityFee", "type": "uint256" } ], "name": "updateSellFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newbotWallet", "type": "address" } ], "name": "updatebotWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "withdrawETH", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IERC20", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "withdrawToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60c0604052600680546001600160a01b03191661dead179055600b805461ffff191660019081179091556005600f819055601082905560118290556012829055600260138190556014918255601583905560168390556017929092556018919091556019819055601a819055601b556028601c553480156200008057600080fd5b506040805180820182526006808252651514925093d560d21b6020808401829052845180860190955291845290830152906003620000bf8382620006f7565b506004620000ce8282620006f7565b505050620000eb620000e5620003bf60201b60201c565b620003c3565b737a250d5630b4cf539739df2c5dacb4c659f2488d6200010d81600162000415565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000158573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200017e9190620007c3565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f29190620007c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000240573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002669190620007c3565b6001600160a01b031660a08190526200028190600162000415565b60a051620002919060016200044a565b6a52b7d2dcc80cd2e40000006064620002ac8260026200080b565b620002b891906200082b565b600a55600780546001600160a01b0319908116732b077e82508915f46b0bc33e3ebab02def1b47981790915560088054821673956a7efd059e3ced14117e53802d96bb919a05631790556009805490911673c14d74bd8cf130af332870cddc936609d938fcf017905562000340620003386005546001600160a01b031690565b60016200049e565b6200034d3060016200049e565b6200035c61dead60016200049e565b6200037b620003736005546001600160a01b031690565b600162000415565b6200038830600162000415565b6200039761dead600162000415565b620003b773f78b1f0fd13d723897cb5732e1797ed0b48af1528262000507565b505062000864565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200041f620005f0565b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b6001600160a01b0382166000818152601f6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b620004a8620005f0565b6001600160a01b0382166000818152601d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005635760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b80600260008282546200057791906200084e565b90915550506001600160a01b03821660009081526020819052604081208054839290620005a69084906200084e565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6005546001600160a01b031633146200064c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200055a565b565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200067e57607f821691505b6020821081036200069f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200064e57600081815260208120601f850160051c81016020861015620006ce5750805b601f850160051c820191505b81811015620006ef57828155600101620006da565b505050505050565b81516001600160401b0381111562000713576200071362000653565b6200072b8162000724845462000669565b84620006a5565b602080601f8311600181146200076357600084156200074a5750858301515b600019600386901b1c1916600185901b178555620006ef565b600085815260208120601f198616915b82811015620007945788860151825594840194600190910190840162000773565b5085821015620007b35787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620007d657600080fd5b81516001600160a01b0381168114620007ee57600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620008255762000825620007f5565b92915050565b6000826200084957634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115620008255762000825620007f5565b60805160a051611e9b620008916000396000818161050a0152610de8015260006103ed0152611e9b6000f3fe6080604052600436106103395760003560e01c8063a457c2d7116101ab578063dd62ed3e116100f7578063f0a4ad1611610095578063f2fde38b1161006f578063f2fde38b146109a9578063f6374342146109c9578063f8b45b05146109df578063fb75b2c7146109f557600080fd5b8063f0a4ad161461095d578063f11a24d314610973578063f14210a61461098957600080fd5b8063e10dffc0116100d1578063e10dffc0146108e7578063e37ba8f914610907578063e71dc3f514610927578063e7ad9fcd1461093d57600080fd5b8063dd62ed3e14610875578063de0aad53146108bb578063e06b17a2146108d157600080fd5b8063bf56b37111610164578063c6d2577d1161013e578063c6d2577d146107f9578063d1d7d7ef1461080f578063d46980161461083f578063d85ba0631461085f57600080fd5b8063bf56b371146107a3578063c0246668146107b9578063c18bc195146107d957600080fd5b8063a457c2d7146106e8578063a9059cbb14610708578063adb873bd14610728578063b192da2d1461073e578063b62496f514610754578063bbc0c7421461078457600080fd5b80634a62bb65116102855780637a4b006a11610223578063910d0a6d116101fd578063910d0a6d1461067357806395d89b41146106935780639a7a23d6146106a85780639e281a98146106c857600080fd5b80637a4b006a146106155780637c493696146106355780638da5cb5b1461065557600080fd5b80636a486a8e1161025f5780636a486a8e1461059f57806370a08231146105b5578063715018a6146105eb578063751039fc1461060057600080fd5b80634a62bb651461052c5780634fbee193146105465780636958bf241461057f57600080fd5b806323b872dd116102f25780632e6ed7ef116102cc5780632e6ed7ef1461049c578063313ce567146104bc57806339509351146104d857806349bd5a5e146104f857600080fd5b806323b872dd1461043c57806327c8f8351461045c5780632d03f9001461047c57600080fd5b806301339c211461034557806306fdde031461035c578063095ea7b3146103875780630cfe2f3f146103b75780631694505e146103db57806318160ddd1461042757600080fd5b3661034057005b600080fd5b34801561035157600080fd5b5061035a610a15565b005b34801561036857600080fd5b50610371610a82565b60405161037e9190611b44565b60405180910390f35b34801561039357600080fd5b506103a76103a2366004611ba7565b610b14565b604051901515815260200161037e565b3480156103c357600080fd5b506103cd60135481565b60405190815260200161037e565b3480156103e757600080fd5b5061040f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161037e565b34801561043357600080fd5b506002546103cd565b34801561044857600080fd5b506103a7610457366004611bd3565b610b2b565b34801561046857600080fd5b5060065461040f906001600160a01b031681565b34801561048857600080fd5b5060075461040f906001600160a01b031681565b3480156104a857600080fd5b5061035a6104b7366004611c14565b610bd5565b3480156104c857600080fd5b506040516012815260200161037e565b3480156104e457600080fd5b506103a76104f3366004611ba7565b610c1a565b34801561050457600080fd5b5061040f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053857600080fd5b50600b546103a79060ff1681565b34801561055257600080fd5b506103a7610561366004611c46565b6001600160a01b03166000908152601d602052604090205460ff1690565b34801561058b57600080fd5b5061035a61059a366004611c46565b610c56565b3480156105ab57600080fd5b506103cd60145481565b3480156105c157600080fd5b506103cd6105d0366004611c46565b6001600160a01b031660009081526020819052604090205490565b3480156105f757600080fd5b5061035a610cbb565b34801561060c57600080fd5b506103a7610ccf565b34801561062157600080fd5b5061035a610630366004611c46565b610ce9565b34801561064157600080fd5b5061035a610650366004611c46565b610d4e565b34801561066157600080fd5b506005546001600160a01b031661040f565b34801561067f57600080fd5b5061035a61068e366004611c14565b610db3565b34801561069f57600080fd5b50610371610dcf565b3480156106b457600080fd5b5061035a6106c3366004611c78565b610dde565b3480156106d457600080fd5b5061035a6106e3366004611ba7565b610e9b565b3480156106f457600080fd5b506103a7610703366004611ba7565b610fc2565b34801561071457600080fd5b506103a7610723366004611ba7565b61105b565b34801561073457600080fd5b506103cd60165481565b34801561074a57600080fd5b506103cd600e5481565b34801561076057600080fd5b506103a761076f366004611c46565b601f6020526000908152604090205460ff1681565b34801561079057600080fd5b50600b546103a790610100900460ff1681565b3480156107af57600080fd5b506103cd600c5481565b3480156107c557600080fd5b5061035a6107d4366004611c78565b611068565b3480156107e557600080fd5b5061035a6107f4366004611cb1565b6110cf565b34801561080557600080fd5b506103cd600d5481565b34801561081b57600080fd5b506103a761082a366004611c46565b601e6020526000908152604090205460ff1681565b34801561084b57600080fd5b5060095461040f906001600160a01b031681565b34801561086b57600080fd5b506103cd600f5481565b34801561088157600080fd5b506103cd610890366004611cca565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156108c757600080fd5b506103cd60185481565b3480156108dd57600080fd5b506103cd60155481565b3480156108f357600080fd5b5061035a610902366004611c78565b6110ef565b34801561091357600080fd5b5061035a610922366004611c46565b611122565b34801561093357600080fd5b506103cd60115481565b34801561094957600080fd5b5061035a610958366004611c14565b611187565b34801561096957600080fd5b506103cd60105481565b34801561097f57600080fd5b506103cd60125481565b34801561099557600080fd5b5061035a6109a4366004611cb1565b6111cc565b3480156109b557600080fd5b5061035a6109c4366004611c46565b611242565b3480156109d557600080fd5b506103cd60175481565b3480156109eb57600080fd5b506103cd600a5481565b348015610a0157600080fd5b5060085461040f906001600160a01b031681565b610a1d6112bb565b600c5415610a695760405162461bcd60e51b8152602060048201526014602482015273416c7265616479206c61756e6368656420626f6960601b60448201526064015b60405180910390fd5b43600c5542600d55600b805461ff001916610100179055565b606060038054610a9190611cf8565b80601f0160208091040260200160405190810160405280929190818152602001828054610abd90611cf8565b8015610b0a5780601f10610adf57610100808354040283529160200191610b0a565b820191906000526020600020905b815481529060010190602001808311610aed57829003601f168201915b5050505050905090565b6000610b21338484611315565b5060015b92915050565b6000610b38848484611439565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610bbd5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610a60565b610bca8533858403611315565b506001949350505050565b610bdd6112bb565b60108490556013839055601182905560128190558082610bfd8587611d48565b610c079190611d48565b610c119190611d48565b600f5550505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610b21918590610c51908690611d48565b611315565b610c5e6112bb565b6006546040516001600160a01b03918216918316907fe678f864bcd4f50e0554d3b42d5a0007424f154c8b29d4845c7c727f319cfd9290600090a3600680546001600160a01b0319166001600160a01b0392909216919091179055565b610cc36112bb565b610ccd60006117fb565b565b6000610cd96112bb565b50600b805460ff19169055600190565b610cf16112bb565b6008546040516001600160a01b03918216918316907f53a789b033e632f89772129774e70aa81a1a130a54c0297cdbb4585dfcfd9a7f90600090a3600880546001600160a01b0319166001600160a01b0392909216919091179055565b610d566112bb565b6007546040516001600160a01b03918216918316907fe79ff165e4a66a54cd373907e5f9578f5ca5f0e65b5aa6660a5edd8296f4cc2290600090a3600780546001600160a01b0319166001600160a01b0392909216919091179055565b610dbb6112bb565b601993909355601c91909155601a55601b55565b606060048054610a9190611cf8565b610de66112bb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603610e8d5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610a60565b610e97828261184d565b5050565b610ea36112bb565b6040516370a0823160e01b815230600482015281906001600160a01b038416906370a0823190602401602060405180830381865afa158015610ee9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0d9190611d5b565b1015610f4c5760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b6044820152606401610a60565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610f99573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fbd9190611d74565b505050565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156110445760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a60565b6110513385858403611315565b5060019392505050565b6000610b21338484611439565b6110706112bb565b6001600160a01b0382166000818152601d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6110d76112bb565b6110e981670de0b6b3a7640000611d91565b600a5550565b6110f76112bb565b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b61112a6112bb565b6009546040516001600160a01b03918216918316907f6080503d1da552ae8eb4b7b8a20245d9fabed014180510e7d1a05ea08fdb0f3e90600090a3600980546001600160a01b0319166001600160a01b0392909216919091179055565b61118f6112bb565b601584905560188390556016829055601781905580826111af8587611d48565b6111b99190611d48565b6111c39190611d48565b60145550505050565b6111d46112bb565b804710156112155760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908105b5bdd5b9d60921b6044820152606401610a60565b604051339082156108fc029083906000818181858888f19350505050158015610e97573d6000803e3d6000fd5b61124a6112bb565b6001600160a01b0381166112af5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a60565b6112b8816117fb565b50565b6005546001600160a01b03163314610ccd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a60565b6001600160a01b0383166113775760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a60565b6001600160a01b0382166113d85760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a60565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661145f5760405162461bcd60e51b8152600401610a6090611da8565b6001600160a01b0382166114855760405162461bcd60e51b8152600401610a6090611ded565b8060000361149957610fbd838360006118a1565b600b5460ff1615611646576005546001600160a01b038481169116148015906114d057506005546001600160a01b03838116911614155b80156114e457506001600160a01b03821615155b80156114fb57506001600160a01b03821661dead14155b1561164657600b54610100900460ff16611596576001600160a01b0383166000908152601f602052604090205460ff1615801561155157506001600160a01b0382166000908152601f602052604090205460ff16155b6115965760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610a60565b6001600160a01b0383166000908152601f602052604090205460ff1680156115d757506001600160a01b0382166000908152601e602052604090205460ff16155b1561164657600a546001600160a01b0383166000908152602081905260409020546116029083611d48565b11156116465760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610a60565b6001600160a01b0383166000908152601d602052604090205460019060ff168061168857506001600160a01b0383166000908152601d602052604090205460ff165b15611691575060005b600081156117e9576001600160a01b0384166000908152601f602052604090205460ff1680156116c357506000601454115b156116e9576064601454846116d89190611d91565b6116e29190611e30565b9050611735565b6001600160a01b0385166000908152601f602052604090205460ff16801561171357506000600f54115b15611735576064600f54846117289190611d91565b6117329190611e30565b90505b80156117dc5760075460195461176f9187916001600160a01b03909116906064906117609086611d91565b61176a9190611e30565b6118a1565b600854601c546117949187916001600160a01b03909116906064906117609086611d91565b600954601b546117b99187916001600160a01b03909116906064906117609086611d91565b6117dc856064601a54846117cd9190611d91565b6117d79190611e30565b6119f6565b6117e68184611e52565b92505b6117f48585856118a1565b5050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000818152601f6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0383166118c75760405162461bcd60e51b8152600401610a6090611da8565b6001600160a01b0382166118ed5760405162461bcd60e51b8152600401610a6090611ded565b6001600160a01b038316600090815260208190526040902054818110156119655760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a60565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061199c908490611d48565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119e891815260200190565b60405180910390a350505050565b6001600160a01b038216611a565760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a60565b6001600160a01b03821660009081526020819052604090205481811015611aca5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a60565b6001600160a01b0383166000908152602081905260408120838303905560028054849290611af9908490611e52565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b600060208083528351808285015260005b81811015611b7157858101830151858201604001528201611b55565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146112b857600080fd5b60008060408385031215611bba57600080fd5b8235611bc581611b92565b946020939093013593505050565b600080600060608486031215611be857600080fd5b8335611bf381611b92565b92506020840135611c0381611b92565b929592945050506040919091013590565b60008060008060808587031215611c2a57600080fd5b5050823594602084013594506040840135936060013592509050565b600060208284031215611c5857600080fd5b8135611c6381611b92565b9392505050565b80151581146112b857600080fd5b60008060408385031215611c8b57600080fd5b8235611c9681611b92565b91506020830135611ca681611c6a565b809150509250929050565b600060208284031215611cc357600080fd5b5035919050565b60008060408385031215611cdd57600080fd5b8235611ce881611b92565b91506020830135611ca681611b92565b600181811c90821680611d0c57607f821691505b602082108103611d2c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610b2557610b25611d32565b600060208284031215611d6d57600080fd5b5051919050565b600060208284031215611d8657600080fd5b8151611c6381611c6a565b8082028115828204841417610b2557610b25611d32565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b600082611e4d57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610b2557610b25611d3256fea264697066735822122010c1789d80aabe24089db0755318dd072a605c062bf5641c5c7e0a52eef8458164736f6c63430008120033