How it works
Buy a ticket.
Match three digits.
Win the pot.
Every ticket carries a number from 001 to 999, dealt to you rather than picked. Three digits are drawn on-chain at blocks fixed before the draw opened. Match all three and the pot is yours, once you have registered the ticket and claimed it.
Playing
The rules
01
Buy tickets, one token each
A whole token buys one ticket, and you can buy up to 100 in a single purchase. Fractions do not count, and two half-buys do not add up to a ticket.
02
Your number is dealt, not chosen
You do not pick anything. Each ticket is assigned a number from 001 to 999, drawn from a block that had not been mined when you bought it. This happens on its own shortly after your purchase. There is nothing to press and nothing to wait up for.
03
Three digits are drawn, one at a time
Hundreds, then tens, then units, each at a block fixed before the draw opened. Nobody chooses them and nobody can change them. Tickets stay on sale until the cutoff, even after digits have appeared.
04
Match all three and you win the pot
If your ticket's number is the drawn number, you win the prize pot. The whole thing, paid in ETH, unless someone else matched it too. Every ticket has the same chance, exactly 1 in 999.
05
Two out of three pays nothing
There are no partial prizes. While your remaining digits could still match you are in contention; once one differs you are out. A ticket that misses is still yours, and is never called a loss while you own it.
06
Register before the deadline to collect
This is the one step you can lose a prize by missing. Winning is not automatic: the current owner has to register the winning ticket before the deadline block, and landing in that block is already too late. While the window is open this site carries a banner on every page with the time left.
07
The pot is shared out after the deadline
Once registration closes, the pot is divided between the registered winners and every share is written on-chain. Nothing is final before that, and nothing is required from you: the split runs on its own.
08
Claim your prize whenever you like
Only the wallet that registered the win can claim it, even if the ticket has moved on since. You choose the address the ETH is sent to, and it does not have to be the wallet claiming. Claims never expire, so this is the one step with no deadline.
09
Nobody wins? It rolls over
An unwon pot carries into the next draw, along with any rounding dust. Nothing is swept out, and no one can withdraw it.
10
Keep your tokens, or tickets burn
Each ticket is backed by one whole token. If you sell or send tokens and your balance can no longer back your tickets, your newest tickets burn. A burned ticket cannot win.
Sharing
When several tickets win
The pot is split by when the tickets were bought. The earliest ticket takes the largest share. Registration order changes nothing, and neither does wallet size, claim time, or the address you send the prize to.
| Ticket | Weight | Share of the pot |
|---|---|---|
| First to be bought, so the largest share | 3 | 50% |
| Second to be bought | 2 | 33.3% |
| Third to be bought | 1 | 16.7% |
With 3 winners the weights run 3, 2, down to 1, out of 6 in total. Each share is rounded down, and the remainder rolls into the next draw. The number of winners is not settled until the deadline passes, so a share shown before then can still move.
Under the hood
The machinery
None of this is required to play. It is here because the answer to “why should I trust this?” should be something you can read and verify, not something we assert.
- The token behind the ticket is a plain ERC-20
- A fixed supply of 10,000 tokens, minted once at deployment. There is no mint function, no transfer tax, no allowlist and no blocklist, so it moves like any other ERC-20: hold it in any wallet, send it to anyone, trade it on any venue that lists it. Nothing about it is specific to this site.
- A Uniswap v4 hook funds the pot
- Tickets come from one Uniswap v4 pool and nowhere else. A hook on that pool takes a fixed 100 bps (1%) lottery fee in native ETH on every trade through it, symmetrically across buys and sells, separately from the Uniswap LP fee and protocol fee. There is no fee setter: changing the rate requires a new deployment. The pool is identified below.
- The ticket is an ERC-721 bound to one whole token
- Transferring the ticket moves the NFT and its backing token atomically. An ordinary token transfer moves no tickets. Approving the NFT also grants authority over the token backing it.
- Nobody operates any of this
- The contracts have no owner, no pause, no upgrade path and no withdrawal function. Digits resolve, draws roll over and pots settle whenever anyone sends the transaction, and a trader's own swap usually does it, so the game keeps running with this site switched off.
- The token, and the one pool that mints tickets
The token is an ordinary ERC-20 and nobody can gate it. Paste its address into any wallet, aggregator, or exchange and trade it there instead of here. What you get that way is the token and the backing it carries, without the numbers.
Tickets are different. They are minted by trades in one specific pool and no other, which is the pool the buy button on this site sends your ETH through. If you route a trade yourself and want tickets from it, it has to land in this pool:
- Token contract
- 0x85Eee3365205da84A90Fc2e7EE626e5D574de6c1
- Pool id
- 0x655a0f2968778a2f1c7afd8df5b3119d5e6f4b7bca6bfcc4250c0ad500929d83Longer than an address because it is not one. A Uniswap v4 pool is not a contract: every pool lives inside the PoolManager below, and this 32-byte id is how that contract tells them apart. There is no explorer page for a pool id, so this is a value to compare against, not a link to follow.
- Pair and fee
- ETH / token · 0.30% · tick spacing 60
- Uniswap PoolManager
- 0x8366a39CC670B4001A1121B8F6A443A643e40951
Every other address this build reads is on Transparency.
Before you buy
- Tickets are minted by one pool only, the one the buy button on this site trades in. Buying the token in a different pool, or on any other exchange, gives you the token and no ticket.
- Selling or sending tokens can burn your newest tickets if your balance can no longer back them.
- Transferring a ticket before registration hands the right to register it to the new owner.
- Only the wallet that registers a win can claim it. Moving the ticket afterwards does not move the prize.
- The registration deadline is exclusive. Landing in the deadline block itself is too late.
- Countdowns on this site are estimates from observed block times. The block numbers are the truth.