Loading
[ { "inputs": [ { "internalType": "uint256", "name": "initialTotalSupply", "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": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "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": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "newState", "type": "bool" } ], "name": "excludeFromFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "newState", "type": "bool" } ], "name": "excludeFromMaxTx", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bool", "name": "newState", "type": "bool" } ], "name": "excludeFromMaxWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isExcludedFromFee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isExcludedFromMaxTx", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "isExcludedFromMaxWallet", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxTxAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxWalletAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "router", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "sellFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newPercentage", "type": "uint256" } ], "name": "setMaxTxAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newPercentage", "type": "uint256" } ], "name": "setMaxWalletAmount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newRouter", "type": "address" } ], "name": "setRouter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newFee", "type": "uint256" } ], "name": "setSellFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newFee", "type": "uint256" } ], "name": "setTransferFee", "outputs": [], "stateMutability": "nonpayable", "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": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "transferFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "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": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
6080604052601460075560146008553480156200001a575f80fd5b50604051620033f9380380620033f9833981810160405281019062000040919062000b41565b336040518060400160405280600d81526020017f54776974536372697074696f6e000000000000000000000000000000000000008152506040518060400160405280600581526020017f58524332300000000000000000000000000000000000000000000000000000008152508160039081620000be919062000dcc565b508060049081620000d0919062000dcc565b5050505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160362000146575f6040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200013d919062000ef3565b60405180910390fd5b6200015781620004a960201b60201c565b506001600b5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f8073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f8073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550670de0b6b3a7640000816200046b919062000f3b565b905060646002826200047e919062000f3b565b6200048a919062000fb2565b600a81905550620004a233826200056c60201b60201c565b50620011fc565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620005df575f6040517fec442f05000000000000000000000000000000000000000000000000000000008152600401620005d6919062000ef3565b60405180910390fd5b620005f25f8383620005f660201b60201c565b5050565b600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166200068e576009548111156200068d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000684906200106d565b60405180910390fd5b5b600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16620007dc5760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000789575f600754111562000783575f60646007548362000750919062000f3b565b6200075c919062000fb2565b905080826200076c91906200108d565b9150620007818430836200089c60201b60201c565b505b620007db565b5f6008541115620007da575f606460085483620007a7919062000f3b565b620007b3919062000fb2565b90508082620007c391906200108d565b9150620007d88430836200089c60201b60201c565b505b5b5b620007ef8383836200089c60201b60201c565b600d5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166200089757600a54620008528362000ac060201b60201c565b111562000896576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200088d906200113b565b60405180910390fd5b5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620008f0578060025f828254620008e391906200115b565b92505081905550620009c1565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156200097c578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016200097393929190620011a6565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a0a578060025f828254039250508190555062000a54565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000ab39190620011e1565b60405180910390a3505050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b5f80fd5b5f819050919050565b62000b1d8162000b09565b811462000b28575f80fd5b50565b5f8151905062000b3b8162000b12565b92915050565b5f6020828403121562000b595762000b5862000b05565b5b5f62000b688482850162000b2b565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168062000bed57607f821691505b60208210810362000c035762000c0262000ba8565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830262000c677fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000c2a565b62000c73868362000c2a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f62000cb462000cae62000ca88462000b09565b62000c8b565b62000b09565b9050919050565b5f819050919050565b62000ccf8362000c94565b62000ce762000cde8262000cbb565b84845462000c36565b825550505050565b5f90565b62000cfd62000cef565b62000d0a81848462000cc4565b505050565b5b8181101562000d315762000d255f8262000cf3565b60018101905062000d10565b5050565b601f82111562000d805762000d4a8162000c09565b62000d558462000c1b565b8101602085101562000d65578190505b62000d7d62000d748562000c1b565b83018262000d0f565b50505b505050565b5f82821c905092915050565b5f62000da25f198460080262000d85565b1980831691505092915050565b5f62000dbc838362000d91565b9150826002028217905092915050565b62000dd78262000b71565b67ffffffffffffffff81111562000df35762000df262000b7b565b5b62000dff825462000bd5565b62000e0c82828562000d35565b5f60209050601f83116001811462000e42575f841562000e2d578287015190505b62000e39858262000daf565b86555062000ea8565b601f19841662000e528662000c09565b5f5b8281101562000e7b5784890151825560018201915060208501945060208101905062000e54565b8683101562000e9b578489015162000e97601f89168262000d91565b8355505b6001600288020188555050505b505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000edb8262000eb0565b9050919050565b62000eed8162000ecf565b82525050565b5f60208201905062000f085f83018462000ee2565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f62000f478262000b09565b915062000f548362000b09565b925082820262000f648162000b09565b9150828204841483151762000f7e5762000f7d62000f0e565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f62000fbe8262000b09565b915062000fcb8362000b09565b92508262000fde5762000fdd62000f85565b5b828204905092915050565b5f82825260208201905092915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206d6178545f8201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b5f6200105560288362000fe9565b9150620010628262000ff9565b604082019050919050565b5f6020820190508181035f830152620010868162001047565b9050919050565b5f620010998262000b09565b9150620010a68362000b09565b9250828203905081811115620010c157620010c062000f0e565b5b92915050565b7f57616c6c65742062616c616e6365206578636565647320746865206d617857615f8201527f6c6c6574416d6f756e742e000000000000000000000000000000000000000000602082015250565b5f62001123602b8362000fe9565b91506200113082620010c7565b604082019050919050565b5f6020820190508181035f830152620011548162001115565b9050919050565b5f620011678262000b09565b9150620011748362000b09565b92508282019050808211156200118f576200118e62000f0e565b5b92915050565b620011a08162000b09565b82525050565b5f606082019050620011bb5f83018662000ee2565b620011ca602083018562001195565b620011d9604083018462001195565b949350505050565b5f602082019050620011f65f83018462001195565b92915050565b6121ef806200120a5f395ff3fe608060405234801561000f575f80fd5b50600436106101cd575f3560e01c80638da5cb5b11610102578063d2fcc001116100a0578063ec28438a1161006f578063ec28438a1461052d578063f2fde38b14610549578063f3fef3a314610565578063f887ea4014610581576101cd565b8063d2fcc001146104a9578063d4c989d3146104c5578063dd62ed3e146104e1578063df8408fe14610511576101cd565b8063a9059cbb116100dc578063a9059cbb14610421578063aa4bde2814610451578063acb2ad6f1461046f578063c0d786551461048d576101cd565b80638da5cb5b146103c95780638f02bb5b146103e757806395d89b4114610403576101cd565b80635342acb41161016f57806370a082311161014957806370a0823114610355578063715018a6146103855780638b4cee081461038f5780638c0b5e22146103ab576101cd565b80635342acb4146102c5578063658c27a9146102f55780636dd3d39f14610325576101cd565b806323b872dd116101ab57806323b872dd1461023d57806327a14fc21461026d5780632b14ca5614610289578063313ce567146102a7576101cd565b806306fdde03146101d1578063095ea7b3146101ef57806318160ddd1461021f575b5f80fd5b6101d961059f565b6040516101e69190611922565b60405180910390f35b610209600480360381019061020491906119d3565b61062f565b6040516102169190611a2b565b60405180910390f35b610227610651565b6040516102349190611a53565b60405180910390f35b61025760048036038101906102529190611a6c565b61065a565b6040516102649190611a2b565b60405180910390f35b61028760048036038101906102829190611abc565b610688565b005b6102916106fc565b60405161029e9190611a53565b60405180910390f35b6102af610702565b6040516102bc9190611b02565b60405180910390f35b6102df60048036038101906102da9190611b1b565b61070a565b6040516102ec9190611a2b565b60405180910390f35b61030f600480360381019061030a9190611b1b565b610727565b60405161031c9190611a2b565b60405180910390f35b61033f600480360381019061033a9190611b1b565b610744565b60405161034c9190611a2b565b60405180910390f35b61036f600480360381019061036a9190611b1b565b610761565b60405161037c9190611a53565b60405180910390f35b61038d6107a6565b005b6103a960048036038101906103a49190611abc565b6107b9565b005b6103b361080f565b6040516103c09190611a53565b60405180910390f35b6103d1610815565b6040516103de9190611b55565b60405180910390f35b61040160048036038101906103fc9190611abc565b61083d565b005b61040b610893565b6040516104189190611922565b60405180910390f35b61043b600480360381019061043691906119d3565b610923565b6040516104489190611a2b565b60405180910390f35b610459610945565b6040516104669190611a53565b60405180910390f35b61047761094b565b6040516104849190611a53565b60405180910390f35b6104a760048036038101906104a29190611b1b565b610951565b005b6104c360048036038101906104be9190611b98565b610c89565b005b6104df60048036038101906104da9190611b98565b610ce9565b005b6104fb60048036038101906104f69190611bd6565b610d49565b6040516105089190611a53565b60405180910390f35b61052b60048036038101906105269190611b98565b610dcb565b005b61054760048036038101906105429190611abc565b610e2b565b005b610563600480360381019061055e9190611b1b565b610e9e565b005b61057f600480360381019061057a91906119d3565b610f22565b005b610589610f39565b6040516105969190611b55565b60405180910390f35b6060600380546105ae90611c41565b80601f01602080910402602001604051908101604052809291908181526020018280546105da90611c41565b80156106255780601f106105fc57610100808354040283529160200191610625565b820191905f5260205f20905b81548152906001019060200180831161060857829003601f168201915b5050505050905090565b5f80610639610f5e565b9050610646818585610f65565b600191505092915050565b5f600254905090565b5f80610664610f5e565b9050610671858285610f77565b61067c858585611009565b60019150509392505050565b6106906110f9565b601481116106d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ca90611ce1565b60405180910390fd5b6103e8816106df610651565b6106e99190611d2c565b6106f39190611d9a565b600a8190555050565b60075481565b5f6012905090565b600b602052805f5260405f205f915054906101000a900460ff1681565b600c602052805f5260405f205f915054906101000a900460ff1681565b600d602052805f5260405f205f915054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6107ae6110f9565b6107b75f611180565b565b6107c16110f9565b6063811115610805576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fc90611e3a565b60405180910390fd5b8060078190555050565b60095481565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6108456110f9565b6014811115610889576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088090611ec8565b60405180910390fd5b8060088190555050565b6060600480546108a290611c41565b80601f01602080910402602001604051908101604052809291908181526020018280546108ce90611c41565b80156109195780601f106108f057610100808354040283529160200191610919565b820191905f5260205f20905b8154815290600101906020018083116108fc57829003601f168201915b5050505050905090565b5f8061092d610f5e565b905061093a818585611009565b600191505092915050565b600a5481565b60085481565b6109596110f9565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109df90611f56565b60405180910390fd5b5f600b5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505f600c5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505f600d5f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508060065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610c916110f9565b80600d5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610cf16110f9565b80600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610dd36110f9565b80600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610e336110f9565b5f8111610e75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6c90611fe4565b60405180910390fd5b6103e881610e81610651565b610e8b9190611d2c565b610e959190611d9a565b60098190555050565b610ea66110f9565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f16575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610f0d9190611b55565b60405180910390fd5b610f1f81611180565b50565b610f2a6110f9565b610f35308383611243565b5050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f33905090565b610f72838383600161145c565b505050565b5f610f828484610d49565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146110035781811015610ff4578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610feb93929190612002565b60405180910390fd5b61100284848484035f61145c565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611079575f6040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016110709190611b55565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110e9575f6040517fec442f050000000000000000000000000000000000000000000000000000000081526004016110e09190611b55565b60405180910390fd5b6110f483838361162b565b505050565b611101610f5e565b73ffffffffffffffffffffffffffffffffffffffff1661111f610815565b73ffffffffffffffffffffffffffffffffffffffff161461117e57611142610f5e565b6040517f118cdaa70000000000000000000000000000000000000000000000000000000081526004016111759190611b55565b60405180910390fd5b565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611293578060025f8282546112879190612037565b92505081905550611361565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561131c578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161131393929190612002565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036113a8578060025f82825403925050819055506113f2565b805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161144f9190611a53565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036114cc575f6040517fe602df050000000000000000000000000000000000000000000000000000000081526004016114c39190611b55565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361153c575f6040517f94280d620000000000000000000000000000000000000000000000000000000081526004016115339190611b55565b60405180910390fd5b8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508015611625578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161161c9190611a53565b60405180910390a35b50505050565b600c5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166116bf576009548111156116be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b5906120da565b60405180910390fd5b5b600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166117ec5760065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117a8575f60075411156117a3575f60646007548361177c9190611d2c565b6117869190611d9a565b9050808261179491906120f8565b91506117a1843083611243565b505b6117eb565b5f60085411156117ea575f6064600854836117c39190611d2c565b6117cd9190611d9a565b905080826117db91906120f8565b91506117e8843083611243565b505b5b5b6117f7838383611243565b600d5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661189357600a5461185183610761565b1115611892576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118899061219b565b60405180910390fd5b5b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156118cf5780820151818401526020810190506118b4565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6118f482611898565b6118fe81856118a2565b935061190e8185602086016118b2565b611917816118da565b840191505092915050565b5f6020820190508181035f83015261193a81846118ea565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61196f82611946565b9050919050565b61197f81611965565b8114611989575f80fd5b50565b5f8135905061199a81611976565b92915050565b5f819050919050565b6119b2816119a0565b81146119bc575f80fd5b50565b5f813590506119cd816119a9565b92915050565b5f80604083850312156119e9576119e8611942565b5b5f6119f68582860161198c565b9250506020611a07858286016119bf565b9150509250929050565b5f8115159050919050565b611a2581611a11565b82525050565b5f602082019050611a3e5f830184611a1c565b92915050565b611a4d816119a0565b82525050565b5f602082019050611a665f830184611a44565b92915050565b5f805f60608486031215611a8357611a82611942565b5b5f611a908682870161198c565b9350506020611aa18682870161198c565b9250506040611ab2868287016119bf565b9150509250925092565b5f60208284031215611ad157611ad0611942565b5b5f611ade848285016119bf565b91505092915050565b5f60ff82169050919050565b611afc81611ae7565b82525050565b5f602082019050611b155f830184611af3565b92915050565b5f60208284031215611b3057611b2f611942565b5b5f611b3d8482850161198c565b91505092915050565b611b4f81611965565b82525050565b5f602082019050611b685f830184611b46565b92915050565b611b7781611a11565b8114611b81575f80fd5b50565b5f81359050611b9281611b6e565b92915050565b5f8060408385031215611bae57611bad611942565b5b5f611bbb8582860161198c565b9250506020611bcc85828601611b84565b9150509250929050565b5f8060408385031215611bec57611beb611942565b5b5f611bf98582860161198c565b9250506020611c0a8582860161198c565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611c5857607f821691505b602082108103611c6b57611c6a611c14565b5b50919050565b7f4d61782077616c6c657420616d6f756e74206d757374206265206772656174655f8201527f72207468616e2032252e00000000000000000000000000000000000000000000602082015250565b5f611ccb602a836118a2565b9150611cd682611c71565b604082019050919050565b5f6020820190508181035f830152611cf881611cbf565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611d36826119a0565b9150611d41836119a0565b9250828202611d4f816119a0565b91508282048414831517611d6657611d65611cff565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611da4826119a0565b9150611daf836119a0565b925082611dbf57611dbe611d6d565b5b828204905092915050565b7f53656c6c206665652063616e6e6f742062652067726561746572207468616e205f8201527f3939252e00000000000000000000000000000000000000000000000000000000602082015250565b5f611e246024836118a2565b9150611e2f82611dca565b604082019050919050565b5f6020820190508181035f830152611e5181611e18565b9050919050565b7f5472616e73666572206665652063616e6e6f74206265206772656174657220745f8201527f68616e203939252e000000000000000000000000000000000000000000000000602082015250565b5f611eb26028836118a2565b9150611ebd82611e58565b604082019050919050565b5f6020820190508181035f830152611edf81611ea6565b9050919050565b7f54686520726f7574657220616c726561647920686173207468617420616464725f8201527f6573732e00000000000000000000000000000000000000000000000000000000602082015250565b5f611f406024836118a2565b9150611f4b82611ee6565b604082019050919050565b5f6020820190508181035f830152611f6d81611f34565b9050919050565b7f4d617820747820616d6f756e74206d75737420626520677265617465722074685f8201527f616e20302e31252e000000000000000000000000000000000000000000000000602082015250565b5f611fce6028836118a2565b9150611fd982611f74565b604082019050919050565b5f6020820190508181035f830152611ffb81611fc2565b9050919050565b5f6060820190506120155f830186611b46565b6120226020830185611a44565b61202f6040830184611a44565b949350505050565b5f612041826119a0565b915061204c836119a0565b925082820190508082111561206457612063611cff565b5b92915050565b7f5472616e7366657220616d6f756e74206578636565647320746865206d6178545f8201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b5f6120c46028836118a2565b91506120cf8261206a565b604082019050919050565b5f6020820190508181035f8301526120f1816120b8565b9050919050565b5f612102826119a0565b915061210d836119a0565b925082820390508181111561212557612124611cff565b5b92915050565b7f57616c6c65742062616c616e6365206578636565647320746865206d617857615f8201527f6c6c6574416d6f756e742e000000000000000000000000000000000000000000602082015250565b5f612185602b836118a2565b91506121908261212b565b604082019050919050565b5f6020820190508181035f8301526121b281612179565b905091905056fea2646970667358221220bf5a57d31e12ba51ff1a26a4006fdab3e2e17f9e4ba18de27dd98e6a5276f44f64736f6c634300081400330000000000000000000000000000000000000000000000000000000001406f40