[ { "inputs": [ { "internalType": "address", "name": "_treasuryWallet", "type": "address" }, { "internalType": "address", "name": "_dai", "type": "address" } ], "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": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeFromFees", "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": "pair", "type": "address" }, { "indexed": true, "internalType": "bool", "name": "value", "type": "bool" } ], "name": "SetAutomatedMarketMakerPair", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isBlacklisted", "type": "bool" } ], "name": "SetBlackList", "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": "treasuryWalletUpdated", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_isExcludedMaxTransactionAmount", "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": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "blacklists", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dai", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": [], "name": "disableTransferDelay", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "enableBlock", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "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": "excludeFromMaxTransaction", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "feeEnable", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": [], "name": "initialSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExcludedFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "launchMarketMaker", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "limitsInEffect", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransactionAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "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": "resumeTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setBlacklist", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_add", "type": "address" }, { "internalType": "bool", "name": "_isTrue", "type": "bool" } ], "name": "setLaunchMarketMaker", "outputs": [], "stateMutability": "nonpayable", "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": "toggleFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "tokensForTreasury", "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": "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": [], "name": "transferDelayEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": "treasuryWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uniswapV2Pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IJoeRouter02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newNum", "type": "uint256" } ], "name": "updateMaxTxnAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newNum", "type": "uint256" } ], "name": "updateMaxWalletAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "enabled", "type": "bool" } ], "name": "updateSwapEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newtreasuryWallet", "type": "address" } ], "name": "updatetreasuryWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
6101606040527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c961014052600a805463ff00ffff60a01b1916600160b81b1790556000600b819055600c55600e805460ff1990811660019081179092556010805490911690911790553480156200007557600080fd5b5060405162003e3a38038062003e3a833981016040819052620000989162000786565b604051806040016040528060048152602001634f50454360e01b81525080604051806040016040528060018152602001603160f81b815250604051806040016040528060088152602001674f70756c656e636560c01b815250604051806040016040528060048152602001634f50454360e01b8152506012826003908051906020019062000128929190620006c3565b5081516200013e906004906020850190620006c3565b5060ff166080908152845160209586012084519486019490942060e08590526101008190524660c0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818b01819052818301999099526060810194909452938301919091523060a080840191909152835180840382018152929091019283905281519190960120909452505061012052600680546001600160a01b03191633908117909155915081906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600a80546001600160a01b03199081166001600160a01b03841617909155600780547360ae616a2155ee3d9a68541ba4544862310933d49216821790556040805163c45a015560e01b81529051829163c45a0155916004808301926020929190829003018186803b1580156200028c57600080fd5b505afa158015620002a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c79190620007be565b600a546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c6539690604401602060405180830381600087803b1580156200031457600080fd5b505af115801562000329573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034f9190620007be565b600880546001600160a01b0319166001600160a01b039290921691821790556200037b9060016200044a565b69d3c21bcecceda10000006015819055612710906200039c906005620007f2565b620003a8919062000814565b6013556015546103e890620003bf90600a620007f2565b620003cb919062000814565b601455601554620003de9084906200049e565b600980546001600160a01b0319166001600160a01b03851617905562000418620004106006546001600160a01b031690565b60016200059e565b620004253060016200059e565b6200043461dead60016200059e565b620004418360016200059e565b5050506200088f565b6001600160a01b038216600081815260166020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b038216620004fa5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b62000516816002546200065960201b620018371790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620005499183906200183762000659821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6006546001600160a01b03163314620005fa5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620004f1565b6001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b60008062000668838562000837565b905083811015620006bc5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401620004f1565b9392505050565b828054620006d19062000852565b90600052602060002090601f016020900481019282620006f5576000855562000740565b82601f106200071057805160ff191683800117855562000740565b8280016001018555821562000740579182015b828111156200074057825182559160200191906001019062000723565b506200074e92915062000752565b5090565b5b808211156200074e576000815560010162000753565b80516001600160a01b03811681146200078157600080fd5b919050565b600080604083850312156200079a57600080fd5b620007a58362000769565b9150620007b56020840162000769565b90509250929050565b600060208284031215620007d157600080fd5b620006bc8262000769565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156200080f576200080f620007dc565b500290565b6000826200083257634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156200084d576200084d620007dc565b500190565b600181811c908216806200086757607f821691505b602082108114156200088957634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e051610100516101205161014051613550620008ea600039600061157b015260006125dc0152600061262b0152600061260601526000612587015260006125af0152600061049901526135506000f3fe608060405234801561001057600080fd5b50600436106103625760003560e01c80637571336a116101c8578063c024666811610104578063d505accf116100a2578063e884f2601161007c578063e884f2601461078b578063f2fde38b14610793578063f4b9fa75146107a6578063f8b45b05146107b957600080fd5b8063d505accf1461071c578063d709dce11461072f578063dd62ed3e1461075257600080fd5b8063c876d0b9116100de578063c876d0b9146106f4578063c8c8ebe414610701578063cc2ffe7c1461070a578063cfd05e831461071357600080fd5b8063c0246668146106bb578063c18bc195146106ce578063c2a4bcc3146106e157600080fd5b806395d89b4111610171578063a9059cbb1161014b578063a9059cbb14610668578063b31fc8ca1461067b578063b62496f514610684578063bbc0c742146106a757600080fd5b806395d89b411461063a5780639a7a23d614610642578063a457c2d71461065557600080fd5b80638a8c523c116101a25780638a8c523c1461060e5780638da5cb5b14610616578063924de9b71461062757600080fd5b80637571336a146105c05780637ecebe00146105d35780637f0785d0146105e657600080fd5b8063313ce567116102a25780634a62bb65116102405780636ddd17131161021a5780636ddd17131461056157806370a0823114610587578063715018a6146105b0578063751039fc146105b857600080fd5b80634a62bb65146105205780634fbee1931461052d5780635e2093631461055957600080fd5b8063395093511161027c57806339509351146104d457806340c10f19146104e75780634626402b146104fa57806349bd5a5e1461050d57600080fd5b8063313ce567146104925780633644e515146104c3578063378dc3dc146104cb57600080fd5b80631694505e1161030f578063203e727e116102e9578063203e727e1461045057806323b872dd1461046357806327c8f835146104765780632955ede61461047f57600080fd5b80631694505e146103f057806316c021291461041b57806318160ddd1461043e57600080fd5b80631031e36e116103405780631031e36e146103b257806310d5de53146103ba578063153b0d1e146103dd57600080fd5b80630694db1e1461036757806306fdde0314610371578063095ea7b31461038f575b600080fd5b61036f6107c2565b005b610379610851565b6040516103869190613025565b60405180910390f35b6103a261039d366004613096565b6108e3565b6040519015158152602001610386565b61036f6108fa565b6103a26103c83660046130c0565b60126020526000908152604090205460ff1681565b61036f6103eb3660046130eb565b61097e565b600754610403906001600160a01b031681565b6040516001600160a01b039091168152602001610386565b6103a26104293660046130c0565b60186020526000908152604090205460ff1681565b6002545b604051908152602001610386565b61036f61045e36600461311e565b610a38565b6103a2610471366004613137565b610b53565b61040361dead81565b61036f61048d3660046130c0565b610bbc565b60405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610386565b610442610c80565b61044260155481565b6103a26104e2366004613096565b610c8f565b61036f6104f5366004613096565b610cc5565b600954610403906001600160a01b031681565b600854610403906001600160a01b031681565b600e546103a29060ff1681565b6103a261053b3660046130c0565b6001600160a01b031660009081526011602052604090205460ff1690565b61036f610d9f565b600a546103a2907501000000000000000000000000000000000000000000900460ff1681565b6104426105953660046130c0565b6001600160a01b031660009081526020819052604090205490565b61036f610e49565b6103a2610efa565b61036f6105ce3660046130eb565b610f67565b6104426105e13660046130c0565b610fec565b600a546103a29077010000000000000000000000000000000000000000000000900460ff1681565b61036f61100a565b6006546001600160a01b0316610403565b61036f610635366004613173565b6110c5565b61037961116a565b61036f6106503660046130eb565b611179565b6103a2610663366004613096565b611265565b6103a2610676366004613096565b6112b4565b610442600c5481565b6103a26106923660046130c0565b60166020526000908152604090205460ff1681565b600a546103a290600160a01b900460ff1681565b61036f6106c93660046130eb565b6112c1565b61036f6106dc36600461311e565b611373565b61036f6106ef3660046130eb565b61148d565b6010546103a29060ff1681565b61044260135481565b610442600d5481565b610442600b5481565b61036f61072a36600461318e565b611527565b6103a261073d3660046130c0565b60176020526000908152604090205460ff1681565b610442610760366004613201565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6103a261168b565b61036f6107a13660046130c0565b6116f8565b600a54610403906001600160a01b031681565b61044260145481565b6006546001600160a01b031633146108215760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600a80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b179055565b6060600380546108609061322b565b80601f016020809104026020016040519081016040528092919081815260200182805461088c9061322b565b80156108d95780601f106108ae576101008083540402835291602001916108d9565b820191906000526020600020905b8154815290600101906020018083116108bc57829003601f168201915b5050505050905090565b60006108f033848461189d565b5060015b92915050565b6006546001600160a01b031633146109545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b600a80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff169055565b6006546001600160a01b031633146109d85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6001600160a01b038216600081815260186020908152604091829020805460ff191685151590811790915591519182527f1365a36244c5f48793fe8c34e438f543de193bdea38c4f133c166dce6fc1214591015b60405180910390a25050565b6006546001600160a01b03163314610a925760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b670de0b6b3a7640000612710610aa760025490565b610ab2906001613276565b610abc91906132c9565b610ac691906132c9565b811015610b3b5760405162461bcd60e51b815260206004820152603060248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201527f6c6f776572207468616e20302e303125000000000000000000000000000000006064820152608401610818565b610b4d81670de0b6b3a7640000613276565b60135550565b6000610b608484846119f6565b610bb28433610bad856040518060600160405280602881526020016134ce602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612548565b61189d565b5060019392505050565b6006546001600160a01b03163314610c165760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6009546040516001600160a01b03918216918316907f02f8a1483978974a6412ba3a67040b4daa4fc0dfe9439a7295f9a9538394f63590600090a36009805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6000610c8a612582565b905090565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916108f0918590610bad9086611837565b6006546001600160a01b03163314610d1f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6000610d2a60025490565b90506a0422ca8b0a00a425000000610d4283836132dd565b1115610d905760405162461bcd60e51b815260206004820152601c60248201527f4f5045433a20544f54414c20535550504c5920494e434f5252454354000000006044820152606401610818565b610d9a8383612679565b505050565b6006546001600160a01b03163314610df95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b600a80547fffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff8116770100000000000000000000000000000000000000000000009182900460ff1615909102179055565b6006546001600160a01b03163314610ea35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6006546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36006805473ffffffffffffffffffffffffffffffffffffffff19169055565b6006546000906001600160a01b03163314610f575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b50600e805460ff19169055600190565b6006546001600160a01b03163314610fc15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b6001600160a01b0381166000908152600560205260408120546108f4565b6006546001600160a01b031633146110645760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b600a54600160a01b900460ff161561107b57600080fd5b600a80547fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff16750101000000000000000000000000000000000000000017905543600b5542600c55565b6006546001600160a01b0316331461111f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b600a80549115157501000000000000000000000000000000000000000000027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6060600480546108609061322b565b6006546001600160a01b031633146111d35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6008546001600160a01b03838116911614156112575760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610818565b6112618282612757565b5050565b60006108f03384610bad856040518060600160405280602581526020016134f6602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612548565b60006108f03384846119f6565b6006546001600160a01b0316331461131b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df79101610a2c565b6006546001600160a01b031633146113cd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b670de0b6b3a76400006103e86113e260025490565b6113ed906005613276565b6113f791906132c9565b61140191906132c9565b8110156114755760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060448201527f302e3525000000000000000000000000000000000000000000000000000000006064820152608401610818565b61148781670de0b6b3a7640000613276565b60145550565b6006546001600160a01b031633146114e75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b80156114fc57600e5460ff166114fc57600080fd5b6001600160a01b03919091166000908152601760205260409020805460ff1916911515919091179055565b834211156115775760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152606401610818565b60007f00000000000000000000000000000000000000000000000000000000000000008888886115a68c6127ab565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000611601826127d5565b905060006116118287878761283e565b9050896001600160a01b0316816001600160a01b0316146116745760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152606401610818565b61167f8a8a8a61189d565b50505050505050505050565b6006546000906001600160a01b031633146116e85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b506010805460ff19169055600190565b6006546001600160a01b031633146117525760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610818565b6001600160a01b0381166117ce5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610818565b6006546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b60008061184483856132dd565b9050838110156118965760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610818565b9392505050565b6001600160a01b0383166119185760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610818565b6001600160a01b0382166119945760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610818565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316611a725760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610818565b6001600160a01b038216611aee5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610818565b6001600160a01b03831660009081526018602052604090205460ff16158015611b3057506001600160a01b03821660009081526018602052604090205460ff16155b611b7c5760405162461bcd60e51b815260206004820152601760248201527f4f5045433a20626c61636b6c69737420616464726573730000000000000000006044820152606401610818565b80611b8d57610d9a83836000612866565b600e5460009060ff16156120e1576006546001600160a01b03858116911614801590611bc757506006546001600160a01b03848116911614155b8015611bdb57506001600160a01b03831615155b8015611bf257506001600160a01b03831661dead14155b8015611c085750600a54600160b01b900460ff16155b156120e157600a54600160a01b900460ff16611ca9576001600160a01b03841660009081526011602052604090205460ff1680611c5d57506001600160a01b03831660009081526011602052604090205460ff165b611ca95760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e000000000000000000006044820152606401610818565b60105460ff1615611dbc576006546001600160a01b03848116911614801590611ce057506007546001600160a01b03848116911614155b8015611cfa57506008546001600160a01b03848116911614155b15611dbc57326000908152600f60205260409020544311611da95760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60648201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000608482015260a401610818565b326000908152600f602052604090204390555b6001600160a01b03841660009081526016602052604090205460ff168015611dfd57506001600160a01b03831660009081526012602052604090205460ff16155b15611ef357601354821115611e7a5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d61785472616e73616374696f6e416d6f756e742e00000000000000000000006064820152608401610818565b6014546001600160a01b038416600090815260208190526040902054611ea090846132dd565b1115611eee5760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610818565b612045565b6001600160a01b03831660009081526016602052604090205460ff168015611f3457506001600160a01b03841660009081526012602052604090205460ff16155b15611fb157601354821115611eee5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d61785472616e73616374696f6e416d6f756e742e000000000000000000006064820152608401610818565b6001600160a01b03831660009081526012602052604090205460ff16612045576014546001600160a01b038416600090815260208190526040902054611ff790846132dd565b11156120455760405162461bcd60e51b815260206004820152601360248201527f4d61782077616c6c6574206578636565646564000000000000000000000000006044820152606401610818565b6001600160a01b03841660009081526016602052604090205460ff16801561206e5750600b5415155b80156120875750600b546120839060016132dd565b4311155b156120e1576001600160a01b0383166000908152601760205260409020805460ff191660011790556120c560646120bf846063612a1b565b90612ab6565b90506120db84846120d684866132f5565b612866565b50505050565b6001600160a01b03841660009081526017602052604090205460ff168061212057506001600160a01b03831660009081526017602052604090205460ff165b15612131576120db84846000612866565b600a547501000000000000000000000000000000000000000000900460ff1680156121665750600a54600160b01b900460ff16155b801561218b57506001600160a01b03841660009081526011602052604090205460ff16155b80156121b057506001600160a01b03831660009081526011602052604090205460ff16155b80156121d557506001600160a01b03841660009081526016602052604090205460ff16155b1561223957600a80547fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff16600160b01b179055612210612af8565b600a80547fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff1690555b600a546001600160a01b03851660009081526011602052604090205460ff600160b01b90920482161591168061228757506001600160a01b03841660009081526011602052604090205460ff165b15612290575060005b8080156122ba5750600a5477010000000000000000000000000000000000000000000000900460ff165b15612536576001600160a01b03841660009081526016602052604090205460ff1680156122e85750600c5415155b80156123025750600c546122fe906107086132dd565b4211155b1561233c5761231760646120bf856046612a1b565b915081600d600082825461232b91906132dd565b9091555061233c9050853084612866565b6001600160a01b03841660009081526016602052604090205460ff1680156123655750600c5415155b801561237e5750600c5461237b906107086132dd565b42115b80156123a45750600c54612394906107086132dd565b6123a0906146506132dd565b4211155b1561242c576000610e10610708600c54426123bf91906132f5565b6123c991906132f5565b6123d391906132c9565b6123de9060016132dd565b905061240560646120bf6123f3846005613276565b6123fe9060466132f5565b8790612a1b565b925082600d600082825461241991906132dd565b9091555061242a9050863085612866565b505b6001600160a01b03841660009081526016602052604090205460ff1680156124555750600c5415155b801561247a5750600c5461246b906107086132dd565b612477906146506132dd565b42115b1561252957600062015180614650610708600c544261249991906132f5565b6124a391906132f5565b6124ad91906132f5565b6124b791906132c9565b6124c29060016132dd565b905060006124d182600a613276565b602d11156124f2576124e482600a613276565b6124ef90602d6132f5565b90505b61250160646120bf8784612a1b565b935083600d600082825461251591906132dd565b909155506125269050873086612866565b50505b61253382846132f5565b92505b612541858585612866565b5050505050565b6000818484111561256c5760405162461bcd60e51b81526004016108189190613025565b50600061257984866132f5565b95945050505050565b6000467f00000000000000000000000000000000000000000000000000000000000000008114156125d4577f000000000000000000000000000000000000000000000000000000000000000091505090565b5050604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b6001600160a01b0382166126cf5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610818565b6002546126dc9082611837565b6002556001600160a01b0382166000908152602081905260409020546127029082611837565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6001600160a01b038216600081815260166020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b03811660009081526005602052604090208054906127cf81612b8b565b50919050565b60006108f46127e2612582565b836040517f19010000000000000000000000000000000000000000000000000000000000006020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b600080600061284f87878787612ba8565b9150915061285c81612c95565b5095945050505050565b6001600160a01b0383166128e25760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610818565b6001600160a01b03821661295e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610818565b61299b816040518060600160405280602681526020016134a8602691396001600160a01b0386166000908152602081905260409020549190612548565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546129ca9082611837565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016119e9565b600082612a2a575060006108f4565b6000612a368385613276565b905082612a4385836132c9565b146118965760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610818565b600061189683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612e89565b30600090815260208190526040902054600d54811580612b16575080155b15612b1f575050565b612710612b2b60025490565b612b36906005613276565b612b4091906132c9565b612b4b906014613276565b821115612b8157612710612b5e60025490565b612b69906005613276565b612b7391906132c9565b612b7e906014613276565b91505b81610d9a81612eed565b6001816000016000828254612ba091906132dd565b909155505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115612bdf5750600090506003612c8c565b8460ff16601b14158015612bf757508460ff16601c14155b15612c085750600090506004612c8c565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612c5c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612c8557600060019250925050612c8c565b9150600090505b94509492505050565b6000816004811115612ca957612ca961330c565b1415612cb25750565b6001816004811115612cc657612cc661330c565b1415612d145760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610818565b6002816004811115612d2857612d2861330c565b1415612d765760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610818565b6003816004811115612d8a57612d8a61330c565b1415612dfe5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610818565b6004816004811115612e1257612e1261330c565b1415612e865760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610818565b50565b60008183612eaa5760405162461bcd60e51b81526004016108189190613025565b506000612eb784866132c9565b9050612ec38486613322565b612ecd8286613276565b612ed791906132dd565b8514612ee557612ee5613336565b949350505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612f2257612f22613362565b6001600160a01b039283166020918202929092010152600a54825191169082906001908110612f5357612f53613362565b6001600160a01b039283166020918202929092010152600754612f79913091168461189d565b6007546009546040517f38ed17390000000000000000000000000000000000000000000000000000000081526001600160a01b03928316926338ed173992612fcf92879260009288929116904290600401613378565b600060405180830381600087803b158015612fe957600080fd5b505af1158015612ffd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d9a91908101906133e9565b600060208083528351808285015260005b8181101561305257858101830151858201604001528201613036565b81811115613064576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461309157600080fd5b919050565b600080604083850312156130a957600080fd5b6130b28361307a565b946020939093013593505050565b6000602082840312156130d257600080fd5b6118968261307a565b8035801515811461309157600080fd5b600080604083850312156130fe57600080fd5b6131078361307a565b9150613115602084016130db565b90509250929050565b60006020828403121561313057600080fd5b5035919050565b60008060006060848603121561314c57600080fd5b6131558461307a565b92506131636020850161307a565b9150604084013590509250925092565b60006020828403121561318557600080fd5b611896826130db565b600080600080600080600060e0888a0312156131a957600080fd5b6131b28861307a565b96506131c06020890161307a565b95506040880135945060608801359350608088013560ff811681146131e457600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561321457600080fd5b61321d8361307a565b91506131156020840161307a565b600181811c9082168061323f57607f821691505b602082108114156127cf57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156132ae576132ae613260565b500290565b634e487b7160e01b600052601260045260246000fd5b6000826132d8576132d86132b3565b500490565b600082198211156132f0576132f0613260565b500190565b60008282101561330757613307613260565b500390565b634e487b7160e01b600052602160045260246000fd5b600082613331576133316132b3565b500690565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156133c85784516001600160a01b0316835293830193918301916001016133a3565b50506001600160a01b03969096166060850152505050608001529392505050565b600060208083850312156133fc57600080fd5b825167ffffffffffffffff8082111561341457600080fd5b818501915085601f83011261342857600080fd5b81518181111561343a5761343a61334c565b8060051b604051601f19603f8301168101818110858211171561345f5761345f61334c565b60405291825284820192508381018501918883111561347d57600080fd5b938501935b8285101561349b57845184529385019392850192613482565b9897505050505050505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212207d592a0382feebdfcd7765b8985d0130471f91e481153c070bfa130b9da6a9a664736f6c6343000809003300000000000000000000000027e0267162446e0bd94c3af6ce03db033c47bf1e000000000000000000000000d586e7f844cea2f87f50152665bcbc2c279d8d70