[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeFromFees", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeMultipleAccountsFromFees", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "newValue", "type": "uint256" }, { "indexed": true, "internalType": "uint256", "name": "oldValue", "type": "uint256" } ], "name": "GasForProcessingUpdated", "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": "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": "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": "newTracker", "type": "address" } ], "name": "UpdateDividendTracker", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newAddress", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldAddress", "type": "address" } ], "name": "UpdatedexRouter", "type": "event" }, { "inputs": [], "name": "RewardToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" } ], "name": "UpdateJoeRouter", "outputs": [], "stateMutability": "nonpayable", "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": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyFee", "outputs": [ { "internalType": "uint16", "name": "charReward", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "claim", "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": "dexPair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dexRouter", "outputs": [ { "internalType": "contract IJoeRouter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dividendTracker", "outputs": [ { "internalType": "contract TOKENDividendTracker", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "excludeFromDividends", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "excludeFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "excludeMultipleAccountsFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "gasForProcessing", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getNumberOfDividendTokenHolders", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "account", "type": "address" } ], "name": "isExcludedFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": [ { "internalType": "uint256", "name": "gas", "type": "uint256" } ], "name": "processDividendTracker", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "sellFee", "outputs": [ { "internalType": "uint16", "name": "charReward", "type": "uint16" } ], "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": "uint16", "name": "charReward", "type": "uint16" } ], "name": "setBuyFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "charReward", "type": "uint16" } ], "name": "setSellFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setSwapTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapTokensAtAmount", "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": "totalBuyFee", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSellFee", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "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": "uint256", "name": "claimWait", "type": "uint256" } ], "name": "updateClaimWait", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newValue", "type": "uint256" } ], "name": "updateGasForProcessing", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newToken", "type": "address" } ], "name": "updateRewardToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "withdrawBNB", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "withdrawForeignTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "withdrawableDividendOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
6080604052600b80546001600160a01b031916739bef43873393b7b25c8aa60f6e5118ab1fff4baa17905569152d02c7e14af6800000600c5562030d40600d553480156200004c57600080fd5b50604080518082018252600580825264446974746f60d81b60208084018290528451808601909552918452908301529060036200008a838262000982565b50600462000099828262000982565b505050620000b6620000b06200060560201b60201c565b62000609565b600b546040516001600160a01b0390911690620000d390620008d0565b6001600160a01b039091168152602001604051809103906000f08015801562000100573d6000803e3d6000fd5b50600a60006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060007360ae616a2155ee3d9a68541ba4544862310933d490506000816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000181573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a7919062000a4e565b6001600160a01b031663c9c6539630846001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021b919062000a4e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000269573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028f919062000a4e565b600880546001600160a01b0319166001600160a01b03858116919091179091556009805460068054601961ffff199182168117909255600780549091169091179055918316600162ffff0160a01b031990921691909117601960a81b1761ffff60b81b1916601960b81b17905590506200030b8160016200065b565b600a5460405163031e79db60e41b81526001600160a01b0390911660048201819052906331e79db090602401600060405180830381600087803b1580156200035257600080fd5b505af115801562000367573d6000803e3d6000fd5b5050600a5460405163031e79db60e41b81523060048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b158015620003b157600080fd5b505af1158015620003c6573d6000803e3d6000fd5b5050600a546001600160a01b031691506331e79db09050620003f06005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b1580156200043257600080fd5b505af115801562000447573d6000803e3d6000fd5b5050600a5460405163031e79db60e41b815261dead60048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b1580156200049357600080fd5b505af1158015620004a8573d6000803e3d6000fd5b5050600a5460405163031e79db60e41b81526001600160a01b03868116600483015290911692506331e79db09150602401600060405180830381600087803b158015620004f457600080fd5b505af115801562000509573d6000803e3d6000fd5b5050600a5460405163031e79db60e41b81527338f37c707de54f7b27d92eea9607bfd48593012660048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b1580156200056757600080fd5b505af11580156200057c573d6000803e3d6000fd5b50505050620005a77338f37c707de54f7b27d92eea9607bfd48593012660016200072760201b60201c565b620005c6620005be6005546001600160a01b031690565b600162000727565b620005d330600162000727565b620005fd620005ea6005546001600160a01b031690565b6b033b2e3c9fd0803ce8000000620007e6565b505062000aa8565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000908152600f60205260409020805460ff19168215801591909117909155620006eb57600a5460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b158015620006d157600080fd5b505af1158015620006e6573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6005546001600160a01b03163314620007875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6001600160a01b0382166000818152600e6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b0382166200083e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200077e565b806002600082825462000852919062000a80565b90915550506001600160a01b038216600090815260208190526040812080548392906200088190849062000a80565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b611f8c806200547d83390190565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200090957607f821691505b6020821081036200092a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620008cb57600081815260208120601f850160051c81016020861015620009595750805b601f850160051c820191505b818110156200097a5782815560010162000965565b505050505050565b81516001600160401b038111156200099e576200099e620008de565b620009b681620009af8454620008f4565b8462000930565b602080601f831160018114620009ee5760008415620009d55750858301515b600019600386901b1c1916600185901b1785556200097a565b600085815260208120601f198616915b8281101562000a1f57888601518255948401946001909101908401620009fe565b508582101562000a3e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562000a6157600080fd5b81516001600160a01b038116811462000a7957600080fd5b9392505050565b8082018082111562000aa257634e487b7160e01b600052601160045260246000fd5b92915050565b6149c58062000ab86000396000f3fe608060405260043610620002875760003560e01c8063871c128d1162000153578063bf6642e711620000c5578063e2f456051162000084578063e2f4560514620007fc578063e98030c71462000814578063f1e9f1e51462000839578063f242ab41146200085b578063f2fde38b146200087d578063f8cf31cb14620008a257600080fd5b8063bf6642e7146200071e578063c02466681462000743578063c492f0461462000768578063d585cd8f146200078d578063dd62ed3e14620007b257600080fd5b80639d9241ec11620001125780639d9241ec1462000666578063a457c2d7146200068a578063a8b9d24014620006af578063a9059cbb14620006d4578063ad73fc3e14620006f957600080fd5b8063871c128d14620005cc5780638da5cb5b14620005f157806395d89b4114620006115780639a7a23d614620006295780639c1b8af5146200064e57600080fd5b80633950935111620001f95780634fbee19311620001b85780634fbee19314620004dc57806359b107b9146200051957806364b0f653146200053d578063700bb191146200055557806370a08231146200057a578063715018a614620005b457600080fd5b80633950935114620004385780634399aea9146200045d57806343c348a514620004825780634706240214620004a75780634e71d92d14620004c457600080fd5b806323b872dd116200024657806323b872dd146200037d5780632b14ca5614620003a25780632c1f521614620003d3578063313ce56714620003f557806331e79db0146200041357600080fd5b806306fdde0314620002945780630758d92414620002c4578063095ea7b314620002ff578063127f4b2e146200033557806318160ddd146200035c57600080fd5b366200028f57005b600080fd5b348015620002a157600080fd5b50620002ac620008c7565b604051620002bb91906200251b565b60405180910390f35b348015620002d157600080fd5b50600854620002e6906001600160a01b031681565b6040516001600160a01b039091168152602001620002bb565b3480156200030c57600080fd5b50620003246200031e36600462002581565b62000961565b6040519015158152602001620002bb565b3480156200034257600080fd5b506200035a62000354366004620025b0565b6200097d565b005b3480156200036957600080fd5b506002545b604051908152602001620002bb565b3480156200038a57600080fd5b50620003246200039c366004620025ca565b620009f2565b348015620003af57600080fd5b50600754620003bf9061ffff1681565b60405161ffff9091168152602001620002bb565b348015620003e057600080fd5b50600a54620002e6906001600160a01b031681565b3480156200040257600080fd5b5060405160128152602001620002bb565b3480156200042057600080fd5b506200035a6200043236600462002610565b62000a1a565b3480156200044557600080fd5b50620003246200045736600462002581565b62000aac565b3480156200046a57600080fd5b506200035a6200047c36600462002610565b62000aef565b3480156200048f57600080fd5b506200035a620004a136600462002630565b62000cfb565b348015620004b457600080fd5b50600654620003bf9061ffff1681565b348015620004d157600080fd5b506200035a62000d9d565b348015620004e957600080fd5b5062000324620004fb36600462002610565b6001600160a01b03166000908152600e602052604090205460ff1690565b3480156200052657600080fd5b50600954620003bf90600160a81b900461ffff1681565b3480156200054a57600080fd5b506200036e62000e15565b3480156200056257600080fd5b506200035a62000574366004620025b0565b62000e8b565b3480156200058757600080fd5b506200036e6200059936600462002610565b6001600160a01b031660009081526020819052604090205490565b348015620005c157600080fd5b506200035a62000f60565b348015620005d957600080fd5b506200035a620005eb366004620025b0565b62000f9b565b348015620005fe57600080fd5b506005546001600160a01b0316620002e6565b3480156200061e57600080fd5b50620002ac6200101c565b3480156200063657600080fd5b506200035a6200064836600462002665565b6200102d565b3480156200065b57600080fd5b506200036e600d5481565b3480156200067357600080fd5b50600954620003bf90600160b81b900461ffff1681565b3480156200069757600080fd5b5062000324620006a936600462002581565b62001066565b348015620006bc57600080fd5b506200036e620006ce36600462002610565b620010fc565b348015620006e157600080fd5b5062000324620006f336600462002581565b6200116e565b3480156200070657600080fd5b506200035a6200071836600462002630565b6200117e565b3480156200072b57600080fd5b506200035a6200073d366004620025b0565b6200121d565b3480156200075057600080fd5b506200035a6200076236600462002665565b62001264565b3480156200077557600080fd5b506200035a62000787366004620026a3565b620012f0565b3480156200079a57600080fd5b506200035a620007ac36600462002581565b620013da565b348015620007bf57600080fd5b506200036e620007d136600462002730565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156200080957600080fd5b506200036e600c5481565b3480156200082157600080fd5b506200035a62000833366004620025b0565b620014a2565b3480156200084657600080fd5b50600b54620002e6906001600160a01b031681565b3480156200086857600080fd5b50600954620002e6906001600160a01b031681565b3480156200088a57600080fd5b506200035a6200089c36600462002610565b62001501565b348015620008af57600080fd5b506200035a620008c136600462002610565b620015a0565b606060038054620008d89062002763565b80601f0160208091040260200160405190810160405280929190818152602001828054620009069062002763565b8015620009575780601f106200092b5761010080835404028352916020019162000957565b820191906000526020600020905b8154815290600101906020018083116200093957829003601f168201915b5050505050905090565b6000336200097181858562001804565b60019150505b92915050565b6005546001600160a01b03163314620009b35760405162461bcd60e51b8152600401620009aa906200279f565b60405180910390fd5b6005546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015620009ee573d6000803e3d6000fd5b5050565b60003362000a028582856200192c565b62000a0f858585620019c3565b506001949350505050565b6005546001600160a01b0316331462000a475760405162461bcd60e51b8152600401620009aa906200279f565b600a5460405163031e79db60e41b81526001600160a01b038381166004830152909116906331e79db0906024015b600060405180830381600087803b15801562000a9057600080fd5b505af115801562000aa5573d6000803e3d6000fd5b5050505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919062000971908290869062000ae9908790620027ea565b62001804565b6005546001600160a01b0316331462000b1c5760405162461bcd60e51b8152600401620009aa906200279f565b6008546040516001600160a01b03918216918316907f2a5fe0bd73c29d6e2348ae712c7bae1b68b54bbb4b4689bb0fe6c6587578b55e90600090a3600880546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa15801562000bb4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000bda919062002800565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000c3d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000c63919062002800565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000cb1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000cd7919062002800565b600980546001600160a01b0319166001600160a01b03929092169190911790555050565b6005546001600160a01b0316331462000d285760405162461bcd60e51b8152600401620009aa906200279f565b6006805461ffff191661ffff8381169182179092556009805461ffff60a81b1916600160a81b92830217908190556064919004909116111562000d9a5760405162461bcd60e51b81526020600482015260096024820152680c4c09481b1a5b5a5d60ba1b6044820152606401620009aa565b50565b600a5460405163bc4c4b3760e01b8152336004820152600060248201526001600160a01b039091169063bc4c4b37906044016020604051808303816000875af115801562000def573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d9a919062002820565b600a54604080516304ddf6ef60e11b815290516000926001600160a01b0316916309bbedde9160048083019260209291908290030181865afa15801562000e60573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e86919062002840565b905090565b600a546040516001624d3b8760e01b0319815260048101839052600091829182916001600160a01b03169063ffb2c479906024016060604051808303816000875af115801562000edf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f0591906200285a565b604080518481526020810184905290810182905260608101889052929550909350915032906000907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a350505050565b6005546001600160a01b0316331462000f8d5760405162461bcd60e51b8152600401620009aa906200279f565b62000f99600062001e29565b565b6005546001600160a01b0316331462000fc85760405162461bcd60e51b8152600401620009aa906200279f565b62030d40811015801562000fdf57506207a1208111155b62000fe957600080fd5b600d5460405182907f40d7e40e79af4e8e5a9b3c57030d8ea93f13d669c06d448c4d631d4ae7d23db790600090a3600d55565b606060048054620008d89062002763565b6005546001600160a01b031633146200105a5760405162461bcd60e51b8152600401620009aa906200279f565b620009ee828262001e7b565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919083811015620010ed5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401620009aa565b62000a0f828686840362001804565b600a546040516302a2e74960e61b81526001600160a01b038381166004830152600092169063a8b9d24090602401602060405180830381865afa15801562001148573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000977919062002840565b60003362000971818585620019c3565b6005546001600160a01b03163314620011ab5760405162461bcd60e51b8152600401620009aa906200279f565b6007805461ffff191661ffff8381169182179092556009805461ffff60b81b1916600160b81b92830217908190556064919004909116111562000d9a5760405162461bcd60e51b81526020600482015260096024820152680c4c09481b1a5b5a5d60ba1b6044820152606401620009aa565b6005546001600160a01b031633146200124a5760405162461bcd60e51b8152600401620009aa906200279f565b6200125e81670de0b6b3a764000062002889565b600c5550565b6005546001600160a01b03163314620012915760405162461bcd60e51b8152600401620009aa906200279f565b6001600160a01b0382166000818152600e6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b031633146200131d5760405162461bcd60e51b8152600401620009aa906200279f565b60005b82811015620013975781600e6000868685818110620013435762001343620028a3565b90506020020160208101906200135a919062002610565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806200138e81620028b9565b91505062001320565b507f7fdaf542373fa84f4ee8d662c642f44e4c2276a217d7d29e548b6eb29a233b35838383604051620013cd93929190620028d5565b60405180910390a1505050565b6005546001600160a01b03163314620014075760405162461bcd60e51b8152600401620009aa906200279f565b816001600160a01b031663a9059cbb620014296005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af115801562001477573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200149d919062002820565b505050565b6005546001600160a01b03163314620014cf5760405162461bcd60e51b8152600401620009aa906200279f565b600a5460405163e98030c760e01b8152600481018390526001600160a01b039091169063e98030c79060240162000a75565b6005546001600160a01b031633146200152e5760405162461bcd60e51b8152600401620009aa906200279f565b6001600160a01b038116620015955760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620009aa565b62000d9a8162001e29565b6005546001600160a01b03163314620015cd5760405162461bcd60e51b8152600401620009aa906200279f565b600081604051620015de906200250d565b6001600160a01b039091168152602001604051809103906000f0801580156200160b573d6000803e3d6000fd5b5060405163031e79db60e41b81526001600160a01b038216600482018190529192506331e79db090602401600060405180830381600087803b1580156200165157600080fd5b505af115801562001666573d6000803e3d6000fd5b505060405163031e79db60e41b81523060048201526001600160a01b03841692506331e79db09150602401600060405180830381600087803b158015620016ac57600080fd5b505af1158015620016c1573d6000803e3d6000fd5b50505050806001600160a01b03166331e79db0620016e76005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b1580156200172957600080fd5b505af11580156200173e573d6000803e3d6000fd5b505060085460405163031e79db60e41b81526001600160a01b03918216600482015290841692506331e79db09150602401600060405180830381600087803b1580156200178a57600080fd5b505af11580156200179f573d6000803e3d6000fd5b5050600b80546001600160a01b038087166001600160a01b03199283168117909355600a80549187169190921681179091556040519093509091507f90c7d74461c613da5efa97d90740869367d74ab3aa5837aa4ae9a975f954b7a890600090a35050565b6001600160a01b038316620018685760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620009aa565b6001600160a01b038216620018cb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620009aa565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381166000908152600160209081526040808320938616835292905220546000198114620019bd5781811015620019ae5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401620009aa565b620019bd848484840362001804565b50505050565b80600003620019da576200149d8383600062001f47565b30600090815260208190526040902054600c548110801590819062001a095750600954600160a01b900460ff16155b801562001a2f57506001600160a01b0385166000908152600f602052604090205460ff16155b801562001a4a57506005546001600160a01b03868116911614155b801562001a6557506005546001600160a01b03858116911614155b1562001b06576009805460ff60a01b1916600160a01b179081905560009062001aa39061ffff600160b81b8204811691600160a81b90041662002932565b600c5460075460065491955091925060009162001ae99161ffff8086169262001ae29262001ad692918216911662002932565b879061ffff166200211f565b9062002134565b905062001af68162002142565b50506009805460ff60a01b191690555b6009546001600160a01b0386166000908152600e602052604090205460ff600160a01b90920482161591168062001b5557506001600160a01b0385166000908152600e602052604090205460ff165b1562001b5f575060005b801562001c21576001600160a01b0386166000908152600f602052604081205460ff161562001bb45760095462001bac906103e89062001ae2908890600160a81b900461ffff166200211f565b905062001bfd565b6001600160a01b0386166000908152600f602052604090205460ff161562001bfd5760095462001bfa906103e89062001ae2908890600160b81b900461ffff166200211f565b90505b801562001c1f5762001c10858262002368565b945062001c1f87308362001f47565b505b62001c2e86868662001f47565b600a546001600160a01b031663e30443bc8762001c60816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801562001ca757600080fd5b505af192505050801562001cb9575060015b50600a546001600160a01b031663e30443bc8662001cec816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801562001d3357600080fd5b505af192505050801562001d45575060015b50600954600160a01b900460ff1662001e2157600d54600a546040516001624d3b8760e01b03198152600481018390526001600160a01b039091169063ffb2c479906024016060604051808303816000875af192505050801562001dc8575060408051601f3d908101601f1916820190925262001dc5918101906200285a565b60015b1562001e1f5760408051848152602081018490529081018290526060810185905232906001907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a35050505b505b505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000908152600f60205260409020805460ff1916821580159190911790915562001f0b57600a5460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b15801562001ef157600080fd5b505af115801562001f06573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6001600160a01b03831662001fad5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401620009aa565b6001600160a01b038216620020115760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401620009aa565b6001600160a01b038316600090815260208190526040902054818110156200208b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401620009aa565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290620020c4908490620027ea565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516200211191815260200190565b60405180910390a3620019bd565b60006200212d828462002889565b9392505050565b60006200212d828462002957565b600b546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa1580156200218c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620021b2919062002840565b9050620021bf8262002376565b600b546040516370a0823160e01b81523060048201526000916200223d9184916001600160a01b0316906370a0823190602401602060405180830381865afa15801562002210573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002236919062002840565b9062002368565b600b54600a5460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905292935060009291169063a9059cbb906044016020604051808303816000875af115801562002299573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022bf919062002820565b90508015620019bd57600a546040516363f2490360e01b8152600481018490526001600160a01b03909116906363f2490390602401600060405180830381600087803b1580156200230f57600080fd5b505af115801562002324573d6000803e3d6000fd5b505060408051878152602081018690527f80195cc573b02cc48460cbca6e6e4cc85ddb91959d946e1c3025ea3d87942dc3935001905060405180910390a150505050565b60006200212d82846200297a565b60408051600380825260808201909252600091602082016060803683370190505090503081600081518110620023b057620023b0620028a3565b6001600160a01b03928316602091820292909201810191909152600854604080516339d94ae160e11b8152905191909316926373b295c29260048083019391928290030181865afa1580156200240a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002430919062002800565b81600181518110620024465762002446620028a3565b6001600160a01b039283166020918202929092010152600b548251911690829060029081106200247a576200247a620028a3565b6001600160a01b039283166020918202929092010152600854620024a2913091168462001804565b600854604051635c11d79560e01b81526001600160a01b0390911690635c11d79590620024dd90859060009086903090429060040162002990565b600060405180830381600087803b158015620024f857600080fd5b505af115801562001e21573d6000803e3d6000fd5b611f8c8062002a0483390190565b600060208083528351808285015260005b818110156200254a578581018301518582016040015282016200252c565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811462000d9a57600080fd5b600080604083850312156200259557600080fd5b8235620025a2816200256b565b946020939093013593505050565b600060208284031215620025c357600080fd5b5035919050565b600080600060608486031215620025e057600080fd5b8335620025ed816200256b565b92506020840135620025ff816200256b565b929592945050506040919091013590565b6000602082840312156200262357600080fd5b81356200212d816200256b565b6000602082840312156200264357600080fd5b813561ffff811681146200212d57600080fd5b801515811462000d9a57600080fd5b600080604083850312156200267957600080fd5b823562002686816200256b565b91506020830135620026988162002656565b809150509250929050565b600080600060408486031215620026b957600080fd5b833567ffffffffffffffff80821115620026d257600080fd5b818601915086601f830112620026e757600080fd5b813581811115620026f757600080fd5b8760208260051b85010111156200270d57600080fd5b60209283019550935050840135620027258162002656565b809150509250925092565b600080604083850312156200274457600080fd5b823562002751816200256b565b9150602083013562002698816200256b565b600181811c908216806200277857607f821691505b6020821081036200279957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820180821115620009775762000977620027d4565b6000602082840312156200281357600080fd5b81516200212d816200256b565b6000602082840312156200283357600080fd5b81516200212d8162002656565b6000602082840312156200285357600080fd5b5051919050565b6000806000606084860312156200287057600080fd5b8351925060208401519150604084015190509250925092565b8082028115828204841417620009775762000977620027d4565b634e487b7160e01b600052603260045260246000fd5b600060018201620028ce57620028ce620027d4565b5060010190565b6040808252810183905260008460608301825b868110156200291c578235620028fe816200256b565b6001600160a01b0316825260209283019290910190600101620028e8565b5080925050508215156020830152949350505050565b61ffff818116838216019080821115620029505762002950620027d4565b5092915050565b6000826200297557634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115620009775762000977620027d4565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015620029e25784516001600160a01b031683529383019391830191600101620029bb565b50506001600160a01b0396909616606085015250505060800152939250505056fe60c06040523480156200001157600080fd5b5060405162001f8c38038062001f8c83398101604081905262000034916200015e565b6040518060400160405280601581526020017f446974746f5f4469766964656e5f547261636b657200000000000000000000008152506040518060400160405280601681526020017f446974746f5f4469766964656e645f547261636b6572000000000000000000008152508282828160039081620000b4919062000235565b506004620000c3828262000235565b505050620000e0620000da6200010860201b60201c565b6200010c565b6001600160a01b03166080525050610e1060115550683635c9adc5dea0000060a05262000301565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000602082840312156200017157600080fd5b81516001600160a01b03811681146200018957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001bb57607f821691505b602082108103620001dc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023057600081815260208120601f850160051c810160208610156200020b5750805b601f850160051c820191505b818110156200022c5782815560010162000217565b5050505b505050565b81516001600160401b0381111562000251576200025162000190565b6200026981620002628454620001a6565b84620001e2565b602080601f831160018114620002a15760008415620002885750858301515b600019600386901b1c1916600185901b1785556200022c565b600085815260208120601f198616915b82811015620002d257888601518255948401946001909101908401620002b1565b5085821015620002f15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a051611c5762000335600039600081816104950152610b0901526000818161052301526113f60152611c576000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c806385a6b3ae11610125578063be10b614116100ad578063e98030c71161007c578063e98030c71461050b578063f1e9f1e51461051e578063f2fde38b14610545578063fbcbc0f114610558578063ffb2c4791461056b57600080fd5b8063be10b61414610490578063dd62ed3e146104b7578063e30443bc146104f0578063e7841ec01461050357600080fd5b8063a457c2d7116100f4578063a457c2d71461041b578063a8b9d2401461042e578063a9059cbb14610441578063aafd847a14610454578063bc4c4b371461047d57600080fd5b806385a6b3ae146103d25780638da5cb5b146103db57806391b89fba1461040057806395d89b411461041357600080fd5b806331e79db0116101a857806363f249031161017757806363f249031461037d5780636a474002146103905780636f2789ec1461039857806370a08231146103a1578063715018a6146103ca57600080fd5b806331e79db0146102da57806339509351146102ef5780634e7b827f146103025780635183d6fd1461032557600080fd5b8063226cfa3d116101ef578063226cfa3d1461027c57806323b872dd1461029c57806327ce0147146102af5780633009a609146102c2578063313ce567146102cb57600080fd5b806306fdde0314610221578063095ea7b31461023f57806309bbedde1461026257806318160ddd14610274575b600080fd5b610229610599565b6040516102369190611918565b60405180910390f35b61025261024d36600461197b565b61062b565b6040519015158152602001610236565b600a545b604051908152602001610236565b600254610266565b61026661028a3660046119a7565b60106020526000908152604090205481565b6102526102aa3660046119c4565b610645565b6102666102bd3660046119a7565b610666565b610266600e5481565b60405160128152602001610236565b6102ed6102e83660046119a7565b6106c2565b005b6102526102fd36600461197b565b61078b565b6102526103103660046119a7565b600f6020526000908152604090205460ff1681565b610338610333366004611a05565b6107ca565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e082015261010001610236565b6102ed61038b366004611a05565b610839565b6102ed600080fd5b61026660115481565b6102666103af3660046119a7565b6001600160a01b031660009081526020819052604090205490565b6102ed6108f9565b61026660095481565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610236565b61026661040e3660046119a7565b61092d565b610229610938565b61025261042936600461197b565b610947565b61026661043c3660046119a7565b6109d9565b61025261044f36600461197b565b610a05565b6102666104623660046119a7565b6001600160a01b031660009081526008602052604090205490565b61025261048b366004611a2c565b610a0f565b6102667f000000000000000000000000000000000000000000000000000000000000000081565b6102666104c5366004611a65565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102ed6104fe36600461197b565b610abd565b600e54610266565b6102ed610519366004611a05565b610b70565b6103e87f000000000000000000000000000000000000000000000000000000000000000081565b6102ed6105533660046119a7565b610c40565b6103386105663660046119a7565b610cd8565b61057e610579366004611a05565b610dc1565b60408051938452602084019290925290820152606001610236565b6060600380546105a890611a93565b80601f01602080910402602001604051908101604052809291908181526020018280546105d490611a93565b80156106215780601f106105f657610100808354040283529160200191610621565b820191906000526020600020905b81548152906001019060200180831161060457829003601f168201915b5050505050905090565b600033610639818585610ede565b60019150505b92915050565b600033610653858285611002565b61065b600080fd5b506001949350505050565b6001600160a01b03811660009081526007602090815260408083205491839052822054600654600160801b926106b8926106b3926106ad916106a89190611094565b6110a7565b906110b7565b6110f5565b61063f9190611ae3565b6005546001600160a01b031633146106f55760405162461bcd60e51b81526004016106ec90611b05565b60405180910390fd5b6001600160a01b0381166000908152600f602052604090205460ff161561071b57600080fd5b6001600160a01b0381166000908152600f60205260408120805460ff19166001179055610749908290611108565b610754600a82611167565b6040516001600160a01b038216907fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b2590600090a250565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061063990829086906107c5908790611b3a565b610ede565b6000806000806000806000806107df600a5490565b891061080457506000965060001995508594508693508392508291508190508061082e565b6000610811600a8b6112a2565b905061081c81610cd8565b98509850985098509850985098509850505b919395975091939597565b6005546001600160a01b031633146108635760405162461bcd60e51b81526004016106ec90611b05565b600061086e60025490565b1161087857600080fd5b80156108f4576108ab61088a60025490565b61089883600160801b611094565b6108a29190611ae3565b600654906112d5565b60065560405181815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26009546108f090826112d5565b6009555b50565b565b6005546001600160a01b031633146109235760405162461bcd60e51b81526004016106ec90611b05565b6108f760006112e1565b600061063f826109d9565b6060600480546105a890611a93565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156109cc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106ec565b61065b8286868403610ede565b6001600160a01b03811660009081526008602052604081205461063f906109ff84610666565b90611333565b6000336106398280fd5b6005546000906001600160a01b03163314610a3c5760405162461bcd60e51b81526004016106ec90611b05565b6000610a478461133f565b90508015610ab3576001600160a01b038416600081815260106020526040908190204290555184151591907fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09290610aa19085815260200190565b60405180910390a3600191505061063f565b5060009392505050565b6005546001600160a01b03163314610ae75760405162461bcd60e51b81526004016106ec90611b05565b6001600160a01b0382166000908152600f602052604090205460ff16610b6c577f00000000000000000000000000000000000000000000000000000000000000008110610b4957610b388282611108565b610b44600a83836114c4565b610b5f565b610b54826000611108565b610b5f600a83611167565b610b6a826001610a0f565b505b5050565b6005546001600160a01b03163314610b9a5760405162461bcd60e51b81526004016106ec90611b05565b6170808110158015610baf5750620151808111155b610c0d5760405162461bcd60e51b815260206004820152602960248201527f446974746f5f4469766964656e645f547261636b65723a20496e76616c69642060448201526810db185a5b5dd85a5d60ba1b60648201526084016106ec565b60115460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3601155565b6005546001600160a01b03163314610c6a5760405162461bcd60e51b81526004016106ec90611b05565b6001600160a01b038116610ccf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106ec565b6108f4816112e1565b806000808080808080610cec600a8961156d565b9650600019955060008712610d4e57600e54871115610d1a57600e54610d139088906115b8565b9550610d4e565b600e54600a5460009110610d2f576000610d3e565b600e54600a54610d3e91611333565b9050610d4a88826110b7565b9650505b610d57886109d9565b9450610d6288610666565b6001600160a01b038916600090815260106020526040902054909450925082610d8c576000610d9a565b601154610d9a9084906112d5565b9150428211610daa576000610db4565b610db48242611333565b9050919395975091939597565b600a5460009081908190808203610de3575050600e5460009250829150610ed7565b600e546000805a90506000805b8984108015610dfe57508582105b15610ec65784610e0d81611b4d565b600a5490965086109050610e2057600094505b6000600a6000018681548110610e3857610e38611b66565b60009182526020808320909101546001600160a01b03168083526010909152604090912054909150610e69906115f5565b15610e8c57610e79816001610a0f565b15610e8c5781610e8881611b4d565b9250505b82610e9681611b4d565b93505060005a905080851115610ebd57610eba610eb38683611333565b87906112d5565b95505b9350610df09050565b600e85905590975095509193505050505b9193909250565b6001600160a01b038316610f405760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106ec565b6001600160a01b038216610fa15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106ec565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03838116600090815260016020908152604080832093861683529290522054600019811461108e57818110156110815760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106ec565b61108e8484848403610ede565b50505050565b60006110a08284611b7c565b9392505050565b6000818181121561063f57600080fd5b6000806110c48385611b93565b9050600083121580156110d75750838112155b806110ec57506000831280156110ec57508381125b6110a057600080fd5b60008082121561110457600080fd5b5090565b6001600160a01b038216600090815260208190526040902054808211156111475760006111358383611333565b9050611141848261161c565b50610b6a565b80821015610b6a57600061115b8284611333565b905061108e8482611680565b6001600160a01b038116600090815260038301602052604090205460ff1661118d575050565b6001600160a01b03811660009081526003830160209081526040808320805460ff19169055600180860183528184208490556002860190925282205484549092916111d791611bbb565b905060008460000182815481106111f0576111f0611b66565b60009182526020808320909101546001600160a01b0390811680845260028901909252604080842087905590871683528220919091558554909150819086908590811061123f5761123f611b66565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055845485908061127957611279611bce565b600082815260209020810160001990810180546001600160a01b03191690550190555050505050565b60008260000182815481106112b9576112b9611b66565b6000918252602090912001546001600160a01b03169392505050565b60006110a08284611b3a565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006110a08284611bbb565b60008061134b836109d9565b905080156114bb576001600160a01b03831660009081526008602052604090205461137690826112d5565b6001600160a01b038416600081815260086020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906113c59084815260200190565b60405180910390a260405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390526000917f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af1158015611441573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114659190611be4565b9050806114b4576001600160a01b03841660009081526008602052604090205461148f9083611333565b6001600160a01b03909416600090815260086020526040812094909455509192915050565b5092915050565b50600092915050565b6001600160a01b038216600090815260038401602052604090205460ff1615611509576001600160a01b03821660009081526001840160205260409020819055610b6a565b6001600160a01b03821660008181526003850160209081526040808320805460ff19166001908117909155878101835281842086905587546002890184529184208290558101875586835291200180546001600160a01b0319169091179055505050565b6001600160a01b038116600090815260038301602052604081205460ff16611598575060001961063f565b506001600160a01b03166000908152600291909101602052604090205490565b6000806115c58385611c01565b9050600083121580156115d85750838113155b806110ec57506000831280156110ec57508381136110a057600080fd5b60004282111561160757506000919050565b6011546116144284611333565b101592915050565b61162682826116c4565b6116606116416106a88360065461109490919063ffffffff16565b6001600160a01b038416600090815260076020526040902054906115b8565b6001600160a01b0390921660009081526007602052604090209190915550565b61168a82826117b7565b6116606116a56106a88360065461109490919063ffffffff16565b6001600160a01b038416600090815260076020526040902054906110b7565b6001600160a01b03821661171a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016106ec565b61172660008383610b6a565b80600260008282546117389190611b3a565b90915550506001600160a01b03821660009081526020819052604081208054839290611765908490611b3a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3610b6c60008383610b6a565b6001600160a01b0382166118175760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016106ec565b61182382600083610b6a565b6001600160a01b038216600090815260208190526040902054818110156118975760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016106ec565b6001600160a01b03831660009081526020819052604081208383039055600280548492906118c6908490611bbb565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3610b6a83600084610b6a565b600060208083528351808285015260005b8181101561194557858101830151858201604001528201611929565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108f457600080fd5b6000806040838503121561198e57600080fd5b823561199981611966565b946020939093013593505050565b6000602082840312156119b957600080fd5b81356110a081611966565b6000806000606084860312156119d957600080fd5b83356119e481611966565b925060208401356119f481611966565b929592945050506040919091013590565b600060208284031215611a1757600080fd5b5035919050565b80151581146108f457600080fd5b60008060408385031215611a3f57600080fd5b8235611a4a81611966565b91506020830135611a5a81611a1e565b809150509250929050565b60008060408385031215611a7857600080fd5b8235611a8381611966565b91506020830135611a5a81611966565b600181811c90821680611aa757607f821691505b602082108103611ac757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082611b0057634e487b7160e01b600052601260045260246000fd5b500490565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561063f5761063f611acd565b600060018201611b5f57611b5f611acd565b5060010190565b634e487b7160e01b600052603260045260246000fd5b808202811582820484141761063f5761063f611acd565b8082018281126000831280158216821582161715611bb357611bb3611acd565b505092915050565b8181038181111561063f5761063f611acd565b634e487b7160e01b600052603160045260246000fd5b600060208284031215611bf657600080fd5b81516110a081611a1e565b81810360008312801583831316838312821617156114b4576114b4611acd56fea2646970667358221220078d8b310444a895ddf8a838c863ca1aa576917975881e2fb73f9f8d734a5ce764736f6c63430008130033a2646970667358221220dad2fd58c86851c345f808ca0e2e8b75d33ef5135653861899023d0321aea84864736f6c6343000813003360c06040523480156200001157600080fd5b5060405162001f8c38038062001f8c83398101604081905262000034916200015e565b6040518060400160405280601581526020017f446974746f5f4469766964656e5f547261636b657200000000000000000000008152506040518060400160405280601681526020017f446974746f5f4469766964656e645f547261636b6572000000000000000000008152508282828160039081620000b4919062000235565b506004620000c3828262000235565b505050620000e0620000da6200010860201b60201c565b6200010c565b6001600160a01b03166080525050610e1060115550683635c9adc5dea0000060a05262000301565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000602082840312156200017157600080fd5b81516001600160a01b03811681146200018957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001bb57607f821691505b602082108103620001dc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023057600081815260208120601f850160051c810160208610156200020b5750805b601f850160051c820191505b818110156200022c5782815560010162000217565b5050505b505050565b81516001600160401b0381111562000251576200025162000190565b6200026981620002628454620001a6565b84620001e2565b602080601f831160018114620002a15760008415620002885750858301515b600019600386901b1c1916600185901b1785556200022c565b600085815260208120601f198616915b82811015620002d257888601518255948401946001909101908401620002b1565b5085821015620002f15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a051611c5762000335600039600081816104950152610b0901526000818161052301526113f60152611c576000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c806385a6b3ae11610125578063be10b614116100ad578063e98030c71161007c578063e98030c71461050b578063f1e9f1e51461051e578063f2fde38b14610545578063fbcbc0f114610558578063ffb2c4791461056b57600080fd5b8063be10b61414610490578063dd62ed3e146104b7578063e30443bc146104f0578063e7841ec01461050357600080fd5b8063a457c2d7116100f4578063a457c2d71461041b578063a8b9d2401461042e578063a9059cbb14610441578063aafd847a14610454578063bc4c4b371461047d57600080fd5b806385a6b3ae146103d25780638da5cb5b146103db57806391b89fba1461040057806395d89b411461041357600080fd5b806331e79db0116101a857806363f249031161017757806363f249031461037d5780636a474002146103905780636f2789ec1461039857806370a08231146103a1578063715018a6146103ca57600080fd5b806331e79db0146102da57806339509351146102ef5780634e7b827f146103025780635183d6fd1461032557600080fd5b8063226cfa3d116101ef578063226cfa3d1461027c57806323b872dd1461029c57806327ce0147146102af5780633009a609146102c2578063313ce567146102cb57600080fd5b806306fdde0314610221578063095ea7b31461023f57806309bbedde1461026257806318160ddd14610274575b600080fd5b610229610599565b6040516102369190611918565b60405180910390f35b61025261024d36600461197b565b61062b565b6040519015158152602001610236565b600a545b604051908152602001610236565b600254610266565b61026661028a3660046119a7565b60106020526000908152604090205481565b6102526102aa3660046119c4565b610645565b6102666102bd3660046119a7565b610666565b610266600e5481565b60405160128152602001610236565b6102ed6102e83660046119a7565b6106c2565b005b6102526102fd36600461197b565b61078b565b6102526103103660046119a7565b600f6020526000908152604090205460ff1681565b610338610333366004611a05565b6107ca565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e082015261010001610236565b6102ed61038b366004611a05565b610839565b6102ed600080fd5b61026660115481565b6102666103af3660046119a7565b6001600160a01b031660009081526020819052604090205490565b6102ed6108f9565b61026660095481565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610236565b61026661040e3660046119a7565b61092d565b610229610938565b61025261042936600461197b565b610947565b61026661043c3660046119a7565b6109d9565b61025261044f36600461197b565b610a05565b6102666104623660046119a7565b6001600160a01b031660009081526008602052604090205490565b61025261048b366004611a2c565b610a0f565b6102667f000000000000000000000000000000000000000000000000000000000000000081565b6102666104c5366004611a65565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102ed6104fe36600461197b565b610abd565b600e54610266565b6102ed610519366004611a05565b610b70565b6103e87f000000000000000000000000000000000000000000000000000000000000000081565b6102ed6105533660046119a7565b610c40565b6103386105663660046119a7565b610cd8565b61057e610579366004611a05565b610dc1565b60408051938452602084019290925290820152606001610236565b6060600380546105a890611a93565b80601f01602080910402602001604051908101604052809291908181526020018280546105d490611a93565b80156106215780601f106105f657610100808354040283529160200191610621565b820191906000526020600020905b81548152906001019060200180831161060457829003601f168201915b5050505050905090565b600033610639818585610ede565b60019150505b92915050565b600033610653858285611002565b61065b600080fd5b506001949350505050565b6001600160a01b03811660009081526007602090815260408083205491839052822054600654600160801b926106b8926106b3926106ad916106a89190611094565b6110a7565b906110b7565b6110f5565b61063f9190611ae3565b6005546001600160a01b031633146106f55760405162461bcd60e51b81526004016106ec90611b05565b60405180910390fd5b6001600160a01b0381166000908152600f602052604090205460ff161561071b57600080fd5b6001600160a01b0381166000908152600f60205260408120805460ff19166001179055610749908290611108565b610754600a82611167565b6040516001600160a01b038216907fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b2590600090a250565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061063990829086906107c5908790611b3a565b610ede565b6000806000806000806000806107df600a5490565b891061080457506000965060001995508594508693508392508291508190508061082e565b6000610811600a8b6112a2565b905061081c81610cd8565b98509850985098509850985098509850505b919395975091939597565b6005546001600160a01b031633146108635760405162461bcd60e51b81526004016106ec90611b05565b600061086e60025490565b1161087857600080fd5b80156108f4576108ab61088a60025490565b61089883600160801b611094565b6108a29190611ae3565b600654906112d5565b60065560405181815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26009546108f090826112d5565b6009555b50565b565b6005546001600160a01b031633146109235760405162461bcd60e51b81526004016106ec90611b05565b6108f760006112e1565b600061063f826109d9565b6060600480546105a890611a93565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156109cc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106ec565b61065b8286868403610ede565b6001600160a01b03811660009081526008602052604081205461063f906109ff84610666565b90611333565b6000336106398280fd5b6005546000906001600160a01b03163314610a3c5760405162461bcd60e51b81526004016106ec90611b05565b6000610a478461133f565b90508015610ab3576001600160a01b038416600081815260106020526040908190204290555184151591907fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09290610aa19085815260200190565b60405180910390a3600191505061063f565b5060009392505050565b6005546001600160a01b03163314610ae75760405162461bcd60e51b81526004016106ec90611b05565b6001600160a01b0382166000908152600f602052604090205460ff16610b6c577f00000000000000000000000000000000000000000000000000000000000000008110610b4957610b388282611108565b610b44600a83836114c4565b610b5f565b610b54826000611108565b610b5f600a83611167565b610b6a826001610a0f565b505b5050565b6005546001600160a01b03163314610b9a5760405162461bcd60e51b81526004016106ec90611b05565b6170808110158015610baf5750620151808111155b610c0d5760405162461bcd60e51b815260206004820152602960248201527f446974746f5f4469766964656e645f547261636b65723a20496e76616c69642060448201526810db185a5b5dd85a5d60ba1b60648201526084016106ec565b60115460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3601155565b6005546001600160a01b03163314610c6a5760405162461bcd60e51b81526004016106ec90611b05565b6001600160a01b038116610ccf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106ec565b6108f4816112e1565b806000808080808080610cec600a8961156d565b9650600019955060008712610d4e57600e54871115610d1a57600e54610d139088906115b8565b9550610d4e565b600e54600a5460009110610d2f576000610d3e565b600e54600a54610d3e91611333565b9050610d4a88826110b7565b9650505b610d57886109d9565b9450610d6288610666565b6001600160a01b038916600090815260106020526040902054909450925082610d8c576000610d9a565b601154610d9a9084906112d5565b9150428211610daa576000610db4565b610db48242611333565b9050919395975091939597565b600a5460009081908190808203610de3575050600e5460009250829150610ed7565b600e546000805a90506000805b8984108015610dfe57508582105b15610ec65784610e0d81611b4d565b600a5490965086109050610e2057600094505b6000600a6000018681548110610e3857610e38611b66565b60009182526020808320909101546001600160a01b03168083526010909152604090912054909150610e69906115f5565b15610e8c57610e79816001610a0f565b15610e8c5781610e8881611b4d565b9250505b82610e9681611b4d565b93505060005a905080851115610ebd57610eba610eb38683611333565b87906112d5565b95505b9350610df09050565b600e85905590975095509193505050505b9193909250565b6001600160a01b038316610f405760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106ec565b6001600160a01b038216610fa15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106ec565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03838116600090815260016020908152604080832093861683529290522054600019811461108e57818110156110815760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106ec565b61108e8484848403610ede565b50505050565b60006110a08284611b7c565b9392505050565b6000818181121561063f57600080fd5b6000806110c48385611b93565b9050600083121580156110d75750838112155b806110ec57506000831280156110ec57508381125b6110a057600080fd5b60008082121561110457600080fd5b5090565b6001600160a01b038216600090815260208190526040902054808211156111475760006111358383611333565b9050611141848261161c565b50610b6a565b80821015610b6a57600061115b8284611333565b905061108e8482611680565b6001600160a01b038116600090815260038301602052604090205460ff1661118d575050565b6001600160a01b03811660009081526003830160209081526040808320805460ff19169055600180860183528184208490556002860190925282205484549092916111d791611bbb565b905060008460000182815481106111f0576111f0611b66565b60009182526020808320909101546001600160a01b0390811680845260028901909252604080842087905590871683528220919091558554909150819086908590811061123f5761123f611b66565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055845485908061127957611279611bce565b600082815260209020810160001990810180546001600160a01b03191690550190555050505050565b60008260000182815481106112b9576112b9611b66565b6000918252602090912001546001600160a01b03169392505050565b60006110a08284611b3a565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006110a08284611bbb565b60008061134b836109d9565b905080156114bb576001600160a01b03831660009081526008602052604090205461137690826112d5565b6001600160a01b038416600081815260086020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906113c59084815260200190565b60405180910390a260405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390526000917f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af1158015611441573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114659190611be4565b9050806114b4576001600160a01b03841660009081526008602052604090205461148f9083611333565b6001600160a01b03909416600090815260086020526040812094909455509192915050565b5092915050565b50600092915050565b6001600160a01b038216600090815260038401602052604090205460ff1615611509576001600160a01b03821660009081526001840160205260409020819055610b6a565b6001600160a01b03821660008181526003850160209081526040808320805460ff19166001908117909155878101835281842086905587546002890184529184208290558101875586835291200180546001600160a01b0319169091179055505050565b6001600160a01b038116600090815260038301602052604081205460ff16611598575060001961063f565b506001600160a01b03166000908152600291909101602052604090205490565b6000806115c58385611c01565b9050600083121580156115d85750838113155b806110ec57506000831280156110ec57508381136110a057600080fd5b60004282111561160757506000919050565b6011546116144284611333565b101592915050565b61162682826116c4565b6116606116416106a88360065461109490919063ffffffff16565b6001600160a01b038416600090815260076020526040902054906115b8565b6001600160a01b0390921660009081526007602052604090209190915550565b61168a82826117b7565b6116606116a56106a88360065461109490919063ffffffff16565b6001600160a01b038416600090815260076020526040902054906110b7565b6001600160a01b03821661171a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016106ec565b61172660008383610b6a565b80600260008282546117389190611b3a565b90915550506001600160a01b03821660009081526020819052604081208054839290611765908490611b3a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3610b6c60008383610b6a565b6001600160a01b0382166118175760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016106ec565b61182382600083610b6a565b6001600160a01b038216600090815260208190526040902054818110156118975760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016106ec565b6001600160a01b03831660009081526020819052604081208383039055600280548492906118c6908490611bbb565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3610b6a83600084610b6a565b600060208083528351808285015260005b8181101561194557858101830151858201604001528201611929565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146108f457600080fd5b6000806040838503121561198e57600080fd5b823561199981611966565b946020939093013593505050565b6000602082840312156119b957600080fd5b81356110a081611966565b6000806000606084860312156119d957600080fd5b83356119e481611966565b925060208401356119f481611966565b929592945050506040919091013590565b600060208284031215611a1757600080fd5b5035919050565b80151581146108f457600080fd5b60008060408385031215611a3f57600080fd5b8235611a4a81611966565b91506020830135611a5a81611a1e565b809150509250929050565b60008060408385031215611a7857600080fd5b8235611a8381611966565b91506020830135611a5a81611966565b600181811c90821680611aa757607f821691505b602082108103611ac757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082611b0057634e487b7160e01b600052601260045260246000fd5b500490565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561063f5761063f611acd565b600060018201611b5f57611b5f611acd565b5060010190565b634e487b7160e01b600052603260045260246000fd5b808202811582820484141761063f5761063f611acd565b8082018281126000831280158216821582161715611bb357611bb3611acd565b505092915050565b8181038181111561063f5761063f611acd565b634e487b7160e01b600052603160045260246000fd5b600060208284031215611bf657600080fd5b81516110a081611a1e565b81810360008312801583831316838312821617156114b4576114b4611acd56fea2646970667358221220078d8b310444a895ddf8a838c863ca1aa576917975881e2fb73f9f8d734a5ce764736f6c63430008130033