[ { "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": "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": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newAddress", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldAddress", "type": "address" } ], "name": "UpdateDividendTracker", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "newAddress", "type": "address" }, { "indexed": true, "internalType": "address", "name": "oldAddress", "type": "address" } ], "name": "Updaterouter", "type": "event" }, { "inputs": [], "name": "AVAXRewardsFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "automatedMarketMakerPairs", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "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": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "dividendTokenBalanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "dividendTracker", "outputs": [ { "internalType": "contract LayerFortDividendTracker", "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": "forceSend", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "gasForProcessing", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "genesis_block", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getAccountDividendsInfo", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "int256", "name": "", "type": "int256" }, { "internalType": "int256", "name": "", "type": "int256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "getAccountDividendsInfoAtIndex", "outputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "int256", "name": "", "type": "int256" }, { "internalType": "int256", "name": "", "type": "int256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getClaimWait", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getLastProcessedIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getNumberOfDividendTokenHolders", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalDividendsDistributed", "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": "liquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "marketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "marketingWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxBuyAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxSellAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWalletBalance", "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": "pair", "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": [ { "internalType": "address", "name": "tokenAddress", "type": "address" } ], "name": "rescueERC20Tokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract IRouter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newPair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_rewards", "type": "uint256" }, { "internalType": "uint256", "name": "_marketing", "type": "uint256" }, { "internalType": "uint256", "name": "_team", "type": "uint256" }, { "internalType": "uint256", "name": "_utility", "type": "uint256" }, { "internalType": "uint256", "name": "_liquidity", "type": "uint256" } ], "name": "setFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "setMarketingWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setMaxSellAndBuy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setMaxWalletBalance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setMinBalanceForRewards", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setSwapEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setSwapTokensAtAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "setTeamWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "state", "type": "bool" } ], "name": "setTradingStatus", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newWallet", "type": "address" } ], "name": "setUtilityWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": "teamFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "teamWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalFees", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "claimWait", "type": "uint256" } ], "name": "updateClaimWait", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" } ], "name": "updateDividendTracker", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newValue", "type": "uint256" } ], "name": "updateGasForProcessing", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newAddress", "type": "address" } ], "name": "updaterouter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "utilityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "utilityWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "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" } ]
6080604052670de0b6b3a7640000600a556801158e460913d00000600b55678ac7230489e80000600c556801a055690d9db80000600d556008600e556004600f55600260105560006011556001601255601254601054600f54600e5462000067919062000b4e565b62000073919062000b4e565b6200007f919062000b4e565b601355601480546001600160a01b031990811673951a0a0cc4b589fdcc5e9e9db90435d00739640f179091556015805482167395c03f91a2b196341f135cc93154d1538aa68b9c179055601680549091167336b6e88ae6f0cf4c3b0e629c9b1d0ae044877036179055620493e0601755348015620000fc57600080fd5b50604080518082018252600981526813185e595c919bdc9d60ba1b6020808301918252835180850190945260058452642620aca2a960d91b9084015281519192916200014b9160039162000a6f565b5080516200016190600490602084019062000a6f565b5050506000620001766200063160201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350604051620001d29062000afe565b604051809103906000f080158015620001ef573d6000803e3d6000fd5b50600960006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060007360ae616a2155ee3d9a68541ba4544862310933d490506000816001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200026b57600080fd5b505afa15801562000280573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a6919062000b23565b6001600160a01b031663c9c6539630846001600160a01b03166373b295c26040518163ffffffff1660e01b815260040160206040518083038186803b158015620002ef57600080fd5b505afa15801562000304573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032a919062000b23565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200037357600080fd5b505af115801562000388573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003ae919062000b23565b600680546001600160a01b038086166001600160a01b03199283161790925560078054928416929091169190911790559050620003ed81600162000635565b60095460405163031e79db60e41b81526001600160a01b0390911660048201819052906331e79db090602401600060405180830381600087803b1580156200043457600080fd5b505af115801562000449573d6000803e3d6000fd5b505060095460405163031e79db60e41b81523060048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b1580156200049357600080fd5b505af1158015620004a8573d6000803e3d6000fd5b50506009546001600160a01b031691506331e79db09050620004d26005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b1580156200051457600080fd5b505af115801562000529573d6000803e3d6000fd5b505060095460405163031e79db60e41b81526001600160a01b03868116600483015290911692506331e79db09150602401600060405180830381600087803b1580156200057557600080fd5b505af11580156200058a573d6000803e3d6000fd5b50505050620005aa620005a2620007a860201b60201c565b6001620007b7565b620005b7306001620007b7565b601454620005d0906001600160a01b03166001620007b7565b601554620005e9906001600160a01b03166001620007b7565b60165462000602906001600160a01b03166001620007b7565b62000629620006196005546001600160a01b031690565b683635c9adc5dea0000062000909565b505062000bb2565b3390565b6001600160a01b03821660009081526019602052604090205460ff1615158115151415620006dc5760405162461bcd60e51b815260206004820152604360248201527f4c61796572466f72743a204175746f6d61746564206d61726b6574206d616b6560448201527f72207061697220697320616c72656164792073657420746f20746861742076616064820152626c756560e81b608482015260a4015b60405180910390fd5b6001600160a01b0382166000908152601960205260409020805460ff191682158015919091179091556200076c5760095460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b1580156200075257600080fd5b505af115801562000767573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6005546001600160a01b031690565b6005546001600160a01b03163314620008135760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620006d3565b6001600160a01b03821660009081526018602052604090205460ff1615158115151415620008aa5760405162461bcd60e51b815260206004820152603560248201527f4c61796572466f72743a204163636f756e7420697320616c726561647920746860448201527f652076616c7565206f6620276578636c756465642700000000000000000000006064820152608401620006d3565b6001600160a01b038216600081815260186020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620009615760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620006d3565b6200097d8160025462000a0560201b620021c01790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620009b0918390620021c062000a05821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b60008062000a14838562000b4e565b90508381101562000a685760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401620006d3565b9392505050565b82805462000a7d9062000b75565b90600052602060002090601f01602090048101928262000aa1576000855562000aec565b82601f1062000abc57805160ff191683800117855562000aec565b8280016001018555821562000aec579182015b8281111562000aec57825182559160200191906001019062000acf565b5062000afa92915062000b0c565b5090565b6122df80620043dc83390190565b5b8082111562000afa576000815560010162000b0d565b60006020828403121562000b3657600080fd5b81516001600160a01b038116811462000a6857600080fd5b6000821982111562000b7057634e487b7160e01b600052601160045260246000fd5b500190565b600181811c9082168062000b8a57607f821691505b6020821081141562000bac57634e487b7160e01b600052602260045260246000fd5b50919050565b61381a8062000bc26000396000f3fe6080604052600436106103dd5760003560e01c806382d64fff116101fd578063b3db6cb311610118578063dccd8bd2116100ab578063e7841ec01161007a578063e7841ec014610ba2578063e98030c714610bb7578063f27fd25414610bd7578063f2fde38b14610bf7578063f887ea4014610c1757600080fd5b8063dccd8bd214610b10578063dd62ed3e14610b26578063e01af92c14610b6c578063e2f4560514610b8c57600080fd5b8063c0246668116100e7578063c024666814610a9a578063c3e0f5cf14610aba578063c492f04614610ada578063d7c94efd14610afa57600080fd5b8063b3db6cb314610a1e578063b62496f514610a34578063bbde77c114610a64578063bf4cc52b14610a7a57600080fd5b80639c1b8af511610190578063a8b9d2401161015f578063a8b9d24014610959578063a9059cbb14610979578063ad56c13c14610999578063afa4f3b2146109fe57600080fd5b80639c1b8af5146108ee578063a26579ad14610904578063a457c2d714610919578063a8aa1b311461093957600080fd5b80638da5cb5b116101cc5780638da5cb5b1461088557806395d89b41146108a357806398118cb4146108b85780639a7a23d6146108ce57600080fd5b806382d64fff1461080f578063871c128d1461082f57806388bdd9be1461084f57806388e765ff1461086f57600080fd5b80634ada218b116102f857806366d602ae1161028b578063700bb1911161025a578063700bb1911461076457806370a082311461078457806370cbe56c146107ba578063715018a6146107da57806375f0a874146107ef57600080fd5b806366d602ae146106f75780636843cd841461070d5780636b67c4df1461072d5780636ddd17131461074357600080fd5b80635b04d092116102c75780635b04d092146106825780635d098b38146106a25780636235b81c146106c257806364b0f653146106e257600080fd5b80634ada218b146105f35780634e71d92d146106145780634fbee19314610629578063599270441461066257600080fd5b8063274a533c1161037057806331e79db01161033f57806331e79db014610573578063379ba1d91461059357806339509351146105b35780633a9e00de146105d357600080fd5b8063274a533c146104f45780632c1f52161461050a57806330bb4cff14610542578063313ce5671461055757600080fd5b806313114a9d116103ac57806313114a9d1461047b5780631525ff7d1461049f57806318160ddd146104bf57806323b872dd146104d457600080fd5b806304a66b48146103e957806306fdde031461040b578063095ea7b31461043657806312b77e8a1461046657600080fd5b366103e457005b600080fd5b3480156103f557600080fd5b50610409610404366004613445565b610c37565b005b34801561041757600080fd5b50610420610cad565b60405161042d91906134d9565b60405180910390f35b34801561044257600080fd5b506104566104513660046132f9565b610d3f565b604051901515815260200161042d565b34801561047257600080fd5b50610409610d55565b34801561048757600080fd5b5061049160135481565b60405190815260200161042d565b3480156104ab57600080fd5b506104096104ba3660046131ad565b610d70565b3480156104cb57600080fd5b50600254610491565b3480156104e057600080fd5b506104566104ef366004613220565b610dbc565b34801561050057600080fd5b5061049160085481565b34801561051657600080fd5b5060095461052a906001600160a01b031681565b6040516001600160a01b03909116815260200161042d565b34801561054e57600080fd5b50610491610e25565b34801561056357600080fd5b506040516009815260200161042d565b34801561057f57600080fd5b5061040961058e3660046131ad565b610ea7565b34801561059f57600080fd5b506104096105ae3660046133ab565b610f34565b3480156105bf57600080fd5b506104566105ce3660046132f9565b610f9a565b3480156105df57600080fd5b506104096105ee3660046133e5565b610fd0565b3480156105ff57600080fd5b5060075461045690600160b01b900460ff1681565b34801561062057600080fd5b5061040961100e565b34801561063557600080fd5b506104566106443660046131ad565b6001600160a01b031660009081526018602052604090205460ff1690565b34801561066e57600080fd5b5060155461052a906001600160a01b031681565b34801561068e57600080fd5b5061040961069d3660046131ad565b611092565b3480156106ae57600080fd5b506104096106bd3660046131ad565b61118e565b3480156106ce57600080fd5b506104096106dd3660046133e5565b6111da565b3480156106ee57600080fd5b50610491611229565b34801561070357600080fd5b50610491600c5481565b34801561071957600080fd5b506104916107283660046131ad565b61126e565b34801561073957600080fd5b50610491600f5481565b34801561074f57600080fd5b5060075461045690600160a81b900460ff1681565b34801561077057600080fd5b5061040961077f3660046133e5565b6112f3565b34801561079057600080fd5b5061049161079f3660046131ad565b6001600160a01b031660009081526020819052604090205490565b3480156107c657600080fd5b506104096107d53660046133e5565b6113d4565b3480156107e657600080fd5b5061040961142f565b3480156107fb57600080fd5b5060145461052a906001600160a01b031681565b34801561081b57600080fd5b5061040961082a3660046131ad565b6114a3565b34801561083b57600080fd5b5061040961084a3660046133e5565b6114ef565b34801561085b57600080fd5b5061040961086a3660046131ad565b61164c565b34801561087b57600080fd5b50610491600b5481565b34801561089157600080fd5b506005546001600160a01b031661052a565b3480156108af57600080fd5b506104206119fb565b3480156108c457600080fd5b5061049160125481565b3480156108da57600080fd5b506104096108e9366004613261565b611a0a565b3480156108fa57600080fd5b5061049160175481565b34801561091057600080fd5b50610491611ad4565b34801561092557600080fd5b506104566109343660046132f9565b611b19565b34801561094557600080fd5b5060075461052a906001600160a01b031681565b34801561096557600080fd5b506104916109743660046131ad565b611b68565b34801561098557600080fd5b506104566109943660046132f9565b611b9b565b3480156109a557600080fd5b506109b96109b43660046131ad565b611ba8565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e08201526101000161042d565b348015610a0a57600080fd5b50610409610a193660046133e5565b611c52565b348015610a2a57600080fd5b50610491600e5481565b348015610a4057600080fd5b50610456610a4f3660046131ad565b60196020526000908152604090205460ff1681565b348015610a7057600080fd5b50610491600d5481565b348015610a8657600080fd5b5060165461052a906001600160a01b031681565b348015610aa657600080fd5b50610409610ab5366004613261565b611c90565b348015610ac657600080fd5b50610409610ad53660046131ad565b611da6565b348015610ae657600080fd5b50610409610af5366004613325565b611ecf565b348015610b0657600080fd5b5061049160105481565b348015610b1c57600080fd5b5061049160115481565b348015610b3257600080fd5b50610491610b413660046131e7565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b348015610b7857600080fd5b50610409610b873660046133ab565b611fab565b348015610b9857600080fd5b50610491600a5481565b348015610bae57600080fd5b50610491611ff3565b348015610bc357600080fd5b50610409610bd23660046133e5565b612038565b348015610be357600080fd5b506109b9610bf23660046133e5565b612093565b348015610c0357600080fd5b50610409610c123660046131ad565b6120d5565b348015610c2357600080fd5b5060065461052a906001600160a01b031681565b6005546001600160a01b03163314610c6a5760405162461bcd60e51b8152600401610c6190613571565b60405180910390fd5b600e859055600f8490556010839055601182905560128190558083610c8f868861365c565b610c99919061365c565b610ca3919061365c565b6013555050505050565b606060038054610cbc906136cc565b80601f0160208091040260200160405190810160405280929190818152602001828054610ce8906136cc565b8015610d355780601f10610d0a57610100808354040283529160200191610d35565b820191906000526020600020905b815481529060010190602001808311610d1857829003601f168201915b5050505050905090565b6000610d4c338484612226565b50600192915050565b6014544790610d6d906001600160a01b03168261234b565b50565b6005546001600160a01b03163314610d9a5760405162461bcd60e51b8152600401610c6190613571565b601580546001600160a01b0319166001600160a01b0392909216919091179055565b6000610dc9848484612469565b610e1b8433610e1685604051806060016040528060288152602001613798602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190612acc565b612226565b5060019392505050565b600954604080516342d359d760e11b815290516000926001600160a01b0316916385a6b3ae916004808301926020929190829003018186803b158015610e6a57600080fd5b505afa158015610e7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea291906133fe565b905090565b6005546001600160a01b03163314610ed15760405162461bcd60e51b8152600401610c6190613571565b60095460405163031e79db60e41b81526001600160a01b038381166004830152909116906331e79db0906024015b600060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b5050505050565b6005546001600160a01b03163314610f5e5760405162461bcd60e51b8152600401610c6190613571565b600854610f6a57436008555b6007805461ffff60a81b1916600160b01b92151592830260ff60a81b191617600160a81b92909202919091179055565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610d4c918590610e1690866121c0565b6005546001600160a01b03163314610ffa5760405162461bcd60e51b8152600401610c6190613571565b61100881633b9aca00613696565b600d5550565b60095460405163bc4c4b3760e01b8152336004820152600060248201526001600160a01b039091169063bc4c4b3790604401602060405180830381600087803b15801561105a57600080fd5b505af115801561106e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6d91906133c8565b6005546001600160a01b031633146110bc5760405162461bcd60e51b8152600401610c6190613571565b6006546001600160a01b03828116911614156111315760405162461bcd60e51b815260206004820152602e60248201527f4c61796572466f72743a2054686520726f7574657220616c726561647920686160448201526d732074686174206164647265737360901b6064820152608401610c61565b6006546040516001600160a01b03918216918316907f82363979787c1eedf47c4efcd96066e479c68ad1c34ad5035a86ba86b547daeb90600090a3600680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146111b85760405162461bcd60e51b8152600401610c6190613571565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146112045760405162461bcd60e51b8152600401610c6190613571565b61121281633b9aca00613696565b600c5561122381633b9aca00613696565b600b5550565b600954604080516304ddf6ef60e11b815290516000926001600160a01b0316916309bbedde916004808301926020929190829003018186803b158015610e6a57600080fd5b6009546040516370a0823160e01b81526001600160a01b03838116600483015260009216906370a08231906024015b60206040518083038186803b1580156112b557600080fd5b505afa1580156112c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112ed91906133fe565b92915050565b6009546040516001624d3b8760e01b0319815260048101839052600091829182916001600160a01b03169063ffb2c47990602401606060405180830381600087803b15801561134157600080fd5b505af1158015611355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113799190613417565b604080518481526020810184905290810182905260608101889052929550909350915032906000907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a350505050565b6005546001600160a01b031633146113fe5760405162461bcd60e51b8152600401610c6190613571565b600954604051631c32f95b60e21b8152600481018390526001600160a01b03909116906370cbe56c90602401610eff565b6005546001600160a01b031633146114595760405162461bcd60e51b8152600401610c6190613571565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146114cd5760405162461bcd60e51b8152600401610c6190613571565b601680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146115195760405162461bcd60e51b8152600401610c6190613571565b62030d40811015801561152f57506207a1208111155b6115a15760405162461bcd60e51b815260206004820152603f60248201527f4c61796572466f72743a20676173466f7250726f63657373696e67206d75737460448201527f206265206265747765656e203230302c30303020616e64203530302c303030006064820152608401610c61565b6017548114156116195760405162461bcd60e51b815260206004820152603760248201527f4c61796572466f72743a2043616e6e6f742075706461746520676173466f725060448201527f726f63657373696e6720746f2073616d652076616c75650000000000000000006064820152608401610c61565b60175460405182907f40d7e40e79af4e8e5a9b3c57030d8ea93f13d669c06d448c4d631d4ae7d23db790600090a3601755565b6005546001600160a01b031633146116765760405162461bcd60e51b8152600401610c6190613571565b6009546001600160a01b03828116911614156116fa5760405162461bcd60e51b815260206004820152603860248201527f4c61796572466f72743a20546865206469766964656e6420747261636b65722060448201527f616c7265616479206861732074686174206164647265737300000000000000006064820152608401610c61565b6000819050306001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561174257600080fd5b505afa158015611756573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061177a91906131ca565b6001600160a01b0316146118105760405162461bcd60e51b815260206004820152605160248201527f4c61796572466f72743a20546865206e6577206469766964656e64207472616360448201527f6b6572206d757374206265206f776e656420627920746865204c61796572466f6064820152701c9d081d1bdad95b8818dbdb9d1c9858dd607a1b608482015260a401610c61565b60405163031e79db60e41b81526001600160a01b03821660048201819052906331e79db090602401600060405180830381600087803b15801561185257600080fd5b505af1158015611866573d6000803e3d6000fd5b505060405163031e79db60e41b81523060048201526001600160a01b03841692506331e79db09150602401600060405180830381600087803b1580156118ab57600080fd5b505af11580156118bf573d6000803e3d6000fd5b50505050806001600160a01b03166331e79db06118e46005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381600087803b15801561192557600080fd5b505af1158015611939573d6000803e3d6000fd5b505060065460405163031e79db60e41b81526001600160a01b03918216600482015290841692506331e79db09150602401600060405180830381600087803b15801561198457600080fd5b505af1158015611998573d6000803e3d6000fd5b50506009546040516001600160a01b03918216935090851691507f90c7d74461c613da5efa97d90740869367d74ab3aa5837aa4ae9a975f954b7a890600090a3600980546001600160a01b0319166001600160a01b039290921691909117905550565b606060048054610cbc906136cc565b6005546001600160a01b03163314611a345760405162461bcd60e51b8152600401610c6190613571565b6007546001600160a01b0383811691161415611ac65760405162461bcd60e51b8152602060048201526044602482018190527f4c61796572466f72743a2054686520706169722063616e6e6f74206265207265908201527f6d6f7665642066726f6d206175746f6d617465644d61726b65744d616b6572506064820152636169727360e01b608482015260a401610c61565b611ad08282612b06565b5050565b60095460408051631bc9e27b60e21b815290516000926001600160a01b031691636f2789ec916004808301926020929190829003018186803b158015610e6a57600080fd5b6000610d4c3384610e16856040518060600160405280602581526020016137c0602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190612acc565b6009546040516302a2e74960e61b81526001600160a01b038381166004830152600092169063a8b9d2409060240161129d565b6000610d4c338484612469565b60095460405163fbcbc0f160e01b81526001600160a01b038381166004830152600092839283928392839283928392839291169063fbcbc0f1906024015b6101006040518083038186803b158015611bff57600080fd5b505afa158015611c13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c37919061328f565b97509750975097509750975097509750919395975091939597565b6005546001600160a01b03163314611c7c5760405162461bcd60e51b8152600401610c6190613571565b611c8a81633b9aca00613696565b600a5550565b6005546001600160a01b03163314611cba5760405162461bcd60e51b8152600401610c6190613571565b6001600160a01b03821660009081526018602052604090205460ff1615158115151415611d475760405162461bcd60e51b815260206004820152603560248201527f4c61796572466f72743a204163636f756e7420697320616c7265616479207468604482015274652076616c7565206f6620276578636c756465642760581b6064820152608401610c61565b6001600160a01b038216600081815260186020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314611dd05760405162461bcd60e51b8152600401610c6190613571565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb90339083906370a082319060240160206040518083038186803b158015611e1957600080fd5b505afa158015611e2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e5191906133fe565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087803b158015611e9757600080fd5b505af1158015611eab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad091906133c8565b6005546001600160a01b03163314611ef95760405162461bcd60e51b8152600401610c6190613571565b60005b82811015611f6a578160186000868685818110611f1b57611f1b613738565b9050602002016020810190611f3091906131ad565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580611f6281613707565b915050611efc565b507f7fdaf542373fa84f4ee8d662c642f44e4c2276a217d7d29e548b6eb29a233b35838383604051611f9e93929190613480565b60405180910390a1505050565b6005546001600160a01b03163314611fd55760405162461bcd60e51b8152600401610c6190613571565b60078054911515600160a81b0260ff60a81b19909216919091179055565b6009546040805163039e107b60e61b815290516000926001600160a01b03169163e7841ec0916004808301926020929190829003018186803b158015610e6a57600080fd5b6005546001600160a01b031633146120625760405162461bcd60e51b8152600401610c6190613571565b60095460405163e98030c760e01b8152600481018390526001600160a01b039091169063e98030c790602401610eff565b600954604051635183d6fd60e01b81526004810183905260009182918291829182918291829182916001600160a01b0390911690635183d6fd90602401611be6565b6005546001600160a01b031633146120ff5760405162461bcd60e51b8152600401610c6190613571565b6001600160a01b0381166121645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610c61565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6000806121cd838561365c565b90508381101561221f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610c61565b9392505050565b6001600160a01b0383166122885760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610c61565b6001600160a01b0382166122e95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610c61565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b8047101561239b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610c61565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146123e8576040519150601f19603f3d011682016040523d82523d6000602084013e6123ed565b606091505b50509050806124645760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610c61565b505050565b6001600160a01b03831661248f5760405162461bcd60e51b8152600401610c61906135a6565b6001600160a01b0382166124b55760405162461bcd60e51b8152600401610c619061352e565b6001600160a01b03831660009081526018602052604081205460ff161580156124f757506001600160a01b03831660009081526018602052604090205460ff16155b1561270157600754600160b01b900460ff166125555760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f7420656e61626c6564207965740000000000000000006044820152606401610c61565b6001600160a01b03831660009081526019602052604090205460ff166125fc57600d5482612598856001600160a01b031660009081526020819052604090205490565b6125a2919061365c565b11156125fc5760405162461bcd60e51b815260206004820152602360248201527f596f75722061726520657863656564696e67206d617857616c6c657442616c616044820152626e636560e81b6064820152608401610c61565b6001600160a01b03831660009081526019602052604090205460ff161561267457600c5482111561266f5760405162461bcd60e51b815260206004820152601f60248201527f596f752061726520657863656564696e67206d617853656c6c416d6f756e74006044820152606401610c61565b6126e7565b6001600160a01b03841660009081526019602052604090205460ff16156126e757600b548211156126e75760405162461bcd60e51b815260206004820152601e60248201527f596f752061726520657863656564696e67206d6178427579416d6f756e7400006044820152606401610c61565b4360085460036126f7919061365c565b1115612701575060635b816127185761271284846000612c70565b50505050565b30600090815260208190526040902054600a54811080159081906127455750600754600160a81b900460ff165b801561275b5750600754600160a01b900460ff16155b801561277557506007546001600160a01b03878116911614155b801561279a57506001600160a01b03861660009081526018602052604090205460ff16155b80156127bf57506001600160a01b03851660009081526018602052604090205460ff16155b156127d757601354156127d7576127d7600a54612d79565b6007546001600160a01b03871660009081526018602052604090205460ff600160a01b90920482161591168061282557506001600160a01b03861660009081526018602052604090205460ff165b1561282e575060005b80156128bd576000606485601354612846919061365c565b6128509088613696565b61285a9190613674565b9050600060646011548861286e9190613696565b6128789190613674565b90508061288583896136b5565b61288f91906136b5565b965061289c893084612c70565b80156128ba576016546128ba908a906001600160a01b031683612c70565b50505b6128c8878787612c70565b6009546001600160a01b031663e30443bc886128f9816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561293f57600080fd5b505af1925050508015612950575060015b506009546001600160a01b031663e30443bc87612982816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b1580156129c857600080fd5b505af19250505080156129d9575060015b50600754600160a01b900460ff16612ac3576017546009546040516001624d3b8760e01b03198152600481018390526001600160a01b039091169063ffb2c47990602401606060405180830381600087803b158015612a3757600080fd5b505af1925050508015612a67575060408051601f3d908101601f19168201909252612a6491810190613417565b60015b612a7057612ac1565b60408051848152602081018490529081018290526060810185905232906001907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a35050505b505b50505050505050565b60008184841115612af05760405162461bcd60e51b8152600401610c6191906134d9565b506000612afd84866136b5565b95945050505050565b6001600160a01b03821660009081526019602052604090205460ff1615158115151415612ba75760405162461bcd60e51b815260206004820152604360248201527f4c61796572466f72743a204175746f6d61746564206d61726b6574206d616b6560448201527f72207061697220697320616c72656164792073657420746f20746861742076616064820152626c756560e81b608482015260a401610c61565b6001600160a01b0382166000908152601960205260409020805460ff19168215801591909117909155612c345760095460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b158015612c1b57600080fd5b505af1158015612c2f573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6001600160a01b038316612c965760405162461bcd60e51b8152600401610c61906135a6565b6001600160a01b038216612cbc5760405162461bcd60e51b8152600401610c619061352e565b612cf981604051806060016040528060268152602001613772602691396001600160a01b0386166000908152602081905260409020549190612acc565b6001600160a01b038085166000908152602081905260408082209390935590841681522054612d2890826121c0565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161233e565b6007805460ff60a01b1916600160a01b179055601354600090612d9d906002613696565b905060008160125484612db09190613696565b612dba9190613674565b90506000612dc882856136b5565b905047612dd482612f67565b6000612de082476136b5565b9050600060125486612df291906136b5565b612dfc9083613674565b9050600060125482612e0e9190613696565b90508015612e2057612e2086826130d0565b600f54600090612e31846002613696565b612e3b9190613696565b90508015612e5957601454612e59906001600160a01b03168261234b565b601054600090612e6a856002613696565b612e749190613696565b90508015612e9257601554612e92906001600160a01b03168261234b565b600e54600090612ea3866002613696565b612ead9190613696565b90508015612f4d576009546040516000916001600160a01b03169083908381818185875af1925050503d8060008114612f02576040519150601f19603f3d011682016040523d82523d6000602084013e612f07565b606091505b505090508015612f4b57604080518d8152602081018490527f80195cc573b02cc48460cbca6e6e4cc85ddb91959d946e1c3025ea3d87942dc3910160405180910390a15b505b50506007805460ff60a01b19169055505050505050505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612f9c57612f9c613738565b6001600160a01b03928316602091820292909201810191909152600654604080516339d94ae160e11b8152905191909316926373b295c2926004808301939192829003018186803b158015612ff057600080fd5b505afa158015613004573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061302891906131ca565b8160018151811061303b5761303b613738565b6001600160a01b0392831660209182029290920101526006546130619130911684612226565b600654604051633b158ab160e11b81526001600160a01b039091169063762b15629061309a9085906000908690309042906004016135eb565b600060405180830381600087803b1580156130b457600080fd5b505af11580156130c8573d6000803e3d6000fd5b505050505050565b6006546130e89030906001600160a01b031684612226565b6006546001600160a01b031663f91b3f728230856000806131116005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561317457600080fd5b505af1935050505080156131a5575060408051601f3d908101601f191682019092526131a291810190613417565b60015b610f2d575050565b6000602082840312156131bf57600080fd5b813561221f8161374e565b6000602082840312156131dc57600080fd5b815161221f8161374e565b600080604083850312156131fa57600080fd5b82356132058161374e565b915060208301356132158161374e565b809150509250929050565b60008060006060848603121561323557600080fd5b83356132408161374e565b925060208401356132508161374e565b929592945050506040919091013590565b6000806040838503121561327457600080fd5b823561327f8161374e565b9150602083013561321581613763565b600080600080600080600080610100898b0312156132ac57600080fd5b88516132b78161374e565b809850506020890151965060408901519550606089015194506080890151935060a0890151925060c0890151915060e089015190509295985092959890939650565b6000806040838503121561330c57600080fd5b82356133178161374e565b946020939093013593505050565b60008060006040848603121561333a57600080fd5b833567ffffffffffffffff8082111561335257600080fd5b818601915086601f83011261336657600080fd5b81358181111561337557600080fd5b8760208260051b850101111561338a57600080fd5b602092830195509350508401356133a081613763565b809150509250925092565b6000602082840312156133bd57600080fd5b813561221f81613763565b6000602082840312156133da57600080fd5b815161221f81613763565b6000602082840312156133f757600080fd5b5035919050565b60006020828403121561341057600080fd5b5051919050565b60008060006060848603121561342c57600080fd5b8351925060208401519150604084015190509250925092565b600080600080600060a0868803121561345d57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b6040808252810183905260008460608301825b868110156134c35782356134a68161374e565b6001600160a01b0316825260209283019290910190600101613493565b5080925050508215156020830152949350505050565b600060208083528351808285015260005b81811015613506578581018301518582016040015282016134ea565b81811115613518576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561363b5784516001600160a01b031683529383019391830191600101613616565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561366f5761366f613722565b500190565b60008261369157634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156136b0576136b0613722565b500290565b6000828210156136c7576136c7613722565b500390565b600181811c908216806136e057607f821691505b6020821081141561370157634e487b7160e01b600052602260045260246000fd5b50919050565b600060001982141561371b5761371b613722565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114610d6d57600080fd5b8015158114610d6d57600080fdfe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202fb06fe0675124919e357fcf7730faceb4d944eeceb06736bc15e0bb5c09663464736f6c6343000806003360806040523480156200001157600080fd5b50604080518082018252601a8082527f4c61796572466f72745f4469766964656e645f547261636b6572000000000000602080840182815285518087019096529285528401528151919291839183916200006e9160039162000105565b5080516200008490600490602084019062000105565b505050505060006200009b6200010160201b60201c565b600980546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350610e1060115567016345785d8a0000601255620001e8565b3390565b8280546200011390620001ab565b90600052602060002090601f01602090048101928262000137576000855562000182565b82601f106200015257805160ff191683800117855562000182565b8280016001018555821562000182579182015b828111156200018257825182559160200191906001019062000165565b506200019092915062000194565b5090565b5b8082111562000190576000815560010162000195565b600181811c90821680620001c057607f821691505b60208210811415620001e257634e487b7160e01b600052602260045260246000fd5b50919050565b6120e780620001f86000396000f3fe6080604052600436106102135760003560e01c8063715018a611610118578063bc4c4b37116100a0578063e7841ec01161006f578063e7841ec01461066d578063e98030c714610682578063f2fde38b146106a2578063fbcbc0f1146106c2578063ffb2c479146106e257600080fd5b8063bc4c4b37146105d1578063be10b614146105f1578063dd62ed3e14610607578063e30443bc1461064d57600080fd5b806395d89b41116100e757806395d89b4114610526578063a457c2d71461053b578063a8b9d2401461055b578063a9059cbb1461057b578063aafd847a1461059b57600080fd5b8063715018a6146104b357806385a6b3ae146104c85780638da5cb5b146104de57806391b89fba1461050657600080fd5b8063313ce5671161019b5780635183d6fd1161016a5780635183d6fd146103cd5780636a474002146104325780636f2789ec1461044757806370a082311461045d57806370cbe56c1461049357600080fd5b8063313ce5671461034157806331e79db01461035d578063395093511461037d5780634e7b827f1461039d57600080fd5b806318160ddd116101e257806318160ddd146102a9578063226cfa3d146102be57806323b872dd146102eb57806327ce01471461030b5780633009a6091461032b57600080fd5b806303c833021461022757806306fdde031461022f578063095ea7b31461025a57806309bbedde1461028a57600080fd5b366102225761022061071d565b005b600080fd5b61022061071d565b34801561023b57600080fd5b506102446107b0565b6040516102519190611e2e565b60405180910390f35b34801561026657600080fd5b5061027a610275366004611d61565b610842565b6040519015158152602001610251565b34801561029657600080fd5b50600a545b604051908152602001610251565b3480156102b557600080fd5b5060025461029b565b3480156102ca57600080fd5b5061029b6102d9366004611ce9565b60106020526000908152604090205481565b3480156102f757600080fd5b5061027a610306366004611dbb565b610859565b34801561031757600080fd5b5061029b610326366004611ce9565b6108c2565b34801561033757600080fd5b5061029b600e5481565b34801561034d57600080fd5b5060405160098152602001610251565b34801561036957600080fd5b50610220610378366004611ce9565b61091e565b34801561038957600080fd5b5061027a610398366004611d61565b610a4e565b3480156103a957600080fd5b5061027a6103b8366004611ce9565b600f6020526000908152604090205460ff1681565b3480156103d957600080fd5b506103ed6103e8366004611e15565b610a84565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e082015261010001610251565b34801561043e57600080fd5b50610220610bf6565b34801561045357600080fd5b5061029b60115481565b34801561046957600080fd5b5061029b610478366004611ce9565b6001600160a01b031660009081526020819052604090205490565b34801561049f57600080fd5b506102206104ae366004611e15565b610ca2565b3480156104bf57600080fd5b50610220610ce0565b3480156104d457600080fd5b5061029b60085481565b3480156104ea57600080fd5b506009546040516001600160a01b039091168152602001610251565b34801561051257600080fd5b5061029b610521366004611ce9565b610d54565b34801561053257600080fd5b50610244610d5f565b34801561054757600080fd5b5061027a610556366004611d61565b610d6e565b34801561056757600080fd5b5061029b610576366004611ce9565b610dbd565b34801561058757600080fd5b5061027a610596366004611d61565b610de9565b3480156105a757600080fd5b5061029b6105b6366004611ce9565b6001600160a01b031660009081526007602052604090205490565b3480156105dd57600080fd5b5061027a6105ec366004611d23565b610df6565b3480156105fd57600080fd5b5061029b60125481565b34801561061357600080fd5b5061029b610622366004611d8d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561065957600080fd5b50610220610668366004611d61565b610ea4565b34801561067957600080fd5b50600e5461029b565b34801561068e57600080fd5b5061022061069d366004611e15565b611012565b3480156106ae57600080fd5b506102206106bd366004611ce9565b611190565b3480156106ce57600080fd5b506103ed6106dd366004611ce9565b61127b565b3480156106ee57600080fd5b506107026106fd366004611e15565b6113f3565b60408051938452602084019290925290820152606001610251565b600061072860025490565b1161073257600080fd5b34156107ae5761076561074460025490565b61075234600160801b61150e565b61075c9190611f11565b60055490611594565b60055560405134815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26008546107aa9034611594565b6008555b565b6060600380546107bf90611fa8565b80601f01602080910402602001604051908101604052809291908181526020018280546107eb90611fa8565b80156108385780601f1061080d57610100808354040283529160200191610838565b820191906000526020600020905b81548152906001019060200180831161081b57829003601f168201915b5050505050905090565b600061084f3384846115f3565b5060015b92915050565b6000610866848484611717565b6108b884336108b385604051806060016040528060288152602001612065602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190611778565b6115f3565b5060019392505050565b6001600160a01b03811660009081526006602090815260408083205491839052822054600554600160801b926109149261090f9261090991610904919061150e565b6117b2565b906117c2565b611800565b6108539190611f11565b6009546001600160a01b031633146109515760405162461bcd60e51b815260040161094890611e83565b60405180910390fd5b6001600160a01b0381166000908152600f602052604090205460ff161561097757600080fd5b6001600160a01b0381166000908152600f60205260408120805460ff191660011790556109a5908290611813565b60405163131836e760e21b8152600a60048201526001600160a01b0382166024820152734a49e2a1ba8960a3fe238e6287e03e8f34c7808d90634c60db9c9060440160006040518083038186803b1580156109ff57600080fd5b505af4158015610a13573d6000803e3d6000fd5b50506040516001600160a01b03841692507fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b259150600090a250565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161084f9185906108b39086611594565b600080600080600080600080600a734a49e2a1ba8960a3fe238e6287e03e8f34c7808d63deb3d89690916040518263ffffffff1660e01b8152600401610acc91815260200190565b60206040518083038186803b158015610ae457600080fd5b505af4158015610af8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1c9190611dfc565b8910610b41575060009650600019955085945086935083925082915081905080610beb565b6040516368d54f3f60e11b8152600a6004820152602481018a9052600090734a49e2a1ba8960a3fe238e6287e03e8f34c7808d9063d1aa9e7e9060440160206040518083038186803b158015610b9657600080fd5b505af4158015610baa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bce9190611d06565b9050610bd98161127b565b98509850985098509850985098509850505b919395975091939597565b60405162461bcd60e51b815260206004820152606f60248201527f4c61796572466f72745f4469766964656e645f547261636b65723a207769746860448201527f647261774469766964656e642064697361626c65642e2055736520746865202760648201527f636c61696d272066756e6374696f6e206f6e20746865206d61696e204c61796560848201526e392337b93a1031b7b73a3930b1ba1760891b60a482015260c401610948565b6009546001600160a01b03163314610ccc5760405162461bcd60e51b815260040161094890611e83565b610cda81633b9aca00611f33565b60125550565b6009546001600160a01b03163314610d0a5760405162461bcd60e51b815260040161094890611e83565b6009546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600980546001600160a01b0319169055565b600061085382610dbd565b6060600480546107bf90611fa8565b600061084f33846108b38560405180606001604052806025815260200161208d602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190611778565b6001600160a01b03811660009081526007602052604081205461085390610de3846108c2565b90611872565b600061084f338484611717565b6009546000906001600160a01b03163314610e235760405162461bcd60e51b815260040161094890611e83565b6000610e2e846118b4565b90508015610e9a576001600160a01b038416600081815260106020526040908190204290555184151591907fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09290610e889085815260200190565b60405180910390a36001915050610853565b5060009392505050565b6009546001600160a01b03163314610ece5760405162461bcd60e51b815260040161094890611e83565b6001600160a01b0382166000908152600f602052604090205460ff1615610ef3575050565b6012548110610f8457610f068282611813565b604051632f0ad01760e21b8152600a60048201526001600160a01b038316602482015260448101829052734a49e2a1ba8960a3fe238e6287e03e8f34c7808d9063bc2b405c9060640160006040518083038186803b158015610f6757600080fd5b505af4158015610f7b573d6000803e3d6000fd5b50505050611002565b610f8f826000611813565b60405163131836e760e21b8152600a60048201526001600160a01b0383166024820152734a49e2a1ba8960a3fe238e6287e03e8f34c7808d90634c60db9c9060440160006040518083038186803b158015610fe957600080fd5b505af4158015610ffd573d6000803e3d6000fd5b505050505b61100d826001610df6565b505050565b6009546001600160a01b0316331461103c5760405162461bcd60e51b815260040161094890611e83565b610e1081101580156110515750620151808111155b6110db5760405162461bcd60e51b815260206004820152604f60248201527f4c61796572466f72745f4469766964656e645f547261636b65723a20636c616960448201527f6d57616974206d757374206265207570646174656420746f206265747765656e60648201526e203120616e6420323420686f75727360881b608482015260a401610948565b60115481141561115d5760405162461bcd60e51b815260206004820152604160248201527f4c61796572466f72745f4469766964656e645f547261636b65723a2043616e6e60448201527f6f742075706461746520636c61696d5761697420746f2073616d652076616c756064820152606560f81b608482015260a401610948565b60115460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3601155565b6009546001600160a01b031633146111ba5760405162461bcd60e51b815260040161094890611e83565b6001600160a01b03811661121f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610948565b6009546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600980546001600160a01b0319166001600160a01b0392909216919091179055565b6040516317e142d160e01b8152600a60048201526001600160a01b03821660248201528190600090819081908190819081908190734a49e2a1ba8960a3fe238e6287e03e8f34c7808d906317e142d19060440160206040518083038186803b1580156112e657600080fd5b505af41580156112fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131e9190611dfc565b965060001995506000871261138057600e5487111561134c57600e546113459088906119fa565b9550611380565b600e54600a5460009110611361576000611370565b600e54600a5461137091611872565b905061137c88826117c2565b9650505b61138988610dbd565b9450611394886108c2565b6001600160a01b0389166000908152601060205260409020549094509250826113be5760006113cc565b6011546113cc908490611594565b91504282116113dc5760006113e6565b6113e68242611872565b9050919395975091939597565b600a546000908190819080611413575050600e5460009250829150611507565b600e546000805a90506000805b898410801561142e57508582105b156114f6578461143d81611fe3565b600a549096508610905061145057600094505b6000600a600001868154811061146857611468612014565b60009182526020808320909101546001600160a01b0316808352601090915260409091205490915061149990611a37565b156114bc576114a9816001610df6565b156114bc57816114b881611fe3565b9250505b826114c681611fe3565b93505060005a9050808511156114ed576114ea6114e38683611872565b8790611594565b95505b93506114209050565b600e85905590975095509193505050505b9193909250565b60008261151d57506000610853565b60006115298385611f33565b9050826115368583611f11565b1461158d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610948565b9392505050565b6000806115a18385611ef9565b90508381101561158d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610948565b6001600160a01b0383166116555760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610948565b6001600160a01b0382166116b65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610948565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60405162461bcd60e51b815260206004820152603060248201527f4c61796572466f72745f4469766964656e645f547261636b65723a204e6f207460448201526f1c985b9cd9995c9cc8185b1b1bddd95960821b6064820152608401610948565b6000818484111561179c5760405162461bcd60e51b81526004016109489190611e2e565b5060006117a98486611f91565b95945050505050565b6000818181121561085357600080fd5b6000806117cf8385611eb8565b9050600083121580156117e25750838112155b806117f757506000831280156117f757508381125b61158d57600080fd5b60008082121561180f57600080fd5b5090565b6001600160a01b038216600090815260208190526040902054808211156118525760006118408383611872565b905061184c8482611a5e565b50505050565b8082101561100d5760006118668284611872565b905061184c8482611ac2565b600061158d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611778565b6000806118c083610dbd565b905080156119f1576001600160a01b0383166000908152600760205260409020546118eb9082611594565b6001600160a01b038416600081815260076020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d9061193a9084815260200190565b60405180910390a26000836001600160a01b031682610bb890604051600060405180830381858888f193505050503d8060008114611994576040519150601f19603f3d011682016040523d82523d6000602084013e611999565b606091505b50509050806119ea576001600160a01b0384166000908152600760205260409020546119c59083611872565b6001600160a01b03909416600090815260076020526040812094909455509192915050565b5092915050565b50600092915050565b600080611a078385611f52565b905060008312158015611a1a5750838113155b806117f757506000831280156117f7575083811361158d57600080fd5b600042821115611a4957506000919050565b601154611a564284611872565b101592915050565b611a688282611b06565b611aa2611a836109048360055461150e90919063ffffffff16565b6001600160a01b038416600090815260066020526040902054906119fa565b6001600160a01b0390921660009081526006602052604090209190915550565b611acc8282611be5565b611aa2611ae76109048360055461150e90919063ffffffff16565b6001600160a01b038416600090815260066020526040902054906117c2565b6001600160a01b038216611b5c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610948565b600254611b699082611594565b6002556001600160a01b038216600090815260208190526040902054611b8f9082611594565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216611c455760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610948565b611c8281604051806060016040528060228152602001612043602291396001600160a01b0385166000908152602081905260409020549190611778565b6001600160a01b038316600090815260208190526040902055600254611ca89082611872565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001611bd9565b600060208284031215611cfb57600080fd5b813561158d8161202a565b600060208284031215611d1857600080fd5b815161158d8161202a565b60008060408385031215611d3657600080fd5b8235611d418161202a565b915060208301358015158114611d5657600080fd5b809150509250929050565b60008060408385031215611d7457600080fd5b8235611d7f8161202a565b946020939093013593505050565b60008060408385031215611da057600080fd5b8235611dab8161202a565b91506020830135611d568161202a565b600080600060608486031215611dd057600080fd5b8335611ddb8161202a565b92506020840135611deb8161202a565b929592945050506040919091013590565b600060208284031215611e0e57600080fd5b5051919050565b600060208284031215611e2757600080fd5b5035919050565b600060208083528351808285015260005b81811015611e5b57858101830151858201604001528201611e3f565b81811115611e6d576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600080821280156001600160ff1b0384900385131615611eda57611eda611ffe565b600160ff1b8390038412811615611ef357611ef3611ffe565b50500190565b60008219821115611f0c57611f0c611ffe565b500190565b600082611f2e57634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611f4d57611f4d611ffe565b500290565b60008083128015600160ff1b850184121615611f7057611f70611ffe565b6001600160ff1b0384018313811615611f8b57611f8b611ffe565b50500390565b600082821015611fa357611fa3611ffe565b500390565b600181811c90821680611fbc57607f821691505b60208210811415611fdd57634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415611ff757611ff7611ffe565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038116811461203f57600080fd5b5056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208118dd97e6255913e115a00a7d09a41e64479eb59f7395c19510445a9f85390364736f6c63430008060033