[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "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": "sender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "ethAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "ExchangeCompleted", "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": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "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": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "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": "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" } ]
60806040526012600360006101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b5033600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620000a45760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016200009b91906200033b565b60405180910390fd5b620000b5816200023260201b60201c565b506040518060400160405280600e81526020017f45786368616e676520546f6b656e00000000000000000000000000000000000081525060019081620000fc9190620005d2565b506040518060400160405280600481526020017f4558544f0000000000000000000000000000000000000000000000000000000081525060029081620001439190620005d2565b50600360009054906101000a900460ff1660ff16600a6200016591906200083c565b633b9aca006200017691906200088d565b600481905550600454600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600454604051620002249190620008e9565b60405180910390a362000906565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200032382620002f6565b9050919050565b620003358162000316565b82525050565b60006020820190506200035260008301846200032a565b92915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620003da57607f821691505b602082108103620003f057620003ef62000392565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200045a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200041b565b6200046686836200041b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004b3620004ad620004a7846200047e565b62000488565b6200047e565b9050919050565b6000819050919050565b620004cf8362000492565b620004e7620004de82620004ba565b84845462000428565b825550505050565b600090565b620004fe620004ef565b6200050b818484620004c4565b505050565b5b81811015620005335762000527600082620004f4565b60018101905062000511565b5050565b601f82111562000582576200054c81620003f6565b62000557846200040b565b8101602085101562000567578190505b6200057f62000576856200040b565b83018262000510565b50505b505050565b600082821c905092915050565b6000620005a76000198460080262000587565b1980831691505092915050565b6000620005c2838362000594565b9150826002028217905092915050565b620005dd8262000358565b67ffffffffffffffff811115620005f957620005f862000363565b5b620006058254620003c1565b6200061282828562000537565b600060209050601f8311600181146200064a576000841562000635578287015190505b620006418582620005b4565b865550620006b1565b601f1984166200065a86620003f6565b60005b8281101562000684578489015182556001820191506020850194506020810190506200065d565b86831015620006a45784890151620006a0601f89168262000594565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000747578086048111156200071f576200071e620006b9565b5b60018516156200072f5780820291505b80810290506200073f85620006e8565b9450620006ff565b94509492505050565b60008262000762576001905062000835565b8162000772576000905062000835565b81600181146200078b57600281146200079657620007cc565b600191505062000835565b60ff841115620007ab57620007aa620006b9565b5b8360020a915084821115620007c557620007c4620006b9565b5b5062000835565b5060208310610133831016604e8410600b8410161715620008065782820a9050838111156200080057620007ff620006b9565b5b62000835565b620008158484846001620006f5565b925090508184048111156200082f576200082e620006b9565b5b81810290505b9392505050565b600062000849826200047e565b915062000856836200047e565b9250620008857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000750565b905092915050565b60006200089a826200047e565b9150620008a7836200047e565b9250828202620008b7816200047e565b91508282048414831517620008d157620008d0620006b9565b5b5092915050565b620008e3816200047e565b82525050565b6000602082019050620009006000830184620008d8565b92915050565b6114c480620009166000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a457c2d711610066578063a457c2d71461024f578063a9059cbb1461027f578063dd62ed3e146102af578063f2fde38b146102df576100ea565b8063715018a6146102095780638da5cb5b1461021357806395d89b4114610231576100ea565b806323b872dd116100c857806323b872dd1461015b578063313ce5671461018b57806339509351146101a957806370a08231146101d9576100ea565b806306fdde03146100ef578063095ea7b31461010d57806318160ddd1461013d575b600080fd5b6100f76102fb565b6040516101049190610e41565b60405180910390f35b61012760048036038101906101229190610efc565b61038d565b6040516101349190610f57565b60405180910390f35b6101456103ab565b6040516101529190610f81565b60405180910390f35b61017560048036038101906101709190610f9c565b6103b5565b6040516101829190610f57565b60405180910390f35b61019361046d565b6040516101a0919061100b565b60405180910390f35b6101c360048036038101906101be9190610efc565b610484565b6040516101d09190610f57565b60405180910390f35b6101f360048036038101906101ee9190611026565b610530565b6040516102009190610f81565b60405180910390f35b610211610579565b005b61021b61058d565b6040516102289190611062565b60405180910390f35b6102396105b6565b6040516102469190610e41565b60405180910390f35b61026960048036038101906102649190610efc565b610648565b6040516102769190610f57565b60405180910390f35b61029960048036038101906102949190610efc565b6106f4565b6040516102a69190610f57565b60405180910390f35b6102c960048036038101906102c4919061107d565b610712565b6040516102d69190610f81565b60405180910390f35b6102f960048036038101906102f49190611026565b610799565b005b60606001805461030a906110ec565b80601f0160208091040260200160405190810160405280929190818152602001828054610336906110ec565b80156103835780601f1061035857610100808354040283529160200191610383565b820191906000526020600020905b81548152906001019060200180831161036657829003601f168201915b5050505050905090565b60006103a161039a61081f565b8484610827565b6001905092915050565b6000600454905090565b60006103c28484846109f0565b610462846103ce61081f565b84600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061041861081f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461045d919061114c565b610827565b600190509392505050565b6000600360009054906101000a900460ff16905090565b600061052661049161081f565b84846006600061049f61081f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105219190611180565b610827565b6001905092915050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610581610c66565b61058b6000610ced565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600280546105c5906110ec565b80601f01602080910402602001604051908101604052809291908181526020018280546105f1906110ec565b801561063e5780601f106106135761010080835404028352916020019161063e565b820191906000526020600020905b81548152906001019060200180831161062157829003601f168201915b5050505050905090565b60006106ea61065561081f565b84846006600061066361081f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106e5919061114c565b610827565b6001905092915050565b600061070861070161081f565b84846109f0565b6001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6107a1610c66565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108135760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040161080a9190611062565b60405180910390fd5b61081c81610ced565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610896576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088d90611226565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610905576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fc906112b8565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516109e39190610f81565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a569061134a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ace576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac5906113dc565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610b50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b479061146e565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b9f919061114c565b9250508190555080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610bf59190611180565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c599190610f81565b60405180910390a3505050565b610c6e61081f565b73ffffffffffffffffffffffffffffffffffffffff16610c8c61058d565b73ffffffffffffffffffffffffffffffffffffffff1614610ceb57610caf61081f565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610ce29190611062565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610deb578082015181840152602081019050610dd0565b60008484015250505050565b6000601f19601f8301169050919050565b6000610e1382610db1565b610e1d8185610dbc565b9350610e2d818560208601610dcd565b610e3681610df7565b840191505092915050565b60006020820190508181036000830152610e5b8184610e08565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e9382610e68565b9050919050565b610ea381610e88565b8114610eae57600080fd5b50565b600081359050610ec081610e9a565b92915050565b6000819050919050565b610ed981610ec6565b8114610ee457600080fd5b50565b600081359050610ef681610ed0565b92915050565b60008060408385031215610f1357610f12610e63565b5b6000610f2185828601610eb1565b9250506020610f3285828601610ee7565b9150509250929050565b60008115159050919050565b610f5181610f3c565b82525050565b6000602082019050610f6c6000830184610f48565b92915050565b610f7b81610ec6565b82525050565b6000602082019050610f966000830184610f72565b92915050565b600080600060608486031215610fb557610fb4610e63565b5b6000610fc386828701610eb1565b9350506020610fd486828701610eb1565b9250506040610fe586828701610ee7565b9150509250925092565b600060ff82169050919050565b61100581610fef565b82525050565b60006020820190506110206000830184610ffc565b92915050565b60006020828403121561103c5761103b610e63565b5b600061104a84828501610eb1565b91505092915050565b61105c81610e88565b82525050565b60006020820190506110776000830184611053565b92915050565b6000806040838503121561109457611093610e63565b5b60006110a285828601610eb1565b92505060206110b385828601610eb1565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061110457607f821691505b602082108103611117576111166110bd565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061115782610ec6565b915061116283610ec6565b925082820390508181111561117a5761117961111d565b5b92915050565b600061118b82610ec6565b915061119683610ec6565b92508282019050808211156111ae576111ad61111d565b5b92915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611210602483610dbc565b915061121b826111b4565b604082019050919050565b6000602082019050818103600083015261123f81611203565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006112a2602283610dbc565b91506112ad82611246565b604082019050919050565b600060208201905081810360008301526112d181611295565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611334602583610dbc565b915061133f826112d8565b604082019050919050565b6000602082019050818103600083015261136381611327565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006113c6602383610dbc565b91506113d18261136a565b604082019050919050565b600060208201905081810360008301526113f5816113b9565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611458602683610dbc565b9150611463826113fc565b604082019050919050565b600060208201905081810360008301526114878161144b565b905091905056fea26469706673582212201d5709bb6e9f0386400256e1354993ed0e27978d77458d38a94187a202512e4e64736f6c63430008140033