[ { "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": [], "name": "EnableTrading", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isExcluded", "type": "bool" } ], "name": "ExcludeFromFees", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": 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": "account", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isFeeApplicable", "type": "bool" } ], "name": "SetFeeApplicable", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "swapPortion", "type": "uint256" } ], "name": "SetSwapPortion", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "tokensSwapped", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "ethReceived", "type": "uint256" } ], "name": "SwapAndLiquify", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "TokensSentToVitalik", "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": [], "name": "MINIMUM_SWAP_AMOUNT", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "VitalikPortion", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "WETH", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "accumulatedFees", "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": [], "name": "deadAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isExcludedFromFees", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isFeeApplicable", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "sellFeePercentage", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "bool", "name": "applicable", "type": "bool" } ], "name": "setAutomatedMarketMakerPair", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "bool", "name": "excluded", "type": "bool" } ], "name": "setExcludeFromFees", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_swapPortion", "type": "uint256" } ], "name": "setSwapPortion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_swapPortion", "type": "uint256" } ], "name": "setVitalikPortion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "swapPortion", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tradingEnabled", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "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": [], "name": "vitalikAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60a06040525f600860146101000a81548160ff0219169083151502179055505f6009555f600a555f600b55348015610035575f80fd5b50336040518060400160405280600a81526020017f4652454420544f4b454e000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f465245440000000000000000000000000000000000000000000000000000000081525081600390816100b291906108da565b5080600490816100c291906108da565b5050506100d48161044960201b60201c565b506001600681905550610115336100ef61050c60201b60201c565b600a6100fb9190610b11565b633b9aca0061010a9190610b5b565b61051460201b60201c565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610176573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061019a9190610bfa565b73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610216573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061023a9190610bfa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396306080516040518363ffffffff1660e01b8152600401610276929190610c34565b6020604051808303815f875af1158015610292573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b69190610bfa565b60085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600c5f61034861066e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050610d2e565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f6012905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610582576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057990610cb5565b60405180910390fd5b6105935f838361069660201b60201c565b8060025f8282546105a49190610cd3565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516106519190610d15565b60405180910390a361066a5f838361069b60201b60201c565b5050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b505050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061071b57607f821691505b60208210810361072e5761072d6106d7565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610755565b61079a8683610755565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6107de6107d96107d4846107b2565b6107bb565b6107b2565b9050919050565b5f819050919050565b6107f7836107c4565b61080b610803826107e5565b848454610761565b825550505050565b5f90565b61081f610813565b61082a8184846107ee565b505050565b5b8181101561084d576108425f82610817565b600181019050610830565b5050565b601f8211156108925761086381610734565b61086c84610746565b8101602085101561087b578190505b61088f61088785610746565b83018261082f565b50505b505050565b5f82821c905092915050565b5f6108b25f1984600802610897565b1980831691505092915050565b5f6108ca83836108a3565b9150826002028217905092915050565b6108e3826106a0565b67ffffffffffffffff8111156108fc576108fb6106aa565b5b6109068254610704565b610911828285610851565b5f60209050601f831160018114610942575f8415610930578287015190505b61093a85826108bf565b8655506109a1565b601f19841661095086610734565b5f5b8281101561097757848901518255600182019150602085019450602081019050610952565b868310156109945784890151610990601f8916826108a3565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115610a2b57808604811115610a0757610a066109a9565b5b6001851615610a165780820291505b8081029050610a24856109d6565b94506109eb565b94509492505050565b5f82610a435760019050610afe565b81610a50575f9050610afe565b8160018114610a665760028114610a7057610a9f565b6001915050610afe565b60ff841115610a8257610a816109a9565b5b8360020a915084821115610a9957610a986109a9565b5b50610afe565b5060208310610133831016604e8410600b8410161715610ad45782820a905083811115610acf57610ace6109a9565b5b610afe565b610ae184848460016109e2565b92509050818404811115610af857610af76109a9565b5b81810290505b9392505050565b5f60ff82169050919050565b5f610b1b826107b2565b9150610b2683610b05565b9250610b537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610a34565b905092915050565b5f610b65826107b2565b9150610b70836107b2565b9250828202610b7e816107b2565b91508282048414831517610b9557610b946109a9565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610bc982610ba0565b9050919050565b610bd981610bbf565b8114610be3575f80fd5b50565b5f81519050610bf481610bd0565b92915050565b5f60208284031215610c0f57610c0e610b9c565b5b5f610c1c84828501610be6565b91505092915050565b610c2e81610bbf565b82525050565b5f604082019050610c475f830185610c25565b610c546020830184610c25565b9392505050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f610c9f601f83610c5b565b9150610caa82610c6b565b602082019050919050565b5f6020820190508181035f830152610ccc81610c93565b9050919050565b5f610cdd826107b2565b9150610ce8836107b2565b9250828201905080821115610d0057610cff6109a9565b5b92915050565b610d0f816107b2565b82525050565b5f602082019050610d285f830184610d06565b92915050565b608051612b74610d4d5f395f8181610c5a0152611a520152612b745ff3fe6080604052600436106101e6575f3560e01c806370a0823111610101578063ad5c464811610094578063d2c7219111610063578063d2c72191146106eb578063dd62ed3e14610713578063e208a9391461074f578063f2fde38b14610779576101ed565b8063ad5c464814610647578063b6e8521614610671578063c2be2c9214610699578063d16f8de9146106c1576101ed565b80638da5cb5b116100d05780638da5cb5b1461057b57806395d89b41146105a5578063a457c2d7146105cf578063a9059cbb1461060b576101ed565b806370a08231146104e9578063715018a6146105255780637a65a3b81461053b5780638a8c523c14610565576101ed565b806327c8f8351161017957806349bd5a5e1161014857806349bd5a5e1461042f5780634ada218b146104595780634fbee19314610483578063587f5ed7146104bf576101ed565b806327c8f83514610377578063313ce567146103a157806339509351146103cb5780633aa646fe14610407576101ed565b806318160ddd116101b557806318160ddd146102ab578063186dbffb146102d55780631aae9b4f146102ff57806323b872dd1461033b576101ed565b806306fdde03146101f1578063095ea7b31461021b57806312ae15c6146102575780631694505e14610281576101ed565b366101ed57005b5f80fd5b3480156101fc575f80fd5b506102056107a1565b6040516102129190611ca7565b60405180910390f35b348015610226575f80fd5b50610241600480360381019061023c9190611d65565b610831565b60405161024e9190611dbd565b60405180910390f35b348015610262575f80fd5b5061026b610853565b6040516102789190611de5565b60405180910390f35b34801561028c575f80fd5b5061029561085f565b6040516102a29190611e59565b60405180910390f35b3480156102b6575f80fd5b506102bf610884565b6040516102cc9190611de5565b60405180910390f35b3480156102e0575f80fd5b506102e961088d565b6040516102f69190611de5565b60405180910390f35b34801561030a575f80fd5b5061032560048036038101906103209190611e72565b610893565b6040516103329190611dbd565b60405180910390f35b348015610346575f80fd5b50610361600480360381019061035c9190611e9d565b6108b0565b60405161036e9190611dbd565b60405180910390f35b348015610382575f80fd5b5061038b610933565b6040516103989190611efc565b60405180910390f35b3480156103ac575f80fd5b506103b5610939565b6040516103c29190611f30565b60405180910390f35b3480156103d6575f80fd5b506103f160048036038101906103ec9190611d65565b610941565b6040516103fe9190611dbd565b60405180910390f35b348015610412575f80fd5b5061042d60048036038101906104289190611f49565b610977565b005b34801561043a575f80fd5b50610443610a04565b6040516104509190611efc565b60405180910390f35b348015610464575f80fd5b5061046d610a29565b60405161047a9190611dbd565b60405180910390f35b34801561048e575f80fd5b506104a960048036038101906104a49190611e72565b610a3c565b6040516104b69190611dbd565b60405180910390f35b3480156104ca575f80fd5b506104d3610a59565b6040516104e09190611de5565b60405180910390f35b3480156104f4575f80fd5b5061050f600480360381019061050a9190611e72565b610a5f565b60405161051c9190611de5565b60405180910390f35b348015610530575f80fd5b50610539610aa4565b005b348015610546575f80fd5b5061054f610ab7565b60405161055c9190611de5565b60405180910390f35b348015610570575f80fd5b50610579610abd565b005b348015610586575f80fd5b5061058f610b0e565b60405161059c9190611efc565b60405180910390f35b3480156105b0575f80fd5b506105b9610b36565b6040516105c69190611ca7565b60405180910390f35b3480156105da575f80fd5b506105f560048036038101906105f09190611d65565b610bc6565b6040516106029190611dbd565b60405180910390f35b348015610616575f80fd5b50610631600480360381019061062c9190611d65565b610c3b565b60405161063e9190611dbd565b60405180910390f35b348015610652575f80fd5b5061065b610c58565b6040516106689190611efc565b60405180910390f35b34801561067c575f80fd5b50610697600480360381019061069291906120de565b610c7c565b005b3480156106a4575f80fd5b506106bf60048036038101906106ba9190611f49565b610d77565b005b3480156106cc575f80fd5b506106d5610dcd565b6040516106e29190611efc565b60405180910390f35b3480156106f6575f80fd5b50610711600480360381019061070c91906120de565b610de5565b005b34801561071e575f80fd5b5061073960048036038101906107349190612138565b610f50565b6040516107469190611de5565b60405180910390f35b34801561075a575f80fd5b50610763610fd2565b6040516107709190611de5565b60405180910390f35b348015610784575f80fd5b5061079f600480360381019061079a9190611e72565b610fd8565b005b6060600380546107b0906121a3565b80601f01602080910402602001604051908101604052809291908181526020018280546107dc906121a3565b80156108275780601f106107fe57610100808354040283529160200191610827565b820191905f5260205f20905b81548152906001019060200180831161080a57829003601f168201915b5050505050905090565b5f8061083b61105a565b9050610848818585611061565b600191505092915050565b67016345785d8a000081565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600254905090565b600b5481565b600d602052805f5260405f205f915054906101000a900460ff1681565b5f6108bc848484611224565b5f6108ce856108c961105a565b610f50565b905082811015610913576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090a90612243565b60405180910390fd5b6109278561091f61105a565b858403611061565b60019150509392505050565b61dead81565b5f6012905090565b5f8061094b61105a565b905061096c81858561095d8589610f50565b610967919061228e565b611061565b600191505092915050565b61097f6115f3565b60648111156109c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ba9061230b565b60405180910390fd5b80600a819055507feabd3b3b7a8ca5058b4778ca7daf516ebc6d5da7b6259714b32fc49ecdb110b1816040516109f99190611de5565b60405180910390a150565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860149054906101000a900460ff1681565b600c602052805f5260405f205f915054906101000a900460ff1681565b600e5481565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610aac6115f3565b610ab55f611671565b565b600a5481565b610ac56115f3565b6001600860146101000a81548160ff0219169083151502179055507f1d97b7cdf6b6f3405cbe398b69512e5419a0ce78232b6e9c6ffbf1466774bd8d60405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610b45906121a3565b80601f0160208091040260200160405190810160405280929190818152602001828054610b71906121a3565b8015610bbc5780601f10610b9357610100808354040283529160200191610bbc565b820191905f5260205f20905b815481529060010190602001808311610b9f57829003601f168201915b5050505050905090565b5f80610bd061105a565b90505f610bdd8286610f50565b905083811015610c22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1990612399565b60405180910390fd5b610c2f8286868403611061565b60019250505092915050565b5f610c4e610c4761105a565b8484611224565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610c846115f3565b5f5b8251811015610d725781600c5f858481518110610ca657610ca56123b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610d1057610d0f6123b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df783604051610d5d9190611dbd565b60405180910390a28080600101915050610c86565b505050565b610d7f6115f3565b6064811115610dc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dba9061230b565b60405180910390fd5b80600b8190555050565b73d8da6bf26964af9d7eed9e03e53415d37aa9604581565b610ded6115f3565b5f5b8251811015610f4b5760085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16838281518110610e4357610e426123b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff160315610f3e5781600d5f858481518110610e7e57610e7d6123b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828181518110610ee857610ee76123b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff167fd31c700151312b600f1f92a612fd99493ee4bfede71bb43f9eef36556c56cf9783604051610f359190611dbd565b60405180910390a25b8080600101915050610def565b505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60095481565b610fe06115f3565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361104e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104590612454565b60405180910390fd5b61105781611671565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c6906124e2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361113d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113490612570565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112179190611de5565b60405180910390a3505050565b600860149054906101000a900460ff16806112855750600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806112d65750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161130c906125d8565b60405180910390fd5b600f5f9054906101000a900460ff1615611364576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135b90612666565b60405180910390fd5b600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806113ff5750600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b806114515750600d5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561146657611461838383611734565b6115ee565b5f6064600954836114779190612684565b61148191906126f2565b90505f81836114909190612722565b90505f6064600b54600a546114a5919061228e565b6064600b54866114b59190612684565b6114bf9190612684565b6114c991906126f2565b6114d391906126f2565b90505f6064600b54600a546114e8919061228e565b6064600a54876114f89190612684565b6115029190612684565b61150c91906126f2565b61151691906126f2565b9050611523873083611734565b6115428773d8da6bf26964af9d7eed9e03e53415d37aa9604584611734565b61154d878785611734565b80600e5f82825461155e919061228e565b9250508190555067016345785d8a0000600e54106115b2576001600f5f6101000a81548160ff0219169083151502179055506115986119a0565b5f600f5f6101000a81548160ff0219169083151502179055505b7f3a8252748ffa3c9535c6438799ce1f576f36a016ab530f354e1432db42713c79826040516115e19190611de5565b60405180910390a1505050505b505050565b6115fb61105a565b73ffffffffffffffffffffffffffffffffffffffff16611619610b0e565b73ffffffffffffffffffffffffffffffffffffffff161461166f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116669061279f565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036117a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117999061282d565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611810576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611807906128bb565b60405180910390fd5b61181b838383611bd4565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561189e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189590612949565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119879190611de5565b60405180910390a361199a848484611bd9565b50505050565b6119a8611bde565b5f600e5490505f600e819055505f600267ffffffffffffffff8111156119d1576119d0611f78565b5b6040519080825280602002602001820160405280156119ff5781602001602082028036833780820191505090505b50905030815f81518110611a1657611a156123b7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611a8557611a846123b7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611aeb3060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611061565b5f47905060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8530426040518663ffffffff1660e01b8152600401611b51959493929190612a57565b5f604051808303815f87803b158015611b68575f80fd5b505af1158015611b7a573d5f803e3d5ffd5b505050505f8147611b8b9190612722565b90507f28fc98272ce761178794ad6768050fea1648e07f1e2ffe15afd3a290f83814868482604051611bbe929190612aaf565b60405180910390a150505050611bd2611c2d565b565b505050565b505050565b600260065403611c23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1a90612b20565b60405180910390fd5b6002600681905550565b6001600681905550565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611c7982611c37565b611c838185611c41565b9350611c93818560208601611c51565b611c9c81611c5f565b840191505092915050565b5f6020820190508181035f830152611cbf8184611c6f565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611d0182611cd8565b9050919050565b611d1181611cf7565b8114611d1b575f80fd5b50565b5f81359050611d2c81611d08565b92915050565b5f819050919050565b611d4481611d32565b8114611d4e575f80fd5b50565b5f81359050611d5f81611d3b565b92915050565b5f8060408385031215611d7b57611d7a611cd0565b5b5f611d8885828601611d1e565b9250506020611d9985828601611d51565b9150509250929050565b5f8115159050919050565b611db781611da3565b82525050565b5f602082019050611dd05f830184611dae565b92915050565b611ddf81611d32565b82525050565b5f602082019050611df85f830184611dd6565b92915050565b5f819050919050565b5f611e21611e1c611e1784611cd8565b611dfe565b611cd8565b9050919050565b5f611e3282611e07565b9050919050565b5f611e4382611e28565b9050919050565b611e5381611e39565b82525050565b5f602082019050611e6c5f830184611e4a565b92915050565b5f60208284031215611e8757611e86611cd0565b5b5f611e9484828501611d1e565b91505092915050565b5f805f60608486031215611eb457611eb3611cd0565b5b5f611ec186828701611d1e565b9350506020611ed286828701611d1e565b9250506040611ee386828701611d51565b9150509250925092565b611ef681611cf7565b82525050565b5f602082019050611f0f5f830184611eed565b92915050565b5f60ff82169050919050565b611f2a81611f15565b82525050565b5f602082019050611f435f830184611f21565b92915050565b5f60208284031215611f5e57611f5d611cd0565b5b5f611f6b84828501611d51565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611fae82611c5f565b810181811067ffffffffffffffff82111715611fcd57611fcc611f78565b5b80604052505050565b5f611fdf611cc7565b9050611feb8282611fa5565b919050565b5f67ffffffffffffffff82111561200a57612009611f78565b5b602082029050602081019050919050565b5f80fd5b5f61203161202c84611ff0565b611fd6565b905080838252602082019050602084028301858111156120545761205361201b565b5b835b8181101561207d57806120698882611d1e565b845260208401935050602081019050612056565b5050509392505050565b5f82601f83011261209b5761209a611f74565b5b81356120ab84826020860161201f565b91505092915050565b6120bd81611da3565b81146120c7575f80fd5b50565b5f813590506120d8816120b4565b92915050565b5f80604083850312156120f4576120f3611cd0565b5b5f83013567ffffffffffffffff81111561211157612110611cd4565b5b61211d85828601612087565b925050602061212e858286016120ca565b9150509250929050565b5f806040838503121561214e5761214d611cd0565b5b5f61215b85828601611d1e565b925050602061216c85828601611d1e565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806121ba57607f821691505b6020821081036121cd576121cc612176565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f61222d602883611c41565b9150612238826121d3565b604082019050919050565b5f6020820190508181035f83015261225a81612221565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61229882611d32565b91506122a383611d32565b92508282019050808211156122bb576122ba612261565b5b92915050565b7f5377617020706f7274696f6e2063616e6e6f74206578636565642031303000005f82015250565b5f6122f5601e83611c41565b9150612300826122c1565b602082019050919050565b5f6020820190508181035f830152612322816122e9565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612383602583611c41565b915061238e82612329565b604082019050919050565b5f6020820190508181035f8301526123b081612377565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61243e602683611c41565b9150612449826123e4565b604082019050919050565b5f6020820190508181035f83015261246b81612432565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6124cc602483611c41565b91506124d782612472565b604082019050919050565b5f6020820190508181035f8301526124f9816124c0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61255a602283611c41565b915061256582612500565b604082019050919050565b5f6020820190508181035f8301526125878161254e565b9050919050565b7f54726164696e67206973206e6f7420656e61626c6564207965740000000000005f82015250565b5f6125c2601a83611c41565b91506125cd8261258e565b602082019050919050565b5f6020820190508181035f8301526125ef816125b6565b9050919050565b7f5472616e73666572206661696c65642064756520746f20696e7465726e616c205f8201527f7377617020696e2070726f677265737300000000000000000000000000000000602082015250565b5f612650603083611c41565b915061265b826125f6565b604082019050919050565b5f6020820190508181035f83015261267d81612644565b9050919050565b5f61268e82611d32565b915061269983611d32565b92508282026126a781611d32565b915082820484148315176126be576126bd612261565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6126fc82611d32565b915061270783611d32565b925082612717576127166126c5565b5b828204905092915050565b5f61272c82611d32565b915061273783611d32565b925082820390508181111561274f5761274e612261565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612789602083611c41565b915061279482612755565b602082019050919050565b5f6020820190508181035f8301526127b68161277d565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612817602583611c41565b9150612822826127bd565b604082019050919050565b5f6020820190508181035f8301526128448161280b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6128a5602383611c41565b91506128b08261284b565b604082019050919050565b5f6020820190508181035f8301526128d281612899565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f612933602683611c41565b915061293e826128d9565b604082019050919050565b5f6020820190508181035f83015261296081612927565b9050919050565b5f819050919050565b5f61298a61298561298084612967565b611dfe565b611d32565b9050919050565b61299a81612970565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6129d281611cf7565b82525050565b5f6129e383836129c9565b60208301905092915050565b5f602082019050919050565b5f612a05826129a0565b612a0f81856129aa565b9350612a1a836129ba565b805f5b83811015612a4a578151612a3188826129d8565b9750612a3c836129ef565b925050600181019050612a1d565b5085935050505092915050565b5f60a082019050612a6a5f830188611dd6565b612a776020830187612991565b8181036040830152612a8981866129fb565b9050612a986060830185611eed565b612aa56080830184611dd6565b9695505050505050565b5f604082019050612ac25f830185611dd6565b612acf6020830184611dd6565b9392505050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c005f82015250565b5f612b0a601f83611c41565b9150612b1582612ad6565b602082019050919050565b5f6020820190508181035f830152612b3781612afe565b905091905056fea2646970667358221220c0f8576f5a2b192e6cc24d6bfa003205754b06b0ae24472a18fac39244250c9a64736f6c634300081a0033