[ { "inputs": [ { "internalType": "string", "name": "tokenName", "type": "string" }, { "internalType": "string", "name": "tokenSymbol", "type": "string" }, { "internalType": "uint256", "name": "supply", "type": "uint256" }, { "internalType": "uint256", "name": "preMint", "type": "uint256" }, { "internalType": "address[]", "name": "addresses", "type": "address[]" }, { "internalType": "uint16[]", "name": "percents", "type": "uint16[]" } ], "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": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "iterations", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "claims", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "lastProcessedIndex", "type": "uint256" }, { "indexed": true, "internalType": "bool", "name": "automatic", "type": "bool" }, { "indexed": false, "internalType": "uint256", "name": "gas", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "processor", "type": "address" } ], "name": "ProcessedDividendTracker", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "tokensSwapped", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "SendDividends", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "TAX_DIVISOR", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_feesRates", "outputs": [ { "internalType": "uint16", "name": "buyFee", "type": "uint16" }, { "internalType": "uint16", "name": "sellFee", "type": "uint16" }, { "internalType": "uint16", "name": "transferFee", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_holderLastTransferTimestamp", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_isExcludedFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_isExcludedFromMaxTx", "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": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "autoLiquidity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "autoLiquidityPercent", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "buyBackPercent", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyBackThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "distributionRewardsPercent", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dividendTokenAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dividentTokenBridgeAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "val", "type": "bool" } ], "name": "excludeFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "val", "type": "bool" } ], "name": "excludeFromMaxTx", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "gasForProcessing", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "gasLimitActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "inSwap", "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": "initialDelayTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExcludedFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isExcludedFromMaxTx", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lpPair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxBuyLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxGasPriceLimit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTransactionAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWalletAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "preMintAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract IJoeRouter02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "newPercent", "type": "uint16" } ], "name": "setAutoLiquidityPercent", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "newPercent", "type": "uint16" } ], "name": "setBuyBackPercent", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newThreshold", "type": "uint256" } ], "name": "setBuyBackThreshold", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "newPercent", "type": "uint16" } ], "name": "setDistributionRewardsPercent", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "percent", "type": "uint256" } ], "name": "setMaxTransactionAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "percent", "type": "uint256" } ], "name": "setMaxWalletAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "setSwapThreshold", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "buyFee", "type": "uint16" }, { "internalType": "uint16", "name": "sellFee", "type": "uint16" }, { "internalType": "uint16", "name": "transferFee", "type": "uint16" } ], "name": "setTaxes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "timeDelayBetweenTx", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tokenDividendTracker", "outputs": [ { "internalType": "contract IDividendTracker", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalDelayTime", "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": [], "name": "transferDelayEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": [], "name": "treasuryAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" }, { "internalType": "uint256", "name": "percent", "type": "uint256" } ], "name": "updateDividendTracker", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" } ], "name": "updateDividentTokenBridgeAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "newVal", "type": "bool" } ], "name": "updateGasLimitActive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "percent", "type": "uint256" } ], "name": "updateMaxBuyLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newValue", "type": "uint256" } ], "name": "updateMaxGasPriceLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "newVal", "type": "bool" } ], "name": "updateTransferDelayEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040523480156200001157600080fd5b50604051620041dd380380620041dd833981016040819052620000349162000c6a565b8585600362000044838262000dc3565b50600462000053828262000dc3565b505050620000706200006a6200080c60201b60201c565b62000810565b8151600214620000c75760405162461bcd60e51b815260206004820152601860248201527f496e76616c6964206164647265737320617267756d656e74000000000000000060448201526064015b60405180910390fd5b80516005146200011a5760405162461bcd60e51b815260206004820152601860248201527f496e76616c69642070657263656e7420617267756d656e7400000000000000006044820152606401620000be565b6126ac8160018151811062000133576200013362000e8f565b602002602001015161ffff16111580156200017157506126ac8160028151811062000162576200016262000e8f565b602002602001015161ffff1611155b620001af5760405162461bcd60e51b815260206004820152600d60248201526c0a8dede40d0d2ced0e840e8c2f609b1b6044820152606401620000be565b81600181518110620001c557620001c562000e8f565b6020026020010151600760006101000a8154816001600160a01b0302191690836001600160a01b031602179055506000612710826000815181106200020e576200020e62000e8f565b602002602001015161ffff168662000227919062000ebb565b62000233919062000edb565b905062000259338262000247878962000efe565b62000253919062000efe565b62000862565b8315620002785760075462000278906001600160a01b03168562000862565b80156200028d576200028d61dead8262000862565b81600381518110620002a357620002a362000e8f565b602002602001015161ffff16600014620002fb5761271082600381518110620002d057620002d062000e8f565b602002602001015161ffff1686620002e9919062000ebb565b620002f5919062000edb565b620002fd565b845b600b5581518290600490811062000318576200031862000e8f565b602002602001015161ffff1660001462000370576127108260048151811062000345576200034562000e8f565b602002602001015161ffff16866200035e919062000ebb565b6200036a919062000edb565b62000372565b845b600e8190555060405180606001604052808360018151811062000399576200039962000e8f565b602002602001015161ffff16815260200183600281518110620003c057620003c062000e8f565b60209081029190910181015161ffff908116835260009282018390528351601f80549386015160409096015183166401000000000261ffff60201b19968416620100000263ffffffff199095169290931691909117929092179390931692909217909155835184919062000438576200043862000e8f565b602090810291909101810151601d80546001600160a01b0319166001600160a01b039092169182179055604080516339d94ae160e11b8152905191926373b295c2926004808401938290030181865afa1580156200049a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004c0919062000f14565b600980546001600160a01b0319166001600160a01b03928316179055601d546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200051f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000545919062000f14565b6001600160a01b031663c9c6539630601d60009054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa158015620005a8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005ce919062000f14565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200061c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000642919062000f14565b600680546001600160a01b0319166001600160a01b039290921691821790556000908152601b60205260408120805460ff19166001908117909155906019906200068b62000925565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790556007549091168152601990925280822080548416600190811790915530835290822080549093168117909255601a90620006f262000925565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905560075482168152601a9093528183208054851660019081179091553084528284208054861682179055601d548216845282842080548616821790556006549091168352908220805490931617909155683635c9adc5dea00000600a55600d819055601055670de0b6b3a7640000600f55620007b36200079e62000925565b601d546001600160a01b031660001962000934565b601d54620007cf9030906001600160a01b031660001962000934565b50505060119190915550506018805462ffff0019169055504260125564037e11d6006014556005601555610e10601355620493e060165562000f4f565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620008ba5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620000be565b8060026000828254620008ce919062000f39565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6005546001600160a01b031690565b6001600160a01b038316620009985760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620000be565b6001600160a01b038216620009fb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620000be565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562000aa25762000aa262000a61565b604052919050565b600082601f83011262000abc57600080fd5b81516001600160401b0381111562000ad85762000ad862000a61565b602062000aee601f8301601f1916820162000a77565b828152858284870101111562000b0357600080fd5b60005b8381101562000b2357858101830151828201840152820162000b06565b506000928101909101919091529392505050565b60006001600160401b0382111562000b535762000b5362000a61565b5060051b60200190565b80516001600160a01b038116811462000b7557600080fd5b919050565b600082601f83011262000b8c57600080fd5b8151602062000ba562000b9f8362000b37565b62000a77565b82815260059290921b8401810191818101908684111562000bc557600080fd5b8286015b8481101562000beb5762000bdd8162000b5d565b835291830191830162000bc9565b509695505050505050565b600082601f83011262000c0857600080fd5b8151602062000c1b62000b9f8362000b37565b82815260059290921b8401810191818101908684111562000c3b57600080fd5b8286015b8481101562000beb57805161ffff8116811462000c5c5760008081fd5b835291830191830162000c3f565b60008060008060008060c0878903121562000c8457600080fd5b86516001600160401b038082111562000c9c57600080fd5b62000caa8a838b0162000aaa565b9750602089015191508082111562000cc157600080fd5b62000ccf8a838b0162000aaa565b96506040890151955060608901519450608089015191508082111562000cf457600080fd5b62000d028a838b0162000b7a565b935060a089015191508082111562000d1957600080fd5b5062000d2889828a0162000bf6565b9150509295509295509295565b600181811c9082168062000d4a57607f821691505b60208210810362000d6b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000a5c57600081815260208120601f850160051c8101602086101562000d9a5750805b601f850160051c820191505b8181101562000dbb5782815560010162000da6565b505050505050565b81516001600160401b0381111562000ddf5762000ddf62000a61565b62000df78162000df0845462000d35565b8462000d71565b602080601f83116001811462000e2f576000841562000e165750858301515b600019600386901b1c1916600185901b17855562000dbb565b600085815260208120601f198616915b8281101562000e605788860151825594840194600190910190840162000e3f565b508582101562000e7f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000ed55762000ed562000ea5565b92915050565b60008262000ef957634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111562000ed55762000ed562000ea5565b60006020828403121562000f2757600080fd5b62000f328262000b5d565b9392505050565b8082018082111562000ed55762000ed562000ea5565b61327e8062000f5f6000396000f3fe6080604052600436106102d75760003560e01c80630445b667146102e357806306fdde031461030c578063078662911461032e578063094d776f1461036e578063095ea7b314610384578063123e6cd8146103a4578063148829f5146103c65780631630e97f146103dc57806318160ddd146103fc5780631b11c874146104115780631c06a7e1146104275780631e293c101461047c5780631e94ed071461049c57806323b872dd146104b257806327a14fc2146104d2578063313ce567146104f257806332cde6641461050e57806335dcb05e1461052e578063395093511461055b5780633d90fff91461057b57806342966c6814610591578063452ed4f1146105b157806345b1b441146105d15780634a569e94146105f15780635342acb41461060757806354fb8e4014610640578063658c27a9146106605780636aa5b37f146106995780636f15d975146106af57806370a08231146106c5578063715018a6146106e5578063738c6c09146106fa578063768dc7101461071a57806379cc67901461074a5780637dee32901461076a578063883bfec41461078a5780638d0cb35a146107aa5780638da5cb5b146107ca57806395d89b41146107df5780639c1b8af5146107f45780639d0014b11461080a578063a2065e711461082a578063a335d4ff1461084a578063a457c2d714610860578063a9059cbb14610880578063aa4bde28146108a0578063b559f9b6146108b6578063b62496f5146108d6578063b9c6ec5014610906578063c5f956af14610926578063c6aca36b14610946578063c876d0b914610966578063c8c8ebe414610986578063cd5f101d1461099c578063d4c989d3146109c9578063d8306786146109e9578063dd62ed3e14610a03578063deb5896e14610a23578063df8408fe14610a39578063edf731c514610a59578063efac458514610a6f578063f2fde38b14610a8f578063f887ea4014610aaf578063f901796614610acf57600080fd5b366102de57005b600080fd5b3480156102ef57600080fd5b506102f9600a5481565b6040519081526020015b60405180910390f35b34801561031857600080fd5b50610321610aee565b6040516103039190612caf565b34801561033a57600080fd5b5061035e610349366004612d12565b601a6020526000908152604090205460ff1681565b6040519015158152602001610303565b34801561037a57600080fd5b506102f960135481565b34801561039057600080fd5b5061035e61039f366004612d36565b610b80565b3480156103b057600080fd5b506103c46103bf366004612d79565b610b9a565b005b3480156103d257600080fd5b506102f9600c5481565b3480156103e857600080fd5b506103c46103f7366004612d94565b610bf4565b34801561040857600080fd5b506002546102f9565b34801561041d57600080fd5b506102f960145481565b34801561043357600080fd5b50601f546104579061ffff80821691620100008104821691600160201b9091041683565b6040805161ffff94851681529284166020840152921691810191909152606001610303565b34801561048857600080fd5b506103c4610497366004612d94565b610c67565b3480156104a857600080fd5b506102f960175481565b3480156104be57600080fd5b5061035e6104cd366004612dad565b610c96565b3480156104de57600080fd5b506103c46104ed366004612d94565b610cba565b3480156104fe57600080fd5b5060405160128152602001610303565b34801561051a57600080fd5b506103c4610529366004612dee565b610ce9565b34801561053a57600080fd5b5060085461054e906001600160a01b031681565b6040516103039190612e31565b34801561056757600080fd5b5061035e610576366004612d36565b610d86565b34801561058757600080fd5b506102f960155481565b34801561059d57600080fd5b506103c46105ac366004612d94565b610da8565b3480156105bd57600080fd5b5060065461054e906001600160a01b031681565b3480156105dd57600080fd5b506103c46105ec366004612d79565b610db5565b3480156105fd57600080fd5b506102f960105481565b34801561061357600080fd5b5061035e610622366004612d12565b6001600160a01b031660009081526019602052604090205460ff1690565b34801561064c57600080fd5b506103c461065b366004612d12565b610e06565b34801561066c57600080fd5b5061035e61067b366004612d12565b6001600160a01b03166000908152601a602052604090205460ff1690565b3480156106a557600080fd5b506102f960115481565b3480156106bb57600080fd5b506102f9600f5481565b3480156106d157600080fd5b506102f96106e0366004612d12565b610eca565b3480156106f157600080fd5b506103c4610ee5565b34801561070657600080fd5b506103c4610715366004612d79565b610f7d565b34801561072657600080fd5b5061035e610735366004612d12565b60196020526000908152604090205460ff1681565b34801561075657600080fd5b506103c4610765366004612d36565b610fce565b34801561077657600080fd5b506103c4610785366004612d94565b610fe7565b34801561079657600080fd5b5060095461054e906001600160a01b031681565b3480156107b657600080fd5b506103c46107c5366004612e53565b611016565b3480156107d657600080fd5b5061054e611038565b3480156107eb57600080fd5b50610321611047565b34801561080057600080fd5b506102f960165481565b34801561081657600080fd5b506103c4610825366004612d94565b611056565b34801561083657600080fd5b506103c4610845366004612e53565b611063565b34801561085657600080fd5b506102f961271081565b34801561086c57600080fd5b5061035e61087b366004612d36565b611087565b34801561088c57600080fd5b5061035e61089b366004612d36565b611102565b3480156108ac57600080fd5b506102f9600b5481565b3480156108c257600080fd5b50601e5461054e906001600160a01b031681565b3480156108e257600080fd5b5061035e6108f1366004612d12565b601b6020526000908152604090205460ff1681565b34801561091257600080fd5b506103c4610921366004612d36565b611110565b34801561093257600080fd5b5060075461054e906001600160a01b031681565b34801561095257600080fd5b506103c4610961366004612d94565b61144f565b34801561097257600080fd5b5060185461035e9062010000900460ff1681565b34801561099257600080fd5b506102f9600e5481565b3480156109a857600080fd5b506102f96109b7366004612d12565b601c6020526000908152604090205481565b3480156109d557600080fd5b506103c46109e4366004612e70565b611487565b3480156109f557600080fd5b5060185461035e9060ff1681565b348015610a0f57600080fd5b506102f9610a1e366004612ea9565b6114ba565b348015610a2f57600080fd5b506102f9600d5481565b348015610a4557600080fd5b506103c4610a54366004612e70565b6114e5565b348015610a6557600080fd5b506102f960125481565b348015610a7b57600080fd5b506103c4610a8a366004612d94565b611518565b348015610a9b57600080fd5b506103c4610aaa366004612d12565b611525565b348015610abb57600080fd5b50601d5461054e906001600160a01b031681565b348015610adb57600080fd5b5060185461035e90610100900460ff1681565b606060038054610afd90612ed7565b80601f0160208091040260200160405190810160405280929190818152602001828054610b2990612ed7565b8015610b765780601f10610b4b57610100808354040283529160200191610b76565b820191906000526020600020905b815481529060010190602001808311610b5957829003601f168201915b5050505050905090565b600033610b8e81858561159b565b60019150505b92915050565b610ba26116bf565b612710601754600d548361ffff16610bba9190612f27565b610bc49190612f27565b1115610beb5760405162461bcd60e51b8152600401610be290612f3a565b60405180910390fd5b61ffff16601055565b610bfc6116bf565b6402540be400811015610c625760405162461bcd60e51b815260206004820152602860248201527f6d6178206761732070726963652063616e74206265206c6f776572207468616e604482015267203130206757656960c01b6064820152608401610be2565b601455565b610c6f6116bf565b61271081610c7c60025490565b610c869190612f6f565b610c909190612f86565b600e5550565b600033610ca485828561171e565b610caf858585611792565b506001949350505050565b610cc26116bf565b61271081610ccf60025490565b610cd99190612f6f565b610ce39190612f86565b600b5550565b610cf16116bf565b6126ac8361ffff1611158015610d0d57506126ac8261ffff1611155b610d495760405162461bcd60e51b815260206004820152600d60248201526c0a8dede40d0d2ced0e840e8c2f609b1b6044820152606401610be2565b601f805461ffff94851663ffffffff199091161762010000938516939093029290921761ffff60201b1916600160201b9190931602919091179055565b600033610b8e818585610d9983836114ba565b610da39190612f27565b61159b565b610db233826118c8565b50565b610dbd6116bf565b612710600d546010548361ffff16610dd59190612f27565b610ddf9190612f27565b1115610dfd5760405162461bcd60e51b8152600401610be290612f3a565b61ffff16601755565b610e0e6116bf565b6009546001600160a01b0390811690821603610e825760405162461bcd60e51b815260206004820152602d60248201527f546865206469766964656e6420747261636b657220616c72656164792068617360448201526c2074686174206164647265737360981b6064820152608401610be2565b6001600160a01b038116610ea85760405162461bcd60e51b8152600401610be290612fa8565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b031660009081526020819052604090205490565b610eed6116bf565b601f5461119461ffff909116108015610f145750601f546111946201000090910461ffff16105b610f715760405162461bcd60e51b815260206004820152602860248201527f546f6f206869676874207461782c2063616e27742072656e6f756e6365206f776044820152673732b939b434b81760c11b6064820152608401610be2565b610f7b60006119e8565b565b610f856116bf565b6127106017546010548361ffff16610f9d9190612f27565b610fa79190612f27565b1115610fc55760405162461bcd60e51b8152600401610be290612f3a565b61ffff16600d55565b610fd982338361171e565b610fe382826118c8565b5050565b610fef6116bf565b61271081610ffc60025490565b6110069190612f6f565b6110109190612f86565b60115550565b61101e6116bf565b601880549115156101000261ff0019909216919091179055565b6005546001600160a01b031690565b606060048054610afd90612ed7565b61105e6116bf565b600a55565b61106b6116bf565b60188054911515620100000262ff000019909216919091179055565b6000338161109582866114ba565b9050838110156110f55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610be2565b610caf828686840361159b565b600033610b8e818585611792565b6111186116bf565b6001600160a01b03821661113e5760405162461bcd60e51b8152600401610be290612fa8565b6113888111156111825760405162461bcd60e51b815260206004820152600f60248201526e1a5b9d985b1a59081c195c98d95b9d608a1b6044820152606401610be2565b601e80546001600160a01b0319166001600160a01b03841690811790915560405163031e79db60e41b81526331e79db0906111c1908590600401612e31565b600060405180830381600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b5050601e5460405163031e79db60e41b81526001600160a01b0390911692506331e79db09150611223903090600401612e31565b600060405180830381600087803b15801561123d57600080fd5b505af1158015611251573d6000803e3d6000fd5b5050601e546001600160a01b031691506331e79db09050611270611038565b6040518263ffffffff1660e01b815260040161128c9190612e31565b600060405180830381600087803b1580156112a657600080fd5b505af11580156112ba573d6000803e3d6000fd5b5050601e54601d5460405163031e79db60e41b81526001600160a01b0392831694506331e79db093506112f39290911690600401612e31565b600060405180830381600087803b15801561130d57600080fd5b505af1158015611321573d6000803e3d6000fd5b5050601e5460065460405163031e79db60e41b81526001600160a01b0392831694506331e79db0935061135a9290911690600401612e31565b600060405180830381600087803b15801561137457600080fd5b505af1158015611388573d6000803e3d6000fd5b5050506001600160a01b038084166000908152601960209081526040808320805460ff199081166001908117909255601a8452938290208054909416179092556017859055601e54825163d1af0c7d60e01b815292519316935063d1af0c7d926004808401938290030181865afa158015611407573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142b9190612fdd565b600880546001600160a01b0319166001600160a01b03929092169190911790555050565b600061145c600283612f86565b9050476114698230611a3a565b60006114758247612ffa565b90506114818382611b98565b50505050565b61148f6116bf565b6001600160a01b03919091166000908152601a60205260409020805460ff1916911515919091179055565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6114ed6116bf565b6001600160a01b03919091166000908152601960205260409020805460ff1916911515919091179055565b6115206116bf565b600f55565b61152d6116bf565b6001600160a01b0381166115925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610be2565b610db2816119e8565b6001600160a01b0383166115fd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610be2565b6001600160a01b03821661165e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610be2565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b336116c8611038565b6001600160a01b031614610f7b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610be2565b600061172a84846114ba565b9050600019811461148157818110156117855760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610be2565b611481848484840361159b565b61179d838383611c4f565b60185460ff16156117b8576117b38383836121d5565b505050565b6117c28383612367565b156117cf576117cf612417565b6117da83838361254f565b601e546001600160a01b0316156117b357601e546001600160a01b031663e30443bc8461180681610eca565b6040518363ffffffff1660e01b815260040161182392919061300d565b600060405180830381600087803b15801561183d57600080fd5b505af192505050801561184e575060015b50601e546001600160a01b031663e30443bc8361186a81610eca565b6040518363ffffffff1660e01b815260040161188792919061300d565b600060405180830381600087803b1580156118a157600080fd5b505af19250505080156118b2575060015b5060185460ff166117b3576117b36016546125e2565b6001600160a01b0382166119285760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610be2565b6001600160a01b0382166000908152602081905260409020548181101561199c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610be2565b6001600160a01b038316600081815260208181526040808320868603905560028054879003905551858152919291600080516020613229833981519152910160405180910390a3505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611a6f57611a6f61303c565b6001600160a01b03928316602091820292909201810191909152601d54604080516339d94ae160e11b8152905191909316926373b295c29260048083019391928290030181865afa158015611ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aec9190612fdd565b81600181518110611aff57611aff61303c565b6001600160a01b039283166020918202929092010152601d544291611b27913091168661159b565b601d54604051633b158ab160e11b81526001600160a01b039091169063762b156290611b60908790600090879089908890600401613096565b600060405180830381600087803b158015611b7a57600080fd5b505af1158015611b8e573d6000803e3d6000fd5b5050505050505050565b601d544290611bb49030906001600160a01b031660001961159b565b601d54604051637c8d9fb960e11b81523060048201819052602482018690526000604483018190526064830152608482015260a481018390526001600160a01b039091169063f91b3f7290849060c40160606040518083038185885af1158015611c22573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c4791906130d2565b505050505050565b6001600160a01b038316611cbb5760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e736665722066726f6d20746865205a45524f5f414460448201526c4452455353206164647265737360981b6064820152608401610be2565b6001600160a01b038216611d255760405162461bcd60e51b815260206004820152602b60248201527f45524332303a207472616e7366657220746f20746865205a45524f5f4144445260448201526a455353206164647265737360a81b6064820152608401610be2565b60008111611d8f5760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152707468616e205a45524f5f4144445245535360781b6064820152608401610be2565b60185462010000900460ff168015611db55750601354601254611db29190612f27565b42105b15611f5657611dc2611038565b6001600160a01b0316836001600160a01b031614158015611df15750601d546001600160a01b03838116911614155b8015611e0b57506006546001600160a01b03838116911614155b8015611e2057506001600160a01b0382163014155b15611f565760115415611e7057601154811115611e705760405162461bcd60e51b815260206004820152600e60248201526d26b0bc10213abc902634b6b4ba1760911b6044820152606401610be2565b601854610100900460ff1615611ecd576014543a1115611ecd5760405162461bcd60e51b815260206004820152601860248201527723b0b990383934b1b29032bc31b2b2b239903634b6b4ba1760411b6044820152606401610be2565b336000908152601c6020526040902054421015611f385760405162461bcd60e51b815260206004820152602360248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201526232b21760e91b6064820152608401610be2565b601554611f459042612f27565b336000908152601c60205260409020555b611f5e611038565b6001600160a01b0316836001600160a01b031614158015611f985750611f82611038565b6001600160a01b0316826001600160a01b031614155b8015611fac57506001600160a01b03821615155b8015611fc357506001600160a01b03821661dead14155b8015611fd857506001600160a01b0382163014155b8015611fe7575060185460ff16155b156117b3576001600160a01b0383166000908152601b602052604090205460ff16156120f7576001600160a01b0382166000908152601a602052604090205460ff166117b357600e5481111561209d5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b6064820152608401610be2565b600b546120a983610eca565b6120b39083612f27565b11156117b35760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610be2565b6001600160a01b0382166000908152601b602052604090205460ff16156121a9576001600160a01b0382166000908152601a602052604090205460ff166117b357600e548111156117b35760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b6064820152608401610be2565b6001600160a01b0382166000908152601a602052604090205460ff166117b357600b546120a983610eca565b6001600160a01b0383166122395760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610be2565b6001600160a01b03821661229b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610be2565b6001600160a01b038316600090815260208190526040902054818110156123135760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610be2565b6001600160a01b0384811660008181526020818152604080832087870390559387168083529184902080548701905592518581529092600080516020613229833981519152910160405180910390a3611481565b60008061237330610eca565b9050600a54811015801561238a575060185460ff16155b80156123a457506006546001600160a01b03858116911614155b80156123c557506006546000906123c3906001600160a01b0316610eca565b115b80156123ea57506001600160a01b03831660009081526019602052604090205460ff16155b801561240f57506001600160a01b03841660009081526019602052604090205460ff16155b949350505050565b6018805460ff19166001179055600061242f30610eca565b905061243a30610eca565b90508015612542576010541561246e5761246e6127106010548361245e9190612f6f565b6124689190612f86565b30611a3a565b600d541561249457612494612710600d548361248a9190612f6f565b6109619190612f86565b6000612710601754601054600d546124ac9190612f27565b6124b69190612f27565b6124c09084612f6f565b6124ca9190612f86565b6124d49083612ffa565b905080156124f3576007546124f39082906001600160a01b0316611a3a565b600f541561251557600f544790811115612513576125138161dead6126a4565b505b6017541561254057612540612710601754846125319190612f6f565b61253b9190612f86565b61280a565b505b506018805460ff19169055565b6001600160a01b038316600090815260196020526040902054819060019060ff168061259357506001600160a01b03841660009081526019602052604090205460ff165b1561259c575060005b80156125d05760006125af868686612ab2565b905080156125ce576125c18185612ffa565b92506125ce8630836121d5565b505b6125db8585846121d5565b5050505050565b601e546040516001624d3b8760e01b03198152600481018390526001600160a01b039091169063ffb2c479906024016060604051808303816000875af192505050801561264c575060408051601f3d908101601f19168201909252612649918101906130d2565b60015b15610db25760408051848152602081018490529081018290526060810185905232906001907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a350505050565b6040805160028082526060820183526000926020830190803683375050601d54604080516339d94ae160e11b815290519394506001600160a01b03909116926373b295c2925060048083019260209291908290030181865afa15801561270e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127329190612fdd565b816000815181106127455761274561303c565b60200260200101906001600160a01b031690816001600160a01b03168152505030816001815181106127795761277961303c565b6001600160a01b039283166020918202929092010152601d5460405163a2a1623d60e01b81524292919091169063a2a1623d9086906127c390600090879089908890600401613100565b60006040518083038185885af11580156127e1573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526125db9190810190613135565b601d54604080516339d94ae160e11b815290516000926001600160a01b0316916373b295c29160048083019260209291908290030181865afa158015612854573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128789190612fdd565b6008546001600160a01b03908116911614905080156129025761289b8230611a3a565b60085460408051630d0e30db60e41b8152905147926001600160a01b03169163d0e30db091849160048082019260009290919082900301818588803b1580156128e357600080fd5b505af11580156128f7573d6000803e3d6000fd5b50505050505061291b565b60085461291b9030906001600160a01b03168482612b72565b6008546040516370a0823160e01b81526000916001600160a01b0316906370a082319061294c903090600401612e31565b602060405180830381865afa158015612969573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061298d91906131f2565b600854601e5460405163a9059cbb60e01b81529293506000926001600160a01b039283169263a9059cbb926129c992911690869060040161300d565b6020604051808303816000875af11580156129e8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0c919061320b565b9050801561148157601e54604051633243c79160e01b8152600481018490526001600160a01b0390911690633243c79190602401600060405180830381600087803b158015612a5a57600080fd5b505af1158015612a6e573d6000803e3d6000fd5b505060408051878152602081018690527f80195cc573b02cc48460cbca6e6e4cc85ddb91959d946e1c3025ea3d87942dc3935001905060405180910390a150505050565b6001600160a01b0383166000908152601b602052604081205481908190819060ff1615612af157601f54612aea9061ffff1684612f27565b9250612b48565b6001600160a01b0386166000908152601b602052604090205460ff1615612b2957601f54612aea9062010000900461ffff1684612f27565b601f54612b4190600160201b900461ffff1684612f27565b9250600190505b8215612b6857612710612b5b8487612f6f565b612b659190612f86565b91505b5095945050505050565b60408051600380825260808201909252600091602082016060803683370190505090508481600081518110612ba957612ba961303c565b6001600160a01b039283166020918202929092010152600954825191169082906001908110612bda57612bda61303c565b60200260200101906001600160a01b031690816001600160a01b0316815250508381600281518110612c0e57612c0e61303c565b6001600160a01b039283166020918202929092010152601d54612c34913091168561159b565b601d546001600160a01b0316635c11d7958460008486612c56426103e8612f27565b6040518663ffffffff1660e01b8152600401612c76959493929190613096565b600060405180830381600087803b158015612c9057600080fd5b505af1158015612ca4573d6000803e3d6000fd5b505050505050505050565b600060208083528351808285015260005b81811015612cdc57858101830151858201604001528201612cc0565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610db257600080fd5b600060208284031215612d2457600080fd5b8135612d2f81612cfd565b9392505050565b60008060408385031215612d4957600080fd5b8235612d5481612cfd565b946020939093013593505050565b803561ffff81168114612d7457600080fd5b919050565b600060208284031215612d8b57600080fd5b612d2f82612d62565b600060208284031215612da657600080fd5b5035919050565b600080600060608486031215612dc257600080fd5b8335612dcd81612cfd565b92506020840135612ddd81612cfd565b929592945050506040919091013590565b600080600060608486031215612e0357600080fd5b612e0c84612d62565b9250612e1a60208501612d62565b9150612e2860408501612d62565b90509250925092565b6001600160a01b0391909116815260200190565b8015158114610db257600080fd5b600060208284031215612e6557600080fd5b8135612d2f81612e45565b60008060408385031215612e8357600080fd5b8235612e8e81612cfd565b91506020830135612e9e81612e45565b809150509250929050565b60008060408385031215612ebc57600080fd5b8235612ec781612cfd565b91506020830135612e9e81612cfd565b600181811c90821680612eeb57607f821691505b602082108103612f0b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610b9457610b94612f11565b6020808252818101527f50657263656e742063616e7420626520686967686572207468616e2031303025604082015260600190565b8082028115828204841417610b9457610b94612f11565b600082612fa357634e487b7160e01b600052601260045260246000fd5b500490565b6020808252601b908201527a6e65772061646472657373206973205a65726f206164647265737360281b604082015260600190565b600060208284031215612fef57600080fd5b8151612d2f81612cfd565b81810381811115610b9457610b94612f11565b6001600160a01b03929092168252602082015260400190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b8381101561308b5781516001600160a01b031687529582019590820190600101613066565b509495945050505050565b85815284602082015260a0604082015260006130b560a0830186613052565b6001600160a01b0394909416606083015250608001529392505050565b6000806000606084860312156130e757600080fd5b8351925060208401519150604084015190509250925092565b8481526080602082015260006131196080830186613052565b6001600160a01b03949094166040830152506060015292915050565b6000602080838503121561314857600080fd5b82516001600160401b038082111561315f57600080fd5b818501915085601f83011261317357600080fd5b81518181111561318557613185613026565b8060051b604051601f19603f830116810181811085821117156131aa576131aa613026565b6040529182528482019250838101850191888311156131c857600080fd5b938501935b828510156131e6578451845293850193928501926131cd565b98975050505050505050565b60006020828403121561320457600080fd5b5051919050565b60006020828403121561321d57600080fd5b8151612d2f81612e4556feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220df404c6fa73c63f4a824d6ae187f7447e50ba4dc564bbde1e974495604dc739e64736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000000000000000000000f8277896582678ac000000000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000085351554952544c4500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000065351554952540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000060ae616a2155ee3d9a68541ba4544862310933d4000000000000000000000000bb67af3540d76c4a54edfa691f861656d9a816ac000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000000c80000000000000000000000000000000000000000000000000000000000000064