[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "tokenOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokens", "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": "tokens", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "stateMutability": "nonpayable", "type": "fallback" }, { "inputs": [], "name": "_totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "tokenOwner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "remaining", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "tokens", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "tokens", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "approveAndCall", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "tokenOwner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "balance", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "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": "to", "type": "address" }, { "internalType": "uint256", "name": "tokens", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokens", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
60806040523480156200001157600080fd5b506040518060400160405280600981526020017f484152414d424541490000000000000000000000000000000000000000000000815250600090805190602001906200005f929190620001bb565b506040518060400160405280601081526020017f486172616d626520414920546f6b656e0000000000000000000000000000000081525060019080519060200190620000ad929190620001bb565b506012600260006101000a81548160ff021916908360ff1602179055506b023ac12ef364587bf2000000600381905550600354600460007306d344b9ada316c83c30110ca6029d49961ec90773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507306d344b9ada316c83c30110ca6029d49961ec90773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600354604051620001ad919062000286565b60405180910390a362000308565b828054620001c990620002d2565b90600052602060002090601f016020900481019282620001ed576000855562000239565b82601f106200020857805160ff191683800117855562000239565b8280016001018555821562000239579182015b82811115620002385782518255916020019190600101906200021b565b5b5090506200024891906200024c565b5090565b5b80821115620002675760008160009055506001016200024d565b5090565b6000819050919050565b62000280816200026b565b82525050565b60006020820190506200029d600083018462000275565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620002eb57607f821691505b60208210811415620003025762000301620002a3565b5b50919050565b6113c680620003186000396000f3fe6080604052600436106100a05760003560e01c80633eaaf86b116100645780633eaaf86b146101ed57806370a082311461021857806395d89b4114610255578063a9059cbb14610280578063cae9ca51146102bd578063dd62ed3e146102fa576100e0565b806306fdde03146100f2578063095ea7b31461011d57806318160ddd1461015a57806323b872dd14610185578063313ce567146101c2576100e0565b366100e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d790610d1c565b60405180910390fd5b3480156100ec57600080fd5b50600080fd5b3480156100fe57600080fd5b50610107610337565b6040516101149190610dc4565b60405180910390f35b34801561012957600080fd5b50610144600480360381019061013f9190610e84565b6103c5565b6040516101519190610edf565b60405180910390f35b34801561016657600080fd5b5061016f6104b7565b60405161017c9190610f09565b60405180910390f35b34801561019157600080fd5b506101ac60048036038101906101a79190610f24565b61050b565b6040516101b99190610edf565b60405180910390f35b3480156101ce57600080fd5b506101d761079b565b6040516101e49190610f93565b60405180910390f35b3480156101f957600080fd5b506102026107ae565b60405161020f9190610f09565b60405180910390f35b34801561022457600080fd5b5061023f600480360381019061023a9190610fae565b6107b4565b60405161024c9190610f09565b60405180910390f35b34801561026157600080fd5b5061026a6107fd565b6040516102779190610dc4565b60405180910390f35b34801561028c57600080fd5b506102a760048036038101906102a29190610e84565b61088b565b6040516102b49190610edf565b60405180910390f35b3480156102c957600080fd5b506102e460048036038101906102df9190611040565b610a14565b6040516102f19190610edf565b60405180910390f35b34801561030657600080fd5b50610321600480360381019061031c91906110b4565b610b7b565b60405161032e9190610f09565b60405180910390f35b6001805461034490611123565b80601f016020809104026020016040519081016040528092919081815260200182805461037090611123565b80156103bd5780601f10610392576101008083540402835291602001916103bd565b820191906000526020600020905b8154815290600101906020018083116103a057829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516104a59190610f09565b60405180910390a36001905092915050565b6000600460008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546003546105069190611184565b905090565b6000610556600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610c02565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061061f600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610c02565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106e8600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610c61565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516107889190610f09565b60405180910390a3600190509392505050565b600260009054906101000a900460ff1681565b60035481565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000805461080a90611123565b80601f016020809104026020016040519081016040528092919081815260200182805461083690611123565b80156108835780601f1061085857610100808354040283529160200191610883565b820191906000526020600020905b81548152906001019060200180831161086657829003601f168201915b505050505081565b60006108d6600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610c02565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610962600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610c61565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a029190610f09565b60405180910390a36001905092915050565b600083600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92586604051610af49190610f09565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff16638f4ffcb133863087876040518663ffffffff1660e01b8152600401610b3d959493929190611214565b600060405180830381600087803b158015610b5757600080fd5b505af1158015610b6b573d6000803e3d6000fd5b5050505060019050949350505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600082821115610c47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3e906112ae565b60405180910390fd5b60008284610c559190611184565b90508091505092915050565b6000808284610c7091906112ce565b905083811015610cb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cac90611370565b60405180910390fd5b8091505092915050565b600082825260208201905092915050565b7f455448206e6f7420616363657074656400000000000000000000000000000000600082015250565b6000610d06601083610cbf565b9150610d1182610cd0565b602082019050919050565b60006020820190508181036000830152610d3581610cf9565b9050919050565b600081519050919050565b60005b83811015610d65578082015181840152602081019050610d4a565b83811115610d74576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9682610d3c565b610da08185610cbf565b9350610db0818560208601610d47565b610db981610d7a565b840191505092915050565b60006020820190508181036000830152610dde8184610d8b565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e1b82610df0565b9050919050565b610e2b81610e10565b8114610e3657600080fd5b50565b600081359050610e4881610e22565b92915050565b6000819050919050565b610e6181610e4e565b8114610e6c57600080fd5b50565b600081359050610e7e81610e58565b92915050565b60008060408385031215610e9b57610e9a610de6565b5b6000610ea985828601610e39565b9250506020610eba85828601610e6f565b9150509250929050565b60008115159050919050565b610ed981610ec4565b82525050565b6000602082019050610ef46000830184610ed0565b92915050565b610f0381610e4e565b82525050565b6000602082019050610f1e6000830184610efa565b92915050565b600080600060608486031215610f3d57610f3c610de6565b5b6000610f4b86828701610e39565b9350506020610f5c86828701610e39565b9250506040610f6d86828701610e6f565b9150509250925092565b600060ff82169050919050565b610f8d81610f77565b82525050565b6000602082019050610fa86000830184610f84565b92915050565b600060208284031215610fc457610fc3610de6565b5b6000610fd284828501610e39565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261100057610fff610fdb565b5b8235905067ffffffffffffffff81111561101d5761101c610fe0565b5b60208301915083600182028301111561103957611038610fe5565b5b9250929050565b6000806000806060858703121561105a57611059610de6565b5b600061106887828801610e39565b945050602061107987828801610e6f565b935050604085013567ffffffffffffffff81111561109a57611099610deb565b5b6110a687828801610fea565b925092505092959194509250565b600080604083850312156110cb576110ca610de6565b5b60006110d985828601610e39565b92505060206110ea85828601610e39565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061113b57607f821691505b6020821081141561114f5761114e6110f4565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061118f82610e4e565b915061119a83610e4e565b9250828210156111ad576111ac611155565b5b828203905092915050565b6111c181610e10565b82525050565b600082825260208201905092915050565b82818337600083830152505050565b60006111f383856111c7565b93506112008385846111d8565b61120983610d7a565b840190509392505050565b600060808201905061122960008301886111b8565b6112366020830187610efa565b61124360408301866111b8565b81810360608301526112568184866111e7565b90509695505050505050565b7f5375627472616374696f6e20756e646572666c6f770000000000000000000000600082015250565b6000611298601583610cbf565b91506112a382611262565b602082019050919050565b600060208201905081810360008301526112c78161128b565b9050919050565b60006112d982610e4e565b91506112e483610e4e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561131957611318611155565b5b828201905092915050565b7f4164646974696f6e206f766572666c6f77000000000000000000000000000000600082015250565b600061135a601183610cbf565b915061136582611324565b602082019050919050565b600060208201905081810360008301526113898161134d565b905091905056fea264697066735822122005f2bda20618ddd663d9ae092da629d0132ccae34350de50a619caffabb1ef8064736f6c634300080a0033