[ { "inputs": [ { "internalType": "address", "name": "_admin", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AccessControlBadConfirmation", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bytes32", "name": "neededRole", "type": "bytes32" } ], "name": "AccessControlUnauthorizedAccount", "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" }, { "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": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "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": "ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "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": [], "name": "MINTER_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "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": [ { "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": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "burnFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" }, { "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": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "callerConfirmation", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": "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" } ]
608060405234801561001057600080fd5b5060405161122038038061122083398101604081905261002f91610378565b604051806040016040528060068152602001650ccf0c6c2e6d60d31b8152506040518060400160405280600681526020016508cb08682a6960d31b815250816003908161007c9190610447565b5060046100898282610447565b506100a7915060008051602061120083398151915290506000610114565b6100cd6000805160206111e0833981519152600080516020611200833981519152610114565b6100e56000805160206112008339815191528261015f565b506100fe6000805160206111e08339815191528261015f565b5061010e8164174876e80061020f565b50610526565b600082815260056020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60008281526005602090815260408083206001600160a01b038516845290915281205460ff166102055760008381526005602090815260408083206001600160a01b03861684529091529020805460ff191660011790556101bd3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610209565b5060005b92915050565b6001600160a01b03821661023e5760405163ec442f0560e01b8152600060048201526024015b60405180910390fd5b61024a6000838361024e565b5050565b6001600160a01b03831661027957806002600082825461026e9190610505565b909155506102eb9050565b6001600160a01b038316600090815260208190526040902054818110156102cc5760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610235565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b03821661030757600280548290039055610326565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161036b91815260200190565b60405180910390a3505050565b60006020828403121561038a57600080fd5b81516001600160a01b03811681146103a157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806103d257607f821691505b6020821081036103f257634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561044257806000526020600020601f840160051c8101602085101561041f5750805b601f840160051c820191505b8181101561043f576000815560010161042b565b50505b505050565b81516001600160401b03811115610460576104606103a8565b6104748161046e84546103be565b846103f8565b6020601f8211600181146104a857600083156104905750848201515b600019600385901b1c1916600184901b17845561043f565b600084815260208120601f198516915b828110156104d857878501518255602094850194600190920191016104b8565b50848210156104f65786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b8082018082111561020957634e487b7160e01b600052601160045260246000fd5b610cab806105356000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c806370a08231116100c3578063a3f4df7e1161007c578063a3f4df7e146102e4578063a9059cbb14610309578063d53913931461031c578063d547741f14610343578063dd62ed3e14610356578063f76f8d781461038f57600080fd5b806370a082311461025e57806375b238fc1461028757806379cc6790146102ae57806391d14854146102c157806395d89b41146102d4578063a217fddf146102dc57600080fd5b80632f2ff15d116101155780632f2ff15d146101f55780632ff2e9dc1461020a578063313ce5671461021657806336568abe1461022557806340c10f191461023857806342966c681461024b57600080fd5b806301ffc9a71461015d57806306fdde0314610185578063095ea7b31461019a57806318160ddd146101ad57806323b872dd146101bf578063248a9ca3146101d2575b600080fd5b61017061016b366004610a8e565b6103b4565b60405190151581526020015b60405180910390f35b61018d6103eb565b60405161017c9190610abf565b6101706101a8366004610b29565b61047d565b6002545b60405190815260200161017c565b6101706101cd366004610b53565b610495565b6101b16101e0366004610b90565b60009081526005602052604090206001015490565b610208610203366004610ba9565b6104b9565b005b6101b164174876e80081565b6040516012815260200161017c565b610208610233366004610ba9565b6104e4565b610208610246366004610b29565b61051c565b610208610259366004610b90565b610550565b6101b161026c366004610bd5565b6001600160a01b031660009081526020819052604090205490565b6101b17fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b6102086102bc366004610b29565b61055c565b6101706102cf366004610ba9565b61056a565b61018d610595565b6101b1600081565b61018d604051806040016040528060068152602001650ccf0c6c2e6d60d31b81525081565b610170610317366004610b29565b6105a4565b6101b17f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610208610351366004610ba9565b6105b2565b6101b1610364366004610bf0565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61018d6040518060400160405280600681526020016508cb08682a6960d31b81525081565b60006001600160e01b03198216637965db0b60e01b14806103e557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600380546103fa90610c1a565b80601f016020809104026020016040519081016040528092919081815260200182805461042690610c1a565b80156104735780601f1061044857610100808354040283529160200191610473565b820191906000526020600020905b81548152906001019060200180831161045657829003601f168201915b5050505050905090565b60003361048b8185856105d7565b5060019392505050565b6000336104a38582856105e4565b6104ae858585610661565b506001949350505050565b6000828152600560205260409020600101546104d4816106c0565b6104de83836106ca565b50505050565b6001600160a01b038116331461050d5760405163334bd91960e11b815260040160405180910390fd5b610517828261075e565b505050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610546816106c0565b61051783836107cb565b61055981610801565b50565b610566828261080b565b5050565b60009182526005602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6060600480546103fa90610c1a565b60003361048b818585610661565b6000828152600560205260409020600101546105cd816106c0565b6104de838361075e565b6105178383836001610820565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146104de578181101561065257604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b6104de84848484036000610820565b6001600160a01b03831661068b57604051634b637e8f60e11b815260006004820152602401610649565b6001600160a01b0382166106b55760405163ec442f0560e01b815260006004820152602401610649565b6105178383836108f5565b6105598133610a1f565b60006106d6838361056a565b6107565760008381526005602090815260408083206001600160a01b03861684529091529020805460ff1916600117905561070e3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016103e5565b5060006103e5565b600061076a838361056a565b156107565760008381526005602090815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016103e5565b6001600160a01b0382166107f55760405163ec442f0560e01b815260006004820152602401610649565b610566600083836108f5565b6105593382610a58565b6108168233836105e4565b6105668282610a58565b6001600160a01b03841661084a5760405163e602df0560e01b815260006004820152602401610649565b6001600160a01b03831661087457604051634a1406b160e11b815260006004820152602401610649565b6001600160a01b03808516600090815260016020908152604080832093871683529290522082905580156104de57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516108e791815260200190565b60405180910390a350505050565b6001600160a01b0383166109205780600260008282546109159190610c54565b909155506109929050565b6001600160a01b038316600090815260208190526040902054818110156109735760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610649565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166109ae576002805482900390556109cd565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610a1291815260200190565b60405180910390a3505050565b610a29828261056a565b6105665760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610649565b6001600160a01b038216610a8257604051634b637e8f60e11b815260006004820152602401610649565b610566826000836108f5565b600060208284031215610aa057600080fd5b81356001600160e01b031981168114610ab857600080fd5b9392505050565b602081526000825180602084015260005b81811015610aed5760208186018101516040868401015201610ad0565b506000604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610b2457600080fd5b919050565b60008060408385031215610b3c57600080fd5b610b4583610b0d565b946020939093013593505050565b600080600060608486031215610b6857600080fd5b610b7184610b0d565b9250610b7f60208501610b0d565b929592945050506040919091013590565b600060208284031215610ba257600080fd5b5035919050565b60008060408385031215610bbc57600080fd5b82359150610bcc60208401610b0d565b90509250929050565b600060208284031215610be757600080fd5b610ab882610b0d565b60008060408385031215610c0357600080fd5b610c0c83610b0d565b9150610bcc60208401610b0d565b600181811c90821680610c2e57607f821691505b602082108103610c4e57634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156103e557634e487b7160e01b600052601160045260246000fdfea26469706673582212207603f468b0c8ee186b467079ea98743a67c937b5425af6ba110e9a1929fa97ab64736f6c634300081b00339f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177500000000000000000000000015aed2c71b500fc3265c196d134b2f21f8ee812b
0x9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177500000000000000000000000015aed2c71b500fc3265c196d134b2f21f8ee812b
----Decoded View------------Arg [0] : _admin (address): 0xCc508cD0818C85b8b8a1aB4cEEef8d981c8956A6
----Encoded View------------Arg [0] : 0x000000000000000000000000cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6