[ { "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": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burnByOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "tokenName", "type": "string" }, { "internalType": "string", "name": "tokenSymbol", "type": "string" }, { "internalType": "uint256", "name": "initialSupply", "type": "uint256" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "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" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
6080604052348015600e575f80fd5b506120108061001c5f395ff3fe608060405234801561000f575f80fd5b50600436106100e8575f3560e01c806342966c681161008a578063a9059cbb11610064578063a9059cbb14610248578063b119490e14610278578063dd62ed3e14610294578063f2fde38b146102c4576100e8565b806342966c68146101de57806370a08231146101fa57806395d89b411461022a576100e8565b806318160ddd116100c657806318160ddd1461015657806323b872dd14610174578063313ce567146101a457806340c10f19146101c2576100e8565b806306fdde03146100ec578063095ea7b31461010a578063111a18d31461013a575b5f80fd5b6100f46102e0565b6040516101019190611229565b60405180910390f35b610124600480360381019061011f91906112e7565b61036b565b604051610131919061133f565b60405180910390f35b610154600480360381019061014f91906112e7565b610381565b005b61015e61041e565b60405161016b9190611367565b60405180910390f35b61018e60048036038101906101899190611380565b610427565b60405161019b919061133f565b60405180910390f35b6101ac6104cc565b6040516101b991906113eb565b60405180910390f35b6101dc60048036038101906101d791906112e7565b6104de565b005b6101f860048036038101906101f39190611404565b61057b565b005b610214600480360381019061020f919061142f565b610588565b6040516102219190611367565b60405180910390f35b6102326105ce565b60405161023f9190611229565b60405180910390f35b610262600480360381019061025d91906112e7565b61065a565b60405161026f919061133f565b60405180910390f35b610292600480360381019061028d9190611586565b610670565b005b6102ae60048036038101906102a9919061160e565b610849565b6040516102bb9190611367565b60405180910390f35b6102de60048036038101906102d9919061142f565b6108cb565b005b5f80546102ec90611679565b80601f016020809104026020016040519081016040528092919081815260200182805461031890611679565b80156103635780601f1061033a57610100808354040283529160200191610363565b820191905f5260205f20905b81548152906001019060200180831161034657829003601f168201915b505050505081565b5f610377338484610a86565b6001905092915050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610410576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610407906116f3565b60405180910390fd5b61041a8282610c49565b5050565b5f600354905090565b5f610433848484610e0b565b6104c184338460065f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546104bc919061173e565b610a86565b600190509392505050565b60025f9054906101000a900460ff1681565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461056d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610564906116f3565b60405180910390fd5b6105778282611077565b5050565b6105853382610c49565b50565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b600180546105db90611679565b80601f016020809104026020016040519081016040528092919081815260200182805461060790611679565b80156106525780601f1061062957610100808354040283529160200191610652565b820191905f5260205f20905b81548152906001019060200180831161063557829003601f168201915b505050505081565b5f610666338484610e0b565b6001905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff1660045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106f6906117bb565b60405180910390fd5b825f908161070d9190611976565b50816001908161071d9190611976565b50601260025f6101000a81548160ff021916908360ff1602179055503360045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107c960045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900460ff16600a6107b99190611b74565b836107c49190611bbe565b611077565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505050565b5f60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461095a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610951906116f3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036109c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bf90611c49565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610af4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aeb90611cb1565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990611d19565b60405180910390fd5b8060065f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c3c9190611367565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cae90611d81565b60405180910390fd5b8060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610d37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2e90611de9565b60405180910390fd5b8060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610d83919061173e565b925050819055508060035f828254610d9b919061173e565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610dff9190611367565b60405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7090611e51565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ee7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ede90611eb9565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610f67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5e90611f21565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610fb3919061173e565b925050819055508060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546110069190611f3f565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161106a9190611367565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110dc90611fbc565b60405180910390fd5b8060035f8282546110f69190611f3f565b925050819055508060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546111499190611f3f565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111ad9190611367565b60405180910390a35050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6111fb826111b9565b61120581856111c3565b93506112158185602086016111d3565b61121e816111e1565b840191505092915050565b5f6020820190508181035f83015261124181846111f1565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6112838261125a565b9050919050565b61129381611279565b811461129d575f80fd5b50565b5f813590506112ae8161128a565b92915050565b5f819050919050565b6112c6816112b4565b81146112d0575f80fd5b50565b5f813590506112e1816112bd565b92915050565b5f80604083850312156112fd576112fc611252565b5b5f61130a858286016112a0565b925050602061131b858286016112d3565b9150509250929050565b5f8115159050919050565b61133981611325565b82525050565b5f6020820190506113525f830184611330565b92915050565b611361816112b4565b82525050565b5f60208201905061137a5f830184611358565b92915050565b5f805f6060848603121561139757611396611252565b5b5f6113a4868287016112a0565b93505060206113b5868287016112a0565b92505060406113c6868287016112d3565b9150509250925092565b5f60ff82169050919050565b6113e5816113d0565b82525050565b5f6020820190506113fe5f8301846113dc565b92915050565b5f6020828403121561141957611418611252565b5b5f611426848285016112d3565b91505092915050565b5f6020828403121561144457611443611252565b5b5f611451848285016112a0565b91505092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611498826111e1565b810181811067ffffffffffffffff821117156114b7576114b6611462565b5b80604052505050565b5f6114c9611249565b90506114d5828261148f565b919050565b5f67ffffffffffffffff8211156114f4576114f3611462565b5b6114fd826111e1565b9050602081019050919050565b828183375f83830152505050565b5f61152a611525846114da565b6114c0565b9050828152602081018484840111156115465761154561145e565b5b61155184828561150a565b509392505050565b5f82601f83011261156d5761156c61145a565b5b813561157d848260208601611518565b91505092915050565b5f805f6060848603121561159d5761159c611252565b5b5f84013567ffffffffffffffff8111156115ba576115b9611256565b5b6115c686828701611559565b935050602084013567ffffffffffffffff8111156115e7576115e6611256565b5b6115f386828701611559565b9250506040611604868287016112d3565b9150509250925092565b5f806040838503121561162457611623611252565b5b5f611631858286016112a0565b9250506020611642858286016112a0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061169057607f821691505b6020821081036116a3576116a261164c565b5b50919050565b7f43616c6c6572206973206e6f7420746865206f776e65720000000000000000005f82015250565b5f6116dd6017836111c3565b91506116e8826116a9565b602082019050919050565b5f6020820190508181035f83015261170a816116d1565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611748826112b4565b9150611753836112b4565b925082820390508181111561176b5761176a611711565b5b92915050565b7f416c726561647920696e697469616c697a6564000000000000000000000000005f82015250565b5f6117a56013836111c3565b91506117b082611771565b602082019050919050565b5f6020820190508181035f8301526117d281611799565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026118357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826117fa565b61183f86836117fa565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61187a611875611870846112b4565b611857565b6112b4565b9050919050565b5f819050919050565b61189383611860565b6118a761189f82611881565b848454611806565b825550505050565b5f90565b6118bb6118af565b6118c681848461188a565b505050565b5b818110156118e9576118de5f826118b3565b6001810190506118cc565b5050565b601f82111561192e576118ff816117d9565b611908846117eb565b81016020851015611917578190505b61192b611923856117eb565b8301826118cb565b50505b505050565b5f82821c905092915050565b5f61194e5f1984600802611933565b1980831691505092915050565b5f611966838361193f565b9150826002028217905092915050565b61197f826111b9565b67ffffffffffffffff81111561199857611997611462565b5b6119a28254611679565b6119ad8282856118ed565b5f60209050601f8311600181146119de575f84156119cc578287015190505b6119d6858261195b565b865550611a3d565b601f1984166119ec866117d9565b5f5b82811015611a13578489015182556001820191506020850194506020810190506119ee565b86831015611a305784890151611a2c601f89168261193f565b8355505b6001600288020188555050505b505050505050565b5f8160011c9050919050565b5f808291508390505b6001851115611a9a57808604811115611a7657611a75611711565b5b6001851615611a855780820291505b8081029050611a9385611a45565b9450611a5a565b94509492505050565b5f82611ab25760019050611b6d565b81611abf575f9050611b6d565b8160018114611ad55760028114611adf57611b0e565b6001915050611b6d565b60ff841115611af157611af0611711565b5b8360020a915084821115611b0857611b07611711565b5b50611b6d565b5060208310610133831016604e8410600b8410161715611b435782820a905083811115611b3e57611b3d611711565b5b611b6d565b611b508484846001611a51565b92509050818404811115611b6757611b66611711565b5b81810290505b9392505050565b5f611b7e826112b4565b9150611b89836113d0565b9250611bb67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611aa3565b905092915050565b5f611bc8826112b4565b9150611bd3836112b4565b9250828202611be1816112b4565b91508282048414831517611bf857611bf7611711565b5b5092915050565b7f4e6577206f776e657220697320746865207a65726f20616464726573730000005f82015250565b5f611c33601d836111c3565b9150611c3e82611bff565b602082019050919050565b5f6020820190508181035f830152611c6081611c27565b9050919050565b7f417070726f76652066726f6d20746865207a65726f20616464726573730000005f82015250565b5f611c9b601d836111c3565b9150611ca682611c67565b602082019050919050565b5f6020820190508181035f830152611cc881611c8f565b9050919050565b7f417070726f766520746f20746865207a65726f206164647265737300000000005f82015250565b5f611d03601b836111c3565b9150611d0e82611ccf565b602082019050919050565b5f6020820190508181035f830152611d3081611cf7565b9050919050565b7f4275726e2066726f6d20746865207a65726f20616464726573730000000000005f82015250565b5f611d6b601a836111c3565b9150611d7682611d37565b602082019050919050565b5f6020820190508181035f830152611d9881611d5f565b9050919050565b7f4275726e20616d6f756e7420657863656564732062616c616e636500000000005f82015250565b5f611dd3601b836111c3565b9150611dde82611d9f565b602082019050919050565b5f6020820190508181035f830152611e0081611dc7565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f206164647265737300005f82015250565b5f611e3b601e836111c3565b9150611e4682611e07565b602082019050919050565b5f6020820190508181035f830152611e6881611e2f565b9050919050565b7f5472616e7366657220746f20746865207a65726f2061646472657373000000005f82015250565b5f611ea3601c836111c3565b9150611eae82611e6f565b602082019050919050565b5f6020820190508181035f830152611ed081611e97565b9050919050565b7f5472616e7366657220616d6f756e7420657863656564732062616c616e6365005f82015250565b5f611f0b601f836111c3565b9150611f1682611ed7565b602082019050919050565b5f6020820190508181035f830152611f3881611eff565b9050919050565b5f611f49826112b4565b9150611f54836112b4565b9250828201905080821115611f6c57611f6b611711565b5b92915050565b7f4d696e7420746f20746865207a65726f206164647265737300000000000000005f82015250565b5f611fa66018836111c3565b9150611fb182611f72565b602082019050919050565b5f6020820190508181035f830152611fd381611f9a565b905091905056fea26469706673582212201b64ea60d8193d1747b684a3a4730f6999c384e2e7e2461342257d44fd6b5fa164736f6c634300081a0033