[ { "inputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint256", "name": "initialSupply", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "newTaxRate", "type": "uint256" } ], "name": "TaxRateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "newTaxWallet", "type": "address" } ], "name": "TaxWalletChanged", "type": "event" }, { "anonymous": false, "inputs": [], "name": "TradingEnabled", "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": "address", "name": "pair", "type": "address" } ], "name": "UniswapPairAdded", "type": "event" }, { "inputs": [], "name": "MARKET_MAKER", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "tokenB", "type": "address" } ], "name": "addUniswapPair", "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": "value", "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": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "enableTrading", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isUniswapPair", "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": "sellTaxRate", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_newTaxRate", "type": "uint256" } ], "name": "setTaxRate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_newTaxWallet", "type": "address" } ], "name": "setTaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "taxWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "uniswapV2Factory", "outputs": [ { "internalType": "contract IUniswapV2Factory", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]
60806040525f600a5f6101000a81548160ff021916908315150217905550348015610028575f80fd5b50604051612c2e380380612c2e833981810160405281019061004a91906106c5565b338383816003908161005c9190610951565b50806004908161006c9190610951565b5050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036100df575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016100d69190610a5f565b60405180910390fd5b6100ee816101dc60201b60201c565b507383be80020d1c72c8b18059bea5771f879ae1525760075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506109c46006819055506101803361015e61029f60201b60201c565b600a61016a9190610be0565b836101759190610c2a565b6102a760201b60201c565b735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f60085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050610cfb565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f6012905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610317575f6040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161030e9190610a5f565b60405180910390fd5b6103285f838361032c60201b60201c565b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361037c578060025f8282546103709190610c6b565b9250508190555061044a565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015610405578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016103fc93929190610cad565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610491578060025f82825403925050819055506104db565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516105389190610ce2565b60405180910390a3505050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6105a48261055e565b810181811067ffffffffffffffff821117156105c3576105c261056e565b5b80604052505050565b5f6105d5610545565b90506105e1828261059b565b919050565b5f67ffffffffffffffff821115610600576105ff61056e565b5b6106098261055e565b9050602081019050919050565b8281835e5f83830152505050565b5f610636610631846105e6565b6105cc565b9050828152602081018484840111156106525761065161055a565b5b61065d848285610616565b509392505050565b5f82601f83011261067957610678610556565b5b8151610689848260208601610624565b91505092915050565b5f819050919050565b6106a481610692565b81146106ae575f80fd5b50565b5f815190506106bf8161069b565b92915050565b5f805f606084860312156106dc576106db61054e565b5b5f84015167ffffffffffffffff8111156106f9576106f8610552565b5b61070586828701610665565b935050602084015167ffffffffffffffff81111561072657610725610552565b5b61073286828701610665565b9250506040610743868287016106b1565b9150509250925092565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061079b57607f821691505b6020821081036107ae576107ad610757565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026108107fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826107d5565b61081a86836107d5565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61085561085061084b84610692565b610832565b610692565b9050919050565b5f819050919050565b61086e8361083b565b61088261087a8261085c565b8484546107e1565b825550505050565b5f90565b61089661088a565b6108a1818484610865565b505050565b5b818110156108c4576108b95f8261088e565b6001810190506108a7565b5050565b601f821115610909576108da816107b4565b6108e3846107c6565b810160208510156108f2578190505b6109066108fe856107c6565b8301826108a6565b50505b505050565b5f82821c905092915050565b5f6109295f198460080261090e565b1980831691505092915050565b5f610941838361091a565b9150826002028217905092915050565b61095a8261074d565b67ffffffffffffffff8111156109735761097261056e565b5b61097d8254610784565b6109888282856108c8565b5f60209050601f8311600181146109b9575f84156109a7578287015190505b6109b18582610936565b865550610a18565b601f1984166109c7866107b4565b5f5b828110156109ee578489015182556001820191506020850194506020810190506109c9565b86831015610a0b5784890151610a07601f89168261091a565b8355505b6001600288020188555050505b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a4982610a20565b9050919050565b610a5981610a3f565b82525050565b5f602082019050610a725f830184610a50565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115610afa57808604811115610ad657610ad5610a78565b5b6001851615610ae55780820291505b8081029050610af385610aa5565b9450610aba565b94509492505050565b5f82610b125760019050610bcd565b81610b1f575f9050610bcd565b8160018114610b355760028114610b3f57610b6e565b6001915050610bcd565b60ff841115610b5157610b50610a78565b5b8360020a915084821115610b6857610b67610a78565b5b50610bcd565b5060208310610133831016604e8410600b8410161715610ba35782820a905083811115610b9e57610b9d610a78565b5b610bcd565b610bb08484846001610ab1565b92509050818404811115610bc757610bc6610a78565b5b81810290505b9392505050565b5f60ff82169050919050565b5f610bea82610692565b9150610bf583610bd4565b9250610c227fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610b03565b905092915050565b5f610c3482610692565b9150610c3f83610692565b9250828202610c4d81610692565b91508282048414831517610c6457610c63610a78565b5b5092915050565b5f610c7582610692565b9150610c8083610692565b9250828201905080821115610c9857610c97610a78565b5b92915050565b610ca781610692565b82525050565b5f606082019050610cc05f830186610a50565b610ccd6020830185610c9e565b610cda6040830184610c9e565b949350505050565b5f602082019050610cf55f830184610c9e565b92915050565b611f2680610d085f395ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c80638a8c523c116100b6578063a7f404e21161007a578063a7f404e214610344578063a9059cbb14610360578063c6d69a3014610390578063dd62ed3e146103ac578063ea414b28146103dc578063f2fde38b146103f857610140565b80638a8c523c146102b05780638da5cb5b146102ba57806395d89b41146102d85780639cece12e146102f6578063a766e06d1461032657610140565b80632dc0562d116101085780632dc0562d146101fe578063313ce5671461021c5780634ada218b1461023a57806359d0f7131461025857806370a0823114610276578063715018a6146102a657610140565b806306fdde0314610144578063095ea7b31461016257806318160ddd1461019257806323b872dd146101b057806324024efd146101e0575b5f80fd5b61014c610414565b604051610159919061163d565b60405180910390f35b61017c600480360381019061017791906116ee565b6104a4565b6040516101899190611746565b60405180910390f35b61019a6104c6565b6040516101a7919061176e565b60405180910390f35b6101ca60048036038101906101c59190611787565b6104cf565b6040516101d79190611746565b60405180910390f35b6101e8610561565b6040516101f5919061176e565b60405180910390f35b610206610567565b60405161021391906117e6565b60405180910390f35b61022461058c565b604051610231919061181a565b60405180910390f35b610242610594565b60405161024f9190611746565b60405180910390f35b6102606105a6565b60405161026d919061188e565b60405180910390f35b610290600480360381019061028b91906118a7565b6105cb565b60405161029d919061176e565b60405180910390f35b6102ae610610565b005b6102b8610623565b005b6102c26106c2565b6040516102cf91906117e6565b60405180910390f35b6102e06106ea565b6040516102ed919061163d565b60405180910390f35b610310600480360381019061030b91906118a7565b61077a565b60405161031d9190611746565b60405180910390f35b61032e610797565b60405161033b91906117e6565b60405180910390f35b61035e600480360381019061035991906118a7565b6107af565b005b61037a600480360381019061037591906116ee565b610953565b6040516103879190611746565b60405180910390f35b6103aa60048036038101906103a591906118d2565b610986565b005b6103c660048036038101906103c191906118fd565b610a14565b6040516103d3919061176e565b60405180910390f35b6103f660048036038101906103f191906118a7565b610a96565b005b610412600480360381019061040d91906118a7565b610b85565b005b60606003805461042390611968565b80601f016020809104026020016040519081016040528092919081815260200182805461044f90611968565b801561049a5780601f106104715761010080835404028352916020019161049a565b820191905f5260205f20905b81548152906001019060200180831161047d57829003601f168201915b5050505050905090565b5f806104ae610c09565b90506104bb818585610c10565b600191505092915050565b5f600254905090565b5f806104dc858585610c22565b90505f6104f0866104eb610c09565b610a14565b905083811015610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052c90611a08565b60405180910390fd5b61054986610541610c09565b868403610c10565b610554868684610f6c565b6001925050509392505050565b60065481565b60075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6012905090565b600a5f9054906101000a900460ff1681565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61061861105c565b6106215f6110e3565b565b61062b61105c565b600a5f9054906101000a900460ff161561067a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067190611a70565b60405180910390fd5b6001600a5f6101000a81548160ff0219169083151502179055507f799663458a5ef2936f7fa0c99b3336c69c25890f82974f04e811e5bb359186c760405160405180910390a1565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546106f990611968565b80601f016020809104026020016040519081016040528092919081815260200182805461072590611968565b80156107705780601f1061074757610100808354040283529160200191610770565b820191905f5260205f20905b81548152906001019060200180831161075357829003601f168201915b5050505050905090565b6009602052805f5260405f205f915054906101000a900460ff1681565b730f86d68d1ee0fa34895f40fc748014d72f83095181565b6107b761105c565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e6a4390530846040518363ffffffff1660e01b8152600401610814929190611a8e565b602060405180830381865afa15801561082f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108539190611ac9565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ba90611b3e565b60405180910390fd5b600160095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507f6cbc3ddc1459574fe063f423fa6a05d355dd80399b7381076415a2080e11562a8160405161094791906117e6565b60405180910390a15050565b5f80610967610960610c09565b8585610c22565b905061097b610974610c09565b8583610f6c565b600191505092915050565b61098e61105c565b6127108111156109d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ca90611ba6565b60405180910390fd5b806006819055507fbe89dc2f9769e9896808a0f0983380fed3225e0784b99b98d3eec9ccb501852881604051610a09919061176e565b60405180910390a150565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610a9e61105c565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b0c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0390611c34565b60405180910390fd5b8060075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507ea263b61aab5ebdcff20c4c0c74c2589ea5ab52149abde19eca17ad5221789981604051610b7a91906117e6565b60405180910390a150565b610b8d61105c565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610bfd575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610bf491906117e6565b60405180910390fd5b610c06816110e3565b50565b5f33905090565b610c1d83838360016111a6565b505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8890611c9c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cf690611d04565b60405180910390fd5b600a5f9054906101000a900460ff1680610d4b5750610d1c6106c2565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80610d885750610d596106c2565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b80610dd25750730f86d68d1ee0fa34895f40fc748014d72f83095173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80610e1c5750730f86d68d1ee0fa34895f40fc748014d72f83095173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b610e5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5290611d6c565b60405180910390fd5b5f60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015610ef25750730f86d68d1ee0fa34895f40fc748014d72f83095173ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15610f4f57610f20612710610f126006548661137590919063ffffffff16565b61138a90919063ffffffff16565b9050610f4e8560075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683610f6c565b5b610f62818461139f90919063ffffffff16565b9150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fdc575f6040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610fd391906117e6565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361104c575f6040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161104391906117e6565b60405180910390fd5b6110578383836113b4565b505050565b611064610c09565b73ffffffffffffffffffffffffffffffffffffffff166110826106c2565b73ffffffffffffffffffffffffffffffffffffffff16146110e1576110a5610c09565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016110d891906117e6565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611216575f6040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161120d91906117e6565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611286575f6040517f94280d6200000000000000000000000000000000000000000000000000000000815260040161127d91906117e6565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550801561136f578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051611366919061176e565b60405180910390a35b50505050565b5f81836113829190611db7565b905092915050565b5f81836113979190611e25565b905092915050565b5f81836113ac9190611e55565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611404578060025f8282546113f89190611e88565b925050819055506114d2565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561148d578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161148493929190611ebb565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611519578060025f8282540392505081905550611563565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115c0919061176e565b60405180910390a3505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61160f826115cd565b61161981856115d7565b93506116298185602086016115e7565b611632816115f5565b840191505092915050565b5f6020820190508181035f8301526116558184611605565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61168a82611661565b9050919050565b61169a81611680565b81146116a4575f80fd5b50565b5f813590506116b581611691565b92915050565b5f819050919050565b6116cd816116bb565b81146116d7575f80fd5b50565b5f813590506116e8816116c4565b92915050565b5f80604083850312156117045761170361165d565b5b5f611711858286016116a7565b9250506020611722858286016116da565b9150509250929050565b5f8115159050919050565b6117408161172c565b82525050565b5f6020820190506117595f830184611737565b92915050565b611768816116bb565b82525050565b5f6020820190506117815f83018461175f565b92915050565b5f805f6060848603121561179e5761179d61165d565b5b5f6117ab868287016116a7565b93505060206117bc868287016116a7565b92505060406117cd868287016116da565b9150509250925092565b6117e081611680565b82525050565b5f6020820190506117f95f8301846117d7565b92915050565b5f60ff82169050919050565b611814816117ff565b82525050565b5f60208201905061182d5f83018461180b565b92915050565b5f819050919050565b5f61185661185161184c84611661565b611833565b611661565b9050919050565b5f6118678261183c565b9050919050565b5f6118788261185d565b9050919050565b6118888161186e565b82525050565b5f6020820190506118a15f83018461187f565b92915050565b5f602082840312156118bc576118bb61165d565b5b5f6118c9848285016116a7565b91505092915050565b5f602082840312156118e7576118e661165d565b5b5f6118f4848285016116da565b91505092915050565b5f80604083850312156119135761191261165d565b5b5f611920858286016116a7565b9250506020611931858286016116a7565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061197f57607f821691505b6020821081036119925761199161193b565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f6119f26028836115d7565b91506119fd82611998565b604082019050919050565b5f6020820190508181035f830152611a1f816119e6565b9050919050565b7f54726164696e6720697320616c726561647920656e61626c65640000000000005f82015250565b5f611a5a601a836115d7565b9150611a6582611a26565b602082019050919050565b5f6020820190508181035f830152611a8781611a4e565b9050919050565b5f604082019050611aa15f8301856117d7565b611aae60208301846117d7565b9392505050565b5f81519050611ac381611691565b92915050565b5f60208284031215611ade57611add61165d565b5b5f611aeb84828501611ab5565b91505092915050565b7f556e6973776170207061697220646f6573206e6f7420657869737400000000005f82015250565b5f611b28601b836115d7565b9150611b3382611af4565b602082019050919050565b5f6020820190508181035f830152611b5581611b1c565b9050919050565b7f54617820726174652063616e6e6f7420657863656564203130302500000000005f82015250565b5f611b90601b836115d7565b9150611b9b82611b5c565b602082019050919050565b5f6020820190508181035f830152611bbd81611b84565b9050919050565b7f4e6577207461782077616c6c657420697320746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611c1e6022836115d7565b9150611c2982611bc4565b604082019050919050565b5f6020820190508181035f830152611c4b81611c12565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f206164647265737300005f82015250565b5f611c86601e836115d7565b9150611c9182611c52565b602082019050919050565b5f6020820190508181035f830152611cb381611c7a565b9050919050565b7f5472616e7366657220746f20746865207a65726f2061646472657373000000005f82015250565b5f611cee601c836115d7565b9150611cf982611cba565b602082019050919050565b5f6020820190508181035f830152611d1b81611ce2565b9050919050565b7f54726164696e67206e6f742079657420656e61626c65640000000000000000005f82015250565b5f611d566017836115d7565b9150611d6182611d22565b602082019050919050565b5f6020820190508181035f830152611d8381611d4a565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611dc1826116bb565b9150611dcc836116bb565b9250828202611dda816116bb565b91508282048414831517611df157611df0611d8a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611e2f826116bb565b9150611e3a836116bb565b925082611e4a57611e49611df8565b5b828204905092915050565b5f611e5f826116bb565b9150611e6a836116bb565b9250828203905081811115611e8257611e81611d8a565b5b92915050565b5f611e92826116bb565b9150611e9d836116bb565b9250828201905080821115611eb557611eb4611d8a565b5b92915050565b5f606082019050611ece5f8301866117d7565b611edb602083018561175f565b611ee8604083018461175f565b94935050505056fea264697066735822122047c343265c36a83a2d0b15375f6f182bab063007525d93d6dc67901e8851014964736f6c634300081a0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000001406f4000000000000000000000000000000000000000000000000000000000000000064d4f55544149000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000063630303531390000000000000000000000000000000000000000000000000000