[ { "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": "amountETH", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amountTokens", "type": "uint256" } ], "name": "AutoLiquify", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "owner", "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": "uint256", "name": "Multiplier", "type": "uint256" } ], "name": "BurnLP", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "_maxTxAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "_maxWalletToken", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "holder", "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": "spender", "type": "address" } ], "name": "approveMax", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "burned", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "buyMultiplier", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "feeDenominator", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCirculatingSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "accuracy", "type": "uint256" } ], "name": "getLiquidityBacking", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "adr", "type": "address" } ], "name": "isGranted", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "target", "type": "uint256" }, { "internalType": "uint256", "name": "accuracy", "type": "uint256" } ], "name": "isOverLiquified", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "isOwner", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "liquidityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "marketingFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "projectFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amountPercentage", "type": "uint256" } ], "name": "refresh", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "adr", "type": "address" } ], "name": "renounce", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "router", "outputs": [ { "internalType": "contract IDEXRouter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_autoLiquidityReceiver", "type": "address" }, { "internalType": "address", "name": "_marketingFeeReceiver", "type": "address" }, { "internalType": "address", "name": "_projectFeeReceiver", "type": "address" }, { "internalType": "address", "name": "_utilityFeeReceiver", "type": "address" } ], "name": "setFeeReceivers", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxTXPercentage_base1000", "type": "uint256" } ], "name": "setMaxTxPercent_base1000", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maxWallPercent_base1000", "type": "uint256" } ], "name": "setMaxWalletPercent_base1000", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_enabled", "type": "bool" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "setSwapBackSettings", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_target", "type": "uint256" }, { "internalType": "uint256", "name": "_denominator", "type": "uint256" } ], "name": "setTargetLiquidity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "swapThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "totalFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingOpen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "transferMultiplier", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "utilityFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "tokenAddress", "type": "address" }, { "internalType": "uint256", "name": "tokens", "type": "uint256" } ], "name": "validate", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
608060405273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead60035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f60045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506004600a620000ea91906200095d565b6402540be400620000fc9190620009ad565b6005556004600a6200010f91906200095d565b6402540be400620001219190620009ad565b6006556004600a6200013491906200095d565b6402540be400620001469190620009ad565b6007555f600d556001600e555f600f555f601055601054600f54600d54600e54620001729190620009f7565b6200017e9190620009f7565b6200018a9190620009f7565b6011556064601255606460135560646014556064601555601e601a556064601b556001601d60146101000a81548160ff0219169083151502179055506001601d60156101000a81548160ff02191690831515021790555060fa600554620001f2919062000a5e565b601e5534801562000201575f80fd5b5033805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050737a250d5630b4cf539739df2c5dacb4c659f2488d601c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000356573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200037c919062000afa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16306040518363ffffffff1660e01b8152600401620003d992919062000b3b565b6020604051808303815f875af1158015620003f6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200041c919062000afa565b601d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f601c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506001600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055503360165f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360175f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360185f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360195f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055460085f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600554604051620007bd919062000b77565b60405180910390a362000b92565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000855578086048111156200082d576200082c620007cb565b5b60018516156200083d5780820291505b80810290506200084d85620007f8565b94506200080d565b94509492505050565b5f826200086f576001905062000941565b816200087e575f905062000941565b8160018114620008975760028114620008a257620008d8565b600191505062000941565b60ff841115620008b757620008b6620007cb565b5b8360020a915084821115620008d157620008d0620007cb565b5b5062000941565b5060208310610133831016604e8410600b8410161715620009125782820a9050838111156200090c576200090b620007cb565b5b62000941565b62000921848484600162000804565b925090508184048111156200093b576200093a620007cb565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620009698262000948565b9150620009768362000951565b9250620009a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200085e565b905092915050565b5f620009b98262000948565b9150620009c68362000948565b9250828202620009d68162000948565b91508282048414831517620009f057620009ef620007cb565b5b5092915050565b5f62000a038262000948565b915062000a108362000948565b925082820190508082111562000a2b5762000a2a620007cb565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f62000a6a8262000948565b915062000a778362000948565b92508262000a8a5762000a8962000a31565b5b828204905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000ac48262000a99565b9050919050565b62000ad68162000ab8565b811462000ae1575f80fd5b50565b5f8151905062000af48162000acb565b92915050565b5f6020828403121562000b125762000b1162000a95565b5b5f62000b218482850162000ae4565b91505092915050565b62000b358162000ab8565b82525050565b5f60408201905062000b505f83018562000b2a565b62000b5f602083018462000b2a565b9392505050565b62000b718162000948565b82525050565b5f60208201905062000b8c5f83018462000b66565b92915050565b6134068062000ba05f395ff3fe608060405260043610610249575f3560e01c806370a0823111610138578063a5d73a96116100b5578063d58f2f2711610079578063d58f2f27146108b8578063dccd8bd2146108e2578063dd62ed3e1461090c578063df20fd4914610948578063f887ea4014610970578063ffb54a991461099a57610250565b8063a5d73a96146107c6578063a8aa1b31146107ee578063a9059cbb14610818578063bd9ab53714610854578063d51ed1c81461087c57610250565b806395d89b41116100fc57806395d89b41146106d257806398118cb4146106fc57806398be37861461072657806398e0ae14146107625780639c75dd351461079e57610250565b806370a08231146105ee57806373f425611461062a57806378109e54146106545780637d1db4a51461067e578063893d20e8146106a857610250565b806323b872dd116101c65780633c8e556d1161018a5780633c8e556d1461050c578063571ac8b0146105345780635921652f146105705780636b67c4df1461059a5780636ddd1713146105c457610250565b806323b872dd146104165780632b112e49146104525780632f54bf6e1461047c5780633121c7c0146104b8578063313ce567146104e257610250565b8063180b0d7e1161020d578063180b0d7e1461034857806318160ddd146103725780631df4ccfc1461039c5780631f76a7af146103c6578063201e7991146103ee57610250565b80630445b6671461025457806306fdde031461027e57806309302dc6146102a8578063095ea7b3146102d05780631161ae391461030c57610250565b3661025057005b5f80fd5b34801561025f575f80fd5b506102686109c4565b604051610275919061274b565b60405180910390f35b348015610289575f80fd5b506102926109ca565b60405161029f91906127ee565b60405180910390f35b3480156102b3575f80fd5b506102ce60048036038101906102c9919061283c565b6109ea565b005b3480156102db575f80fd5b506102f660048036038101906102f191906128c1565b610a9a565b6040516103039190612919565b60405180910390f35b348015610317575f80fd5b50610332600480360381019061032d9190612932565b610b87565b60405161033f9190612919565b60405180910390f35b348015610353575f80fd5b5061035c610b9b565b604051610369919061274b565b60405180910390f35b34801561037d575f80fd5b50610386610ba1565b604051610393919061274b565b60405180910390f35b3480156103a7575f80fd5b506103b0610baa565b6040516103bd919061274b565b60405180910390f35b3480156103d1575f80fd5b506103ec60048036038101906103e791906129ab565b610bb0565b005b3480156103f9575f80fd5b50610414600480360381019061040f9190612932565b610cc5565b005b348015610421575f80fd5b5061043c600480360381019061043791906129d6565b610cd7565b6040516104499190612919565b60405180910390f35b34801561045d575f80fd5b50610466610eca565b604051610473919061274b565b60405180910390f35b348015610487575f80fd5b506104a2600480360381019061049d9190612a26565b610f49565b6040516104af9190612919565b60405180910390f35b3480156104c3575f80fd5b506104cc610fa0565b6040516104d9919061274b565b60405180910390f35b3480156104ed575f80fd5b506104f6610fa6565b6040516105039190612a6c565b60405180910390f35b348015610517575f80fd5b50610532600480360381019061052d9190612a85565b610fae565b005b34801561053f575f80fd5b5061055a60048036038101906105559190612a26565b6110fc565b6040516105679190612919565b60405180910390f35b34801561057b575f80fd5b5061058461112e565b604051610591919061274b565b60405180910390f35b3480156105a5575f80fd5b506105ae611134565b6040516105bb919061274b565b60405180910390f35b3480156105cf575f80fd5b506105d861113a565b6040516105e59190612919565b60405180910390f35b3480156105f9575f80fd5b50610614600480360381019061060f9190612a26565b61114d565b604051610621919061274b565b60405180910390f35b348015610635575f80fd5b5061063e611193565b60405161064b919061274b565b60405180910390f35b34801561065f575f80fd5b50610668611199565b604051610675919061274b565b60405180910390f35b348015610689575f80fd5b5061069261119f565b60405161069f919061274b565b60405180910390f35b3480156106b3575f80fd5b506106bc6111a5565b6040516106c99190612af8565b60405180910390f35b3480156106dd575f80fd5b506106e66111cc565b6040516106f391906127ee565b60405180910390f35b348015610707575f80fd5b50610710611209565b60405161071d919061274b565b60405180910390f35b348015610731575f80fd5b5061074c60048036038101906107479190612a26565b61120f565b6040516107599190612919565b60405180910390f35b34801561076d575f80fd5b50610788600480360381019061078391906128c1565b611261565b6040516107959190612919565b60405180910390f35b3480156107a9575f80fd5b506107c460048036038101906107bf919061283c565b611306565b005b3480156107d1575f80fd5b506107ec60048036038101906107e7919061283c565b61138a565b005b3480156107f9575f80fd5b50610802611394565b60405161080f9190612af8565b60405180910390f35b348015610823575f80fd5b5061083e600480360381019061083991906128c1565b6113b9565b60405161084b9190612919565b60405180910390f35b34801561085f575f80fd5b5061087a6004803603810190610875919061283c565b6113cd565b005b348015610887575f80fd5b506108a2600480360381019061089d919061283c565b61147d565b6040516108af919061274b565b60405180910390f35b3480156108c3575f80fd5b506108cc6114ed565b6040516108d9919061274b565b60405180910390f35b3480156108ed575f80fd5b506108f66114f3565b604051610903919061274b565b60405180910390f35b348015610917575f80fd5b50610932600480360381019061092d9190612b11565b6114f9565b60405161093f919061274b565b60405180910390f35b348015610953575f80fd5b5061096e60048036038101906109699190612b79565b61157b565b005b34801561097b575f80fd5b506109846115a0565b6040516109919190612c12565b60405180910390f35b3480156109a5575f80fd5b506109ae6115c5565b6040516109bb9190612919565b60405180910390f35b601e5481565b60606040518060600160405280602681526020016133ab60269139905090565b6109f333610f49565b610a32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2990612c75565b60405180910390fd5b600a811015610a76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6d90612d03565b60405180910390fd5b6103e881600554610a879190612d4e565b610a919190612dbc565b60078190555050565b5f8160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610b75919061274b565b60405180910390a36001905092915050565b5f82610b928361147d565b11905092915050565b60125481565b5f600554905090565b60115481565b610bb933610f49565b610bf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bef90612c75565b60405180910390fd5b805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc68616381604051610cba9190612e0c565b60405180910390a150565b81601a8190555080601b819055505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205414610eb657610e39826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e63650000000000000000000081525060095f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115d89092919063ffffffff16565b60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b610ec184848461163a565b90509392505050565b5f610f44610ef860045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661114d565b610f36610f2560035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661114d565b60055461196990919063ffffffff16565b61196990919063ffffffff16565b905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60145481565b5f6004905090565b610fb733610f49565b610ff6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fed90612c75565b60405180910390fd5b8360165f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508260175f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160185f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060195f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b5f611127827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610a9a565b9050919050565b60155481565b600e5481565b601d60159054906101000a900460ff1681565b5f60085f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b60135481565b60075481565b60065481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f502e452e502e452e000000000000000000000000000000000000000000000000815250905090565b600d5481565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b81526004016112be929190612e25565b6020604051808303815f875af11580156112da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112fe9190612e60565b905092915050565b5f47905060175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc606484846113539190612d4e565b61135d9190612dbc565b90811502906040515f60405180830381858888f19350505050158015611385573d5f803e3d5ffd5b505050565b8060138190555050565b601d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6113c533848461163a565b905092915050565b6113d633610f49565b611415576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140c90612c75565b60405180910390fd5b6001811015611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090612efb565b60405180910390fd5b6103e88160055461146a9190612d4e565b6114749190612dbc565b60068190555050565b5f6114e6611489610eca565b6114d86114c960026114bb601d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661114d565b6119b290919063ffffffff16565b856119b290919063ffffffff16565b611a2990919063ffffffff16565b9050919050565b600f5481565b60105481565b5f60095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b81601d60156101000a81548160ff02191690831515021790555080601e819055505050565b601c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601d60149054906101000a900460ff1681565b5f83831115829061161f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161691906127ee565b60405180910390fd5b505f838561162d9190612f19565b9050809150509392505050565b5f601f5f9054906101000a900460ff16156116615761165a848484611a72565b9050611962565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156116ff575060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561175457601d60149054906101000a900460ff16611753576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174a90612f96565b60405180910390fd5b5b61175c611c3c565b1561176a57611769611d0e565b5b6117f1826040518060400160405280601481526020017f496e73756666696369656e742042616c616e636500000000000000000000000081525060085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115d89092919063ffffffff16565b60085f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f61183c8561225e565b158061184e575061184c8461225e565b155b6118625761185d8584866122b1565b611864565b825b90506118b68160085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461267590919063ffffffff16565b60085f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611954919061274b565b60405180910390a360019150505b9392505050565b5f6119aa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115d8565b905092915050565b5f8083036119c2575f9050611a23565b5f82846119cf9190612d4e565b90508284826119de9190612dbc565b14611a1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1590613024565b60405180910390fd5b809150505b92915050565b5f611a6a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506126d2565b905092915050565b5f611afa826040518060400160405280601481526020017f496e73756666696369656e742042616c616e636500000000000000000000000081525060085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546115d89092919063ffffffff16565b60085f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611b8b8260085f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461267590919063ffffffff16565b60085f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611c29919061274b565b60405180910390a3600190509392505050565b5f601d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611ca65750601f5f9054906101000a900460ff16155b8015611cbe5750601d60159054906101000a900460ff165b8015611d095750601e5460085f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410155b905090565b6001601f5f6101000a81548160ff0219169083151502179055505f611d37601a54601b54610b87565b611d4357600d54611d45565b5f5b90505f611d846002611d76601154611d6886601e546119b290919063ffffffff16565b611a2990919063ffffffff16565b611a2990919063ffffffff16565b90505f611d9c82601e5461196990919063ffffffff16565b90505f600267ffffffffffffffff811115611dba57611db9613042565b5b604051908082528060200260200182016040528015611de85781602001602082028036833780820191505090505b50905030815f81518110611dff57611dfe61306f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681600181518110611e6f57611e6e61306f565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f479050601c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8530426040518663ffffffff1660e01b8152600401611f0f95949392919061318c565b5f604051808303815f87803b158015611f26575f80fd5b505af1158015611f38573d5f803e3d5ffd5b505050505f611f50824761196990919063ffffffff16565b90505f611f7b611f6a600289611a2990919063ffffffff16565b60115461196990919063ffffffff16565b90505f611fb66002611fa884611f9a8c886119b290919063ffffffff16565b611a2990919063ffffffff16565b611a2990919063ffffffff16565b90505f611fe083611fd2600e54876119b290919063ffffffff16565b611a2990919063ffffffff16565b90505f61200a84611ffc600f54886119b290919063ffffffff16565b611a2990919063ffffffff16565b90505f60175f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16836175309060405161205690613211565b5f60405180830381858888f193505050503d805f8114612091576040519150601f19603f3d011682016040523d82523d5f602084013e612096565b606091505b5050905060185f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682617530906040516120e390613211565b5f60405180830381858888f193505050503d805f811461211e576040519150601f19603f3d011682016040523d82523d5f602084013e612123565b606091505b5050809150505f90505f8a111561223857601c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71985308d5f8060165f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b81526004016121ba96959493929190613225565b60606040518083038185885af11580156121d6573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906121fb9190613298565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506848b60405161222f9291906132e8565b60405180910390a15b50505050505050505050505f601f5f6101000a81548160ff021916908315150217905550565b5f600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16159050919050565b5f806015549050601d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612316576013549050612371565b601d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036123705760145490505b5b5f6123b960646012546123849190612d4e565b6123ab8461239d6011548a6119b290919063ffffffff16565b6119b290919063ffffffff16565b611a2990919063ffffffff16565b90505f6123e56011546123d7601054856119b290919063ffffffff16565b611a2990919063ffffffff16565b90505f6123fb828461196990919063ffffffff16565b905061244d8160085f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461267590919063ffffffff16565b60085f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506124ff8260085f60195f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461267590919063ffffffff16565b60085f60195f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516125be919061274b565b60405180910390a35f8211156126555760195f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161264c919061274b565b60405180910390a35b612668838861196990919063ffffffff16565b9450505050509392505050565b5f808284612683919061330f565b9050838110156126c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126bf9061338c565b60405180910390fd5b8091505092915050565b5f8083118290612718576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161270f91906127ee565b60405180910390fd5b505f83856127269190612dbc565b9050809150509392505050565b5f819050919050565b61274581612733565b82525050565b5f60208201905061275e5f83018461273c565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561279b578082015181840152602081019050612780565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6127c082612764565b6127ca818561276e565b93506127da81856020860161277e565b6127e3816127a6565b840191505092915050565b5f6020820190508181035f83015261280681846127b6565b905092915050565b5f80fd5b61281b81612733565b8114612825575f80fd5b50565b5f8135905061283681612812565b92915050565b5f602082840312156128515761285061280e565b5b5f61285e84828501612828565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61289082612867565b9050919050565b6128a081612886565b81146128aa575f80fd5b50565b5f813590506128bb81612897565b92915050565b5f80604083850312156128d7576128d661280e565b5b5f6128e4858286016128ad565b92505060206128f585828601612828565b9150509250929050565b5f8115159050919050565b612913816128ff565b82525050565b5f60208201905061292c5f83018461290a565b92915050565b5f80604083850312156129485761294761280e565b5b5f61295585828601612828565b925050602061296685828601612828565b9150509250929050565b5f61297a82612867565b9050919050565b61298a81612970565b8114612994575f80fd5b50565b5f813590506129a581612981565b92915050565b5f602082840312156129c0576129bf61280e565b5b5f6129cd84828501612997565b91505092915050565b5f805f606084860312156129ed576129ec61280e565b5b5f6129fa868287016128ad565b9350506020612a0b868287016128ad565b9250506040612a1c86828701612828565b9150509250925092565b5f60208284031215612a3b57612a3a61280e565b5b5f612a48848285016128ad565b91505092915050565b5f60ff82169050919050565b612a6681612a51565b82525050565b5f602082019050612a7f5f830184612a5d565b92915050565b5f805f8060808587031215612a9d57612a9c61280e565b5b5f612aaa878288016128ad565b9450506020612abb878288016128ad565b9350506040612acc878288016128ad565b9250506060612add878288016128ad565b91505092959194509250565b612af281612886565b82525050565b5f602082019050612b0b5f830184612ae9565b92915050565b5f8060408385031215612b2757612b2661280e565b5b5f612b34858286016128ad565b9250506020612b45858286016128ad565b9150509250929050565b612b58816128ff565b8114612b62575f80fd5b50565b5f81359050612b7381612b4f565b92915050565b5f8060408385031215612b8f57612b8e61280e565b5b5f612b9c85828601612b65565b9250506020612bad85828601612828565b9150509250929050565b5f819050919050565b5f612bda612bd5612bd084612867565b612bb7565b612867565b9050919050565b5f612beb82612bc0565b9050919050565b5f612bfc82612be1565b9050919050565b612c0c81612bf2565b82525050565b5f602082019050612c255f830184612c03565b92915050565b7f214f574e455200000000000000000000000000000000000000000000000000005f82015250565b5f612c5f60068361276e565b9150612c6a82612c2b565b602082019050919050565b5f6020820190508181035f830152612c8c81612c53565b9050919050565b7f4d61782057616c6c65742063616e6e6f74206265206c6f776572207468616e205f8201527f312520746f74616c20737570706c792e00000000000000000000000000000000602082015250565b5f612ced60308361276e565b9150612cf882612c93565b604082019050919050565b5f6020820190508181035f830152612d1a81612ce1565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612d5882612733565b9150612d6383612733565b9250828202612d7181612733565b91508282048414831517612d8857612d87612d21565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612dc682612733565b9150612dd183612733565b925082612de157612de0612d8f565b5b828204905092915050565b5f612df682612be1565b9050919050565b612e0681612dec565b82525050565b5f602082019050612e1f5f830184612dfd565b92915050565b5f604082019050612e385f830185612ae9565b612e45602083018461273c565b9392505050565b5f81519050612e5a81612b4f565b92915050565b5f60208284031215612e7557612e7461280e565b5b5f612e8284828501612e4c565b91505092915050565b7f4d6178205472616e73616374696f6e2063616e6e6f74206265206c6f776572205f8201527f7468616e20302e312520746f74616c20737570706c792e000000000000000000602082015250565b5f612ee560378361276e565b9150612ef082612e8b565b604082019050919050565b5f6020820190508181035f830152612f1281612ed9565b9050919050565b5f612f2382612733565b9150612f2e83612733565b9250828203905081811115612f4657612f45612d21565b5b92915050565b7f54726164696e67206e6f74206f70656e207965740000000000000000000000005f82015250565b5f612f8060148361276e565b9150612f8b82612f4c565b602082019050919050565b5f6020820190508181035f830152612fad81612f74565b9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61300e60218361276e565b915061301982612fb4565b604082019050919050565b5f6020820190508181035f83015261303b81613002565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b5f6130bf6130ba6130b58461309c565b612bb7565b612733565b9050919050565b6130cf816130a5565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61310781612886565b82525050565b5f61311883836130fe565b60208301905092915050565b5f602082019050919050565b5f61313a826130d5565b61314481856130df565b935061314f836130ef565b805f5b8381101561317f578151613166888261310d565b975061317183613124565b925050600181019050613152565b5085935050505092915050565b5f60a08201905061319f5f83018861273c565b6131ac60208301876130c6565b81810360408301526131be8186613130565b90506131cd6060830185612ae9565b6131da608083018461273c565b9695505050505050565b5f81905092915050565b50565b5f6131fc5f836131e4565b9150613207826131ee565b5f82019050919050565b5f61321b826131f1565b9150819050919050565b5f60c0820190506132385f830189612ae9565b613245602083018861273c565b61325260408301876130c6565b61325f60608301866130c6565b61326c6080830185612ae9565b61327960a083018461273c565b979650505050505050565b5f8151905061329281612812565b92915050565b5f805f606084860312156132af576132ae61280e565b5b5f6132bc86828701613284565b93505060206132cd86828701613284565b92505060406132de86828701613284565b9150509250925092565b5f6040820190506132fb5f83018561273c565b613308602083018461273c565b9392505050565b5f61331982612733565b915061332483612733565b925082820190508082111561333c5761333b612d21565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f613376601b8361276e565b915061338182613342565b602082019050919050565b5f6020820190508181035f8301526133a38161336a565b905091905056fe5072696e636970616c2045636f6e6f6d69637320506f6c69637920456e666f7263656d656e74a264697066735822122067c85519b4909ae0a44c1d4686a48890a9f7bd5714401139f61fa3d5bf13e41764736f6c63430008160033