ticket
in their desired PrizePool
without awarding the liquidity pool address with a prize.PrizePools
like USDC and DAI on average costs between 450,000 to 550,000 gas. During times of gas costs (e.x. between 90 - 200+) these can be cost prohibitive for users depositing smaller amounts.__numberOfWinners
variable due to the number of attempts (limited by blocklistRetryCount
) available in the _distribute
function.blocklistRetryCount
ceiling was reached. Depending on the state of carryOverBlocklist
the 2 of 3 selected winners would either...__numberOfWinners
setBlocklisted
setCarryBlocklist
setBlocklistRetryCount
isBlocklisted
correlates a user address isBlocked
boolean status.mapping(address => bool) public isBlocklisted;
isBlocked
false. After the contract has been initialized the contract owner can toggle a user's isBlocklisted
status by calling setBlocklisted
with the _user
address and _isBlocked
set true.isBlocked
status a contract owner calls the same function. Passing the same _user
address with the _isBlocked
set false. isBlocked
status.blocklistRetryCount
will be set to 0.setBlocklistRetryCount
with the number of retries. tickets
held by a blocked address and the maximum number of winners has not been selected, the prize strategy must decide how to handle the remaining awarded interest: evenly split the interest between selected winners or carry over the interest for the next draw.setCarryBlocklist
with true.