0 txs
39.1k calls
constructor
constructor()
functions
ADMIN_ROLE
viewfunction ADMIN_ROLE() view returns (bytes32)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRandomResult
viewfunction getRandomResult(address requester) view returns (uint256)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
REQUESTER_ROLE
viewfunction REQUESTER_ROLE() view returns (bytes32)
requestId
viewfunction requestId() view returns (uint256)
s_requesters
viewfunction s_requesters(uint256) view returns (address)
s_results
viewfunction s_results(address) view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
addRequester
nonpayablefunction addRequester(address requester)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
manuallyFulfillRandomness
nonpayablefunction manuallyFulfillRandomness(uint256 _requestId, uint256 randomResult)
removeRequester
nonpayablefunction removeRequester(address requester)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address callerConfirmation)
requestRandomness
nonpayablefunction requestRandomness(address requester) returns (uint256)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
events
RandomnessFulfilled
event RandomnessFulfilled(uint256 indexed requestId, uint256 indexed result)
RandomnessRequested
event RandomnessRequested(uint256 indexed requestId, address indexed requester)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
VariablesUpdated
event VariablesUpdated(uint256 subscriptionId, bytes32 keyHash, uint32 callbackGasLimit, uint16 requestConfirmations, uint32 numWords)
errors
AccessControlBadConfirmation
error AccessControlBadConfirmation()
AccessControlUnauthorizedAccount
error AccessControlUnauthorizedAccount(address account, bytes32 neededRole)
creation bytecode
0x608060405234801561001057600080fd5b5061001c60003361004d565b506100477fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217753361004d565b506100f9565b6000828152602081815260408083206001600160a01b038516845290915281205460ff166100ef576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556100a73390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016100f3565b5060005b92915050565b6108ec806101086000396000f3fe608060405234801561001057600080fd5b506004361061010a5760003560e01c806375b238fc116100a2578063a217fddf11610071578063a217fddf14610250578063c4c97c4e14610258578063d547741f14610278578063e4d609cc1461028b578063ead073c71461029e57600080fd5b806375b238fc146101d457806382659ac7146101e95780638c42eadf1461022a57806391d148541461023d57600080fd5b80632f2ff15d116100de5780632f2ff15d1461018657806336568abe146101995780634430db7e146101ac578063717ec666146101c157600080fd5b80626d6cae1461010f57806301ffc9a71461012b5780631107e77c1461014e578063248a9ca314610163575b600080fd5b61011860015481565b6040519081526020015b60405180910390f35b61013e610139366004610780565b6102b1565b6040519015158152602001610122565b61016161015c3660046107cd565b6102e8565b005b6101186101713660046107e8565b60009081526020819052604090206001015490565b610161610194366004610801565b61031c565b6101616101a7366004610801565b610347565b61011860008051602061087783398151915281565b6101186101cf3660046107cd565b61037f565b61011860008051602061089783398151915281565b6102126101f73660046107e8565b6002602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610122565b61016161023836600461082d565b610413565b61013e61024b366004610801565b610484565b610118600081565b6101186102663660046107cd565b60036020526000908152604090205481565b610161610286366004610801565b6104ad565b6101616102993660046107cd565b6104d2565b6101186102ac3660046107cd565b610502565b60006001600160e01b03198216637965db0b60e01b14806102e257506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008051602061089783398151915261030081610639565b610318600080516020610877833981519152836104ad565b5050565b60008281526020819052604090206001015461033781610639565b6103418383610646565b50505050565b6001600160a01b03811633146103705760405163334bd91960e11b815260040160405180910390fd5b61037a82826106d8565b505050565b6001600160a01b03811660009081526003602052604081205481036103ea57604080514260208201524491810191909152606083811b6bffffffffffffffffffffffff1916908201526074015b60408051601f19818403018152919052805160209091012092915050565b6001600160a01b03821660009081526003602090815260409182902054825191820152016103cc565b60008051602061089783398151915261042b81610639565b6000838152600260209081526040808320546001600160a01b03168084526003909252808320859055519091849186917f546aca7b2683440b8f02fa95faeb8efc79dd0f16af3d815a002742ea6f76116c91a350505050565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b6000828152602081905260409020600101546104c881610639565b61034183836106d8565b6000805160206108978339815191526104ea81610639565b6103186000805160206108778339815191528361031c565b600060008051602061087783398151915261051c81610639565b6001805490600061052c8361084f565b909155505060018054600090815260026020908152604080832080546001600160a01b0389166001600160a01b03199091161790559254925191926105a192429244928992909101938452602084019290925260601b6bffffffffffffffffffffffff19166040830152605482015260740190565b60408051601f1981840301815282825280516020918201206001600160a01b0388166000818152600390935292822081905560015490945091927f28f521cf7abd0044cba5bb040c5217ff69a4e5865f5262905018698e68fe7d009190a36001546040518291907f546aca7b2683440b8f02fa95faeb8efc79dd0f16af3d815a002742ea6f76116c90600090a3505060015492915050565b6106438133610743565b50565b60006106528383610484565b6106d0576000838152602081815260408083206001600160a01b03861684529091529020805460ff191660011790556106883390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016102e2565b5060006102e2565b60006106e48383610484565b156106d0576000838152602081815260408083206001600160a01b0386168085529252808320805460ff1916905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016102e2565b61074d8282610484565b6103185760405163e2517d3f60e01b81526001600160a01b03821660048201526024810183905260440160405180910390fd5b60006020828403121561079257600080fd5b81356001600160e01b0319811681146107aa57600080fd5b9392505050565b80356001600160a01b03811681146107c857600080fd5b919050565b6000602082840312156107df57600080fd5b6107aa826107b1565b6000602082840312156107fa57600080fd5b5035919050565b6000806040838503121561081457600080fd5b82359150610824602084016107b1565b90509250929050565b6000806040838503121561084057600080fd5b50508035926020909101359150565b60006001820161086f57634e487b7160e01b600052601160045260246000fd5b506001019056fe61a3517f153a09154844ed8be639dabc6e78dc22315c2d9a91f7eddf9398c002a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a264697066735822122047867447ff815ef78efce24060f9d00878b7caee436f7422b349ef0b88baaf7664736f6c63430008180033