[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": 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": "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": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedAmount", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedAmount", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "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": [ { "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" } ]
608060405234801562000010575f80fd5b506040518060400160405280601c81526020017ff09f9a804d4f4f4ef09f9a804d4f4f4ef09f9a804d4f4f4ef09f9a80000000008152505f908162000056919062000411565b506040518060400160405280600c81526020017ff09f9a804d4f4f4ef09f9a800000000000000000000000000000000000000000815250600190816200009d919062000411565b50601260025f6101000a81548160ff021916908360ff16021790555060025f9054906101000a900460ff1660ff166001620000d9919062000672565b6d181c0c3789d6955a747440000000620000f49190620006c2565b60038190555060035460045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516200019f91906200071d565b60405180910390a362000738565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200022957607f821691505b6020821081036200023f576200023e620001e4565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620002a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000266565b620002af868362000266565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620002f9620002f3620002ed84620002c7565b620002d0565b620002c7565b9050919050565b5f819050919050565b6200031483620002d9565b6200032c620003238262000300565b84845462000272565b825550505050565b5f90565b6200034262000334565b6200034f81848462000309565b505050565b5b8181101562000376576200036a5f8262000338565b60018101905062000355565b5050565b601f821115620003c5576200038f8162000245565b6200039a8462000257565b81016020851015620003aa578190505b620003c2620003b98562000257565b83018262000354565b50505b505050565b5f82821c905092915050565b5f620003e75f1984600802620003ca565b1980831691505092915050565b5f620004018383620003d6565b9150826002028217905092915050565b6200041c82620001ad565b67ffffffffffffffff811115620004385762000437620001b7565b5b62000444825462000211565b620004518282856200037a565b5f60209050601f83116001811462000487575f841562000472578287015190505b6200047e8582620003f4565b865550620004ed565b601f198416620004978662000245565b5f5b82811015620004c05784890151825560018201915060208501945060208101905062000499565b86831015620004e05784890151620004dc601f891682620003d6565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200057f57808604811115620005575762000556620004f5565b5b6001851615620005675780820291505b8081029050620005778562000522565b945062000537565b94509492505050565b5f826200059957600190506200066b565b81620005a8575f90506200066b565b8160018114620005c15760028114620005cc5762000602565b60019150506200066b565b60ff841115620005e157620005e0620004f5565b5b8360020a915084821115620005fb57620005fa620004f5565b5b506200066b565b5060208310610133831016604e8410600b84101617156200063c5782820a905083811115620006365762000635620004f5565b5b6200066b565b6200064b84848460016200052e565b92509050818404811115620006655762000664620004f5565b5b81810290505b9392505050565b5f6200067e82620002c7565b91506200068b83620002c7565b9250620006ba7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000588565b905092915050565b5f620006ce82620002c7565b9150620006db83620002c7565b9250828202620006eb81620002c7565b91508282048414831517620007055762000704620004f5565b5b5092915050565b6200071781620002c7565b82525050565b5f602082019050620007325f8301846200070c565b92915050565b61123180620007465f395ff3fe608060405234801561000f575f80fd5b50600436106100a7575f3560e01c8063395093511161006f578063395093511461016557806370a082311461019557806395d89b41146101c5578063a457c2d7146101e3578063a9059cbb14610213578063dd62ed3e14610243576100a7565b806306fdde03146100ab578063095ea7b3146100c957806318160ddd146100f957806323b872dd14610117578063313ce56714610147575b5f80fd5b6100b3610273565b6040516100c09190610bb0565b60405180910390f35b6100e360048036038101906100de9190610c61565b6102fe565b6040516100f09190610cb9565b60405180910390f35b610101610314565b60405161010e9190610ce1565b60405180910390f35b610131600480360381019061012c9190610cfa565b61031a565b60405161013e9190610cb9565b60405180910390f35b61014f6103bf565b60405161015c9190610d65565b60405180910390f35b61017f600480360381019061017a9190610c61565b6103d1565b60405161018c9190610cb9565b60405180910390f35b6101af60048036038101906101aa9190610d7e565b61046a565b6040516101bc9190610ce1565b60405180910390f35b6101cd6104b0565b6040516101da9190610bb0565b60405180910390f35b6101fd60048036038101906101f89190610c61565b61053c565b60405161020a9190610cb9565b60405180910390f35b61022d60048036038101906102289190610c61565b61061d565b60405161023a9190610cb9565b60405180910390f35b61025d60048036038101906102589190610da9565b610633565b60405161026a9190610ce1565b60405180910390f35b5f805461027f90610e14565b80601f01602080910402602001604051908101604052809291908181526020018280546102ab90610e14565b80156102f65780601f106102cd576101008083540402835291602001916102f6565b820191905f5260205f20905b8154815290600101906020018083116102d957829003601f168201915b505050505081565b5f61030a3384846106b5565b6001905092915050565b60035481565b5f610326848484610878565b6103b484338460055f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546103af9190610e71565b6106b5565b600190509392505050565b60025f9054906101000a900460ff1681565b5f61046033848460055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461045b9190610ea4565b6106b5565b6001905092915050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b600180546104bd90610e14565b80601f01602080910402602001604051908101604052809291908181526020018280546104e990610e14565b80156105345780601f1061050b57610100808354040283529160200191610534565b820191905f5260205f20905b81548152906001019060200180831161051757829003601f168201915b505050505081565b5f8060055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156105fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f390610f47565b60405180910390fd5b6106123385858461060d9190610e71565b6106b5565b600191505092915050565b5f610629338484610878565b6001905092915050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071a90610faf565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610791576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078890611017565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161086b9190610ce1565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108dd9061107f565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610954576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094b906110e7565b60405180910390fd5b5f8111610996576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098d90611175565b60405180910390fd5b8060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610a16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0d906111dd565b60405180910390fd5b8060045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610a629190610e71565b925050819055508060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610ab59190610ea4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610b199190610ce1565b60405180910390a3505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015610b5d578082015181840152602081019050610b42565b5f8484015250505050565b5f601f19601f8301169050919050565b5f610b8282610b26565b610b8c8185610b30565b9350610b9c818560208601610b40565b610ba581610b68565b840191505092915050565b5f6020820190508181035f830152610bc88184610b78565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610bfd82610bd4565b9050919050565b610c0d81610bf3565b8114610c17575f80fd5b50565b5f81359050610c2881610c04565b92915050565b5f819050919050565b610c4081610c2e565b8114610c4a575f80fd5b50565b5f81359050610c5b81610c37565b92915050565b5f8060408385031215610c7757610c76610bd0565b5b5f610c8485828601610c1a565b9250506020610c9585828601610c4d565b9150509250929050565b5f8115159050919050565b610cb381610c9f565b82525050565b5f602082019050610ccc5f830184610caa565b92915050565b610cdb81610c2e565b82525050565b5f602082019050610cf45f830184610cd2565b92915050565b5f805f60608486031215610d1157610d10610bd0565b5b5f610d1e86828701610c1a565b9350506020610d2f86828701610c1a565b9250506040610d4086828701610c4d565b9150509250925092565b5f60ff82169050919050565b610d5f81610d4a565b82525050565b5f602082019050610d785f830184610d56565b92915050565b5f60208284031215610d9357610d92610bd0565b5b5f610da084828501610c1a565b91505092915050565b5f8060408385031215610dbf57610dbe610bd0565b5b5f610dcc85828601610c1a565b9250506020610ddd85828601610c1a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610e2b57607f821691505b602082108103610e3e57610e3d610de7565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610e7b82610c2e565b9150610e8683610c2e565b9250828203905081811115610e9e57610e9d610e44565b5b92915050565b5f610eae82610c2e565b9150610eb983610c2e565b9250828201905080821115610ed157610ed0610e44565b5b92915050565b7f416c6c6f77616e63652063616e6e6f74206265206465637265617365642062655f8201527f6c6f77207a65726f000000000000000000000000000000000000000000000000602082015250565b5f610f31602883610b30565b9150610f3c82610ed7565b604082019050919050565b5f6020820190508181035f830152610f5e81610f25565b9050919050565b7f417070726f76652066726f6d20746865207a65726f20616464726573730000005f82015250565b5f610f99601d83610b30565b9150610fa482610f65565b602082019050919050565b5f6020820190508181035f830152610fc681610f8d565b9050919050565b7f417070726f766520746f20746865207a65726f206164647265737300000000005f82015250565b5f611001601b83610b30565b915061100c82610fcd565b602082019050919050565b5f6020820190508181035f83015261102e81610ff5565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f206164647265737300005f82015250565b5f611069601e83610b30565b915061107482611035565b602082019050919050565b5f6020820190508181035f8301526110968161105d565b9050919050565b7f5472616e7366657220746f20746865207a65726f2061646472657373000000005f82015250565b5f6110d1601c83610b30565b91506110dc8261109d565b602082019050919050565b5f6020820190508181035f8301526110fe816110c5565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61115f602983610b30565b915061116a82611105565b604082019050919050565b5f6020820190508181035f83015261118c81611153565b9050919050565b7f496e73756666696369656e742062616c616e63650000000000000000000000005f82015250565b5f6111c7601483610b30565b91506111d282611193565b602082019050919050565b5f6020820190508181035f8301526111f4816111bb565b905091905056fea264697066735822122040455484b494e67368eea8268f98231ffeba14f9552927e068ed0493b089f42e64736f6c63430008180033