[ { "inputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "uint8", "name": "decimals_", "type": "uint8" }, { "internalType": "uint256", "name": "initial_supply", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ECDSAInvalidSignature", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "length", "type": "uint256" } ], "name": "ECDSAInvalidSignatureLength", "type": "error" }, { "inputs": [ { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "ECDSAInvalidSignatureS", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "allowance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientAllowance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "ERC20InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC20InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC20InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC20InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" } ], "name": "ERC20InvalidSpender", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "deadline", "type": "uint256" } ], "name": "ERC2612ExpiredSignature", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "signer", "type": "address" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC2612InvalidSigner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "currentNonce", "type": "uint256" } ], "name": "InvalidAccountNonce", "type": "error" }, { "inputs": [], "name": "InvalidShortString", "type": "error" }, { "inputs": [ { "internalType": "string", "name": "str", "type": "string" } ], "name": "StringTooLong", "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": [], "name": "EIP712DomainChanged", "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": "INITIAL_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "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": "value", "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": [], "name": "eip712Domain", "outputs": [ { "internalType": "bytes1", "name": "fields", "type": "bytes1" }, { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "version", "type": "string" }, { "internalType": "uint256", "name": "chainId", "type": "uint256" }, { "internalType": "address", "name": "verifyingContract", "type": "address" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256[]", "name": "extensions", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "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": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "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" } ]
6101606040523480156200001257600080fd5b5060405162002de938038062002de98339818101604052810190620000389190620007b8565b83806040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152508686816003908162000083919062000aa9565b50806004908162000095919062000aa9565b505050620000ae600583620001c360201b90919060201c565b6101208181525050620000cc600682620001c360201b90919060201c565b6101408181525050818051906020012060e08181525050808051906020012061010081815250504660a081815250506200010b6200021b60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505050505081600860006101000a81548160ff021916908360ff1602179055508160ff16600a62000176919062000d13565b8162000183919062000d64565b600981905550620001b9338360ff16600a620001a0919062000d13565b83620001ad919062000d64565b6200027860201b60201c565b5050505062001047565b6000602083511015620001e957620001e1836200030560201b60201c565b905062000215565b82620001fb836200037260201b60201c565b60000190816200020c919062000aa9565b5060ff60001b90505b92915050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60e0516101005146306040516020016200025d95949392919062000e20565b60405160208183030381529060405280519060200120905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002ed5760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401620002e4919062000e7d565b60405180910390fd5b62000301600083836200037c60201b60201c565b5050565b600080829050601f815111156200035557826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016200034c919062000eec565b60405180910390fd5b805181620003639062000f42565b60001c1760001b915050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620003d2578060026000828254620003c5919062000fb2565b92505081905550620004a8565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101562000461578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401620004589392919062000fed565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620004f3578060026000828254039250508190555062000540565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200059f91906200102a565b60405180910390a3505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200061582620005ca565b810181811067ffffffffffffffff82111715620006375762000636620005db565b5b80604052505050565b60006200064c620005ac565b90506200065a82826200060a565b919050565b600067ffffffffffffffff8211156200067d576200067c620005db565b5b6200068882620005ca565b9050602081019050919050565b60005b83811015620006b557808201518184015260208101905062000698565b60008484015250505050565b6000620006d8620006d2846200065f565b62000640565b905082815260208101848484011115620006f757620006f6620005c5565b5b6200070484828562000695565b509392505050565b600082601f830112620007245762000723620005c0565b5b815162000736848260208601620006c1565b91505092915050565b600060ff82169050919050565b62000757816200073f565b81146200076357600080fd5b50565b60008151905062000777816200074c565b92915050565b6000819050919050565b62000792816200077d565b81146200079e57600080fd5b50565b600081519050620007b28162000787565b92915050565b60008060008060808587031215620007d557620007d4620005b6565b5b600085015167ffffffffffffffff811115620007f657620007f5620005bb565b5b62000804878288016200070c565b945050602085015167ffffffffffffffff811115620008285762000827620005bb565b5b62000836878288016200070c565b9350506040620008498782880162000766565b92505060606200085c87828801620007a1565b91505092959194509250565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620008bb57607f821691505b602082108103620008d157620008d062000873565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200093b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620008fc565b620009478683620008fc565b95508019841693508086168417925050509392505050565b6000819050919050565b60006200098a620009846200097e846200077d565b6200095f565b6200077d565b9050919050565b6000819050919050565b620009a68362000969565b620009be620009b58262000991565b84845462000909565b825550505050565b600090565b620009d5620009c6565b620009e28184846200099b565b505050565b5b8181101562000a0a57620009fe600082620009cb565b600181019050620009e8565b5050565b601f82111562000a595762000a2381620008d7565b62000a2e84620008ec565b8101602085101562000a3e578190505b62000a5662000a4d85620008ec565b830182620009e7565b50505b505050565b600082821c905092915050565b600062000a7e6000198460080262000a5e565b1980831691505092915050565b600062000a99838362000a6b565b9150826002028217905092915050565b62000ab48262000868565b67ffffffffffffffff81111562000ad05762000acf620005db565b5b62000adc8254620008a2565b62000ae982828562000a0e565b600060209050601f83116001811462000b21576000841562000b0c578287015190505b62000b18858262000a8b565b86555062000b88565b601f19841662000b3186620008d7565b60005b8281101562000b5b5784890151825560018201915060208501945060208101905062000b34565b8683101562000b7b578489015162000b77601f89168262000a6b565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000c1e5780860481111562000bf65762000bf562000b90565b5b600185161562000c065780820291505b808102905062000c168562000bbf565b945062000bd6565b94509492505050565b60008262000c39576001905062000d0c565b8162000c49576000905062000d0c565b816001811462000c62576002811462000c6d5762000ca3565b600191505062000d0c565b60ff84111562000c825762000c8162000b90565b5b8360020a91508482111562000c9c5762000c9b62000b90565b5b5062000d0c565b5060208310610133831016604e8410600b841016171562000cdd5782820a90508381111562000cd75762000cd662000b90565b5b62000d0c565b62000cec848484600162000bcc565b9250905081840481111562000d065762000d0562000b90565b5b81810290505b9392505050565b600062000d20826200077d565b915062000d2d836200077d565b925062000d5c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000c27565b905092915050565b600062000d71826200077d565b915062000d7e836200077d565b925082820262000d8e816200077d565b9150828204841483151762000da85762000da762000b90565b5b5092915050565b6000819050919050565b62000dc48162000daf565b82525050565b62000dd5816200077d565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000e088262000ddb565b9050919050565b62000e1a8162000dfb565b82525050565b600060a08201905062000e37600083018862000db9565b62000e46602083018762000db9565b62000e55604083018662000db9565b62000e64606083018562000dca565b62000e73608083018462000e0f565b9695505050505050565b600060208201905062000e94600083018462000e0f565b92915050565b600082825260208201905092915050565b600062000eb88262000868565b62000ec4818562000e9a565b935062000ed681856020860162000695565b62000ee181620005ca565b840191505092915050565b6000602082019050818103600083015262000f08818462000eab565b905092915050565b600081519050919050565b6000819050602082019050919050565b600062000f39825162000daf565b80915050919050565b600062000f4f8262000f10565b8262000f5b8462000f1b565b905062000f688162000f2b565b9250602082101562000fab5762000fa67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83602003600802620008fc565b831692505b5050919050565b600062000fbf826200077d565b915062000fcc836200077d565b925082820190508082111562000fe75762000fe662000b90565b5b92915050565b600060608201905062001004600083018662000e0f565b62001013602083018562000dca565b62001022604083018462000dca565b949350505050565b600060208201905062001041600083018462000dca565b92915050565b60805160a05160c05160e051610100516101205161014051611d47620010a26000396000610abf01526000610a8401526000611056015260006110350152600061097f015260006109d5015260006109fe0152611d476000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806370a0823111610097578063a0712d6811610066578063a0712d6814610292578063a9059cbb146102ae578063d505accf146102de578063dd62ed3e146102fa576100f5565b806370a08231146101f05780637ecebe001461022057806384b0196e1461025057806395d89b4114610274576100f5565b806323b872dd116100d357806323b872dd146101665780632ff2e9dc14610196578063313ce567146101b45780633644e515146101d2576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b61010261032a565b60405161010f9190611543565b60405180910390f35b610132600480360381019061012d91906115fe565b6103bc565b60405161013f9190611659565b60405180910390f35b6101506103df565b60405161015d9190611683565b60405180910390f35b610180600480360381019061017b919061169e565b6103e9565b60405161018d9190611659565b60405180910390f35b61019e610418565b6040516101ab9190611683565b60405180910390f35b6101bc61041e565b6040516101c9919061170d565b60405180910390f35b6101da610435565b6040516101e79190611741565b60405180910390f35b61020a6004803603810190610205919061175c565b610444565b6040516102179190611683565b60405180910390f35b61023a6004803603810190610235919061175c565b61048c565b6040516102479190611683565b60405180910390f35b61025861049e565b60405161026b9796959493929190611891565b60405180910390f35b61027c610548565b6040516102899190611543565b60405180910390f35b6102ac60048036038101906102a79190611915565b6105da565b005b6102c860048036038101906102c391906115fe565b6105e7565b6040516102d59190611659565b60405180910390f35b6102f860048036038101906102f3919061199a565b61060a565b005b610314600480360381019061030f9190611a3c565b610752565b6040516103219190611683565b60405180910390f35b60606003805461033990611aab565b80601f016020809104026020016040519081016040528092919081815260200182805461036590611aab565b80156103b25780601f10610387576101008083540402835291602001916103b2565b820191906000526020600020905b81548152906001019060200180831161039557829003601f168201915b5050505050905090565b6000806103c76107d9565b90506103d48185856107e1565b600191505092915050565b6000600254905090565b6000806103f46107d9565b90506104018582856107f3565b61040c858585610887565b60019150509392505050565b60095481565b6000600860009054906101000a900460ff16905090565b600061043f61097b565b905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600061049782610a32565b9050919050565b6000606080600080600060606104b2610a7b565b6104ba610ab6565b46306000801b600067ffffffffffffffff8111156104db576104da611adc565b5b6040519080825280602002602001820160405280156105095781602001602082028036833780820191505090505b507f0f00000000000000000000000000000000000000000000000000000000000000959493929190965096509650965096509650965090919293949596565b60606004805461055790611aab565b80601f016020809104026020016040519081016040528092919081815260200182805461058390611aab565b80156105d05780601f106105a5576101008083540402835291602001916105d0565b820191906000526020600020905b8154815290600101906020018083116105b357829003601f168201915b5050505050905090565b6105e43382610af1565b50565b6000806105f26107d9565b90506105ff818585610887565b600191505092915050565b8342111561064f57836040517f627913020000000000000000000000000000000000000000000000000000000081526004016106469190611683565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988888861067e8c610b73565b8960405160200161069496959493929190611b0b565b60405160208183030381529060405280519060200120905060006106b782610bca565b905060006106c782878787610be4565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461073b57808a6040517f4b800e46000000000000000000000000000000000000000000000000000000008152600401610732929190611b6c565b60405180910390fd5b6107468a8a8a6107e1565b50505050505050505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b6107ee8383836001610c14565b505050565b60006107ff8484610752565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108815781811015610871578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161086893929190611b95565b60405180910390fd5b61088084848484036000610c14565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108f95760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016108f09190611bcc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361096b5760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016109629190611bcc565b60405180910390fd5b610976838383610deb565b505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161480156109f757507f000000000000000000000000000000000000000000000000000000000000000046145b15610a24577f00000000000000000000000000000000000000000000000000000000000000009050610a2f565b610a2c611010565b90505b90565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060610ab160057f00000000000000000000000000000000000000000000000000000000000000006110a690919063ffffffff16565b905090565b6060610aec60067f00000000000000000000000000000000000000000000000000000000000000006110a690919063ffffffff16565b905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b635760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610b5a9190611bcc565b60405180910390fd5b610b6f60008383610deb565b5050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050559050919050565b6000610bdd610bd761097b565b83611156565b9050919050565b600080600080610bf688888888611197565b925092509250610c06828261128b565b829350505050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610c865760006040517fe602df05000000000000000000000000000000000000000000000000000000008152600401610c7d9190611bcc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cf85760006040517f94280d62000000000000000000000000000000000000000000000000000000008152600401610cef9190611bcc565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508015610de5578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610ddc9190611683565b60405180910390a35b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e3d578060026000828254610e319190611c16565b92505081905550610f10565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610ec9578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401610ec093929190611b95565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f595780600260008282540392505081905550610fa6565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110039190611683565b60405180910390a3505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f7f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000463060405160200161108b959493929190611c4a565b60405160208183030381529060405280519060200120905090565b606060ff60001b83146110c3576110bc836113ef565b9050611150565b8180546110cf90611aab565b80601f01602080910402602001604051908101604052809291908181526020018280546110fb90611aab565b80156111485780601f1061111d57610100808354040283529160200191611148565b820191906000526020600020905b81548152906001019060200180831161112b57829003601f168201915b505050505090505b92915050565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c11156111d7576000600385925092509250611281565b6000600188888888604051600081526020016040526040516111fc9493929190611c9d565b6020604051602081039080840390855afa15801561121e573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361127257600060016000801b93509350935050611281565b8060008060001b935093509350505b9450945094915050565b6000600381111561129f5761129e611ce2565b5b8260038111156112b2576112b1611ce2565b5b03156113eb57600160038111156112cc576112cb611ce2565b5b8260038111156112df576112de611ce2565b5b03611316576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600381111561132a57611329611ce2565b5b82600381111561133d5761133c611ce2565b5b03611382578060001c6040517ffce698f70000000000000000000000000000000000000000000000000000000081526004016113799190611683565b60405180910390fd5b60038081111561139557611394611ce2565b5b8260038111156113a8576113a7611ce2565b5b036113ea57806040517fd78bce0c0000000000000000000000000000000000000000000000000000000081526004016113e19190611741565b60405180910390fd5b5b5050565b606060006113fc83611463565b90506000602067ffffffffffffffff81111561141b5761141a611adc565b5b6040519080825280601f01601f19166020018201604052801561144d5781602001600182028036833780820191505090505b5090508181528360208201528092505050919050565b60008060ff8360001c169050601f8111156114aa576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80915050919050565b600081519050919050565b600082825260208201905092915050565b60005b838110156114ed5780820151818401526020810190506114d2565b60008484015250505050565b6000601f19601f8301169050919050565b6000611515826114b3565b61151f81856114be565b935061152f8185602086016114cf565b611538816114f9565b840191505092915050565b6000602082019050818103600083015261155d818461150a565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115958261156a565b9050919050565b6115a58161158a565b81146115b057600080fd5b50565b6000813590506115c28161159c565b92915050565b6000819050919050565b6115db816115c8565b81146115e657600080fd5b50565b6000813590506115f8816115d2565b92915050565b6000806040838503121561161557611614611565565b5b6000611623858286016115b3565b9250506020611634858286016115e9565b9150509250929050565b60008115159050919050565b6116538161163e565b82525050565b600060208201905061166e600083018461164a565b92915050565b61167d816115c8565b82525050565b60006020820190506116986000830184611674565b92915050565b6000806000606084860312156116b7576116b6611565565b5b60006116c5868287016115b3565b93505060206116d6868287016115b3565b92505060406116e7868287016115e9565b9150509250925092565b600060ff82169050919050565b611707816116f1565b82525050565b600060208201905061172260008301846116fe565b92915050565b6000819050919050565b61173b81611728565b82525050565b60006020820190506117566000830184611732565b92915050565b60006020828403121561177257611771611565565b5b6000611780848285016115b3565b91505092915050565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6117be81611789565b82525050565b6117cd8161158a565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b611808816115c8565b82525050565b600061181a83836117ff565b60208301905092915050565b6000602082019050919050565b600061183e826117d3565b61184881856117de565b9350611853836117ef565b8060005b8381101561188457815161186b888261180e565b975061187683611826565b925050600181019050611857565b5085935050505092915050565b600060e0820190506118a6600083018a6117b5565b81810360208301526118b8818961150a565b905081810360408301526118cc818861150a565b90506118db6060830187611674565b6118e860808301866117c4565b6118f560a0830185611732565b81810360c08301526119078184611833565b905098975050505050505050565b60006020828403121561192b5761192a611565565b5b6000611939848285016115e9565b91505092915050565b61194b816116f1565b811461195657600080fd5b50565b60008135905061196881611942565b92915050565b61197781611728565b811461198257600080fd5b50565b6000813590506119948161196e565b92915050565b600080600080600080600060e0888a0312156119b9576119b8611565565b5b60006119c78a828b016115b3565b97505060206119d88a828b016115b3565b96505060406119e98a828b016115e9565b95505060606119fa8a828b016115e9565b9450506080611a0b8a828b01611959565b93505060a0611a1c8a828b01611985565b92505060c0611a2d8a828b01611985565b91505092959891949750929550565b60008060408385031215611a5357611a52611565565b5b6000611a61858286016115b3565b9250506020611a72858286016115b3565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611ac357607f821691505b602082108103611ad657611ad5611a7c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060c082019050611b206000830189611732565b611b2d60208301886117c4565b611b3a60408301876117c4565b611b476060830186611674565b611b546080830185611674565b611b6160a0830184611674565b979650505050505050565b6000604082019050611b8160008301856117c4565b611b8e60208301846117c4565b9392505050565b6000606082019050611baa60008301866117c4565b611bb76020830185611674565b611bc46040830184611674565b949350505050565b6000602082019050611be160008301846117c4565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611c21826115c8565b9150611c2c836115c8565b9250828201905080821115611c4457611c43611be7565b5b92915050565b600060a082019050611c5f6000830188611732565b611c6c6020830187611732565b611c796040830186611732565b611c866060830185611674565b611c9360808301846117c4565b9695505050505050565b6000608082019050611cb26000830187611732565b611cbf60208301866116fe565b611ccc6040830185611732565b611cd96060830184611732565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea2646970667358221220c51ce8b42527d2ce8102cc5f7c7edd7b833d4b96dea8efccbc2999c05b9bc4b964736f6c63430008180033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000003b9aca00000000000000000000000000000000000000000000000000000000000000000a5465737420546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085553445454657374000000000000000000000000000000000000000000000000
0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000003b9aca00000000000000000000000000000000000000000000000000000000000000000a5465737420546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000085553445454657374000000000000000000000000000000000000000000000000
----Decoded View------------Arg [0] : name (string): Test TokenArg [1] : symbol (string): USDTTestArg [2] : decimals_ (uint8): 6Arg [3] : initial_supply (uint256): 1000000000
----Encoded View------------Arg [0] : 0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000a5465737420546f6b656e00000000000000000000000000000000000000000000Arg [1] : 0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000085553445454657374000000000000000000000000000000000000000000000000Arg [2] : 0x0000000000000000000000000000000000000000000000000000000000000006Arg [3] : 0x000000000000000000000000000000000000000000000000000000003b9aca00