[
{
"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": "target",
"type": "address"
}
],
"name": "AddressEmptyCode",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "AddressInsufficientBalance",
"type": "error"
},
{
"inputs": [],
"name": "FailedInnerCall",
"type": "error"
},
{
"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"
},
{
"inputs": [],
"name": "CONTROLLER",
"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": [
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "doCall",
"outputs": [
{
"internalType": "bytes",
"name": "result",
"type": "bytes"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "doCallWithValue",
"outputs": [
{
"internalType": "bytes",
"name": "result",
"type": "bytes"
}
],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "doDelegateCall",
"outputs": [
{
"internalType": "bytes",
"name": "result",
"type": "bytes"
}
],
"stateMutability": "nonpayable",
"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": "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"
},
{
"stateMutability": "payable",
"type": "receive"
}
]0x608060405234801561000f575f80fd5b506040516109f63803806109f683398101604081905261002e916100e8565b6100385f8261003f565b5050610115565b5f828152602081815260408083206001600160a01b038516845290915281205460ff166100df575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556100973390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016100e2565b505f5b92915050565b5f602082840312156100f8575f80fd5b81516001600160a01b038116811461010e575f80fd5b9392505050565b6108d4806101225f395ff3fe60806040526004361061008e575f3560e01c806301ffc9a714610099578063248a9ca3146100cd5780632f2ff15d146100fa57806336568abe1461011b5780633aada4d21461013a5780638ce4a1f21461016657806391d1485414610185578063a217fddf146101a4578063d547741f146101b7578063d71f93f8146101d6578063ee0fc121146101e9575f80fd5b3661009557005b5f80fd5b3480156100a4575f80fd5b506100b86100b3366004610664565b610209565b60405190151581526020015b60405180910390f35b3480156100d8575f80fd5b506100ec6100e736600461068b565b61023f565b6040519081526020016100c4565b348015610105575f80fd5b506101196101143660046106bd565b610253565b005b348015610126575f80fd5b506101196101353660046106bd565b610275565b348015610145575f80fd5b50610159610154366004610783565b6102ad565b6040516100c491906107cd565b348015610171575f80fd5b50610159610180366004610783565b6102e1565b348015610190575f80fd5b506100b861019f3660046106bd565b61030d565b3480156101af575f80fd5b506100ec5f81565b3480156101c2575f80fd5b506101196101d13660046106bd565b610335565b6101596101e4366004610802565b610351565b3480156101f4575f80fd5b506100ec5f8051602061087f83398151915281565b5f6001600160e01b03198216637965db0b60e01b148061023957506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f9081526020819052604090206001015490565b61025c8261023f565b61026581610387565b61026f8383610394565b50505050565b6001600160a01b038116331461029e5760405163334bd91960e11b815260040160405180910390fd5b6102a88282610423565b505050565b60605f8051602061087f8339815191526102c681610387565b6102d96001600160a01b0385168461048c565b949350505050565b60605f8051602061087f8339815191526102fa81610387565b6102d96001600160a01b038516846104a0565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b61033e8261023f565b61034781610387565b61026f8383610423565b60605f8051602061087f83398151915261036a81610387565b61037e6001600160a01b0386168585610509565b95945050505050565b61039181336105ab565b50565b5f61039f838361030d565b61041c575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556103d43390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610239565b505f610239565b5f61042e838361030d565b1561041c575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610239565b606061049983835f610509565b9392505050565b60605f80846001600160a01b0316846040516104bc9190610854565b5f60405180830381855af49150503d805f81146104f4576040519150601f19603f3d011682016040523d82523d5f602084013e6104f9565b606091505b509150915061037e8583836105e8565b606081471015610537573060405163cd78605960e01b815260040161052e919061086a565b60405180910390fd5b5f80856001600160a01b031684866040516105529190610854565b5f6040518083038185875af1925050503d805f811461058c576040519150601f19603f3d011682016040523d82523d5f602084013e610591565b606091505b50915091506105a18683836105e8565b9695505050505050565b6105b5828261030d565b6105e45760405163e2517d3f60e01b81526001600160a01b03821660048201526024810183905260440161052e565b5050565b6060826105fd576105f88261063b565b610499565b815115801561061457506001600160a01b0384163b155b156106345783604051639996b31560e01b815260040161052e919061086a565b5080610499565b80511561064b5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b5f60208284031215610674575f80fd5b81356001600160e01b031981168114610499575f80fd5b5f6020828403121561069b575f80fd5b5035919050565b80356001600160a01b03811681146106b8575f80fd5b919050565b5f80604083850312156106ce575f80fd5b823591506106de602084016106a2565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f83011261070a575f80fd5b81356001600160401b0380821115610724576107246106e7565b604051601f8301601f19908116603f0116810190828211818310171561074c5761074c6106e7565b81604052838152866020858801011115610764575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f8060408385031215610794575f80fd5b61079d836106a2565b915060208301356001600160401b038111156107b7575f80fd5b6107c3858286016106fb565b9150509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f805f60608486031215610814575f80fd5b61081d846106a2565b925060208401356001600160401b03811115610837575f80fd5b610843868287016106fb565b925050604084013590509250925092565b5f82518060208501845e5f920191825250919050565b6001600160a01b039190911681526020019056fe70546d1c92f8c2132ae23a23f5177aa8526356051c7510df99f50e012d221529a26469706673582212209e5ca97302df4e0dbd7c4daadefd542208411d173e494c8f7fcb239992454a2464736f6c634300081900330000000000000000000000004b803781828b76eabf21aaf02e5ce23596b4d60c
0x60806040526004361061008e575f3560e01c806301ffc9a714610099578063248a9ca3146100cd5780632f2ff15d146100fa57806336568abe1461011b5780633aada4d21461013a5780638ce4a1f21461016657806391d1485414610185578063a217fddf146101a4578063d547741f146101b7578063d71f93f8146101d6578063ee0fc121146101e9575f80fd5b3661009557005b5f80fd5b3480156100a4575f80fd5b506100b86100b3366004610664565b610209565b60405190151581526020015b60405180910390f35b3480156100d8575f80fd5b506100ec6100e736600461068b565b61023f565b6040519081526020016100c4565b348015610105575f80fd5b506101196101143660046106bd565b610253565b005b348015610126575f80fd5b506101196101353660046106bd565b610275565b348015610145575f80fd5b50610159610154366004610783565b6102ad565b6040516100c491906107cd565b348015610171575f80fd5b50610159610180366004610783565b6102e1565b348015610190575f80fd5b506100b861019f3660046106bd565b61030d565b3480156101af575f80fd5b506100ec5f81565b3480156101c2575f80fd5b506101196101d13660046106bd565b610335565b6101596101e4366004610802565b610351565b3480156101f4575f80fd5b506100ec5f8051602061087f83398151915281565b5f6001600160e01b03198216637965db0b60e01b148061023957506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f9081526020819052604090206001015490565b61025c8261023f565b61026581610387565b61026f8383610394565b50505050565b6001600160a01b038116331461029e5760405163334bd91960e11b815260040160405180910390fd5b6102a88282610423565b505050565b60605f8051602061087f8339815191526102c681610387565b6102d96001600160a01b0385168461048c565b949350505050565b60605f8051602061087f8339815191526102fa81610387565b6102d96001600160a01b038516846104a0565b5f918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b61033e8261023f565b61034781610387565b61026f8383610423565b60605f8051602061087f83398151915261036a81610387565b61037e6001600160a01b0386168585610509565b95945050505050565b61039181336105ab565b50565b5f61039f838361030d565b61041c575f838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556103d43390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a4506001610239565b505f610239565b5f61042e838361030d565b1561041c575f838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a4506001610239565b606061049983835f610509565b9392505050565b60605f80846001600160a01b0316846040516104bc9190610854565b5f60405180830381855af49150503d805f81146104f4576040519150601f19603f3d011682016040523d82523d5f602084013e6104f9565b606091505b509150915061037e8583836105e8565b606081471015610537573060405163cd78605960e01b815260040161052e919061086a565b60405180910390fd5b5f80856001600160a01b031684866040516105529190610854565b5f6040518083038185875af1925050503d805f811461058c576040519150601f19603f3d011682016040523d82523d5f602084013e610591565b606091505b50915091506105a18683836105e8565b9695505050505050565b6105b5828261030d565b6105e45760405163e2517d3f60e01b81526001600160a01b03821660048201526024810183905260440161052e565b5050565b6060826105fd576105f88261063b565b610499565b815115801561061457506001600160a01b0384163b155b156106345783604051639996b31560e01b815260040161052e919061086a565b5080610499565b80511561064b5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b5f60208284031215610674575f80fd5b81356001600160e01b031981168114610499575f80fd5b5f6020828403121561069b575f80fd5b5035919050565b80356001600160a01b03811681146106b8575f80fd5b919050565b5f80604083850312156106ce575f80fd5b823591506106de602084016106a2565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f83011261070a575f80fd5b81356001600160401b0380821115610724576107246106e7565b604051601f8301601f19908116603f0116810190828211818310171561074c5761074c6106e7565b81604052838152866020858801011115610764575f80fd5b836020870160208301375f602085830101528094505050505092915050565b5f8060408385031215610794575f80fd5b61079d836106a2565b915060208301356001600160401b038111156107b7575f80fd5b6107c3858286016106fb565b9150509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f805f60608486031215610814575f80fd5b61081d846106a2565b925060208401356001600160401b03811115610837575f80fd5b610843868287016106fb565b925050604084013590509250925092565b5f82518060208501845e5f920191825250919050565b6001600160a01b039190911681526020019056fe70546d1c92f8c2132ae23a23f5177aa8526356051c7510df99f50e012d221529a26469706673582212209e5ca97302df4e0dbd7c4daadefd542208411d173e494c8f7fcb239992454a2464736f6c63430008190033
0x0000000000000000000000004b803781828b76eabf21aaf02e5ce23596b4d60c
----Decoded View------------Arg [0] : admin (address): 0x4b803781828b76EaBF21AaF02e5ce23596b4d60c
----Encoded View------------Arg [0] : 0x0000000000000000000000004b803781828b76eabf21aaf02e5ce23596b4d60c