[ { "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": false, "internalType": "address", "name": "owner", "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": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "_maxTxAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_maxWalletToken", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": [], "name": "amountETHBuyback", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "aP", "type": "uint256" } ], "name": "approval", "outputs": [], "stateMutability": "nonpayable", "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": [], "name": "buyBack", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buybackAddAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "pure", "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" } ], "name": "excludeFromReflection", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getCirculatingSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "includeInReflection", "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": "isExcludedFromReflection", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isFeeExempt", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isOwner", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastBuyer", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manualBuyback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "manualFundETHBuyback", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "wallet", "type": "address" } ], "name": "mytotalReflections", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tAmount", "type": "uint256" }, { "internalType": "bool", "name": "deductTransferRfi", "type": "bool" } ], "name": "reflectionFromToken", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "address", "name": "_receiver", "type": "address" }, { "internalType": "uint256", "name": "_percentage", "type": "uint256" } ], "name": "rescueERC20", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract IRouter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_ethAdd", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "setBuyback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setETHBuybackAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "holder", "type": "address" }, { "internalType": "bool", "name": "exempt", "type": "bool" } ], "name": "setFeeExempt", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_marketing", "type": "address" }, { "internalType": "address", "name": "_liquidity", "type": "address" }, { "internalType": "address", "name": "_buyback", "type": "address" }, { "internalType": "address", "name": "_default", "type": "address" }, { "internalType": "address", "name": "_staking", "type": "address" } ], "name": "setInternalAddresses", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_buy", "type": "uint256" }, { "internalType": "uint256", "name": "_wallet", "type": "uint256" } ], "name": "setParameters", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_buy", "type": "uint256" }, { "internalType": "uint256", "name": "_sell", "type": "uint256" }, { "internalType": "uint256", "name": "_trans", "type": "uint256" }, { "internalType": "uint256", "name": "_reflections", "type": "uint256" }, { "internalType": "uint256", "name": "_marketing", "type": "uint256" }, { "internalType": "uint256", "name": "_liquidity", "type": "uint256" }, { "internalType": "uint256", "name": "_buyback", "type": "uint256" }, { "internalType": "uint256", "name": "_staking", "type": "uint256" } ], "name": "setStructure", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_swapAmount", "type": "uint256" }, { "internalType": "uint256", "name": "_swapThreshold", "type": "uint256" }, { "internalType": "uint256", "name": "minTokenAmount", "type": "uint256" } ], "name": "setSwapbackSettings", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_enabled", "type": "bool" }, { "internalType": "address", "name": "_address", "type": "address" } ], "name": "setisExempt", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setminVolumeToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "startTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapBuybackTimes", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "buyback", "type": "bool" } ], "name": "toggleBuyback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "rAmount", "type": "uint256" } ], "name": "tokenFromReflection", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalETHBuyback", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalReflections", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalTokenBuyback", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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 payable", "name": "adr", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
6080604052620000126009600a620005b4565b62000023906461f313f880620005cc565b60018190556200003690600019620005fc565b620000449060001962000613565b60025561271060015460966200005b9190620005cc565b62000067919062000629565b60035561271060015460966200007e9190620005cc565b6200008a919062000629565b6004556040805160a08101825260648082526020820181905291810182905260c86060820181905260006080909201829052600583905560068390556007929092556008919091556009556101f4600a819055600b819055600c55612710600d55600e805461ff0019166101001790556658d15e17628000600f55600154620186a0906200011b906103e8620005cc565b62000127919062000629565b601055620186a0600154600a6200013f9190620005cc565b6200014b919062000629565b601155620186a0600154600a620001639190620005cc565b6200016f919062000629565b6012556013805461ffff191661010017905560016015819055601755601b80546001600160a01b031990811661dead908117909255601c8054821673f423e59226697dd72f4935dd5c1ca05394624afb908117909155601d8054831682179055601e8054831682179055601f80548316909317909255602080549091169091179055348015620001fe57600080fd5b50600080546001600160a01b031916331781556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9291839163c45a0155916004808201926020929091908290030181865afa15801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c919062000640565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002da573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000300919062000640565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200034e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000374919062000640565b602780546001600160a01b038086166001600160a01b0319928316179092556028805483851692169190911790556002546000805483168152602160209081526040808320939093553080835260248252838320805460ff1990811660019081179092553385526025845285852080548216831790559184528484208054831682179055601c54861684528484208054831682179055601d54861684528484208054831682179055601e54861684528484208054831682179055601f54861684528484208054831682179055915485168352838320805490911682179055815490549251949550909216927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef916200048f9190815260200190565b60405180910390a350506200066b565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004f6578160001904821115620004da57620004da6200049f565b80851615620004e857918102915b93841c9390800290620004ba565b509250929050565b6000826200050f57506001620005ae565b816200051e57506000620005ae565b8160018114620005375760028114620005425762000562565b6001915050620005ae565b60ff8411156200055657620005566200049f565b50506001821b620005ae565b5060208310610133831016604e8410600b841016171562000587575081810a620005ae565b620005938383620004b5565b8060001904821115620005aa57620005aa6200049f565b0290505b92915050565b6000620005c560ff841683620004fe565b9392505050565b8082028115828204841417620005ae57620005ae6200049f565b634e487b7160e01b600052601260045260246000fd5b6000826200060e576200060e620005e6565b500690565b81810381811115620005ae57620005ae6200049f565b6000826200063b576200063b620005e6565b500490565b6000602082840312156200065357600080fd5b81516001600160a01b0381168114620005c557600080fd5b6133e3806200067b6000396000f3fe6080604052600436106102975760003560e01c80637520ecc91161015a578063a457c2d7116100c1578063dd62ed3e1161007a578063dd62ed3e1461080a578063e2d6f94c14610850578063e94dd17c14610870578063f2fde38b14610890578063f887ea40146108b0578063fc738549146108d057600080fd5b8063a457c2d714610755578063a8aa1b3114610775578063a9059cbb14610795578063acdf4f18146107b5578063b2118a8d146107d4578063ba1a13ff146107f457600080fd5b8063884870c711610113578063884870c7146106715780638cf2e94a146106915780638ebfc796146106c757806395d89b41146106e75780639fb05d3714610715578063a2e4b5b01461073557600080fd5b80637520ecc9146105b657806378109e54146105cc578063783b5a0a146105e257806378c7dcd6146106025780637d1db4a5146106225780637d459db31461063857600080fd5b80632b112e49116101fe5780633cf241e9116101b75780633cf241e9146104f05780633f4218e0146105105780634549b039146105405780635927c434146105605780636bc05f291461057657806370a082311461059657600080fd5b80632b112e49146104305780632d838119146104455780632f54bf6e146104655780633052ea0814610494578063313ce567146104b457806339509351146104d057600080fd5b80631deff655116102505780631deff655146103a757806320d730ee146103bd57806323b872dd146103d357806325a06a02146103f357806327334a08146103fb578063293230b81461041b57600080fd5b8063018763ed146102a357806305f82a45146102c757806306fdde03146102e9578063095ea7b31461032357806313ecfbfa1461035357806318160ddd1461039257600080fd5b3661029e57005b600080fd5b3480156102af57600080fd5b506029545b6040519081526020015b60405180910390f35b3480156102d357600080fd5b506102e76102e2366004612e51565b6108e5565b005b3480156102f557600080fd5b50604080518082019091526008815267457665725065706560c01b60208201525b6040516102be9190612e6e565b34801561032f57600080fd5b5061034361033e366004612ebc565b610aa4565b60405190151581526020016102be565b34801561035f57600080fd5b5060135461037a90630100000090046001600160a01b031681565b6040516001600160a01b0390911681526020016102be565b34801561039e57600080fd5b506001546102b4565b3480156103b357600080fd5b506102b460185481565b3480156103c957600080fd5b506102b4601a5481565b3480156103df57600080fd5b506103436103ee366004612ee8565b610abb565b6102e7610b24565b34801561040757600080fd5b506102e7610416366004612e51565b610b36565b34801561042757600080fd5b506102e7610c89565b34801561043c57600080fd5b506102b4610cc2565b34801561045157600080fd5b506102b4610460366004612f29565b610cfe565b34801561047157600080fd5b50610343610480366004612e51565b6000546001600160a01b0391821691161490565b3480156104a057600080fd5b506102e76104af366004612f29565b610d82565b3480156104c057600080fd5b50604051600981526020016102be565b3480156104dc57600080fd5b506103436104eb366004612ebc565b610dff565b3480156104fc57600080fd5b506102e761050b366004612f29565b610e36565b34801561051c57600080fd5b5061034361052b366004612e51565b60256020526000908152604090205460ff1681565b34801561054c57600080fd5b506102b461055b366004612f50565b610e60565b34801561056c57600080fd5b506102b4600f5481565b34801561058257600080fd5b506102e7610591366004612f80565b610ef0565b3480156105a257600080fd5b506102b46105b1366004612e51565b610f34565b3480156105c257600080fd5b506102b460165481565b3480156105d857600080fd5b506102b460045481565b3480156105ee57600080fd5b506102e76105fd366004612f9d565b610f93565b34801561060e57600080fd5b506102e761061d366004612f29565b610fe5565b34801561062e57600080fd5b506102b460035481565b34801561064457600080fd5b50610343610653366004612e51565b6001600160a01b031660009081526024602052604090205460ff1690565b34801561067d57600080fd5b506102e761068c366004612fcb565b611014565b34801561069d57600080fd5b506102b46106ac366004612e51565b6001600160a01b031660009081526021602052604090205490565b3480156106d357600080fd5b506102e76106e2366004612fed565b611124565b3480156106f357600080fd5b50604080518082019091526005815264455045504560d81b6020820152610316565b34801561072157600080fd5b506102e761073036600461301b565b611179565b34801561074157600080fd5b506102e761075036600461308c565b611255565b34801561076157600080fd5b50610343610770366004612ebc565b6112a4565b34801561078157600080fd5b5060285461037a906001600160a01b031681565b3480156107a157600080fd5b506103436107b0366004612ebc565b6112f3565b3480156107c157600080fd5b5060135461034390610100900460ff1681565b3480156107e057600080fd5b506102e76107ef366004612ee8565b611300565b34801561080057600080fd5b506102b460195481565b34801561081657600080fd5b506102b46108253660046130b1565b6001600160a01b03918216600090815260236020908152604080832093909416825291909152205490565b34801561085c57600080fd5b506102e761086b3660046130cf565b61142c565b34801561087c57600080fd5b506102e761088b366004613124565b6114b7565b34801561089c57600080fd5b506102e76108ab366004612e51565b61151d565b3480156108bc57600080fd5b5060275461037a906001600160a01b031681565b3480156108dc57600080fd5b506102e761159b565b6000546001600160a01b031633146109185760405162461bcd60e51b815260040161090f90613150565b60405180910390fd5b6001600160a01b03811660009081526024602052604090205460ff166109805760405162461bcd60e51b815260206004820152601760248201527f4163636f756e74206973206e6f74206578636c75646564000000000000000000604482015260640161090f565b60005b602654811015610aa057816001600160a01b0316602682815481106109aa576109aa613170565b6000918252602090912001546001600160a01b031603610a8e57602680546109d49060019061319c565b815481106109e4576109e4613170565b600091825260209091200154602680546001600160a01b039092169183908110610a1057610a10613170565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152602282526040808220829055602490925220805460ff191690556026805480610a6857610a686131af565b600082815260209020810160001990810180546001600160a01b03191690550190555050565b80610a98816131c5565b915050610983565b5050565b6000610ab13384846115cf565b5060015b92915050565b6000610ac88484846116f3565b610b1a8433610b1585604051806060016040528060288152602001613361602891396001600160a01b038a16600090815260236020908152604080832033845290915290205491906117d0565b6115cf565b5060019392505050565b601854610b3190346117fc565b601855565b6000546001600160a01b03163314610b605760405162461bcd60e51b815260040161090f90613150565b6001600160a01b03811660009081526024602052604090205460ff1615610bc95760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015260640161090f565b6001600160a01b03811660009081526021602052604090205415610c23576001600160a01b038116600090815260216020526040902054610c0990610cfe565b6001600160a01b0382166000908152602260205260409020555b6001600160a01b03166000818152602460205260408120805460ff191660019081179091556026805491820181559091527f744a2cf8fd7008e3d53b67916e73460df9fa5214e3ef23dd4259ca09493a35940180546001600160a01b0319169091179055565b6000546001600160a01b03163314610cb35760405162461bcd60e51b815260040161090f90613150565b6013805460ff19166001179055565b6000610cf9610cd16000610f34565b601b54610cf390610cea906001600160a01b0316610f34565b60015490611808565b90611808565b905090565b6000600254821115610d655760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161090f565b6000610d6f611814565b9050610d7b81846131de565b9392505050565b6000546001600160a01b03163314610dac5760405162461bcd60e51b815260040161090f90613150565b601e5447906001600160a01b03166108fc610dd26064610dcc8587611837565b90611843565b6040518115909202916000818181858888f19350505050158015610dfa573d6000803e3d6000fd5b505050565b3360008181526023602090815260408083206001600160a01b03871684529091528120549091610ab1918590610b15908690613200565b6000546001600160a01b03163314610b315760405162461bcd60e51b815260040161090f90613150565b6000600154831115610eb45760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c7900604482015260640161090f565b81610ed3576000610ec984600160008061184f565b519150610ab59050565b6000610ee384600160008061184f565b602001519150610ab59050565b6000546001600160a01b03163314610f1a5760405162461bcd60e51b815260040161090f90613150565b601380549115156101000261ff0019909216919091179055565b6001600160a01b03811660009081526024602052604081205460ff1615610f7157506001600160a01b031660009081526022602052604090205490565b6001600160a01b038216600090815260216020526040902054610ab590610cfe565b6000546001600160a01b03163314610fbd5760405162461bcd60e51b815260040161090f90613150565b6001600160a01b03166000908152602560205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461100f5760405162461bcd60e51b815260040161090f90613150565b601255565b6000546001600160a01b0316331461103e5760405162461bcd60e51b815260040161090f90613150565b600061105b600d54610dcc8560015461183790919063ffffffff16565b9050600061107a600d54610dcc8560015461183790919063ffffffff16565b9050600061109a620186a0610dcc6001805461183790919063ffffffff16565b90508083101580156110ac5750808210155b6111165760405162461bcd60e51b815260206004820152603560248201527f45524332303a206d61782054587320616e64206d61782057616c6c65742063616044820152746e6e6f74206265206c657373207468616e202e352560581b606482015260840161090f565b506003919091556004555050565b6000546001600160a01b0316331461114e5760405162461bcd60e51b815260040161090f90613150565b6001600160a01b03919091166000908152602560205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146111a35760405162461bcd60e51b815260040161090f90613150565b601d80546001600160a01b039687166001600160a01b03199182168117909255601c805496881696821687179055601f805495881695821686179055601e8054948816948216851790556020805493909716921682178655600090815260259095526040808620805460ff199081166001908117909255958752818720805487168217905593865280862080548616851790559185528185208054851684179055845290922080549091169091179055565b6000546001600160a01b0316331461127f5760405162461bcd60e51b815260040161090f90613150565b601f80546001600160a01b0319166001600160a01b0392909216919091179055600f55565b6000610ab13384610b1585604051806060016040528060258152602001613389602591393360009081526023602090815260408083206001600160a01b038d16845290915290205491906117d0565b6000610ab13384846116f3565b6000546001600160a01b0316331461132a5760405162461bcd60e51b815260040161090f90613150565b6040516370a0823160e01b81523060048201526000906001600160a01b038516906370a0823190602401602060405180830381865afa158015611371573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113959190613213565b90506001600160a01b03841663a9059cbb846113b66064610dcc8688611837565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015611401573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611425919061322c565b5050505050565b6000546001600160a01b031633146114565760405162461bcd60e51b815260040161090f90613150565b600a889055600b879055600c86905560058590556006849055600783905560088290556009819055600d5488118015906114945750600d54600b5411155b80156114a45750600d54600c5411155b6114ad57600080fd5b5050505050505050565b6000546001600160a01b031633146114e15760405162461bcd60e51b815260040161090f90613150565b60158390556001546114fc90620186a090610dcc9085611837565b60105560015461151590620186a090610dcc9084611837565b601155505050565b6000546001600160a01b031633146115475760405162461bcd60e51b815260040161090f90613150565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b6000546001600160a01b031633146115c55760405162461bcd60e51b815260040161090f90613150565b6115cd611897565b565b6001600160a01b0383166116315760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161090f565b6001600160a01b0382166116925760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161090f565b6001600160a01b0383811660008181526023602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6116fe838383611924565b6117088383611a5c565b611713838383611af5565b61171e828483611c04565b6117288383611c90565b611733838383611d04565b61173e838383611e7d565b6117488383611ea2565b6001600160a01b038316600090815260256020526040902054610dfa9084908490849060ff168061179157506001600160a01b03861660009081526025602052604090205460ff165b806117a4575060135462010000900460ff165b806117b15750600e5460ff165b6028549015906001600160a01b039081168882168114918a1614611f3e565b600081848411156117f45760405162461bcd60e51b815260040161090f9190612e6e565b505050900390565b6000610d7b8284613200565b6000610d7b828461319c565b60008060006118216121d5565b909250905061183081836131de565b9250505090565b6000610d7b8284613249565b6000610d7b82846131de565b611857612ded565b61186385858585612358565b9050611878818686611873611814565b6125d8565b608086015260608501526040840152602083015281525b949350505050565b600f546018546118a691611808565b6018556013805462ff000019166201000017905560006118c530610f34565b90506118de600f546019546117fc90919063ffffffff16565b601955600f546118ed90612665565b60006118fc82610cf330610f34565b601a5490915061190c90826117fc565b601a5550506013805462ff0000191690556000601655565b6001600160a01b0383166119885760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161090f565b6001600160a01b0382166119ea5760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161090f565b6119f383610f34565b811115610dfa5760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b606482015260840161090f565b6001600160a01b03821660009081526025602052604090205460ff16158015611a9e57506001600160a01b03811660009081526025602052604090205460ff16155b15610aa05760135460ff16610aa05760405162461bcd60e51b815260206004820152601d60248201527f45524332303a2054726164696e67206973206e6f7420616c6c6f776564000000604482015260640161090f565b6001600160a01b03821660009081526025602052604090205460ff16158015611b3757506001600160a01b03831660009081526025602052604090205460ff16155b8015611b4c57506001600160a01b0382163014155b8015611b665750601b546001600160a01b03838116911614155b8015611b8057506028546001600160a01b03838116911614155b8015611b9a5750601c546001600160a01b03838116911614155b15610dfa5760045481611bac84610f34565b611bb69190613200565b1115610dfa5760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e0000604482015260640161090f565b60035481111580611c2d57506001600160a01b03821660009081526025602052604090205460ff165b80611c5057506001600160a01b03831660009081526025602052604090205460ff165b610dfa5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161090f565b6028546001600160a01b038281169116148015611cc657506001600160a01b03821660009081526025602052604090205460ff16155b8015611cd55750600e5460ff16155b8015611cea575060135462010000900460ff16155b15610aa057601454611cfd9060016117fc565b6014555050565b60135460ff168015611d2f57506001600160a01b03831660009081526025602052604090205460ff16155b8015611d4857506028546001600160a01b038381169116145b8015611d5657506012548110155b8015611d655750600e5460ff16155b8015611d7a575060135462010000900460ff16155b15611d9857600160166000828254611d929190613200565b90915550505b600f5460185410158015611dae5750600f544710155b8015611dbe575060175460165410155b8015611dd15750601354610100900460ff165b8015611df657506001600160a01b03831660009081526025602052604090205460ff16155b8015611e0f57506028546001600160a01b038381169116145b8015611e1d575060135460ff165b8015611e2c5750600e5460ff16155b8015611e41575060135462010000900460ff16155b8015611e6257506013546001600160a01b0384811663010000009092041614155b8015611e7057506012548110155b15610dfa57610dfa611897565b611e888383836127b3565b15610dfa57611e98601054612878565b6000601455505050565b601380546301000000600160b81b03191690556028546001600160a01b038381169116148015611eeb57506001600160a01b03811660009081526025602052604090205460ff16155b8015611f00575060135462010000900460ff16155b8015611f0f5750600e5460ff16155b15610aa057601380546001600160a01b0383166301000000026301000000600160b81b03199091161790555050565b6000611f4c8585858561184f565b6001600160a01b03881660009081526024602052604090205490915060ff1615611fae576001600160a01b038716600090815260226020526040902054611f9490869061319c565b6001600160a01b0388166000908152602260205260409020555b6001600160a01b03861660009081526024602052604090205460ff16156120115760a08101516001600160a01b038716600090815260226020526040902054611ff79190613200565b6001600160a01b0387166000908152602260205260409020555b80516001600160a01b038816600090815260216020526040902054612036919061319c565b6001600160a01b038089166000908152602160209081526040808320949094558401519189168152919091205461206d9190613200565b6001600160a01b038716600090815260216020526040908190209190915581015160c082015161209d9190612a5b565b6120af81606001518260e00151612a90565b6120c28160800151826101000151612b06565b856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360a0015160405161210b91815260200190565b60405180910390a360e08101511561216f57306001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360e0015160405161216691815260200190565b60405180910390a35b610100810151156121cc576020546101008201516040516001600160a01b03928316928a16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef916121c391815260200190565b60405180910390a35b50505050505050565b6002546001546000918291825b6026548110156123275782602160006026848154811061220457612204613170565b60009182526020808320909101546001600160a01b03168352820192909252604001902054118061226f575081602260006026848154811061224857612248613170565b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b1561228557600254600154945094505050509091565b602160006026838154811061229c5761229c613170565b60009182526020808320909101546001600160a01b031683528201929092526040019020546122cb908461319c565b925060226000602683815481106122e4576122e4613170565b60009182526020808320909101546001600160a01b03168352820192909252604001902054612313908361319c565b91508061231f816131c5565b9150506121e2565b5060015460025461233891906131de565b82101561234f576002546001549350935050509091565b90939092509050565b612360612ded565b83158061237257506123728383612ba0565b156123835760a0810185905261188f565b8215801561238f575081155b1561244f5760006123b1600d54610dcc600c548961183790919063ffffffff16565b9050600c54600560000154116123e157600d546005546123d19088613249565b6123db91906131de565b60c08301525b600554600c546123f091611808565b6009541161241957600d546009546124089088613249565b61241291906131de565b6101008301525b612439826101000151610cf38460c001518461180890919063ffffffff16565b60e0830152612448818761319c565b60a0830152505b8215612510576000612472600d54610dcc600b548961183790919063ffffffff16565b9050600b54600560000154116124a257600d546005546124929088613249565b61249c91906131de565b60c08301525b600554600b546124b191611808565b600954116124da57600d546009546124c99088613249565b6124d391906131de565b6101008301525b6124fa826101000151610cf38460c001518461180890919063ffffffff16565b60e0830152612509818761319c565b60a0830152505b811561188f576000612533600d54610dcc600a548961183790919063ffffffff16565b9050600a546005600001541161256357600d546005546125539088613249565b61255d91906131de565b60c08301525b600554600a5461257291611808565b6009541161259b57600d5460095461258a9088613249565b61259491906131de565b6101008301525b6125bb826101000151610cf38460c001518461180890919063ffffffff16565b60e08301526125ca818761319c565b60a083015250949350505050565b6000808080806125e88689613249565b9450866126005750839250600091508190508061265a565b858960c001516126109190613249565b9250858960e001516126229190613249565b9150858961010001516126359190613249565b90508082612643858861319c565b61264d919061319c565b612657919061319c565b93505b945094509450945094565b6040805160028082526060820183526000926020830190803683375050602754604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa1580156126cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f39190613260565b8160008151811061270657612706613170565b60200260200101906001600160a01b031690816001600160a01b031681525050308160018151811061273a5761273a613170565b6001600160a01b039283166020918202929092010152602754601f5460405163b6f9de9560e01b81529183169263b6f9de959286926127869260009288929091169042906004016132c1565b6000604051808303818588803b15801561279f57600080fd5b505af11580156121cc573d6000803e3d6000fd5b600080601154831015905060006010546127cc30610f34565b600e54911115915060ff161580156127eb5750600e54610100900460ff165b80156127f45750815b801561281957506001600160a01b03861660009081526025602052604090205460ff16155b8015612827575060135460ff165b801561284057506028546001600160a01b038681169116145b8015612850575060155460145410155b80156128595750805b801561286e575060135462010000900460ff16155b9695505050505050565b600e805460ff19166001908117909155600a546000916128a59160029161289f91906117fc565b90611837565b9050600a546000036128de576008546006546007546128db9260029261289f926001926128d592909183916117fc565b906117fc565b90505b60075460009082906128f09085613249565b6128fa91906131de565b90506000612908828561319c565b90504761291482612be6565b6000612920824761319c565b600754909150600090612933908761319c565b61293d90836131de565b6007549091506000906129509083613249565b90508015612962576129628682612d40565b6006546000906129779061289f856002611837565b905080156129bb57601d546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156129b9573d6000803e3d6000fd5b505b6008546000906129d09061289f866002611837565b905080156129e9576018546129e590826117fc565b6018555b6000612a006018544761180890919063ffffffff16565b90508015612a4457601e546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612a42573d6000803e3d6000fd5b505b5050600e805460ff19169055505050505050505050565b8160026000828254612a6d919061319c565b909155505060298054829190600090612a87908490613200565b90915550505050565b8060296001016000828254612aa59190613200565b90915550503060009081526024602052604090205460ff1615612ae7573060009081526022602052604081208054839290612ae1908490613200565b90915550505b3060009081526021602052604081208054849290612a87908490613200565b8060296002016000828254612b1b9190613200565b9091555050602080546001600160a01b031660009081526024909152604090205460ff1615612b7557602080546001600160a01b031660009081526022909152604081208054839290612b6f908490613200565b90915550505b602080546001600160a01b031660009081526021909152604081208054849290612a87908490613200565b6000828015612baf5750600b54155b80612bc25750818015612bc25750600a54155b80610d7b575082158015612bd4575081155b8015610d7b575050600c541592915050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612c1b57612c1b613170565b6001600160a01b03928316602091820292909201810191909152602754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015612c74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c989190613260565b81600181518110612cab57612cab613170565b6001600160a01b039283166020918202929092010152602754612cd191309116846115cf565b60275460405163791ac94760e01b81526001600160a01b039091169063791ac94790612d0a9085906000908690309042906004016132f6565b600060405180830381600087803b158015612d2457600080fd5b505af1158015612d38573d6000803e3d6000fd5b505050505050565b602754612d589030906001600160a01b0316846115cf565b602754601c5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015612dc8573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906114259190613332565b6040518061012001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6001600160a01b0381168114612e4e57600080fd5b50565b600060208284031215612e6357600080fd5b8135610d7b81612e39565b600060208083528351808285015260005b81811015612e9b57858101830151858201604001528201612e7f565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215612ecf57600080fd5b8235612eda81612e39565b946020939093013593505050565b600080600060608486031215612efd57600080fd5b8335612f0881612e39565b92506020840135612f1881612e39565b929592945050506040919091013590565b600060208284031215612f3b57600080fd5b5035919050565b8015158114612e4e57600080fd5b60008060408385031215612f6357600080fd5b823591506020830135612f7581612f42565b809150509250929050565b600060208284031215612f9257600080fd5b8135610d7b81612f42565b60008060408385031215612fb057600080fd5b8235612fbb81612f42565b91506020830135612f7581612e39565b60008060408385031215612fde57600080fd5b50508035926020909101359150565b6000806040838503121561300057600080fd5b823561300b81612e39565b91506020830135612f7581612f42565b600080600080600060a0868803121561303357600080fd5b853561303e81612e39565b9450602086013561304e81612e39565b9350604086013561305e81612e39565b9250606086013561306e81612e39565b9150608086013561307e81612e39565b809150509295509295909350565b6000806040838503121561309f57600080fd5b823591506020830135612f7581612e39565b600080604083850312156130c457600080fd5b8235612fbb81612e39565b600080600080600080600080610100898b0312156130ec57600080fd5b505086359860208801359850604088013597606081013597506080810135965060a0810135955060c0810135945060e0013592509050565b60008060006060848603121561313957600080fd5b505081359360208301359350604090920135919050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ab557610ab5613186565b634e487b7160e01b600052603160045260246000fd5b6000600182016131d7576131d7613186565b5060010190565b6000826131fb57634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610ab557610ab5613186565b60006020828403121561322557600080fd5b5051919050565b60006020828403121561323e57600080fd5b8151610d7b81612f42565b8082028115828204841417610ab557610ab5613186565b60006020828403121561327257600080fd5b8151610d7b81612e39565b600081518084526020808501945080840160005b838110156132b65781516001600160a01b031687529582019590820190600101613291565b509495945050505050565b8481526080602082015260006132da608083018661327d565b6001600160a01b03949094166040830152506060015292915050565b85815284602082015260a06040820152600061331560a083018661327d565b6001600160a01b0394909416606083015250608001529392505050565b60008060006060848603121561334757600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212203a0cc5b347da98191d005162adf6641056c1b8f2edd7daaebbeef346b0c9da2c64736f6c63430008130033