1. Choose any open boundary
The next boundary is the earliest valid choice, not the only one. This makes recurring entries practical without reserving bankroll weeks in advance.
earliestRound = floor(block.number ÷ 10,000) + 1
targetBlock = chosenRound × 10,000
position range = [aggregateBefore, aggregateAfter)2. Request a payout and cap its edge
For final aggregate A, settlement bankroll B, requested target Tᵢ, and maximum edge Eᵢ:
requested = max(A, Tᵢ)
maximumGap = floor(B × Eᵢ ÷ 2^32)
gap Gᵢ = min(requested − A, maximumGap)
payout Pᵢ = A + Gᵢ
actual edge = Gᵢ ÷ BThe target is aspirational; the edge cap is binding. If bankroll falls, payout falls instead of charging more edge.
3. Commit bankroll capital
Investments may increase bankroll and earlier round outcomes may change it, but bankrollers cannot divest while betting is active. At a positioned target, investment pauses through settlement or explicit expiry so settlement bankroll cannot change after the draw becomes knowable. Later-round quotes remain indicative without exposing bettors to discretionary bankroller withdrawals.
4. Combine two entropy sources
The target block fixes prevRandao. Thirty minutes later, Quicknet publishes the derived round's BLS signature. The contract verifies the RLP header through EIP-2935 and the signature against its pinned Quicknet key.
5. Select one candidate and apply its gates
A stake-weighted point selects exactly one stored interval. Independent coverage and bankroll-risk gates give that candidate an expected gross return equal to its stake times 1 − actualEdge. The resolver supplies the candidate index, so settlement stays O(1).
Winner deadline and expiry
invest() mints transferable ERC-20-compatible LUCKOTTO shares, but divestment opens only during wind-down. Secondary sales move unresolved exposure and may trade far from bankroll value. A winning proof must be submitted within 8,191 blocks after the target; afterward, anyone can expire the round and move its stake into the bankroll.
Renewable wind-down
The owner may freeze at any time. Otherwise, anyone may freeze after the renewable one-year sunset. Existing rounds continue, and divestment opens when every pending round finalizes. Claims remain available, but one year after freezing the owner may drain all cash to a selected external recipient without clearing outstanding accounting.