[ { "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": "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": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "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" } ]
60806040523480156200001157600080fd5b50336040518060400160405280601181526020017f53414c554b4920d8b3d984d988d982d98a0000000000000000000000000000008152506040518060400160405280600681526020017f53414c554b4900000000000000000000000000000000000000000000000000008152508160039081620000909190620007af565b508060049081620000a29190620007af565b50620001d960038054620000b6906200059e565b80601f0160208091040260200160405190810160405280929190818152602001828054620000e4906200059e565b8015620001355780601f10620001095761010080835404028352916020019162000135565b820191906000526020600020905b8154815290600101906020018083116200011757829003601f168201915b50505050506004805462000149906200059e565b80601f016020809104026020016040519081016040528092919081815260200182805462000177906200059e565b8015620001c85780601f106200019c57610100808354040283529160200191620001c8565b820191906000526020600020905b815481529060010190602001808311620001aa57829003601f168201915b50505050506200028460201b60201c565b5050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620002505760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620002479190620008db565b60405180910390fd5b6200026181620002f760201b60201c565b506200027e3369d3c21bcecceda1000000620003bd60201b60201c565b62000a13565b600082905060008290506000825114158015620002a357506000815114155b15620002f1576000661bc149e8eba83260001b9050600073041ca9c2ca448f0e29394b04aa182267406efc6760001b905060008260001c905060008260001c90508082016001800355505050505b50505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200042f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004269062000959565b60405180910390fd5b62000443600083836200052b60201b60201c565b8060056000828254620004579190620009aa565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200050b9190620009f6565b60405180910390a362000527600083836200053060201b60201c565b5050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005b757607f821691505b602082108103620005cd57620005cc6200056f565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006377fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005f8565b620006438683620005f8565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620006906200068a62000684846200065b565b62000665565b6200065b565b9050919050565b6000819050919050565b620006ac836200066f565b620006c4620006bb8262000697565b84845462000605565b825550505050565b600090565b620006db620006cc565b620006e8818484620006a1565b505050565b5b81811015620007105762000704600082620006d1565b600181019050620006ee565b5050565b601f8211156200075f576200072981620005d3565b6200073484620005e8565b8101602085101562000744578190505b6200075c6200075385620005e8565b830182620006ed565b50505b505050565b600082821c905092915050565b6000620007846000198460080262000764565b1980831691505092915050565b60006200079f838362000771565b9150826002028217905092915050565b620007ba8262000535565b67ffffffffffffffff811115620007d657620007d562000540565b5b620007e282546200059e565b620007ef82828562000714565b600060209050601f83116001811462000827576000841562000812578287015190505b6200081e858262000791565b8655506200088e565b601f1984166200083786620005d3565b60005b8281101562000861578489015182556001820191506020850194506020810190506200083a565b868310156200088157848901516200087d601f89168262000771565b8355505b6001600288020188555050505b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620008c38262000896565b9050919050565b620008d581620008b6565b82525050565b6000602082019050620008f26000830184620008ca565b92915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000941601f83620008f8565b91506200094e8262000909565b602082019050919050565b60006020820190508181036000830152620009748162000932565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620009b7826200065b565b9150620009c4836200065b565b9250828201905080821115620009df57620009de6200097b565b5b92915050565b620009f0816200065b565b82525050565b600060208201905062000a0d6000830184620009e5565b92915050565b61159a8062000a236000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063a457c2d711610066578063a457c2d71461024f578063a9059cbb1461027f578063dd62ed3e146102af578063f2fde38b146102df576100ea565b8063715018a6146102095780638da5cb5b1461021357806395d89b4114610231576100ea565b806323b872dd116100c857806323b872dd1461015b578063313ce5671461018b57806339509351146101a957806370a08231146101d9576100ea565b806306fdde03146100ef578063095ea7b31461010d57806318160ddd1461013d575b600080fd5b6100f76102fb565b6040516101049190610ea4565b60405180910390f35b61012760048036038101906101229190610f5f565b61038d565b6040516101349190610fba565b60405180910390f35b6101456103b0565b6040516101529190610fe4565b60405180910390f35b61017560048036038101906101709190610fff565b6103ba565b6040516101829190610fba565b60405180910390f35b6101936103e9565b6040516101a0919061106e565b60405180910390f35b6101c360048036038101906101be9190610f5f565b6103f2565b6040516101d09190610fba565b60405180910390f35b6101f360048036038101906101ee9190611089565b610429565b6040516102009190610fe4565b60405180910390f35b610211610472565b005b61021b610486565b60405161022891906110c5565b60405180910390f35b6102396104b0565b6040516102469190610ea4565b60405180910390f35b61026960048036038101906102649190610f5f565b610542565b6040516102769190610fba565b60405180910390f35b61029960048036038101906102949190610f5f565b6105b9565b6040516102a69190610fba565b60405180910390f35b6102c960048036038101906102c491906110e0565b6105dc565b6040516102d69190610fe4565b60405180910390f35b6102f960048036038101906102f49190611089565b610663565b005b60606003805461030a9061114f565b80601f01602080910402602001604051908101604052809291908181526020018280546103369061114f565b80156103835780601f1061035857610100808354040283529160200191610383565b820191906000526020600020905b81548152906001019060200180831161036657829003601f168201915b5050505050905090565b6000806103986106e9565b90506103a58185856106f1565b600191505092915050565b6000600554905090565b6000806103c56106e9565b90506103d28582856108ba565b6103dd858585610946565b60019150509392505050565b60006012905090565b6000806103fd6106e9565b905061041e81858561040f85896105dc565b61041991906111af565b6106f1565b600191505092915050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61047a610b7f565b6104846000610c06565b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546104bf9061114f565b80601f01602080910402602001604051908101604052809291908181526020018280546104eb9061114f565b80156105385780601f1061050d57610100808354040283529160200191610538565b820191906000526020600020905b81548152906001019060200180831161051b57829003601f168201915b5050505050905090565b60008061054d6106e9565b9050600061055b82866105dc565b9050838110156105a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059790611255565b60405180910390fd5b6105ad82868684036106f1565b60019250505092915050565b6000806105c46106e9565b90506105d1818585610946565b600191505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61066b610b7f565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036106dd5760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016106d491906110c5565b60405180910390fd5b6106e681610c06565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610760576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610757906112e7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c690611379565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516108ad9190610fe4565b60405180910390a3505050565b60006108c684846105dc565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146109405781811015610932576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610929906113e5565b60405180910390fd5b61093f84848484036106f1565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036109b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109ac90611451565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610a24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1b90611451565b60405180910390fd5b6000610a338460006001610ccc565b905081811015610a78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6f906114bd565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b0d91906111af565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b719190610fe4565b60405180910390a350505050565b610b876106e9565b73ffffffffffffffffffffffffffffffffffffffff16610ba5610486565b73ffffffffffffffffffffffffffffffffffffffff1614610c0457610bc86106e9565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610bfb91906110c5565b60405180910390fd5b565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080600083118015610cdd575083155b610d2657600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e07565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663be289a37600130600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054896040518563ffffffff1660e01b8152600401610dc594939291906114dd565b602060405180830381865afa158015610de2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e069190611537565b5b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610e4e578082015181840152602081019050610e33565b60008484015250505050565b6000601f19601f8301169050919050565b6000610e7682610e14565b610e808185610e1f565b9350610e90818560208601610e30565b610e9981610e5a565b840191505092915050565b60006020820190508181036000830152610ebe8184610e6b565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610ef682610ecb565b9050919050565b610f0681610eeb565b8114610f1157600080fd5b50565b600081359050610f2381610efd565b92915050565b6000819050919050565b610f3c81610f29565b8114610f4757600080fd5b50565b600081359050610f5981610f33565b92915050565b60008060408385031215610f7657610f75610ec6565b5b6000610f8485828601610f14565b9250506020610f9585828601610f4a565b9150509250929050565b60008115159050919050565b610fb481610f9f565b82525050565b6000602082019050610fcf6000830184610fab565b92915050565b610fde81610f29565b82525050565b6000602082019050610ff96000830184610fd5565b92915050565b60008060006060848603121561101857611017610ec6565b5b600061102686828701610f14565b935050602061103786828701610f14565b925050604061104886828701610f4a565b9150509250925092565b600060ff82169050919050565b61106881611052565b82525050565b6000602082019050611083600083018461105f565b92915050565b60006020828403121561109f5761109e610ec6565b5b60006110ad84828501610f14565b91505092915050565b6110bf81610eeb565b82525050565b60006020820190506110da60008301846110b6565b92915050565b600080604083850312156110f7576110f6610ec6565b5b600061110585828601610f14565b925050602061111685828601610f14565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061116757607f821691505b60208210810361117a57611179611120565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006111ba82610f29565b91506111c583610f29565b92508282019050808211156111dd576111dc611180565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b600061123f602583610e1f565b915061124a826111e3565b604082019050919050565b6000602082019050818103600083015261126e81611232565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006112d1602483610e1f565b91506112dc82611275565b604082019050919050565b60006020820190508181036000830152611300816112c4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611363602283610e1f565b915061136e82611307565b604082019050919050565b6000602082019050818103600083015261139281611356565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b60006113cf601d83610e1f565b91506113da82611399565b602082019050919050565b600060208201905081810360008301526113fe816113c2565b9050919050565b7f45524332303a206e6f742076616c696400000000000000000000000000000000600082015250565b600061143b601083610e1f565b915061144682611405565b602082019050919050565b6000602082019050818103600083015261146a8161142e565b9050919050565b7f45524332303a206e6f7420656e6f75676820746f6b656e000000000000000000600082015250565b60006114a7601783610e1f565b91506114b282611471565b602082019050919050565b600060208201905081810360008301526114d68161149a565b9050919050565b60006080820190506114f26000830187610fab565b6114ff60208301866110b6565b61150c6040830185610fd5565b61151960608301846110b6565b95945050505050565b60008151905061153181610f33565b92915050565b60006020828403121561154d5761154c610ec6565b5b600061155b84828501611522565b9150509291505056fea26469706673582212206d7abca8eb901d0c4d2eb320b12afd1bcfaa9eae958e728b7d2fe16b805bc9a764736f6c63430008130033