[ { "inputs": [], "stateMutability": "payable", "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": "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": "UpdateUniswapV2Router", "type": "event" }, { "inputs": [], "name": "AmountLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "AmountMarketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "AmountTokenRewardsFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TradingOpen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_marketingWalletAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_usdtReceiver", "outputs": [ { "internalType": "contract usdtReceiver", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "addLiquidityFee", "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": "buyDeadFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyMarketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyTokenRewardsFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "currencyFlag", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "deadWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "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": "getTime", "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": [], "name": "removeLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rewardsAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellDeadFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellLiquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellMarketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellTokenRewardsFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair", "type": "address" }, { "internalType": "bool", "name": "value", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" } ], "name": "setRewardsAddr", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_enabled", "type": "bool" } ], "name": "setSwapAndLiquifyEnabled", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "setSwapTokensAtAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "shareholders", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "startTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapAndLiquifyEnabled", "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": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": [], "name": "uniswapPair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uniswapV2Router", "outputs": [ { "internalType": "contract IUniswapV2Router02", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newValue", "type": "uint256" } ], "name": "updateGasForProcessing", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "usdtAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
608060405261dead601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601b60006101000a81548160ff0219169083151502179055506040518060400160405280600981526020017f426162794e6569726f00000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f424e6569726f000000000000000000000000000000000000000000000000000081525060128260039080519060200190620000e8929190620006e9565b50816004908051906020019062000101929190620006e9565b5080600560006101000a81548160ff021916908360ff16021790555050505062000140620001346200024760201b60201c565b6200024f60201b60201c565b60006a52b7d2dcc80cd2e40000009050620493e0601a819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001d6620001c86200031560201b60201c565b60016200033f60201b60201c565b6200020b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200033f60201b60201c565b6200021e3060016200033f60201b60201c565b6200023f620002326200031560201b60201c565b83620004d260201b60201c565b505062000aaf565b600033905090565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200034f6200024760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620003756200031560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620003ce576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003c5906200084d565b60405180910390fd5b801515601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514620004ce5780601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620004c5919062000830565b60405180910390a25b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000545576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200053c9062000891565b60405180910390fd5b62000559600083836200068160201b60201c565b62000575816002546200068660201b62001c851790919060201c565b600281905550620005d3816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200068660201b62001c851790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620006759190620008b3565b60405180910390a35050565b505050565b6000808284620006979190620008e1565b905083811015620006df576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006d6906200086f565b60405180910390fd5b8091505092915050565b828054620006f79062000954565b90600052602060002090601f0160209004810192826200071b576000855562000767565b82601f106200073657805160ff191683800117855562000767565b8280016001018555821562000767579182015b828111156200076657825182559160200191906001019062000749565b5b5090506200077691906200077a565b5090565b5b80821115620007955760008160009055506001016200077b565b5090565b620007a4816200093e565b82525050565b6000620007b9602a83620008d0565b9150620007c682620009e8565b604082019050919050565b6000620007e0602483620008d0565b9150620007ed8262000a37565b604082019050919050565b600062000807601f83620008d0565b9150620008148262000a86565b602082019050919050565b6200082a816200094a565b82525050565b600060208201905062000847600083018462000799565b92915050565b600060208201905081810360008301526200086881620007aa565b9050919050565b600060208201905081810360008301526200088a81620007d1565b9050919050565b60006020820190508181036000830152620008ac81620007f8565b9050919050565b6000602082019050620008ca60008301846200081f565b92915050565b600082825260208201905092915050565b6000620008ee826200094a565b9150620008fb836200094a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200093357620009326200098a565b5b828201905092915050565b60008115159050919050565b6000819050919050565b600060028204905060018216806200096d57607f821691505b60208210811415620009845762000983620009b9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4f776e61626c653a2063616c6c6572206973206e6f7420426162794e6569726f60008201527f20746865206f776e657200000000000000000000000000000000000000000000602082015250565b7f536166654d617468426162794e6569726f3a206164646974696f6e206f76657260008201527f666c6f7700000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b614dfa8062000abf6000396000f3fe6080604052600436106102e85760003560e01c80638da5cb5b11610190578063bfc3137e116100dc578063cfe0e61911610095578063f11a24d31161006f578063f11a24d314610b57578063f2fde38b14610b82578063f637434214610bab578063f832679514610bd6576102ef565b8063cfe0e61914610ac4578063dd62ed3e14610aef578063e2f4560514610b2c576102ef565b8063bfc3137e146109c8578063c0246668146109f3578063c0973eed14610a1c578063c492f04614610a47578063c49b9a8014610a70578063c816841b14610a99576102ef565b80639c1b8af511610149578063ab377daa11610123578063ab377daa146108fa578063afa4f3b214610937578063b340a95414610960578063b62496f51461098b576102ef565b80639c1b8af514610855578063a457c2d714610880578063a9059cbb146108bd576102ef565b80638da5cb5b146107555780638de743b31461078057806392136913146107ab57806395d89b41146107d65780639a7a23d6146108015780639ab4a4451461082a576102ef565b8063395093511161024f578063615223dc116102085780637bce5a04116101e25780637bce5a04146106ab57806385141a77146106d6578063871c128d14610701578063892400f31461072a576102ef565b8063615223dc1461062e57806370a0823114610657578063715018a614610694576102ef565b806339509351146105085780633b1cd187146105455780634144d9e4146105705780634a74bb021461059b5780634fbee193146105c6578063557ed1ba14610603576102ef565b806318160ddd116102a157806318160ddd1461040857806323b872dd1461043357806324942a0414610470578063293230b81461049b578063313ce567146104b25780633926876d146104dd576102ef565b806302df64d6146102f457806306fdde031461031f57806308b2a12c1461034a57806308fd3d0514610375578063095ea7b3146103a05780631694505e146103dd576102ef565b366102ef57005b600080fd5b34801561030057600080fd5b50610309610c01565b6040516103169190614464565b60405180910390f35b34801561032b57600080fd5b50610334610c07565b60405161034191906142c2565b60405180910390f35b34801561035657600080fd5b5061035f610c99565b60405161036c9190614464565b60405180910390f35b34801561038157600080fd5b5061038a610c9f565b6040516103979190614271565b60405180910390f35b3480156103ac57600080fd5b506103c760048036038101906103c29190613c77565b610cb2565b6040516103d49190614271565b60405180910390f35b3480156103e957600080fd5b506103f2610cd0565b6040516103ff919061428c565b60405180910390f35b34801561041457600080fd5b5061041d610cf6565b60405161042a9190614464565b60405180910390f35b34801561043f57600080fd5b5061045a60048036038101906104559190613be4565b610d00565b6040516104679190614271565b60405180910390f35b34801561047c57600080fd5b50610485610dd9565b6040516104929190614464565b60405180910390f35b3480156104a757600080fd5b506104b0610ddf565b005b3480156104be57600080fd5b506104c7610e78565b6040516104d49190614510565b60405180910390f35b3480156104e957600080fd5b506104f2610e8f565b6040516104ff9190614464565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190613c77565b610e95565b60405161053c9190614271565b60405180910390f35b34801561055157600080fd5b5061055a610f48565b6040516105679190614464565b60405180910390f35b34801561057c57600080fd5b50610585610f4e565b6040516105929190614146565b60405180910390f35b3480156105a757600080fd5b506105b0610f74565b6040516105bd9190614271565b60405180910390f35b3480156105d257600080fd5b506105ed60048036038101906105e89190613b4a565b610f87565b6040516105fa9190614271565b60405180910390f35b34801561060f57600080fd5b50610618610fdd565b6040516106259190614464565b60405180910390f35b34801561063a57600080fd5b5061065560048036038101906106509190613b4a565b610fe5565b005b34801561066357600080fd5b5061067e60048036038101906106799190613b4a565b611115565b60405161068b9190614464565b60405180910390f35b3480156106a057600080fd5b506106a961115d565b005b3480156106b757600080fd5b506106c06111e5565b6040516106cd9190614464565b60405180910390f35b3480156106e257600080fd5b506106eb6111eb565b6040516106f89190614146565b60405180910390f35b34801561070d57600080fd5b5061072860048036038101906107239190613d71565b611211565b005b34801561073657600080fd5b5061073f61130c565b60405161074c9190614271565b60405180910390f35b34801561076157600080fd5b5061076a61131f565b6040516107779190614146565b60405180910390f35b34801561078c57600080fd5b50610795611349565b6040516107a29190614464565b60405180910390f35b3480156107b757600080fd5b506107c061134f565b6040516107cd9190614464565b60405180910390f35b3480156107e257600080fd5b506107eb611355565b6040516107f891906142c2565b60405180910390f35b34801561080d57600080fd5b5061082860048036038101906108239190613c37565b6113e7565b005b34801561083657600080fd5b5061083f611502565b60405161084c9190614146565b60405180910390f35b34801561086157600080fd5b5061086a611528565b6040516108779190614464565b60405180910390f35b34801561088c57600080fd5b506108a760048036038101906108a29190613c77565b61152e565b6040516108b49190614271565b60405180910390f35b3480156108c957600080fd5b506108e460048036038101906108df9190613c77565b6115fb565b6040516108f19190614271565b60405180910390f35b34801561090657600080fd5b50610921600480360381019061091c9190613d71565b611619565b60405161092e9190614146565b60405180910390f35b34801561094357600080fd5b5061095e60048036038101906109599190613d71565b611658565b005b34801561096c57600080fd5b506109756116de565b60405161098291906142a7565b60405180910390f35b34801561099757600080fd5b506109b260048036038101906109ad9190613b4a565b611704565b6040516109bf9190614271565b60405180910390f35b3480156109d457600080fd5b506109dd611724565b6040516109ea9190614464565b60405180910390f35b3480156109ff57600080fd5b50610a1a6004803603810190610a159190613c37565b61172a565b005b348015610a2857600080fd5b50610a316118a7565b604051610a3e9190614146565b60405180910390f35b348015610a5357600080fd5b50610a6e6004803603810190610a699190613cb7565b6118cd565b005b348015610a7c57600080fd5b50610a976004803603810190610a929190613d17565b611a29565b005b348015610aa557600080fd5b50610aae611ac2565b604051610abb9190614146565b60405180910390f35b348015610ad057600080fd5b50610ad9611ae8565b604051610ae69190614464565b60405180910390f35b348015610afb57600080fd5b50610b166004803603810190610b119190613ba4565b611aee565b604051610b239190614464565b60405180910390f35b348015610b3857600080fd5b50610b41611b75565b604051610b4e9190614464565b60405180910390f35b348015610b6357600080fd5b50610b6c611b7b565b604051610b799190614464565b60405180910390f35b348015610b8e57600080fd5b50610ba96004803603810190610ba49190613b4a565b611b81565b005b348015610bb757600080fd5b50610bc0611c79565b604051610bcd9190614464565b60405180910390f35b348015610be257600080fd5b50610beb611c7f565b604051610bf89190614464565b60405180910390f35b60095481565b606060038054610c16906147a5565b80601f0160208091040260200160405190810160405280929190818152602001828054610c42906147a5565b8015610c8f5780601f10610c6457610100808354040283529160200191610c8f565b820191906000526020600020905b815481529060010190602001808311610c7257829003601f168201915b5050505050905090565b600a5481565b601f60009054906101000a900460ff1681565b6000610cc6610cbf611ce3565b8484611ceb565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b6000610d0d848484611eb6565b610dce84610d19611ce3565b610dc985604051806060016040528060288152602001614d7860289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610d7f611ce3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126529092919063ffffffff16565b611ceb565b600190509392505050565b60105481565b610de7611ce3565b73ffffffffffffffffffffffffffffffffffffffff16610e0561131f565b73ffffffffffffffffffffffffffffffffffffffff1614610e5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5290614384565b60405180910390fd5b6001601f60006101000a81548160ff021916908315150217905550565b6000600560009054906101000a900460ff16905090565b60125481565b6000610f3e610ea2611ce3565b84610f398560016000610eb3611ce3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c8590919063ffffffff16565b611ceb565b6001905092915050565b60145481565b601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601b60009054906101000a900460ff1681565b6000601c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600042905090565b610fed611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661100b61131f565b73ffffffffffffffffffffffffffffffffffffffff1614611061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105890614384565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156110b5576001601d60006101000a81548160ff0219169083151502179055506110d1565b6000601d60006101000a81548160ff0219169083151502179055505b80601960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611165611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661118361131f565b73ffffffffffffffffffffffffffffffffffffffff16146111d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d090614384565b60405180910390fd5b6111e360006126b6565b565b600d5481565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611219611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661123761131f565b73ffffffffffffffffffffffffffffffffffffffff161461128d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128490614384565b60405180910390fd5b601a548114156112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c990614364565b60405180910390fd5b601a54817f40d7e40e79af4e8e5a9b3c57030d8ea93f13d669c06d448c4d631d4ae7d23db760405160405180910390a380601a8190555050565b601d60009054906101000a900460ff1681565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b600e5481565b606060048054611364906147a5565b80601f0160208091040260200160405190810160405280929190818152602001828054611390906147a5565b80156113dd5780601f106113b2576101008083540402835291602001916113dd565b820191906000526020600020905b8154815290600101906020018083116113c057829003601f168201915b5050505050905090565b6113ef611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661140d61131f565b73ffffffffffffffffffffffffffffffffffffffff1614611463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145a90614384565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114eb906143e4565b60405180910390fd5b6114fe828261277c565b5050565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601a5481565b60006115f161153b611ce3565b846115ec85604051806060016040528060258152602001614da06025913960016000611565611ce3565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126529092919063ffffffff16565b611ceb565b6001905092915050565b600061160f611608611ce3565b8484611eb6565b6001905092915050565b6021818154811061162957600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611660611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661167e61131f565b73ffffffffffffffffffffffffffffffffffffffff16146116d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cb90614384565b60405180910390fd5b8060088190555050565b601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e6020528060005260406000206000915054906101000a900460ff1681565b60155481565b611732611ce3565b73ffffffffffffffffffffffffffffffffffffffff1661175061131f565b73ffffffffffffffffffffffffffffffffffffffff16146117a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179d90614384565b60405180910390fd5b801515601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515146118a35780601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161189a9190614271565b60405180910390a25b5050565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6118d5611ce3565b73ffffffffffffffffffffffffffffffffffffffff166118f361131f565b73ffffffffffffffffffffffffffffffffffffffff1614611949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194090614384565b60405180910390fd5b60005b838390508110156119e85781601c600086868581811061196f5761196e6148ad565b5b90506020020160208101906119849190613b4a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806119e0906147d7565b91505061194c565b507f7fdaf542373fa84f4ee8d662c642f44e4c2276a217d7d29e548b6eb29a233b35838383604051611a1c9392919061423f565b60405180910390a1505050565b611a31611ce3565b73ffffffffffffffffffffffffffffffffffffffff16611a4f61131f565b73ffffffffffffffffffffffffffffffffffffffff1614611aa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9c90614384565b60405180910390fd5b80601b60006101000a81548160ff02191690831515021790555050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60085481565b600b5481565b611b89611ce3565b73ffffffffffffffffffffffffffffffffffffffff16611ba761131f565b73ffffffffffffffffffffffffffffffffffffffff1614611bfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bf490614384565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611c6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6490614304565b60405180910390fd5b611c76816126b6565b50565b600c5481565b60115481565b6000808284611c9491906145ae565b905083811015611cd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd090614444565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611d5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5290614424565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dc290614324565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ea99190614464565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611f26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1d90614404565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f8d906142e4565b60405180910390fd5b6000811415611fb057611fab838360006128b0565b61264d565b611fb861131f565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156120265750611ff661131f565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561207b57601f60009054906101000a900460ff1661207a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612071906143a4565b60405180910390fd5b5b600061208630611115565b9050600060085482101590508080156120ac5750600760149054906101000a900460ff16155b80156121015750601e60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8015612140575061211061131f565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b801561217f575061214f61131f565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156121975750601b60009054906101000a900460ff165b156121f4576001600760146101000a81548160ff0219169083151502179055506121c2601354612b45565b6121cd601154612ed6565b6121d86012546130df565b6000600760146101000a81548160ff0219169083151502179055505b6000600760149054906101000a900460ff16159050601c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806122aa5750601c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156122b457600090505b801561263e576000806000806000601e60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156124455761233c606461232e600b548c6131b690919063ffffffff16565b61323190919063ffffffff16565b9350836011600082825461235091906145ae565b9250508190555061237f60646123716009548c6131b690919063ffffffff16565b61323190919063ffffffff16565b9250826012600082825461239391906145ae565b925050819055506123c260646123b4600d548c6131b690919063ffffffff16565b61323190919063ffffffff16565b915081601360008282546123d691906145ae565b9250508190555061240560646123f7600f548c6131b690919063ffffffff16565b61323190919063ffffffff16565b905061243e81612430846124228789611c8590919063ffffffff16565b611c8590919063ffffffff16565b611c8590919063ffffffff16565b94506125c5565b601e60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156125c4576124bf60646124b1600c548c6131b690919063ffffffff16565b61323190919063ffffffff16565b935083601160008282546124d391906145ae565b9250508190555061250260646124f4600a548c6131b690919063ffffffff16565b61323190919063ffffffff16565b9250826012600082825461251691906145ae565b925050819055506125456064612537600e548c6131b690919063ffffffff16565b61323190919063ffffffff16565b9150816013600082825461255991906145ae565b92505081905550612588606461257a6010548c6131b690919063ffffffff16565b61323190919063ffffffff16565b90506125c1816125b3846125a58789611c8590919063ffffffff16565b611c8590919063ffffffff16565b611c8590919063ffffffff16565b94505b5b6125d8858a61325e90919063ffffffff16565b98506000811115612611576126108b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836128b0565b5b6000851115612638576126378b30612632848961325e90919063ffffffff16565b6128b0565b5b50505050505b6126498686866128b0565b5050505b505050565b600083831115829061269a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161269191906142c2565b60405180910390fd5b50600083856126a9919061468f565b9050809150509392505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b801515601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141561280f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161280690614344565b60405180910390fd5b80601e60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612920576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161291790614404565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612990576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612987906142e4565b60405180910390fd5b61299b8383836132a8565b612a0681604051806060016040528060268152602001614d52602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126529092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a99816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c8590919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612b389190614464565b60405180910390a3505050565b6000600267ffffffffffffffff811115612b6257612b616148dc565b5b604051908082528060200260200182016040528015612b905781602001602082028036833780820191505090505b5090503081600081518110612ba857612ba76148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110612c1957612c186148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015612cbb57600080fd5b505afa158015612ccf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf39190613b77565b73ffffffffffffffffffffffffffffffffffffffff16601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415612e0557600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401612dce95949392919061447f565b600060405180830381600087803b158015612de857600080fd5b505af1158015612dfc573d6000803e3d6000fd5b50505050612ebe565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c11d79583600084601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401612e8b95949392919061447f565b600060405180830381600087803b158015612ea557600080fd5b505af1158015612eb9573d6000803e3d6000fd5b505050505b81601354612ecc919061468f565b6013819055505050565b6000612eec60028361323190919063ffffffff16565b90506000612f03828461325e90919063ffffffff16565b90506000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401612f629190614146565b60206040518083038186803b158015612f7a57600080fd5b505afa158015612f8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fb29190613d9e565b9050612fbe83306132ad565b600061307d82601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161301f9190614146565b60206040518083038186803b15801561303757600080fd5b505afa15801561304b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306f9190613d9e565b61325e90919063ffffffff16565b9050613089838261361e565b84601154613097919061468f565b6011819055507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618482856040516130d0939291906144d9565b60405180910390a15050505050565b601d60009054906101000a900460ff161561310d5780601254613102919061468f565b6012819055506131b3565b601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156131945761318f81306132ad565b61319e565b61319d816137f7565b5b806012546131ac919061468f565b6012819055505b50565b6000808314156131c9576000905061322b565b600082846131d79190614635565b90508284826131e69190614604565b14613226576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161321d906143c4565b60405180910390fd5b809150505b92915050565b60006132568383604051806060016040528060238152602001614d2f60239139613a13565b905092915050565b60006132a083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612652565b905092915050565b505050565b6000600267ffffffffffffffff8111156132ca576132c96148dc565b5b6040519080825280602002602001820160405280156132f85781602001602082028036833780820191505090505b50905030816000815181106133105761330f6148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110613381576133806148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c11d79584600084601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b815260040161344195949392919061447f565b600060405180830381600087803b15801561345b57600080fd5b505af115801561346f573d6000803e3d6000fd5b505050506000601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016134f29190614146565b60206040518083038186803b15801561350a57600080fd5b505afa15801561351e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135429190613d9e565b9050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685846040518463ffffffff1660e01b81526004016135c593929190614161565b602060405180830381600087803b1580156135df57600080fd5b505af11580156135f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136179190613d44565b5050505050565b601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b815260040161369d929190614216565b602060405180830381600087803b1580156136b757600080fd5b505af11580156136cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136ef9190613d44565b50600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e8e3370030601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168585600080601860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518963ffffffff1660e01b815260040161379e989796959493929190614198565b606060405180830381600087803b1580156137b857600080fd5b505af11580156137cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137f09190613dcb565b5050505050565b6000600367ffffffffffffffff811115613814576138136148dc565b5b6040519080825280602002602001820160405280156138425781602001602082028036833780820191505090505b509050308160008151811061385a576138596148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16816001815181106138cb576138ca6148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160028151811061393c5761393b6148ad565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c11d7958360008430426040518663ffffffff1660e01b81526004016139da95949392919061447f565b600060405180830381600087803b1580156139f457600080fd5b505af1925050508015613a05575060015b613a0e57613a0f565b5b5050565b60008083118290613a5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a5191906142c2565b60405180910390fd5b5060008385613a699190614604565b9050809150509392505050565b600081359050613a8581614ce9565b92915050565b600081519050613a9a81614ce9565b92915050565b60008083601f840112613ab657613ab5614910565b5b8235905067ffffffffffffffff811115613ad357613ad261490b565b5b602083019150836020820283011115613aef57613aee614915565b5b9250929050565b600081359050613b0581614d00565b92915050565b600081519050613b1a81614d00565b92915050565b600081359050613b2f81614d17565b92915050565b600081519050613b4481614d17565b92915050565b600060208284031215613b6057613b5f61491f565b5b6000613b6e84828501613a76565b91505092915050565b600060208284031215613b8d57613b8c61491f565b5b6000613b9b84828501613a8b565b91505092915050565b60008060408385031215613bbb57613bba61491f565b5b6000613bc985828601613a76565b9250506020613bda85828601613a76565b9150509250929050565b600080600060608486031215613bfd57613bfc61491f565b5b6000613c0b86828701613a76565b9350506020613c1c86828701613a76565b9250506040613c2d86828701613b20565b9150509250925092565b60008060408385031215613c4e57613c4d61491f565b5b6000613c5c85828601613a76565b9250506020613c6d85828601613af6565b9150509250929050565b60008060408385031215613c8e57613c8d61491f565b5b6000613c9c85828601613a76565b9250506020613cad85828601613b20565b9150509250929050565b600080600060408486031215613cd057613ccf61491f565b5b600084013567ffffffffffffffff811115613cee57613ced61491a565b5b613cfa86828701613aa0565b93509350506020613d0d86828701613af6565b9150509250925092565b600060208284031215613d2d57613d2c61491f565b5b6000613d3b84828501613af6565b91505092915050565b600060208284031215613d5a57613d5961491f565b5b6000613d6884828501613b0b565b91505092915050565b600060208284031215613d8757613d8661491f565b5b6000613d9584828501613b20565b91505092915050565b600060208284031215613db457613db361491f565b5b6000613dc284828501613b35565b91505092915050565b600080600060608486031215613de457613de361491f565b5b6000613df286828701613b35565b9350506020613e0386828701613b35565b9250506040613e1486828701613b35565b9150509250925092565b6000613e2a8383613e36565b60208301905092915050565b613e3f816146c3565b82525050565b613e4e816146c3565b82525050565b6000613e608385614575565b9350613e6b8261452b565b8060005b85811015613ea457613e818284614597565b613e8b8882613e1e565b9750613e968361455b565b925050600181019050613e6f565b5085925050509392505050565b6000613ebc82614545565b613ec68185614575565b9350613ed183614535565b8060005b83811015613f02578151613ee98882613e1e565b9750613ef483614568565b925050600181019050613ed5565b5085935050505092915050565b613f18816146d5565b82525050565b613f2781614718565b82525050565b613f368161472a565b82525050565b613f458161473c565b82525050565b6000613f5682614550565b613f608185614586565b9350613f70818560208601614772565b613f7981614924565b840191505092915050565b6000613f91602383614586565b9150613f9c82614935565b604082019050919050565b6000613fb4602683614586565b9150613fbf82614984565b604082019050919050565b6000613fd7602283614586565b9150613fe2826149d3565b604082019050919050565b6000613ffa603883614586565b915061400582614a22565b604082019050919050565b600061401d602c83614586565b915061402882614a71565b604082019050919050565b6000614040602a83614586565b915061404b82614ac0565b604082019050919050565b6000614063601483614586565b915061406e82614b0f565b602082019050919050565b6000614086602183614586565b915061409182614b38565b604082019050919050565b60006140a9604f83614586565b91506140b482614b87565b606082019050919050565b60006140cc602583614586565b91506140d782614bfc565b604082019050919050565b60006140ef602483614586565b91506140fa82614c4b565b604082019050919050565b6000614112602483614586565b915061411d82614c9a565b604082019050919050565b61413181614701565b82525050565b6141408161470b565b82525050565b600060208201905061415b6000830184613e45565b92915050565b60006060820190506141766000830186613e45565b6141836020830185613e45565b6141906040830184614128565b949350505050565b6000610100820190506141ae600083018b613e45565b6141bb602083018a613e45565b6141c86040830189614128565b6141d56060830188614128565b6141e26080830187613f3c565b6141ef60a0830186613f3c565b6141fc60c0830185613e45565b61420960e0830184614128565b9998505050505050505050565b600060408201905061422b6000830185613e45565b6142386020830184614128565b9392505050565b6000604082019050818103600083015261425a818587613e54565b90506142696020830184613f0f565b949350505050565b60006020820190506142866000830184613f0f565b92915050565b60006020820190506142a16000830184613f1e565b92915050565b60006020820190506142bc6000830184613f2d565b92915050565b600060208201905081810360008301526142dc8184613f4b565b905092915050565b600060208201905081810360008301526142fd81613f84565b9050919050565b6000602082019050818103600083015261431d81613fa7565b9050919050565b6000602082019050818103600083015261433d81613fca565b9050919050565b6000602082019050818103600083015261435d81613fed565b9050919050565b6000602082019050818103600083015261437d81614010565b9050919050565b6000602082019050818103600083015261439d81614033565b9050919050565b600060208201905081810360008301526143bd81614056565b9050919050565b600060208201905081810360008301526143dd81614079565b9050919050565b600060208201905081810360008301526143fd8161409c565b9050919050565b6000602082019050818103600083015261441d816140bf565b9050919050565b6000602082019050818103600083015261443d816140e2565b9050919050565b6000602082019050818103600083015261445d81614105565b9050919050565b60006020820190506144796000830184614128565b92915050565b600060a0820190506144946000830188614128565b6144a16020830187613f3c565b81810360408301526144b38186613eb1565b90506144c26060830185613e45565b6144cf6080830184614128565b9695505050505050565b60006060820190506144ee6000830186614128565b6144fb6020830185614128565b6145086040830184614128565b949350505050565b60006020820190506145256000830184614137565b92915050565b6000819050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006145a66020840184613a76565b905092915050565b60006145b982614701565b91506145c483614701565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156145f9576145f8614820565b5b828201905092915050565b600061460f82614701565b915061461a83614701565b92508261462a5761462961484f565b5b828204905092915050565b600061464082614701565b915061464b83614701565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561468457614683614820565b5b828202905092915050565b600061469a82614701565b91506146a583614701565b9250828210156146b8576146b7614820565b5b828203905092915050565b60006146ce826146e1565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006147238261474e565b9050919050565b60006147358261474e565b9050919050565b600061474782614701565b9050919050565b600061475982614760565b9050919050565b600061476b826146e1565b9050919050565b60005b83811015614790578082015181840152602081019050614775565b8381111561479f576000848401525b50505050565b600060028204905060018216806147bd57607f821691505b602082108114156147d1576147d061487e565b5b50919050565b60006147e282614701565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561481557614814614820565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160008201527f6c72656164792073657420746f20746861742076616c75650000000000000000602082015250565b7f43616e6e6f742075706461746520676173466f7250726f63657373696e67207460008201527f6f2073616d652076616c75650000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420426162794e6569726f60008201527f20746865206f776e657200000000000000000000000000000000000000000000602082015250565b7f54726164696e67206e6f74206f70656e20796574000000000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f5468652050616e63616b655377617020706169722063616e6e6f74206265207260008201527f656d6f7665642066726f6d20426162794e6569726f206175746f6d617465644d60208201527f61726b65744d616b657250616972730000000000000000000000000000000000604082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d617468426162794e6569726f3a206164646974696f6e206f76657260008201527f666c6f7700000000000000000000000000000000000000000000000000000000602082015250565b614cf2816146c3565b8114614cfd57600080fd5b50565b614d09816146d5565b8114614d1457600080fd5b50565b614d2081614701565b8114614d2b57600080fd5b5056fe536166654d6174683a206469766973696f6e206279426162794e6569726f207a65726f45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212203eef224a328ac95a23044d4f1c1e4506a06e272ed7e961a6f5b702bb47988a4d64736f6c63430008070033