[ { "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": "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": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMIT_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "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": [], "name": "initial_supply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "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": "value", "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": "value", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" } ]
60806040523480156200001157600080fd5b5060004690507f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6040518060400160405280600981526020017f436c65726b204361740000000000000000000000000000000000000000000000815250805190602001206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001208330604051602001620000ca959493929190620003b0565b6040516020818303038152906040528051906020012060038190555050600033905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001a7336b0813f3978f89409844000000620001ad60201b60201c565b62000517565b620001c981600054620002d760201b62000a261790919060201c565b6000819055506200022881600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620002d760201b62000a261790919060201c565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002cb91906200040d565b60405180910390a35050565b6000828284620002e8919062000459565b91508110156200032f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200032690620004f5565b60405180910390fd5b92915050565b6000819050919050565b6200034a8162000335565b82525050565b6000819050919050565b620003658162000350565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000398826200036b565b9050919050565b620003aa816200038b565b82525050565b600060a082019050620003c760008301886200033f565b620003d660208301876200033f565b620003e560408301866200033f565b620003f460608301856200035a565b6200040360808301846200039f565b9695505050505050565b60006020820190506200042460008301846200035a565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620004668262000350565b9150620004738362000350565b92508282019050808211156200048e576200048d6200042a565b5b92915050565b600082825260208201905092915050565b7f64732d6d6174682d6164642d6f766572666c6f77000000000000000000000000600082015250565b6000620004dd60148362000494565b9150620004ea82620004a5565b602082019050919050565b600060208201905081810360008301526200051081620004ce565b9050919050565b61161780620005276000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806370a082311161009757806395d89b411161006657806395d89b41146102a1578063a9059cbb146102bf578063d505accf146102ef578063dd62ed3e1461030b57610100565b806370a0823114610219578063715018a6146102495780637ecebe00146102535780638da5cb5b1461028357610100565b80632405e3c6116100d35780632405e3c6146101a157806330adf81f146101bf578063313ce567146101dd5780633644e515146101fb57610100565b806306fdde0314610105578063095ea7b31461012357806318160ddd1461015357806323b872dd14610171575b600080fd5b61010d61033b565b60405161011a9190610de7565b60405180910390f35b61013d60048036038101906101389190610ea2565b610374565b60405161014a9190610efd565b60405180910390f35b61015b61038b565b6040516101689190610f27565b60405180910390f35b61018b60048036038101906101869190610f42565b610391565b6040516101989190610efd565b60405180910390f35b6101a961055c565b6040516101b69190610f27565b60405180910390f35b6101c761056c565b6040516101d49190610fae565b60405180910390f35b6101e5610593565b6040516101f29190610fe5565b60405180910390f35b610203610598565b6040516102109190610fae565b60405180910390f35b610233600480360381019061022e9190611000565b61059e565b6040516102409190610f27565b60405180910390f35b6102516105b6565b005b61026d60048036038101906102689190611000565b6106ec565b60405161027a9190610f27565b60405180910390f35b61028b610704565b604051610298919061103c565b60405180910390f35b6102a961072e565b6040516102b69190610de7565b60405180910390f35b6102d960048036038101906102d49190610ea2565b610767565b6040516102e69190610efd565b60405180910390f35b610309600480360381019061030491906110af565b61077e565b005b61032560048036038101906103209190611151565b610a01565b6040516103329190610f27565b60405180910390f35b6040518060400160405280600981526020017f436c65726b20436174000000000000000000000000000000000000000000000081525081565b6000610381338484610a7f565b6001905092915050565b60005481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610546576104c582600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b6a90919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610551848484610bc3565b600190509392505050565b6b0813f3978f8940984400000081565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b81565b601281565b60035481565b60016020528060005260406000206000915090505481565b3373ffffffffffffffffffffffffffffffffffffffff166105d5610704565b73ffffffffffffffffffffffffffffffffffffffff161461062b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610622906111dd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60046020528060005260406000206000915090505481565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6040518060400160405280600581526020017f434c45524b00000000000000000000000000000000000000000000000000000081525081565b6000610774338484610bc3565b6001905092915050565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9600052856020526001604052600051546107c75760205160005155602051604060202055005b3360005154149050600081036109ec574285101561081a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081190611249565b60405180910390fd5b60006003547f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b8a8a8a600460008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061089690611298565b919050558b6040516020016108b0969594939291906112e0565b604051602081830303815290604052805190602001206040516020016108d79291906113b9565b60405160208183030381529060405280519060200120905060006001828787876040516000815260200160405260405161091494939291906113f0565b6020604051602081039080840390855afa158015610936573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141580156109aa57508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6109e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e090611481565b60405180910390fd5b50505b6109f7888888610a7f565b5050505050505050565b6002602052816000526040600020602052806000526040600020600091509150505481565b6000828284610a3591906114a1565b9150811015610a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7090611521565b60405180910390fd5b92915050565b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610b5d9190610f27565b60405180910390a3505050565b6000828284610b799190611541565b9150811115610bbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bb4906115c1565b60405180910390fd5b92915050565b610c1581600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b6a90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610caa81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a2690919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610d4a9190610f27565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d91578082015181840152602081019050610d76565b60008484015250505050565b6000601f19601f8301169050919050565b6000610db982610d57565b610dc38185610d62565b9350610dd3818560208601610d73565b610ddc81610d9d565b840191505092915050565b60006020820190508181036000830152610e018184610dae565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e3982610e0e565b9050919050565b610e4981610e2e565b8114610e5457600080fd5b50565b600081359050610e6681610e40565b92915050565b6000819050919050565b610e7f81610e6c565b8114610e8a57600080fd5b50565b600081359050610e9c81610e76565b92915050565b60008060408385031215610eb957610eb8610e09565b5b6000610ec785828601610e57565b9250506020610ed885828601610e8d565b9150509250929050565b60008115159050919050565b610ef781610ee2565b82525050565b6000602082019050610f126000830184610eee565b92915050565b610f2181610e6c565b82525050565b6000602082019050610f3c6000830184610f18565b92915050565b600080600060608486031215610f5b57610f5a610e09565b5b6000610f6986828701610e57565b9350506020610f7a86828701610e57565b9250506040610f8b86828701610e8d565b9150509250925092565b6000819050919050565b610fa881610f95565b82525050565b6000602082019050610fc36000830184610f9f565b92915050565b600060ff82169050919050565b610fdf81610fc9565b82525050565b6000602082019050610ffa6000830184610fd6565b92915050565b60006020828403121561101657611015610e09565b5b600061102484828501610e57565b91505092915050565b61103681610e2e565b82525050565b6000602082019050611051600083018461102d565b92915050565b61106081610fc9565b811461106b57600080fd5b50565b60008135905061107d81611057565b92915050565b61108c81610f95565b811461109757600080fd5b50565b6000813590506110a981611083565b92915050565b600080600080600080600060e0888a0312156110ce576110cd610e09565b5b60006110dc8a828b01610e57565b97505060206110ed8a828b01610e57565b96505060406110fe8a828b01610e8d565b955050606061110f8a828b01610e8d565b94505060806111208a828b0161106e565b93505060a06111318a828b0161109a565b92505060c06111428a828b0161109a565b91505092959891949750929550565b6000806040838503121561116857611167610e09565b5b600061117685828601610e57565b925050602061118785828601610e57565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006111c7602083610d62565b91506111d282611191565b602082019050919050565b600060208201905081810360008301526111f6816111ba565b9050919050565b7f556e697377617056323a20455850495245440000000000000000000000000000600082015250565b6000611233601283610d62565b915061123e826111fd565b602082019050919050565b6000602082019050818103600083015261126281611226565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006112a382610e6c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036112d5576112d4611269565b5b600182019050919050565b600060c0820190506112f56000830189610f9f565b611302602083018861102d565b61130f604083018761102d565b61131c6060830186610f18565b6113296080830185610f18565b61133660a0830184610f18565b979650505050505050565b600081905092915050565b7f1901000000000000000000000000000000000000000000000000000000000000600082015250565b6000611382600283611341565b915061138d8261134c565b600282019050919050565b6000819050919050565b6113b36113ae82610f95565b611398565b82525050565b60006113c482611375565b91506113d082856113a2565b6020820191506113e082846113a2565b6020820191508190509392505050565b60006080820190506114056000830187610f9f565b6114126020830186610fd6565b61141f6040830185610f9f565b61142c6060830184610f9f565b95945050505050565b7f556e697377617056323a20494e56414c49445f5349474e415455524500000000600082015250565b600061146b601c83610d62565b915061147682611435565b602082019050919050565b6000602082019050818103600083015261149a8161145e565b9050919050565b60006114ac82610e6c565b91506114b783610e6c565b92508282019050808211156114cf576114ce611269565b5b92915050565b7f64732d6d6174682d6164642d6f766572666c6f77000000000000000000000000600082015250565b600061150b601483610d62565b9150611516826114d5565b602082019050919050565b6000602082019050818103600083015261153a816114fe565b9050919050565b600061154c82610e6c565b915061155783610e6c565b925082820390508181111561156f5761156e611269565b5b92915050565b7f64732d6d6174682d7375622d756e646572666c6f770000000000000000000000600082015250565b60006115ab601583610d62565b91506115b682611575565b602082019050919050565b600060208201905081810360008301526115da8161159e565b905091905056fea26469706673582212201f39cf87557fd7b7913fea8cebe35ada45298e55c4ecf199a3ea28660431764364736f6c63430008110033