[ { "inputs": [ { "internalType": "address[]", "name": "_addresses", "type": "address[]" }, { "internalType": "uint8[]", "name": "sellFeesNoNodes_", "type": "uint8[]" }, { "internalType": "uint8[]", "name": "sellFeesWithNodes_", "type": "uint8[]" }, { "internalType": "uint8", "name": "buyNodeFee_", "type": "uint8" }, { "internalType": "uint8[]", "name": "claimRewardsFees_", "type": "uint8[]" }, { "internalType": "uint256", "name": "totalSupply_", "type": "uint256" } ], "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": "uint256", "name": "amount", "type": "uint256" }, { "indexed": true, "internalType": "uint256", "name": "blockTime", "type": "uint256" } ], "name": "Cashout", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newLiquidityWallet", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldLiquidityWallet", "type": "address" } ], "name": "LiquidityWalletUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousRate", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newRate", "type": "uint256" } ], "name": "MaxBalanceAmountRateUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "previousRate", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newRate", "type": "uint256" } ], "name": "MaxTransferAmountRateUpdated", "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": false, "internalType": "uint256", "name": "tokensSwapped", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "ethReceived", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "tokensIntoLiqudity", "type": "uint256" } ], "name": "SwapAndLiquify", "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": "UpdateJoeRouter", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "BURN_ADDRESS", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "account", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "blacklistAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "buyNodeFee", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "cashoutAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "blocktime", "type": "uint256" } ], "name": "cashoutReward", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "charityPool", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewardsFeeCharity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewardsFeeDev", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewardsFeeLiquidity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claimRewardsFeeTotal", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "createNodeWithTokens", "outputs": [], "stateMutability": "nonpayable", "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": "devPool", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isBlacklisted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" } ], "name": "isExcludedFromAntiWhale", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isTradingEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "joePair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "joeRouterAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxBalanceAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxBalanceAmountRate", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransferAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransferAmountRate", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "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": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardsPool", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeNoNodesCharity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeNoNodesDev", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeNoNodesLiquidity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeNoNodesRewards", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeNoNodesTotal", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeWithNodesCharity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeWithNodesDev", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeWithNodesLiquidity", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeWithNodesRewards", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFeeWithNodesTotal", "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": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "bool", "name": "_excluded", "type": "bool" } ], "name": "setExcludedFromAntiWhale", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapLiquifyEnabled", "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": "totalClaimed", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "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": [ { "internalType": "uint8", "name": "buyNodeFee_", "type": "uint8" } ], "name": "updateBuyNodeFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "newVal", "type": "address" } ], "name": "updateCharityPool", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8[]", "name": "claimRewardsFees_", "type": "uint8[]" } ], "name": "updateClaimRewardsFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "newVal", "type": "address" } ], "name": "updateDevPool", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "newVal", "type": "bool" } ], "name": "updateIsTradingEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" } ], "name": "updateJoeRouterAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_maxBalanceAmountRate", "type": "uint16" } ], "name": "updateMaxBalanceAmountRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_maxTransferAmountRate", "type": "uint16" } ], "name": "updateMaxTransferAmountRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newVal", "type": "address" } ], "name": "updateNodeManager", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "newVal", "type": "address" } ], "name": "updateRewardsPool", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8[]", "name": "sellFeesNoNodes_", "type": "uint8[]" } ], "name": "updateSellFeeNoNodes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8[]", "name": "sellFeesWithNodes_", "type": "uint8[]" } ], "name": "updateSellFeeWithNodes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "newVal", "type": "bool" } ], "name": "updateSwapLiquify", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
6080604052600780547360ae616a2155ee3d9a68541ba4544862310933d46001600160a01b03199091161790556010805463ffffffff19166214000517905560006011556012805461ffff19166101011790556015805460ff191690553480156200006957600080fd5b5060405162004a6838038062004a688339810160408190526200008c9162000e66565b6040518060400160405280600a8152602001694865726f204b6974747960b01b815250604051806040016040528060038152602001621212d560ea1b8152508160039080519060200190620000e392919062000c87565b508051620000f990600490602084019062000c87565b505050620001166200011062000a8a60201b60201c565b62000a8e565b336000908152601860205260408082208054600160ff1991821681179092557f999d26de3473317ead3eeaf34ca78057f1439db67b6953469c3c96ce9caf6bd78054821683179055308452918320805483168217905561dead83527fe3ec2099396b7359df1c566dfdf9dfdb5e22fd64a6ede9d61aa32b2f63968fd68054909216179055865187908290620001bb57634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b03161415801562000217575060006001600160a01b0316866001815181106200020357634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b031614155b801562000260575060006001600160a01b0316866002815181106200024c57634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b031614155b8015620002a9575060006001600160a01b0316866003815181106200029557634e487b7160e01b600052603260045260246000fd5b60200260200101516001600160a01b031614155b620002e65760405162461bcd60e51b8152602060048201526008602482015267434f4e5354523a3160c01b60448201526064015b60405180910390fd5b856000815181106200030857634e487b7160e01b600052603260045260246000fd5b6020026020010151600860006101000a8154816001600160a01b0302191690836001600160a01b03160217905550856001815181106200035857634e487b7160e01b600052603260045260246000fd5b6020026020010151600960006101000a8154816001600160a01b0302191690836001600160a01b0316021790555085600281518110620003a857634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600a80546001600160a01b0319166001600160a01b039283161781556008548216600090815260189093526040808420805460ff1990811660019081179092556009548516865282862080548216831790559254909316845290922080549092161790558551869060039081106200043c57634e487b7160e01b600052603260045260246000fd5b6020908102919091010151601380546001600160a01b0319166001600160a01b0392831617905560075416620004a05760405162461bcd60e51b815260206004820152600860248201526721a7a729aa291d1960c11b6044820152606401620002dd565b6007546040805163c45a015560e01b815290516001600160a01b0390921691600091839163c45a015591600480820192602092909190829003018186803b158015620004eb57600080fd5b505afa15801562000500573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000526919062000e49565b6001600160a01b031663c9c6539630846001600160a01b03166373b295c26040518163ffffffff1660e01b815260040160206040518083038186803b1580156200056f57600080fd5b505afa15801562000584573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005aa919062000e49565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015620005f357600080fd5b505af115801562000608573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200062e919062000e49565b6012805462010000600160b01b031916620100006001600160a01b038681169190910291909117909155600680546001600160a01b03191691831691909117905590506200067e81600162000ae0565b86600081518110620006a057634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60146101000a81548160ff021916908360ff16021790555086600181518110620006e457634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60156101000a81548160ff021916908360ff160217905550866002815181106200072857634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60166101000a81548160ff021916908360ff160217905550866003815181106200076c57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600a805460ff60b81b1916600160b81b60ff93841681029190911791829055620007e993908204831692620007d592600160b01b81048216928492600160a01b8304811692600160a81b9004169062000b8d811b6200262117901c565b62000b8d60201b620026211790919060201c565b600b55855186906000906200080e57634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60006101000a81548160ff021916908360ff160217905550856001815181106200085257634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60016101000a81548160ff021916908360ff160217905550856002815181106200089657634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60026101000a81548160ff021916908360ff16021790555085600381518110620008da57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600c805460ff928316630100000090810263ff0000001983168117938490556200094195918404851694620007d59462010000810482169486949383169083161792610100909104909116906200262162000b8d821b17901c565b600d55600e805460ff191660ff8716179055835184906000906200097557634e487b7160e01b600052603260045260246000fd5b6020026020010151600e60016101000a81548160ff021916908360ff16021790555083600181518110620009b957634e487b7160e01b600052603260045260246000fd5b6020026020010151600e60026101000a81548160ff021916908360ff16021790555083600281518110620009fd57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151600e805463ff0000001916630100000060ff9384168102919091179182905562000a5a93908204831692620007d5926101008104821692620100009091049091169062000b8d811b6200262117901c565b600f5562000a7c3362000a7685670de0b6b3a764000062000fa9565b62000ba2565b505050505050505062001034565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03821660009081526017602052604090205460ff161515811515141562000b395760405162461bcd60e51b8152602060048201526005602482015264544b4e3a3360d81b6044820152606401620002dd565b6001600160a01b038216600081815260176020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b600062000b9b828462000f8e565b9392505050565b6001600160a01b03821662000bfa5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620002dd565b806002600082825462000c0e919062000f8e565b90915550506001600160a01b0382166000908152602081905260408120805483929062000c3d90849062000f8e565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b82805462000c959062000fcb565b90600052602060002090601f01602090048101928262000cb9576000855562000d04565b82601f1062000cd457805160ff191683800117855562000d04565b8280016001018555821562000d04579182015b8281111562000d0457825182559160200191906001019062000ce7565b5062000d1292915062000d16565b5090565b5b8082111562000d12576000815560010162000d17565b80516001600160a01b038116811462000d4557600080fd5b919050565b600082601f83011262000d5b578081fd5b8151602062000d7462000d6e8362000f68565b62000f35565b80838252828201915082860187848660051b890101111562000d94578586fd5b855b8581101562000dbd5762000daa8262000d2d565b8452928401929084019060010162000d96565b5090979650505050505050565b600082601f83011262000ddb578081fd5b8151602062000dee62000d6e8362000f68565b80838252828201915082860187848660051b890101111562000e0e578586fd5b855b8581101562000dbd5762000e248262000e37565b8452928401929084019060010162000e10565b805160ff8116811462000d4557600080fd5b60006020828403121562000e5b578081fd5b62000b9b8262000d2d565b60008060008060008060c0878903121562000e7f578182fd5b86516001600160401b038082111562000e96578384fd5b62000ea48a838b0162000d4a565b9750602089015191508082111562000eba578384fd5b62000ec88a838b0162000dca565b9650604089015191508082111562000ede578384fd5b62000eec8a838b0162000dca565b955062000efc60608a0162000e37565b9450608089015191508082111562000f12578384fd5b5062000f2189828a0162000dca565b92505060a087015190509295509295509295565b604051601f8201601f191681016001600160401b038111828210171562000f605762000f606200101e565b604052919050565b60006001600160401b0382111562000f845762000f846200101e565b5060051b60200190565b6000821982111562000fa45762000fa462001008565b500190565b600081600019048311821515161562000fc65762000fc662001008565b500290565b600181811c9082168062000fe057607f821691505b602082108114156200100257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b613a2480620010446000396000f3fe6080604052600436106103a25760003560e01c806370a08231116101e5578063b62496f51161010c578063e790d004116100a5578063f4e27dc811610077578063f4e27dc814610b5e578063fabc403514610b7e578063fc74febd14610b9d578063fccc281314610bbc578063fe575a8714610bd257005b8063e790d00414610adc578063eb18270114610afc578063ec23064b14610b1d578063f2fde38b14610b3e57005b8063d54ad2a1116100de578063d54ad2a114610a46578063dd62ed3e14610a5c578063e04252ee14610aa2578063e159b3ae14610abc57005b8063b62496f5146109c1578063c57c94b3146109f1578063c7f59a6714610a11578063c8c8273714610a3157005b80639dc29fac1161017e578063ab04acd411610150578063ab04acd41461094a578063b01e828d1461095f578063b5838a2714610980578063b5ec6db8146109a057005b80639dc29fac146108d5578063a457c2d7146108f5578063a9059cbb14610915578063a9e757231461093557005b80638da5cb5b116101b75780638da5cb5b146108625780638f856eab1461088057806395d89b41146108a05780639a7a23d6146108b557005b806370a08231146107d6578063715018a61461080c57806375da733b1461082157806380b663081461084157005b806337f52c32116102c957806353d21d021161026257806365bfe4301161023457806365bfe430146107565780636653a340146107765780636a141e2c146107965780636bca89cb146107b657005b806353d21d02146106e2578063545579731461070257806359f16c17146107175780635ec4565f1461073757005b806342da30ac1161029b57806342da30ac14610660578063455a4396146106815780634ef91063146106a1578063527509f3146106c257005b806337f52c32146105dc57806338a93bae146105f257806339509351146106125780633ff8bf2e1461063257005b806318160ddd1161033b5780632ae883fd1161030d5780632ae883fd146105685780632b41beb2146105885780632de16e38146105a8578063313ce567146105c857005b806318160ddd146104da5780631ce81b0c146104ef57806323b872dd1461050f578063269f534c1461052f57005b8063095ea7b311610374578063095ea7b3146104585780630ef6bb00146104785780630f9ad0fa1461048e57806317df2b51146104ba57005b80630359fea9146103ab578063064a59d0146103e857806306fdde0314610412578063081984861461043457005b366103a957005b005b3480156103b757600080fd5b506008546103cb906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156103f457600080fd5b506012546104029060ff1681565b60405190151581526020016103df565b34801561041e57600080fd5b50610427610c02565b6040516103df91906137d9565b34801561044057600080fd5b5061044a600d5481565b6040519081526020016103df565b34801561046457600080fd5b50610402610473366004613616565b610c94565b34801561048457600080fd5b5061044a600b5481565b34801561049a57600080fd5b50600c546104a89060ff1681565b60405160ff90911681526020016103df565b3480156104c657600080fd5b506103a96104d5366004613641565b610cac565b3480156104e657600080fd5b5060025461044a565b3480156104fb57600080fd5b506103a961050a3660046137bf565b610e30565b34801561051b57600080fd5b5061040261052a3660046135a9565b610e70565b34801561053b57600080fd5b5061040261054a366004613539565b6001600160a01b031660009081526018602052604090205460ff1690565b34801561057457600080fd5b506103a9610583366004613708565b610e94565b34801561059457600080fd5b506103a96105a3366004613641565b610ed1565b3480156105b457600080fd5b50600e546104a89062010000900460ff1681565b3480156105d457600080fd5b5060126104a8565b3480156105e857600080fd5b5061044a600f5481565b3480156105fe57600080fd5b506103a961060d366004613539565b611041565b34801561061e57600080fd5b5061040261062d366004613616565b61108d565b34801561063e57600080fd5b5060105461064d9061ffff1681565b60405161ffff90911681526020016103df565b34801561066c57600080fd5b50600e546104a8906301000000900460ff1681565b34801561068d57600080fd5b506103a961069c3660046135e9565b6110cc565b3480156106ad57600080fd5b5060105461064d9062010000900461ffff1681565b3480156106ce57600080fd5b506007546103cb906001600160a01b031681565b3480156106ee57600080fd5b506103a96106fd366004613539565b611121565b34801561070e57600080fd5b506103a961116d565b34801561072357600080fd5b506103a9610732366004613740565b611502565b34801561074357600080fd5b50600c546104a890610100900460ff1681565b34801561076257600080fd5b506103a9610771366004613762565b6116cf565b34801561078257600080fd5b506103a9610791366004613539565b611a6a565b3480156107a257600080fd5b506103a96107b1366004613740565b611ab6565b3480156107c257600080fd5b506006546103cb906001600160a01b031681565b3480156107e257600080fd5b5061044a6107f1366004613539565b6001600160a01b031660009081526020819052604090205490565b34801561081857600080fd5b506103a9611c6c565b34801561082d57600080fd5b506103a961083c366004613539565b611ca2565b34801561084d57600080fd5b50600a546104a890600160b01b900460ff1681565b34801561086e57600080fd5b506005546001600160a01b03166103cb565b34801561088c57600080fd5b50600a546103cb906001600160a01b031681565b3480156108ac57600080fd5b50610427611cee565b3480156108c157600080fd5b506103a96108d03660046135e9565b611cfd565b3480156108e157600080fd5b506103a96108f0366004613616565b611d7b565b34801561090157600080fd5b50610402610910366004613616565b611daf565b34801561092157600080fd5b50610402610930366004613616565b611e41565b34801561094157600080fd5b5061044a611e4f565b34801561095657600080fd5b5061044a611e79565b34801561096b57600080fd5b50600a546104a890600160a01b900460ff1681565b34801561098c57600080fd5b506009546103cb906001600160a01b031681565b3480156109ac57600080fd5b50600c546104a8906301000000900460ff1681565b3480156109cd57600080fd5b506104026109dc366004613539565b60176020526000908152604090205460ff1681565b3480156109fd57600080fd5b506103a9610a0c366004613641565b611e9f565b348015610a1d57600080fd5b506103a9610a2c3660046135e9565b611fc2565b348015610a3d57600080fd5b506103a9612017565b348015610a5257600080fd5b5061044a60115481565b348015610a6857600080fd5b5061044a610a77366004613571565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b348015610aae57600080fd5b50600e546104a89060ff1681565b348015610ac857600080fd5b506103a9610ad7366004613539565b6122c8565b348015610ae857600080fd5b50600c546104a89062010000900460ff1681565b348015610b0857600080fd5b50600a546104a890600160b81b900460ff1681565b348015610b2957600080fd5b50600a546104a890600160a81b900460ff1681565b348015610b4a57600080fd5b506103a9610b59366004613539565b612542565b348015610b6a57600080fd5b506103a9610b79366004613708565b6125dd565b348015610b8a57600080fd5b5060125461040290610100900460ff1681565b348015610ba957600080fd5b50600e546104a890610100900460ff1681565b348015610bc857600080fd5b506103cb61dead81565b348015610bde57600080fd5b50610402610bed366004613539565b60166020526000908152604090205460ff1681565b606060038054610c1190613964565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3d90613964565b8015610c8a5780601f10610c5f57610100808354040283529160200191610c8a565b820191906000526020600020905b815481529060010190602001808311610c6d57829003601f168201915b5050505050905090565b600033610ca2818585612634565b5060019392505050565b6005546001600160a01b03163314610cdf5760405162461bcd60e51b8152600401610cd69061382c565b60405180910390fd5b80600081518110610d0057634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60146101000a81548160ff021916908360ff16021790555080600181518110610d4357634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60156101000a81548160ff021916908360ff16021790555080600281518110610d8657634e487b7160e01b600052603260045260246000fd5b6020026020010151600a60166101000a81548160ff021916908360ff16021790555080600381518110610dc957634e487b7160e01b600052603260045260246000fd5b6020908102919091010151600a805460ff60b81b1916600160b81b60ff93841681029190911791829055610e2a92908204811691610e2491600160b01b82048116918391600160a01b8204811691600160a81b900416612621565b90612621565b600b5550565b6005546001600160a01b03163314610e5a5760405162461bcd60e51b8152600401610cd69061382c565b600e805460ff191660ff92909216919091179055565b600033610e7e858285612759565b610e898585856127eb565b506001949350505050565b6005546001600160a01b03163314610ebe5760405162461bcd60e51b8152600401610cd69061382c565b6012805460ff1916911515919091179055565b6005546001600160a01b03163314610efb5760405162461bcd60e51b8152600401610cd69061382c565b80600081518110610f1c57634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60006101000a81548160ff021916908360ff16021790555080600181518110610f5f57634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60016101000a81548160ff021916908360ff16021790555080600281518110610fa257634e487b7160e01b600052603260045260246000fd5b6020026020010151600c60026101000a81548160ff021916908360ff16021790555080600381518110610fe557634e487b7160e01b600052603260045260246000fd5b6020908102919091010151600c805463ff000000198116630100000060ff94851681029182179384905561103b94908404811693610e249362010000820483169385939182169082161791610100900416612621565b600d5550565b6005546001600160a01b0316331461106b5760405162461bcd60e51b8152600401610cd69061382c565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190610ca290829086906110c79087906138f6565b612634565b6005546001600160a01b031633146110f65760405162461bcd60e51b8152600401610cd69061382c565b6001600160a01b03919091166000908152601660205260409020805460ff1916911515919091179055565b6005546001600160a01b0316331461114b5760405162461bcd60e51b8152600401610cd69061382c565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b33806111a85760405162461bcd60e51b815260206004820152600a602482015269434153484f5554413a3160b01b6044820152606401610cd6565b6001600160a01b03811660009081526016602052604090205460ff16156111e15760405162461bcd60e51b8152600401610cd690613861565b6009546001600160a01b0382811691161480159061120d57506008546001600160a01b03828116911614155b80156112275750600a546001600160a01b03828116911614155b6112605760405162461bcd60e51b815260206004820152600a60248201526921a0a9a427aaaa209d1960b11b6044820152606401610cd6565b60135460405163956de88760e01b81526001600160a01b038381166004830152600092169063956de8879060240160206040518083038186803b1580156112a657600080fd5b505afa1580156112ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112de919061377a565b9050600081116113275760405162461bcd60e51b81526020600482015260146024820152734e6f207265776172647320617661696c61626c6560601b6044820152606401610cd6565b600e54819060009061134f90606490611349908590610100900460ff16612dc3565b90612dcf565b60085460095491925061136f916001600160a01b03918216911683612ddb565b611379818361394d565b600e5490925060009061139d9060649061134990879062010000900460ff16612dc3565b600854600a549192506113bd916001600160a01b03918216911683612ddb565b6113c7818461394d565b601254909350610100900460ff161561142d57600e546000906113fc906064906113499088906301000000900460ff16612dc3565b600854909150611416906001600160a01b03163083612ddb565b61141f81612fa9565b611429818561394d565b9350505b600854611444906001600160a01b03168685612ddb565b60135460405163d3b0dba960e01b81526001600160a01b0387811660048301529091169063d3b0dba990602401600060405180830381600087803b15801561148b57600080fd5b505af115801561149f573d6000803e3d6000fd5b5050505083601160008282546114b591906138f6565b90915550506040518481526000906001600160a01b038716907f4f32a1005fcf45a64a68bc4258b4e0f5522b7aa6a06506781aa4e6c6395c48d09060200160405180910390a35050505050565b6005546001600160a01b0316331461152c5760405162461bcd60e51b8152600401610cd69061382c565b6103e88161ffff1611156115ce5760405162461bcd60e51b815260206004820152605c60248201527f534545443a3a7570646174656d617842616c616e6365416d6f756e745261746560448201527f3a204d6178207472616e7366657220616d6f756e742072617465206d7573742060648201527f6e6f742065786365656420746865206d6178696d756d20726174652e00000000608482015260a401610cd6565b60018161ffff16101561166b5760405162461bcd60e51b815260206004820152605960248201527f534545443a3a7570646174656d617842616c616e6365416d6f756e745261746560448201527f3a204d6178207472616e7366657220616d6f756e742072617465206d757374206064820152781032bc31b2b2b2103a34329036b4b734b6bab6903930ba329760391b608482015260a401610cd6565b6010805463ffff000019166201000061ffff84811682810293909317938490556040805192909404168152602081019190915233917f7e070168e1a37e220c7513052405c2f11c5f56cf012bace79696cb9cfd37995191015b60405180910390a250565b33806117095760405162461bcd60e51b8152602060048201526009602482015268434153484f55543a3160b81b6044820152606401610cd6565b6001600160a01b03811660009081526016602052604090205460ff16156117425760405162461bcd60e51b8152600401610cd690613861565b6009546001600160a01b0382811691161480159061176e57506008546001600160a01b03828116911614155b80156117885750600a546001600160a01b03828116911614155b6117c05760405162461bcd60e51b815260206004820152600960248201526821a0a9a427aaaa1d1960b91b6044820152606401610cd6565b60135460405163939c6bfb60e01b81526001600160a01b03838116600483015260248201859052600092169063939c6bfb9060440160206040518083038186803b15801561180d57600080fd5b505afa158015611821573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611845919061377a565b90506000811161188e5760405162461bcd60e51b81526020600482015260146024820152734e6f207265776172647320617661696c61626c6560601b6044820152606401610cd6565b600e5481906000906118b090606490611349908590610100900460ff16612dc3565b6008546009549192506118d0916001600160a01b03918216911683612ddb565b6118da818361394d565b600e549092506000906118fe9060649061134990879062010000900460ff16612dc3565b600854600a5491925061191e916001600160a01b03918216911683612ddb565b611928818461394d565b601254909350610100900460ff161561198e57600e5460009061195d906064906113499088906301000000900460ff16612dc3565b600854909150611977906001600160a01b03163083612ddb565b61198081612fa9565b61198a818561394d565b9350505b6008546119a5906001600160a01b03168685612ddb565b601354604051633bcf707b60e01b81526001600160a01b0387811660048301526024820189905290911690633bcf707b90604401600060405180830381600087803b1580156119f357600080fd5b505af1158015611a07573d6000803e3d6000fd5b505050508360116000828254611a1d91906138f6565b909155505060405184815286906001600160a01b038716907f4f32a1005fcf45a64a68bc4258b4e0f5522b7aa6a06506781aa4e6c6395c48d09060200160405180910390a3505050505050565b6005546001600160a01b03163314611a945760405162461bcd60e51b8152600401610cd69061382c565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314611ae05760405162461bcd60e51b8152600401610cd69061382c565b6103e88161ffff161115611b825760405162461bcd60e51b815260206004820152605d60248201527f534545443a3a7570646174654d61785472616e73666572416d6f756e7452617460448201527f653a204d6178207472616e7366657220616d6f756e742072617465206d75737460648201527f206e6f742065786365656420746865206d6178696d756d20726174652e000000608482015260a401610cd6565b60018161ffff161015611c1f5760405162461bcd60e51b815260206004820152605960248201527f534545443a3a7570646174654d61785472616e73666572416d6f756e7452617460448201527f653a204d6178207472616e7366657220616d6f756e742072617465206d7573746064820152781032bc31b2b2b2103a34329036b4b734b6bab6903930ba329760391b608482015260a401610cd6565b6010805461ffff191661ffff831690811790915560408051828152602081019290925233917fb62a50fc861a770636e85357becb3b82a32e911106609d4985871eaf29011e0891016116c4565b6005546001600160a01b03163314611c965760405162461bcd60e51b8152600401610cd69061382c565b611ca0600061305f565b565b6005546001600160a01b03163314611ccc5760405162461bcd60e51b8152600401610cd69061382c565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060048054610c1190613964565b6005546001600160a01b03163314611d275760405162461bcd60e51b8152600401610cd69061382c565b6006546001600160a01b0383811691161415611d6d5760405162461bcd60e51b81526020600482015260056024820152642a25a71d1960d91b6044820152606401610cd6565b611d7782826130b1565b5050565b6005546001600160a01b03163314611da55760405162461bcd60e51b8152600401610cd69061382c565b611d77828261315c565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015611e345760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610cd6565b610e898286868403612634565b600033610ca28185856127eb565b601054600090611e74906103e8906113499061ffff16611e6e60025490565b90612dc3565b905090565b601054600090611e74906103e8906113499061ffff6201000090910416611e6e60025490565b6005546001600160a01b03163314611ec95760405162461bcd60e51b8152600401610cd69061382c565b80600081518110611eea57634e487b7160e01b600052603260045260246000fd5b6020026020010151600e60016101000a81548160ff021916908360ff16021790555080600181518110611f2d57634e487b7160e01b600052603260045260246000fd5b6020026020010151600e60026101000a81548160ff021916908360ff16021790555080600281518110611f7057634e487b7160e01b600052603260045260246000fd5b6020908102919091010151600e805463ff0000001916630100000060ff93841681029190911791829055611fbc92908204811691610e2491610100820481169162010000900416612621565b600f5550565b6005546001600160a01b03163314611fec5760405162461bcd60e51b8152600401610cd69061382c565b6001600160a01b03919091166000908152601860205260409020805460ff1916911515919091179055565b33806120545760405162461bcd60e51b815260206004820152600c60248201526b4352454154454e4f44453a3160a01b6044820152606401610cd6565b6001600160a01b03811660009081526016602052604090205460ff161561208d5760405162461bcd60e51b8152600401610cd690613861565b6009546001600160a01b038281169116148015906120b957506008546001600160a01b03828116911614155b80156120d35750600a546001600160a01b03828116911614155b61210e5760405162461bcd60e51b815260206004820152600c60248201526b21a922a0aa22a727a2229d1960a11b6044820152606401610cd6565b60006121a2670de0b6b3a7640000601360009054906101000a90046001600160a01b03166001600160a01b031663a5021a176040518163ffffffff1660e01b815260040160206040518083038186803b15801561216a57600080fd5b505afa15801561217e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e6e919061377a565b9050806121c4836001600160a01b031660009081526020819052604090205490565b10156122065760405162461bcd60e51b81526020600482015260116024820152704e6f7420656e6f75676820746f6b656e7360781b6044820152606401610cd6565b600e546000906122219060649061134990859060ff16612dc3565b60095490915061223c9084906001600160a01b031683612ddb565b600061224883836132a2565b6008549091506122639085906001600160a01b031683612ddb565b601354604051635c6dc21960e01b81526001600160a01b03868116600483015290911690635c6dc21990602401600060405180830381600087803b1580156122aa57600080fd5b505af11580156122be573d6000803e3d6000fd5b5050505050505050565b6005546001600160a01b031633146122f25760405162461bcd60e51b8152600401610cd69061382c565b6012546001600160a01b03828116620100009092041614156123405760405162461bcd60e51b8152602060048201526007602482015266484b4a6f653a3160c81b6044820152606401610cd6565b6012546040516001600160a01b03620100009092048216918316907fb172ff8de0a3afc7f2ad25e3396c86087d62f54aa2b1757e9c048e3712fddbcd90600090a360008190506000601260029054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156123d657600080fd5b505afa1580156123ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240e9190613555565b6001600160a01b031663c9c6539630846001600160a01b03166373b295c26040518163ffffffff1660e01b815260040160206040518083038186803b15801561245657600080fd5b505afa15801561246a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061248e9190613555565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156124d657600080fd5b505af11580156124ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061250e9190613555565b600680546001600160a01b039283166001600160a01b03199182161790915560078054959092169416939093179092555050565b6005546001600160a01b0316331461256c5760405162461bcd60e51b8152600401610cd69061382c565b6001600160a01b0381166125d15760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cd6565b6125da8161305f565b50565b6005546001600160a01b031633146126075760405162461bcd60e51b8152600401610cd69061382c565b601280549115156101000261ff0019909216919091179055565b600061262d82846138f6565b9392505050565b6001600160a01b0383166126965760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610cd6565b6001600160a01b0382166126f75760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610cd6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146127e557818110156127d85760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610cd6565b6127e58484848403612634565b50505050565b82828260006127f8611e4f565b11156129a0576001600160a01b03831660009081526018602052604090205460ff1615801561284057506001600160a01b03821660009081526018602052604090205460ff16155b156129a05761284d611e4f565b8111156128d05760405162461bcd60e51b8152602060048201526044602482018190527f4865726f204b697474793a3a616e74695768616c653a205472616e7366657220908201527f616d6f756e74206578636565647320746865206d61785472616e73666572416d6064820152631bdd5b9d60e21b608482015260a401610cd6565b6006546001600160a01b03848116911614156129a0576128ee611e79565b61291182610e24856001600160a01b031660009081526020819052604090205490565b11156129a05760405162461bcd60e51b815260206004820152605260248201527f4865726f204b697474793a3a616e74695768616c653a205472616e736665722060448201527f776f756c642065786365656420746865206d617842616c616e6365416d6f756e6064820152711d081bd9881d1a19481c9958da5c1a595b9d60721b608482015260a401610cd6565b6001600160a01b03861660009081526016602052604090205460ff161580156129e257506001600160a01b03851660009081526016602052604090205460ff16155b6129fe5760405162461bcd60e51b8152600401610cd690613861565b6001600160a01b038616612a3e5760405162461bcd60e51b815260206004820152600760248201526645524332303a3160c81b6044820152606401610cd6565b6001600160a01b038516612a7e5760405162461bcd60e51b815260206004820152600760248201526622a92199181d1960c91b6044820152606401610cd6565b6001600160a01b038516600090815260176020526040902054849060ff168015612ab157506001600160a01b0387163014155b8015612ac0575060155460ff16155b15612daf576013546040516315f7aaab60e01b81526001600160a01b038981166004830152909116906315f7aaab9060240160206040518083038186803b158015612b0a57600080fd5b505afa158015612b1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b429190613724565b15612c7857600c54600090612b629060649061134990899060ff16612dc3565b600854909150612b7d9089906001600160a01b031683612ddb565b612b87818361394d565b600c54909250600090612baa90606490611349908a90610100900460ff16612dc3565b600954909150612bc5908a906001600160a01b031683612ddb565b612bcf818461394d565b601254909350610100900460ff1615612c2757600c54600090612c0390606490611349908b9062010000900460ff16612dc3565b9050612c108a3083612ddb565b612c1981612fa9565b612c23818561394d565b9350505b600c54600090612c4990606490611349908b906301000000900460ff16612dc3565b600a54909150612c64908b906001600160a01b031683612ddb565b612c6e818561394d565b9350505050612daf565b600a54600090612c9a90606490611349908990600160a01b900460ff16612dc3565b600854909150612cb59089906001600160a01b031683612ddb565b612cbf818361394d565b600a54909250600090612ce490606490611349908a90600160a81b900460ff16612dc3565b600954909150612cff908a906001600160a01b031683612ddb565b612d09818461394d565b601254909350610100900460ff1615612d6257600a54600090612d3e90606490611349908b90600160b01b900460ff16612dc3565b9050612d4b8a3083612ddb565b612d5481612fa9565b612d5e818561394d565b9350505b600a54600090612d8490606490611349908b90600160b81b900460ff16612dc3565b600a54909150612d9f908b906001600160a01b031683612ddb565b612da9818561394d565b93505050505b612dba878783612ddb565b50505050505050565b600061262d828461392e565b600061262d828461390e565b6001600160a01b038316612e3f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610cd6565b6001600160a01b038216612ea15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610cd6565b6001600160a01b03831660009081526020819052604090205481811015612f195760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610cd6565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290612f509084906138f6565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612f9c91815260200190565b60405180910390a36127e5565b6015805460ff191660011790556000612fc3826002612dcf565b90506000612fd183836132a2565b905047612fdd836132ae565b6000612fe947836132a2565b9050612ff58382613458565b60095461300d9030906001600160a01b031687612ddb565b60408051858152602081018390529081018490527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a150506015805460ff19169055505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03821660009081526017602052604090205460ff16151581151514156131085760405162461bcd60e51b8152602060048201526005602482015264544b4e3a3360d81b6044820152606401610cd6565b6001600160a01b038216600081815260176020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6001600160a01b0382166131bc5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610cd6565b6001600160a01b038216600090815260208190526040902054818110156132305760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610cd6565b6001600160a01b038316600090815260208190526040812083830390556002805484929061325f90849061394d565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200161274c565b600061262d828461394d565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106132f157634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b031681525050601260029054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b815260040160206040518083038186803b15801561335f57600080fd5b505afa158015613373573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133979190613555565b816001815181106133b857634e487b7160e01b600052603260045260246000fd5b6001600160a01b0392831660209182029290920101526012546133e49130916201000090041684612634565b601254604051633b158ab160e11b8152620100009091046001600160a01b03169063762b156290613422908590600090869030904290600401613886565b600060405180830381600087803b15801561343c57600080fd5b505af1158015613450573d6000803e3d6000fd5b505050505050565b6012546134769030906201000090046001600160a01b031684612634565b601254604051637c8d9fb960e11b8152306004820152602481018490526000604482018190526064820181905260848201524260a4820152620100009091046001600160a01b03169063f91b3f7290839060c4016060604051808303818588803b1580156134e357600080fd5b505af11580156134f7573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061351c9190613792565b5050505050565b803560ff8116811461353457600080fd5b919050565b60006020828403121561354a578081fd5b813561262d816139cb565b600060208284031215613566578081fd5b815161262d816139cb565b60008060408385031215613583578081fd5b823561358e816139cb565b9150602083013561359e816139cb565b809150509250929050565b6000806000606084860312156135bd578081fd5b83356135c8816139cb565b925060208401356135d8816139cb565b929592945050506040919091013590565b600080604083850312156135fb578182fd5b8235613606816139cb565b9150602083013561359e816139e0565b60008060408385031215613628578182fd5b8235613633816139cb565b946020939093013593505050565b60006020808385031215613653578182fd5b823567ffffffffffffffff8082111561366a578384fd5b818501915085601f83011261367d578384fd5b81358181111561368f5761368f6139b5565b8060051b604051601f19603f830116810181811085821117156136b4576136b46139b5565b604052828152858101935084860182860187018a10156136d2578788fd5b8795505b838610156136fb576136e781613523565b8552600195909501949386019386016136d6565b5098975050505050505050565b600060208284031215613719578081fd5b813561262d816139e0565b600060208284031215613735578081fd5b815161262d816139e0565b600060208284031215613751578081fd5b813561ffff8116811461262d578182fd5b600060208284031215613773578081fd5b5035919050565b60006020828403121561378b578081fd5b5051919050565b6000806000606084860312156137a6578283fd5b8351925060208401519150604084015190509250925092565b6000602082840312156137d0578081fd5b61262d82613523565b6000602080835283518082850152825b81811015613805578581018301518582016040015282016137e9565b818111156138165783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600b908201526a10931050d2d31254d5115160aa1b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b818110156138d55784516001600160a01b0316835293830193918301916001016138b0565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156139095761390961399f565b500190565b60008261392957634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156139485761394861399f565b500290565b60008282101561395f5761395f61399f565b500390565b600181811c9082168061397857607f821691505b6020821081141561399957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146125da57600080fd5b80151581146125da57600080fdfea26469706673582212207b0fe82fe4705a957189c79679f2909ab0ddbc6c7ebf5da191a0cee35c44cfa664736f6c6343000804003300000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000000000000000000004000000000000000000000000ab8483f64d9c6d1ecf9b849ae677dd3315835cb20000000000000000000000004b20993bc481177ec7e8f571cecae8a9e22c02db00000000000000000000000078731d3ca6b7e34ac0f824c42a7cc18a495cabab000000000000000000000000d9145cce52d386f254917e481eb44e9943f3913800000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000002