9 txs
30.2k calls
constructor
constructor(address tipEngine, address token)
functions
buybackPercent
viewfunction buybackPercent() view returns (uint256)
currentRound
viewfunction currentRound() view returns (uint256)
entropy
viewfunction entropy() view returns (address)
getEntryAt
viewfunction getEntryAt(uint256 index) view returns (tuple)
getEntryCount
viewfunction getEntryCount() view returns (uint256)
getExecutors
viewfunction getExecutors() view returns (address[])
getRoundEntryAt
viewfunction getRoundEntryAt(uint256 round, uint256 index) view returns (tuple)
getRoundEntryCount
viewfunction getRoundEntryCount(uint256 round) view returns (uint256)
LPLOCKER
viewfunction LPLOCKER() view returns (address)
numTickets
viewfunction numTickets() view returns (uint256)
owner
viewfunction owner() view returns (address)
rounds
viewfunction rounds(uint256) view returns (address tipperAddress, address creatorAddress, uint256 totalUsdc, uint256 tipperWinnings, uint256 creatorWinnings, uint256 buybackUsdc, uint256 buybackTokens, uint256 winningIndex, uint256 winningTicket, uint256 sequenceNumber, bool winnerRequested, bool winnerSelected, bool winnerPaid)
ROUTER
viewfunction ROUTER() view returns (address)
SWAP_ROUTER
viewfunction SWAP_ROUTER() view returns (address)
TICKET_PRICE
viewfunction TICKET_PRICE() view returns (uint256)
TIPENGINE
viewfunction TIPENGINE() view returns (address)
TOKEN
viewfunction TOKEN() view returns (address)
USDC
viewfunction USDC() view returns (address)
WETH
viewfunction WETH() view returns (address)
_entropyCallback
nonpayablefunction _entropyCallback(uint64 sequence, address, bytes32 randomNumber)
addExecutor
nonpayablefunction addExecutor(address executor)
exit
nonpayablefunction exit(address recipient)
onTip
nonpayablefunction onTip(address from, address to, address, uint256 quantity, bytes)
randomize
payablefunction randomize() payable
removeExecutor
nonpayablefunction removeExecutor(address executor)
renounceOwnership
nonpayablefunction renounceOwnership()
reward
nonpayablefunction reward()
setBuybackPercent
nonpayablefunction setBuybackPercent(uint256 newBuybackPercent)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x60c0604052600380546001600160a01b031916736e7d74fa7d5c90fef9f0512987605a6d546181bb179055348015610035575f80fd5b50604051612600380380612600833981016040819052610054916101f8565b61005d33610125565b60326008556004805460010181555f8190526001600160a01b03828116608052831660a05260405163095ea7b360e01b8152732626664c2603336e57b271c5c0b26f421741e481918101919091525f19602482015273833589fcd6edb6e08f4c7c32d4f71b54bda029139063095ea7b3906044016020604051808303815f875af11580156100ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101119190610229565b5061011d600133610174565b50505061024f565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f610188836001600160a01b038416610191565b90505b92915050565b5f8181526001830160205260408120546101d657508154600181810184555f84815260208082209093018490558454848252828601909352604090209190915561018b565b505f61018b565b80516001600160a01b03811681146101f3575f80fd5b919050565b5f8060408385031215610209575f80fd5b610212836101dd565b9150610220602084016101dd565b90509250929050565b5f60208284031215610239575f80fd5b81518015158114610248575f80fd5b9392505050565b60805160a05161237461028c5f395f81816104290152610e8801525f81816103f60152818161099f01528181610a4a01526119ab01526123745ff3fe6080604052600436106101bd575f3560e01c80637a360e65116100f2578063ad5c464811610092578063e4412f6811610062578063e4412f68146105b4578063ef09e78f146105c9578063f2fde38b146105ea578063f661653a14610609575f80fd5b8063ad5c464814610535578063af2f6dd81461054f578063b42652e91461056e578063c60058931461058d575f80fd5b806389a30271116100cd57806389a302711461044b5780638a19c8bc146104725780638c65c81f146104875780638da5cb5b14610519575f80fd5b80637a360e65146103c357806382bfefc8146103e5578063854dc27f14610418575f80fd5b8063398fa1b71161015d57806352a5f1f81161013857806352a5f1f8146103695780635c230fa914610388578063699b328a146103a7578063715018a6146103af575f80fd5b8063398fa1b7146102c357806347ce07cc1461032357806349c6a3bb14610342575f80fd5b806324788429116101985780632478842914610225578063249238b01461024457806332fe7b261461026f578063353d90ec146102ae575f80fd5b80631a95f15f146101c85780631f5a0bbe146101f0578063228cb73314610211575f80fd5b366101c457005b5f80fd5b3480156101d3575f80fd5b506101dd61271081565b6040519081526020015b60405180910390f35b3480156101fb575f80fd5b5061020f61020a366004611ed3565b610628565b005b34801561021c575f80fd5b5061020f61063f565b348015610230575f80fd5b5061020f61023f366004611ed3565b610c8d565b34801561024f575f80fd5b506101dd61025e366004611eee565b5f9081526005602052604090205490565b34801561027a575f80fd5b50610296736ff5693b99212da76ad316178a184ab56d299b4381565b6040516001600160a01b0390911681526020016101e7565b3480156102b9575f80fd5b506101dd60075481565b3480156102ce575f80fd5b506102e26102dd366004611eee565b610ca0565b6040516101e7919081516001600160a01b03908116825260208084015190911690820152604080830151908201526060918201519181019190915260800190565b34801561032e575f80fd5b50600354610296906001600160a01b031681565b34801561034d575f80fd5b5061029673b91a800a9378827e64096c0b28955484c8be0a2581565b348015610374575f80fd5b5061020f610383366004611f1a565b610d1c565b348015610393575f80fd5b5061020f6103a2366004611f58565b610e7d565b61020f6110e4565b3480156103ba575f80fd5b5061020f611401565b3480156103ce575f80fd5b506006545f908152600560205260409020546101dd565b3480156103f0575f80fd5b506102967f000000000000000000000000000000000000000000000000000000000000000081565b348015610423575f80fd5b506102967f000000000000000000000000000000000000000000000000000000000000000081565b348015610456575f80fd5b5061029673833589fcd6edb6e08f4c7c32d4f71b54bda0291381565b34801561047d575f80fd5b506101dd60065481565b348015610492575f80fd5b506104a66104a1366004611eee565b611414565b604080516001600160a01b039e8f1681529d909c1660208e01529a8c019990995260608b019790975260808a019590955260a089019390935260c088019190915260e08701526101008601526101208501521515610140840152151561016083015215156101808201526101a0016101e7565b348015610524575f80fd5b505f546001600160a01b0316610296565b348015610540575f80fd5b506102966006602160991b0181565b34801561055a575f80fd5b5061020f610569366004611eee565b61149f565b348015610579575f80fd5b5061020f610588366004611ed3565b61150a565b348015610598575f80fd5b50610296732626664c2603336e57b271c5c0b26f421741e48181565b3480156105bf575f80fd5b506101dd60085481565b3480156105d4575f80fd5b506105dd611652565b6040516101e79190612006565b3480156105f5575f80fd5b5061020f610604366004611ed3565b611663565b348015610614575f80fd5b506102e2610623366004612051565b6116dc565b610630611758565b61063b6001826117b1565b5050565b5f60046006548154811061065557610655612071565b5f9182526020909120600b90910201600a81015490915060ff166106b95760405162461bcd60e51b8152602060048201526016602482015275115b9d1c9a595cc81b9bdd081c985b991bdb5a5e995960521b60448201526064015b60405180910390fd5b600a810154610100900460ff166107085760405162461bcd60e51b815260206004820152601360248201527215da5b9b995c881b9bdd081cd95b1958dd1959606a1b60448201526064016106b0565b600a81015462010000900460ff16156107595760405162461bcd60e51b815260206004820152601360248201527215da5b9b995c88185b1c9958591e481c185a59606a1b60448201526064016106b0565b6006545f90815260056020526040812060088301548154919290918190819061078490600190612099565b90505b80831161084957600261079a84836120ac565b6107a491906120d3565b91508482815481106107b8576107b8612071565b905f5260205f2090600402016002015484101580156107f857508482815481106107e4576107e4612071565b905f5260205f209060040201600301548411155b6108495784828154811061080e5761080e612071565b905f5260205f2090600402016002015484101561083757610830600183612099565b9050610787565b6108428260016120ac565b9250610787565b84828154811061085b5761085b612071565b5f91825260209091206004909102015486546001600160a01b0319166001600160a01b03909116178655845485908390811061089957610899612071565b5f918252602082206001600492830290910181015490890180546001600160a01b0319166001600160a01b03909216919091179055600788018490556040516370a0823160e01b8152309181019190915273833589fcd6edb6e08f4c7c32d4f71b54bda02913906370a0823190602401602060405180830381865afa158015610924573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094891906120e6565b90508087600201819055505f60646008548361096491906120fd565b61096e91906120d3565b600589018190559050610988610983826117cc565b61199b565b6040516370a0823160e01b81523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa1580156109ec573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1091906120e6565b60068a0181905560405163a9059cbb60e01b815273b91a800a9378827e64096c0b28955484c8be0a256004820152602481018290529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610a98573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610abc9190612114565b506040516370a0823160e01b81523060048201525f9060029073833589fcd6edb6e08f4c7c32d4f71b54bda02913906370a0823190602401602060405180830381865afa158015610b0f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3391906120e6565b610b3d91906120d3565b60038b018190556004808c01829055600a8c01805462ff00001916620100001790558b5460405163a9059cbb60e01b815292935073833589fcd6edb6e08f4c7c32d4f71b54bda029139263a9059cbb92610bb7926001600160a01b0316918691016001600160a01b03929092168252602082015260400190565b6020604051808303815f875af1158015610bd3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bf79190612114565b5060018a015460405163a9059cbb60e01b81526001600160a01b0390911660048201526024810182905273833589fcd6edb6e08f4c7c32d4f71b54bda029139063a9059cbb906044016020604051808303815f875af1158015610c5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c809190612114565b5050505050505050505050565b610c95611758565b61063b600182611c71565b610ca8611e89565b6006545f908152600560205260409020805483908110610cca57610cca612071565b5f91825260209182902060408051608081018252600490930290910180546001600160a01b03908116845260018201541693830193909352600283015490820152600390910154606082015292915050565b5f600460065481548110610d3257610d32612071565b5f9182526020909120600354600b9092020191506001600160a01b03163314610d9d5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c7920456e74726f70792070726f76696465722063616e2063616c6c000060448201526064016106b0565b80600901548467ffffffffffffffff1614610dfa5760405162461bcd60e51b815260206004820152601760248201527f496e76616c69642073657175656e6365206e756d62657200000000000000000060448201526064016106b0565b600a810154610100900460ff1615610e545760405162461bcd60e51b815260206004820152601760248201527f57696e6e657220616c72656164792073656c656374656400000000000000000060448201526064016106b0565b600a8101805461ff001916610100179055600754610e729083612133565b600890910155505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610ee05760405162461bcd60e51b81526020600482015260086024820152672737ba102a34b83760c11b60448201526064016106b0565b5f600460065481548110610ef657610ef6612071565b5f9182526020909120600b90910201600a81015490915060ff168015610f255750600a810154610100900460ff165b15610fea57600a81015462010000900460ff16610fc55760405163a9059cbb60e01b81526001600160a01b03871660048201526024810185905273833589fcd6edb6e08f4c7c32d4f71b54bda029139063a9059cbb906044016020604051808303815f875af1158015610f9a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbe9190612114565b50506110dc565b60068054905f610fd483612146565b90915550506004805460010181555f9081526007555b6007545f610ffa612710876120d3565b905080156110d85760055f60065481526020019081526020015f2060405180608001604052808b6001600160a01b031681526020018a6001600160a01b031681526020018481526020016001848661105291906120ac565b61105c9190612099565b90528154600180820184555f9384526020808520845160049094020180546001600160a01b03199081166001600160a01b039586161782559185015192810180549092169290931691909117905560408201516002820155606090910151600390910155600780548392906110d29084906120ac565b90915550505b5050505b505050505050565b6110ef600133611c85565b61112a5760405162461bcd60e51b815260206004820152600c60248201526b2737ba1022bc32b1baba37b960a11b60448201526064016106b0565b5f60046006548154811061114057611140612071565b5f9182526020909120600b90910201600a81015490915060ff16156111a75760405162461bcd60e51b815260206004820152601860248201527f57696e6e657220616c726561647920726571756573746564000000000000000060448201526064016106b0565b6006545f908152600560205260409020546111f15760405162461bcd60e51b815260206004820152600a6024820152694e6f20656e747269657360b01b60448201526064016106b0565b600a8101805460ff19166001179055600354604080516320bba64360e21b815290515f926001600160a01b0316916382ee990c9160048083019260209291908290030181865afa158015611247573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061126b919061215e565b600354604051631711922960e31b81526001600160a01b0380841660048301529293505f929091169063b88c914890602401602060405180830381865afa1580156112b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112dc91906120e6565b90508047101561133a5760405162461bcd60e51b8152602060048201526024808201527f496e73756666696369656e742066756e647320666f722072616e646f6d697a616044820152633a34b7b760e11b60648201526084016106b0565b5f6007544361134991906120fd565b60405160200161135b91815260200190565b60408051808303601f190181529082905280516020909101206003546319cb825f60e01b83526001600160a01b0386811660048501526024840183905291935016906319cb825f90849060440160206040518083038185885af11580156113c4573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906113e99190612179565b67ffffffffffffffff16846009018190555050505050565b611409611758565b6114125f611ca6565b565b60048181548110611423575f80fd5b5f9182526020909120600b9091020180546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a909a01546001600160a01b03998a169b5097909816989597949693959294919390929060ff80821691610100810482169162010000909104168d565b6114a7611758565b600a81101580156114b95750605a8111155b6115055760405162461bcd60e51b815260206004820152601760248201527f496e76616c6964206275796261636b2070657263656e7400000000000000000060448201526064016106b0565b600855565b611512611758565b6040516370a0823160e01b81523060048201525f9073833589fcd6edb6e08f4c7c32d4f71b54bda02913906370a0823190602401602060405180830381865afa158015611561573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061158591906120e6565b90504781156116125760405163a9059cbb60e01b81526001600160a01b03841660048201526024810183905273833589fcd6edb6e08f4c7c32d4f71b54bda029139063a9059cbb906044016020604051808303815f875af11580156115ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116109190612114565b505b801561164d576040516001600160a01b0384169082156108fc029083905f818181858888f1935050505015801561164b573d5f803e3d5ffd5b505b505050565b606061165e6001611cf5565b905090565b61166b611758565b6001600160a01b0381166116d05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106b0565b6116d981611ca6565b50565b6116e4611e89565b5f83815260056020526040902080548390811061170357611703612071565b5f91825260209182902060408051608081018252600490930290910180546001600160a01b03908116845260018201541693830193909352600283015490820152600390910154606082015290505b92915050565b5f546001600160a01b031633146114125760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106b0565b5f6117c5836001600160a01b038416611d01565b9392505050565b6040805160e08101825273833589fcd6edb6e08f4c7c32d4f71b54bda0291381526006602160991b01602082019081526101f48284019081523060608401908152608084018681525f60a0860181815260c0870182815297516304e45aaf60e01b815296516001600160a01b039081166004890152955186166024880152935162ffffff166044870152915184166064860152516084850152905160a484015292511660c4820152732626664c2603336e57b271c5c0b26f421741e481906304e45aaf9060e4016020604051808303815f875af11580156118af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118d391906120e6565b506040516370a0823160e01b81523060048201525f906006602160991b01906370a0823190602401602060405180830381865afa158015611916573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061193a91906120e6565b9050801561175257604051632e1a7d4d60e01b8152600481018290526006602160991b0190632e1a7d4d906024015f604051808303815f87803b15801561197f575f80fd5b505af1158015611991573d5f803e3d5ffd5b5050505092915050565b6040805160a0810182525f8082527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166020808401919091526175308385015260c86060840152608083018290528351600160fc1b91810191909152835160018183038101825260218301818152606184019096529394909390916041015b6060815260200190600190039081611a2257505060408051600360f91b6020820152600360fa1b6021820152600f60f81b602282015281516003818303810182526023830181815260a38401909452939450925f92916043015b6060815260200190600190039081611a7c5750506040805160a08101825287815260016020808301919091526001600160801b038a16828401525f606083018190528351808301855290815260808301529151929350611ade929091016121c2565b604051602081830303815290604052815f81518110611aff57611aff612071565b6020026020010181905250845f015186604051602001611b349291906001600160a01b03929092168252602082015260400190565b60405160208183030381529060405281600181518110611b5657611b56612071565b602002602001018190525084602001515f604051602001611b8f9291906001600160a01b0392909216825260ff16602082015260400190565b60405160208183030381529060405281600281518110611bb157611bb1612071565b60200260200101819052508181604051602001611bcf9291906122c8565b604051602081830303815290604052835f81518110611bf057611bf0612071565b6020908102919091010152604051630d64d59360e21b81524290736ff5693b99212da76ad316178a184ab56d299b4390633593564c908990611c3a908990899087906004016122f5565b5f604051808303818588803b158015611c51575f80fd5b505af1158015611c63573d5f803e3d5ffd5b505050505050505050505050565b5f6117c5836001600160a01b038416611d4d565b6001600160a01b0381165f90815260018301602052604081205415156117c5565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60605f6117c583611e30565b5f818152600183016020526040812054611d4657508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155611752565b505f611752565b5f8181526001830160205260408120548015611e27575f611d6f600183612099565b85549091505f90611d8290600190612099565b9050818114611de1575f865f018281548110611da057611da0612071565b905f5260205f200154905080875f018481548110611dc057611dc0612071565b5f918252602080832090910192909255918252600188019052604090208390555b8554869080611df257611df261232a565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050611752565b5f915050611752565b6060815f01805480602002602001604051908101604052809291908181526020018280548015611e7d57602002820191905f5260205f20905b815481526020019060010190808311611e69575b50505050509050919050565b60405180608001604052805f6001600160a01b031681526020015f6001600160a01b031681526020015f81526020015f81525090565b6001600160a01b03811681146116d9575f80fd5b5f60208284031215611ee3575f80fd5b81356117c581611ebf565b5f60208284031215611efe575f80fd5b5035919050565b67ffffffffffffffff811681146116d9575f80fd5b5f805f60608486031215611f2c575f80fd5b8335611f3781611f05565b92506020840135611f4781611ebf565b929592945050506040919091013590565b5f805f805f8060a08789031215611f6d575f80fd5b8635611f7881611ebf565b95506020870135611f8881611ebf565b94506040870135611f9881611ebf565b935060608701359250608087013567ffffffffffffffff811115611fba575f80fd5b8701601f81018913611fca575f80fd5b803567ffffffffffffffff811115611fe0575f80fd5b896020828401011115611ff1575f80fd5b60208201935080925050509295509295509295565b602080825282518282018190525f918401906040840190835b818110156120465783516001600160a01b031683526020938401939092019160010161201f565b509095945050505050565b5f8060408385031215612062575f80fd5b50508035926020909101359150565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b8181038181111561175257611752612085565b8082018082111561175257611752612085565b634e487b7160e01b5f52601260045260245ffd5b5f826120e1576120e16120bf565b500490565b5f602082840312156120f6575f80fd5b5051919050565b808202811582820484141761175257611752612085565b5f60208284031215612124575f80fd5b815180151581146117c5575f80fd5b5f82612141576121416120bf565b500690565b5f6001820161215757612157612085565b5060010190565b5f6020828403121561216e575f80fd5b81516117c581611ebf565b5f60208284031215612189575f80fd5b81516117c581611f05565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b6020808252825180516001600160a01b039081168484015281830151811660408086019190915282015162ffffff1660608086019190915282015160020b608080860191909152909101511660a083015282015180151560c08301525f905060408301516001600160801b03811660e08401525060608301516001600160801b03811661010084015250608083015161012080840152612266610140840182612194565b949350505050565b5f82825180855260208501945060208160051b830101602085015f5b838110156122bc57601f198584030188526122a6838351612194565b602098890198909350919091019060010161228a565b50909695505050505050565b604081525f6122da6040830185612194565b82810360208401526122ec818561226e565b95945050505050565b606081525f6123076060830186612194565b8281036020840152612319818661226e565b915050826040830152949350505050565b634e487b7160e01b5f52603160045260245ffdfea26469706673582212206b41f48079468dd2f0356c1609c87808ecb7a4f4f6304e029370bcec794f2f2f64736f6c634300081a0033000000000000000000000000b7dace47c583ffb2d76ff26afe89d582b21822760000000000000000000000005ba8d32579a4497c12d327289a103c3ad5b64eb1