The arithmetic, in the open
The price of a draw is fixed by a formula, not by us. The purse a draw opens is fixed by a seed we committed to before the round opened. Both are worked below on real numbers, and the last section is a script you can run against them.
The current commitment
No round is open right now. A commitment is published before the next draw is possible.
What a draw costs today
0 purses openNo purses are open, so there is no price to work. Seal one and this arithmetic fills in.
How the purse is chosen
Weight is inverse to size, in exact integers: with unit = lcm(x₁…xₙ), purse i carries weight unit/xᵢ, so weightᵢ × xᵢ is the same number for every purse on the floor. The set is written down in ascending purse-id order as id:amount|id:amount|… and hashed; that hash is recorded on the draw, so the set cannot be restated afterwards.
The selection number is HMAC-SHA256 of round:nonce:purse set hash keyed by the committed seed, read as a 256-bit integer. It is scaled into the table — pick = number × total ÷ 2²⁵⁶ — rather than reduced modulo the total weight, because a floor of unrelated amounts has a total weight far past 2²⁵⁶ and a modulus would leave most of the table unreachable forever. The purse taken is the first whose cumulative weight exceeds the pick.
Revealed rounds
0 listedNo round has closed yet. Seeds are published only when a round fills, so this table is empty until the first 256 draws are done.
A draw, checked end to end
Nothing has been drawn and no round is open, so there is nothing to check yet.
Check it yourself
The script is filled in with a real draw's values once a round has been revealed.