0 txs
0 calls
constructor
No constructor.
functions
currentPoolEntriesVersion
viewfunction currentPoolEntriesVersion() view returns (uint256)
currentRandomNumber
viewfunction currentRandomNumber() view returns (uint256)
currentVrfRequestId
viewfunction currentVrfRequestId() view returns (uint256)
draws
viewfunction draws(uint256) view returns (uint256 drawId, uint256 totalEntries, uint256 randomNumber, uint256 poolVersion, address winnerTokenAddress, uint256 winnerTokenId, address winner, uint256 payout, uint32 timestamp)
getAuthorizedAddresses
viewfunction getAuthorizedAddresses() view returns (address[])
getDraws
viewfunction getDraws() view returns (tuple[])
getPoolEntriesByToken
viewfunction getPoolEntriesByToken() view returns (tuple[])
getPoolEntryByIndex
viewfunction getPoolEntryByIndex(uint256 index) view returns (tuple)
getPoolVersionAndEntries
viewfunction getPoolVersionAndEntries() view returns (uint256, uint256)
getTokenEntryInfo
viewfunction getTokenEntryInfo(address contractAddr, uint256 tokenId) view returns (tuple)
isLootBonusUsed
viewfunction isLootBonusUsed(uint256 lootTokenId) view returns (bool)
LOOT_BONUS
viewfunction LOOT_BONUS() view returns (uint8)
lootContract
viewfunction lootContract() view returns (address)
nextDrawId
viewfunction nextDrawId() view returns (uint64)
owner
viewfunction owner() view returns (address)
poolEntries
viewfunction poolEntries(uint256, uint256) view returns (address contractAddr, uint256 tokenId)
rpsContract
viewfunction rpsContract() view returns (address)
addPoolEntries
nonpayablefunction addPoolEntries(address contractAddr, uint256 tokenId, uint256 qty)
claimLootBonus
nonpayablefunction claimLootBonus(uint256 lootId, address contractAddr, uint256 tokenId)
drawWinner
nonpayablefunction drawWinner()
initialize
nonpayablefunction initialize(address _rpsContract, address _lootContract, address _link, address _vrfWrapper)
rawFulfillRandomWords
nonpayablefunction rawFulfillRandomWords(uint256 _requestId, uint256[] _randomWords)
renounceOwnership
nonpayablefunction renounceOwnership()
requestRandomNumber
nonpayablefunction requestRandomNumber()
resetRandomNumber
nonpayablefunction resetRandomNumber()
setAuthorizedAddresses
nonpayablefunction setAuthorizedAddresses(address[] authorizedAddresses_)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawLINK
nonpayablefunction withdrawLINK(address to, uint256 amount)
events
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
InvalidInitialization
error InvalidInitialization()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
creation bytecode
0x608060405234801561001057600080fd5b506128e5806100206000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80636806e9dc116100f95780639fddf3a111610097578063e00880ee11610071578063e00880ee146104e7578063ef843255146104ef578063f2fde38b146104f8578063f8c8765e1461050b57600080fd5b80639fddf3a1146104b7578063b2185bb1146104ca578063d39de6e9146104d257600080fd5b80638678a7b2116100d35780638678a7b21461047f5780638da5cb5b146104875780639084dfb61461048f578063983fbab2146104a457600080fd5b80636806e9dc1461042b578063693d544814610440578063715018a61461047757600080fd5b806335b48afd116101665780634bedf7b8116101405780634bedf7b8146103915780635618f6ff146103b15780635f819cad146103c457806366fdca8c1461040457600080fd5b806335b48afd1461032157806338a84ab41461034c578063441e52701461037e57600080fd5b80631efbed49116101a25780631efbed49146102b95780631fe543e3146102d357806322482f64146102e6578063258a7a881461031857600080fd5b8063011a8f2d146101c95780630cc36c36146101e5578063151ee122146102a4575b600080fd5b6101d260055481565b6040519081526020015b60405180910390f35b6102516101f3366004612193565b600360208190526000918252604090912080546001820154600283015493830154600484015460058501546006860154600787015460089097015495979496949593946001600160a01b039384169492939091169163ffffffff1689565b60408051998a5260208a01989098529688019590955260608701939093526001600160a01b03918216608087015260a08601521660c084015260e083015263ffffffff16610100820152610120016101dc565b6102b76102b236600461222a565b61051e565b005b6102c1606481565b60405160ff90911681526020016101dc565b6102b76102e13660046122c8565b61053d565b60025461030090600160a01b90046001600160401b031681565b6040516001600160401b0390911681526020016101dc565b6101d260095481565b600a54610334906001600160a01b031681565b6040516001600160a01b0390911681526020016101dc565b61035f61035a366004612364565b6105a6565b604080516001600160a01b0390931683526020830191909152016101dc565b600254610334906001600160a01b031681565b6103a461039f366004612386565b6105ec565b6040516101dc91906123ed565b6102b76103bf36600461241c565b610704565b6103f46103d2366004612193565b6009546000908152600b60209081526040808320938352929052205460ff1690565b60405190151581526020016101dc565b600954600081815260086020526040902054604080519283526020830191909152016101dc565b6104336107b4565b6040516101dc9190612451565b61045361044e366004612193565b610b13565b6040805182516001600160a01b0316815260209283015192810192909252016101dc565b6102b7610b83565b6102b7610b97565b610334610ce5565b610497610d13565b6040516101dc91906124ef565b6102b76104b2366004612386565b610ea3565b6102b76104c536600461259e565b610fd4565b6102b7611286565b6104da611765565b6040516101dc91906125d6565b6102b76117c7565b6101d260045481565b6102b7610506366004612623565b6118b6565b6102b7610519366004612640565b6118f4565b610526611a83565b8051610539906006906020840190612119565b5050565b6001546001600160a01b0316331461059c5760405162461bcd60e51b815260206004820152601f60248201527f6f6e6c792056524620563220777261707065722063616e2066756c66696c6c0060448201526064015b60405180910390fd5b6105398282611ab5565b600860205281600052604060002081815481106105c257600080fd5b6000918252602090912060029091020180546001909101546001600160a01b039091169250905082565b61061060405180606001604052806000815260200160008152602001606081525090565b60095460009081526007602090815260408083206001600160a01b0387168452909152812061063f9084611adf565b6009546000908152600c602090815260408083206001600160a01b038a168452825280832088845282528083208151808301835281548152600182018054845181870281018701909552808552969850949650949093858401939091908301828280156106cb57602002820191906000526020600020905b8154815260200190600101908083116106b7575b50505050508152505090506040518060600160405280838152602001826000015181526020018260200151815250925050505b92915050565b61076e600680548060200260200160405190810160405280929190818152602001828054801561075d57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161073f575b50505050506107693390565b611afd565b8061078857503361077d610ce5565b6001600160a01b0316145b6107a45760405162461bcd60e51b81526004016105939061269c565b6107af838383611b62565b505050565b6060600080600260009054906101000a90046001600160a01b031690506000816001600160a01b0316633a51f3836040518163ffffffff1660e01b8152600401600060405180830381865afa158015610811573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261083991908101906126c4565b905060005b81518110156108be576108a0600760006009548152602001908152602001600020600084848151811061087357610873612752565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020611c5b565b6108aa908561277e565b9350806108b681612791565b91505061083e565b506000836001600160401b038111156108d9576108d96121ac565b60405190808252806020026020018201604052801561094557816020015b6109326040518060a0016040528060006001600160a01b03168152602001600081526020016000815260200160008152602001606081525090565b8152602001906001900390816108f75790505b5090506000805b8351811015610b0857600084828151811061096957610969612752565b60209081029190910181015160095460009081526007835260408082206001600160a01b03841683529093529182209092506109a490611c5b565b905060005b81811015610af25760095460009081526007602090815260408083206001600160a01b0387168452909152812081906109e29084611c66565b6009546000908152600c602090815260408083206001600160a01b038b16845282528083208584528252808320815180830183528154815260018201805484518187028101870190955280855297995095975093959394909385840193830182828015610a6e57602002820191906000526020600020905b815481526020019060010190808311610a5a575b50505050508152505090506040518060a00160405280876001600160a01b03168152602001848152602001838152602001826000015181526020018260200151815250898981518110610ac357610ac3612752565b60200260200101819052508780610ad990612791565b9850505050508080610aea90612791565b9150506109a9565b5050508080610b0090612791565b91505061094c565b509095945050505050565b60408051808201909152600080825260208201526009546000908152600860205260409020805483908110610b4a57610b4a612752565b60009182526020918290206040805180820190915260029092020180546001600160a01b03168252600101549181019190915292915050565b610b8b611a83565b610b956000611c75565b565b610bfa600680548060200260200160405190810160405280929190818152602001828054801561075d576020028201919060005260206000209081546001600160a01b0316815260019091019060200180831161073f5750505050506107693390565b80610c14575033610c09610ce5565b6001600160a01b0316145b610c305760405162461bcd60e51b81526004016105939061269c565b60055415610c805760405162461bcd60e51b815260206004820152601960248201527f52616e646f6d206e756d62657220616c726561647920736574000000000000006044820152606401610593565b60045415610cd05760405162461bcd60e51b815260206004820152601f60248201527f52616e646f6d206e756d62657220616c726561647920726571756573746564006044820152606401610593565b610ce0620493e060036001611ce6565b600455565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6002546060906000906001600160401b03600160a01b909104811690811115610d3e57610d3e6121ac565b604051908082528060200260200182016040528015610dd657816020015b610dc36040518061012001604052806000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b0316815260200160008152602001600063ffffffff1681525090565b815260200190600190039081610d5c5790505b50905060005b8151811015610e9d576000818152600360208181526040928390208351610120810185528154815260018201549281019290925260028101549382019390935290820154606082015260048201546001600160a01b039081166080830152600583015460a083015260068301541660c0820152600782015460e082015260089091015463ffffffff166101008201528251839083908110610e7f57610e7f612752565b60200260200101819052508080610e9590612791565b915050610ddc565b50919050565b610eab611a83565b6000546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1791906127aa565b811115610f5d5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610593565b60005460405163a9059cbb60e01b81526001600160a01b038481166004830152602482018490529091169063a9059cbb906044016020604051808303816000875af1158015610fb0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107af91906127c3565b600254600160a01b90046001600160401b0316156110665760405162461bcd60e51b815260206004820152604360248201527f4c6f6f7420626f6e75732069732074656d706f726172696c792064697361626c60448201527f65642c20706c6561736520636865636b206261636b20696e206120666577206460648201526261797360e81b608482015260a401610593565b600a5461107c906001600160a01b031684611e7e565b6110c85760405162461bcd60e51b815260206004820152601960248201527f596f75206d757374206f776e20746865206c6f6f74204e4654000000000000006044820152606401610593565b6009546000908152600b6020908152604080832086845290915290205460ff16156111415760405162461bcd60e51b8152602060048201526024808201527f416c726561647920636c61696d656420666f72207468652063757272656e74206044820152636472617760e01b6064820152608401610593565b60095460009081526007602090815260408083206001600160a01b038616845290915281206111709083611adf565b915050600081116111d25760405162461bcd60e51b815260206004820152602660248201527f596f75206d75737420706c6179206174206c6561737420312067616d6520746f60448201526520636c61696d60d01b6064820152608401610593565b600980546000908152600b602090815260408083208884528252808320805460ff1916600117905592548252600c81528282206001600160a01b03871683528152828220858352905290812080546064929061122f90849061277e565b90915550506009546000908152600c602090815260408083206001600160a01b0387168452825280832085845282528220600190810180549182018155835291200184905561128083836064611b62565b50505050565b6112e9600680548060200260200160405190810160405280929190818152602001828054801561075d576020028201919060005260206000209081546001600160a01b0316815260019091019060200180831161073f5750505050506107693390565b806113035750336112f8610ce5565b6001600160a01b0316145b61131f5760405162461bcd60e51b81526004016105939061269c565b6000600554116113715760405162461bcd60e51b815260206004820152601960248201527f52616e646f6d206e756d626572206e6f742073657420796574000000000000006044820152606401610593565b600280546001600160401b03600160a01b9091041660008181526003602052604081209190915590546001600160a01b031690806113be6009546000818152600860205260409020549091565b91509150600181116114125760405162461bcd60e51b815260206004820152601760248201527f4e6f7420656e6f756768207061727469636970616e74730000000000000000006044820152606401610593565b600254600160a01b90046001600160401b031660009081526003602052604081206001018290556005546114479083906127e5565b9050600061145482610b13565b805160208201516040516331a9108f60e11b81529293506000926001600160a01b0390921691636352211e916114909160040190815260200190565b602060405180830381865afa1580156114ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d19190612807565b6005805460028054600160a01b908190046001600160401b0390811660009081526003602081815260408084208701979097558554859004841683528683209091018d90558951855485900484168352868320600490810180546001600160a01b03199081166001600160a01b03948516179091558c840151885488900487168652898620909a0199909955955494909404909216815284902060060180549095168683161790945582516328997d6560e11b815292519495508a16936322257d2f938593635132faca9381810193918290030181865afa1580156115ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115de9190612807565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa158015611622573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164691906127aa565b60028054600160a01b908190046001600160401b03908116600090815260036020526040808220600790810196909655845484900483168252808220600801805463ffffffff19164263ffffffff16179055935492909204168152819020909101549051637c4304ff60e01b81526001600160a01b038381166004830152602482019290925290871690637c4304ff90604401600060405180830381600087803b1580156116f357600080fd5b505af1158015611707573d6000803e3d6000fd5b50505050611713611e9c565b600060055560028054600160a01b90046001600160401b031690601461173883612824565b91906101000a8154816001600160401b0302191690836001600160401b0316021790555050505050505050565b606060068054806020026020016040519081016040528092919081815260200182805480156117bd57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161179f575b5050505050905090565b61182a600680548060200260200160405190810160405280929190818152602001828054801561075d576020028201919060005260206000209081546001600160a01b0316815260019091019060200180831161073f5750505050506107693390565b80611844575033611839610ce5565b6001600160a01b0316145b6118605760405162461bcd60e51b81526004016105939061269c565b6005546000036118aa5760405162461bcd60e51b815260206004820152601560248201527414985b991bdb481b9d5b58995c881b9bdd081cd95d605a1b6044820152606401610593565b60006005819055600455565b6118be611a83565b6001600160a01b0381166118e857604051631e4fbdf760e01b815260006004820152602401610593565b6118f181611c75565b50565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156119395750825b90506000826001600160401b031660011480156119555750303b155b905081158015611963575080155b156119815760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156119ab57845460ff60401b1916600160401b1785555b600280546001600160e01b0319166001600160a01b038b8116918217909255600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b03199081169092179055600a8054909116918a16919091179055611a2833611eb3565b611a328787611ec4565b8315611a7857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b33611a8c610ce5565b6001600160a01b031614610b955760405163118cdaa760e01b8152336004820152602401610593565b80600081518110611ac857611ac8612752565b602090810291909101015160055550506000600455565b6000808080611aee8686611efa565b909450925050505b9250929050565b6000805b8351811015611b5857826001600160a01b0316848281518110611b2657611b26612752565b60200260200101516001600160a01b031603611b465760019150506106fe565b80611b5081612791565b915050611b01565b5060009392505050565b60095460009081526007602090815260408083206001600160a01b03871684529091528120611b919084611adf565b9150611b9f9050828261277e565b60095460009081526007602090815260408083206001600160a01b03891684529091529020909150611bd2908483611f34565b5060005b82811015611c5457600954600090815260086020908152604080832081518083019092526001600160a01b038981168352828401898152825460018082018555938752949095209251600290940290920180546001600160a01b03191693909216929092178155915191015580611c4c81612791565b915050611bd6565b5050505050565b60006106fe82611f41565b6000808080611aee8686611f4c565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b600080546001546040516310c1b4d560e21b815263ffffffff871660048201526001600160a01b0392831692634000aea09216908190634306d35490602401602060405180830381865afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d6691906127aa565b6040805163ffffffff808b16602083015261ffff8a169282019290925290871660608201526080016040516020818303038152906040526040518463ffffffff1660e01b8152600401611dbb9392919061284a565b6020604051808303816000875af1158015611dda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dfe91906127c3565b50600160009054906101000a90046001600160a01b03166001600160a01b031663fc2a88c36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e7691906127aa565b949350505050565b600033611e8b8484611f77565b6001600160a01b0316149392505050565b60098054906000611eac83612791565b9190505550565b611ebb611fe5565b6118f18161202e565b611ecc611fe5565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b6000818152600283016020526040812054819080611f2957611f1c8585612036565b925060009150611af69050565b600192509050611af6565b6000611e76848484612049565b60006106fe82612066565b60008080611f5a8585612070565b600081815260029690960160205260409095205494959350505050565b6040516331a9108f60e11b81526004810182905260009083906001600160a01b03821690636352211e90602401602060405180830381865afa158015611fc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e769190612807565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610b9557604051631afcd79f60e31b815260040160405180910390fd5b6118be611fe5565b6000612042838361207c565b9392505050565b60008281526002840160205260408120829055611e768484612094565b60006106fe825490565b600061204283836120a0565b60008181526001830160205260408120541515612042565b600061204283836120ca565b60008260000182815481106120b7576120b7612752565b9060005260206000200154905092915050565b6000818152600183016020526040812054612111575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106fe565b5060006106fe565b82805482825590600052602060002090810192821561216e579160200282015b8281111561216e57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190612139565b5061217a92915061217e565b5090565b5b8082111561217a576000815560010161217f565b6000602082840312156121a557600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156121ea576121ea6121ac565b604052919050565b60006001600160401b0382111561220b5761220b6121ac565b5060051b60200190565b6001600160a01b03811681146118f157600080fd5b6000602080838503121561223d57600080fd5b82356001600160401b0381111561225357600080fd5b8301601f8101851361226457600080fd5b8035612277612272826121f2565b6121c2565b81815260059190911b8201830190838101908783111561229657600080fd5b928401925b828410156122bd5783356122ae81612215565b8252928401929084019061229b565b979650505050505050565b600080604083850312156122db57600080fd5b823591506020808401356001600160401b038111156122f957600080fd5b8401601f8101861361230a57600080fd5b8035612318612272826121f2565b81815260059190911b8201830190838101908883111561233757600080fd5b928401925b828410156123555783358252928401929084019061233c565b80955050505050509250929050565b6000806040838503121561237757600080fd5b50508035926020909101359150565b6000806040838503121561239957600080fd5b82356123a481612215565b946020939093013593505050565b600081518084526020808501945080840160005b838110156123e2578151875295820195908201906001016123c6565b509495945050505050565b60208152815160208201526020820151604082015260006040830151606080840152611e7660808401826123b2565b60008060006060848603121561243157600080fd5b833561243c81612215565b95602085013595506040909401359392505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156124e157888303603f19018552815180516001600160a01b03168452878101518885015286810151878501526060808201519085015260809081015160a0918501829052906124cd818601836123b2565b968901969450505090860190600101612478565b509098975050505050505050565b602080825282518282018190526000919060409081850190868401855b828110156125915781518051855286810151878601528581015186860152606080820151908601526080808201516001600160a01b039081169187019190915260a0808301519087015260c0808301519091169086015260e080820151908601526101009081015163ffffffff1690850152610120909301929085019060010161250c565b5091979650505050505050565b6000806000606084860312156125b357600080fd5b8335925060208401356125c581612215565b929592945050506040919091013590565b6020808252825182820181905260009190848201906040850190845b818110156126175783516001600160a01b0316835292840192918401916001016125f2565b50909695505050505050565b60006020828403121561263557600080fd5b813561204281612215565b6000806000806080858703121561265657600080fd5b843561266181612215565b9350602085013561267181612215565b9250604085013561268181612215565b9150606085013561269181612215565b939692955090935050565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b600060208083850312156126d757600080fd5b82516001600160401b038111156126ed57600080fd5b8301601f810185136126fe57600080fd5b805161270c612272826121f2565b81815260059190911b8201830190838101908783111561272b57600080fd5b928401925b828410156122bd57835161274381612215565b82529284019290840190612730565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156106fe576106fe612768565b6000600182016127a3576127a3612768565b5060010190565b6000602082840312156127bc57600080fd5b5051919050565b6000602082840312156127d557600080fd5b8151801515811461204257600080fd5b60008261280257634e487b7160e01b600052601260045260246000fd5b500690565b60006020828403121561281957600080fd5b815161204281612215565b60006001600160401b0380831681810361284057612840612768565b6001019392505050565b60018060a01b038416815260006020848184015260606040840152835180606085015260005b8181101561288c57858101830151858201608001528201612870565b506000608082860101526080601f19601f8301168501019250505094935050505056fea26469706673582212206a560baeed3b05dc25224ab1757200405780ab21b86edce3a6da48eb9b07d80864736f6c63430008140033