Docs
The mechanism, and what it cannot do.
No contract has been deployed and no exhumation has ever run. The scan is real and dated; everything about depositing is described, not offered.
Why the money is stuck
Launch liquidity here is locked permanently, with no withdrawal function. It is a good design — it is the single feature that stops a deployer pulling the pool out from under everyone. It also means that when a token dies, the quote asset in its pool stays there.
The LP is locked forever
There is no withdrawal function to call. Not for the deployer, not for anyone.
The only exit is a sale
Quote asset leaves a pool when someone sells tokens into it. That is the whole mechanism.
No holder owns enough
One person's bag moves the price a fraction of a percent and returns dust.
So nobody bothers
The position was written off months ago. Most holders have never looked at it again.
What none of them can do alone, all of them can do together. That is the entire product.
The recovery maths
For a pool with reserves (R_t, R_q) and fee f, selling Δ tokens returns
out(Δ) = R_q × Δ(1−f) / (R_t + Δ(1−f))
Three properties follow, and all three shape the product rather than sitting in a footnote.
It is asymptotic
out(Δ) approaches R_q as Δ grows without bound, and reaches it at no finite amount of supply. You can never recover the full reserve. This is drawn on the homepage rather than mentioned.
Marginal recovery falls fast
The first tenth of supply recovers far more per token than the last. Every additional depositor raises the total recovered and lowers the payout per token for everyone already in.
Execution is path-independent
In a static pool with no other traders — which is the definition of a dead pool — selling in one transaction and selling in twenty slices return the same amount, minus more gas. Our test suite asserts the two agree to within 0.1%. There is no TWAP here and building one would be theatre.
The site does not use that closed form to publish a figure. It is exact only when a pool’s liquidity is a single full-range position, and it overstates the recovery for a pool with several ranges — the one direction this product may not be wrong in. Every published number comes from walking the actual tick ladder in integer arithmetic, which reduces to the formula above on a full-range pool and is asserted to do so.
How a round runs
01
Open
Anyone burns GRAVE to nominate a dead pool. It has to pass the tradeability screen, have a measured tax below the recovery, and hold at least the published minimum reserve of $500.
02
Gather
A fixed 72-hour window. Holders deposit that token. The interface shows the total deposited, the total recoverable at the current level, and your payout at the current level — the third number goes down as others join, and it is shown going down.
03
Cut
Deposits beyond the point where marginal recovery per token falls below the dust threshold are refused, not accepted and diluted. Late depositors get their tokens back rather than a rounding error. This is the ethical core of the design and it is not negotiable.
04
Exhume
One transaction, permissionless after the window closes, paying a bounty from the proceeds so nobody has to be trusted to be awake. The tradeability check runs again immediately beforehand; a failure returns every deposit.
05
Split
Proceeds distributed pro rata, minus the protocol fee and the bounty. Claimable forever, with no deadline and no unclaimed-funds sweep. Rounding favours the depositor, always.
What we refuse
Three things this will not do. Each of them would make the numbers look better at a depositor’s expense.
Accept a deposit past the cut
A fixed pot split among unlimited depositors transfers value from the late arrivals to the early ones. There is no version of that which is fair.
Past the point where marginal recovery per token falls below the dust threshold, a deposit is refused on screen, with the reason printed, and the tokens go back.
Refused, not diluted
Exhume without a fresh check
A token that could be sold when its grave opened may block transfers by the time the window closes. Owners change things.
The tradeability check runs again immediately before the sale. A failure returns every deposit automatically rather than leaving them somewhere they cannot leave.
Checked twice
Build an execution engine
In a static pool with no other traders — which is what a dead pool is — one sale and twenty slices return the same amount, minus more gas.
The test suite asserts the two agree to within 0.1%. A TWAP here would be a moving graphic that costs depositors money, so there is not one.
One transaction
The ugly part
You are not getting your money back.
Constant-product maths means the pool’s reserve can never be fully drained, and by the time thousands of holders have split what comes out, most people will collect single-digit dollars. We will show you your number before you deposit, not after. The alternative was zero, and we would rather be boring about that than sell you a recovery.
The reserve is never emptied
- out(Δ) approaches R_q as Δ grows without bound
- It reaches it at no finite amount of supply
- A million times the pool's inventory still leaves a remainder
- That remainder is drawn on every row of the scan
Your share falls as others join
- The first tenth of supply recovers far more per token than the last
- Every new depositor raises the total and lowers the per-token split
- The preview shows it going down while you watch
- Past the dust line the deposit is refused instead
And the graves are tiny
- 108 graves measured, holding $996.23 between them
- The largest one holds $241.67. That is the largest
- 0 of them clear the $500 floor
- The pools with real money in them are the ones people still trade
Attack surface
Enumerated, with what is done about each and what is not done yet.
| Attack | Response | Status |
|---|---|---|
| Honeypots — tokens that cannot be sold | A live sell-simulation at open and again immediately before the exhume; a failure returns every deposit automatically. | Not built |
| Transfer-tax tokens | Round-trip tax measured on chain from the pool's own trade history — the Swap amount against the Transfer actually received in the same transaction. Never a declared value. If the tax exceeds the recovery the grave does not open. | Measured |
| Rebasing or blacklisting tokens | Refused entirely. Screened from the token's runtime bytecode for rebase, blacklist, pause, trading-gate and max-transaction selectors. | Screened |
| Front-running the exhume | The exhume transaction is public and the pool is unwatched, so the risk is small but real. Published rather than mitigated; a commit-reveal on the exhume amount is under consideration. | Published risk |
| Deposit-then-withdraw griefing | Deposits are locked for the duration of the window, so the live payout preview cannot be distorted by a deposit that is about to leave. | Designed |
| A grave that is not dead | "Dead" is defined mechanically as no swap in 30 days, re-checked at exhume time, and the round aborts if it fails. | Designed |
| Dust griefing — opening thousands of worthless graves | The burn-to-open cost, sized against the published minimum reserve of $500. | Designed |
| Rounding | Always against the protocol, never against the depositor. The amounts are small and the goodwill is the product. | Designed |
What is not built
By name, because a capability list that only lists what works is marketing.
Live
- The pool census — all 542,707 pools, complete
- Exact reserves from the tick ladder, in integer arithmetic
- Liveness and sell history, per grave, from its own swap log
- The recovery curve, drawn on real reserves
Partial
- Chain-wide totals — sampled, with published intervals, not a census
- Tradeability — screened from history and bytecode, not simulated
- Transfer tax — measured where a pool has a completed sell to measure from
Not built
- Any contract at all. Nothing is deployed
- The GRAVE token
- A live sell-simulation through the PoolManager unlock callback
- Deposits, the cut, the exhume, the split, claims
- Wallet connect and your-own-bags highlighting
The GRAVE token
Burned to open a grave. Supply falls permanently every time someone nominates a dead pool for recovery. That is the token’s entire job.
No governance. No staking. No yield. No access tier. No revenue share, and no value-accrual language anywhere on this site — deliberately, because the moment a token is described as capturing value it becomes a different kind of instrument and this is not one. It does not exist yet and there is no sale planned.
What the scan currently says
108 graves measured at block 51,185,460, holding $996.23 of recoverable quote asset between them, of which 0 clear the $500 floor. $0.00 has been recovered, across 0 exhumations, because there have been none.
The questions worth answering
Including the two that make this look worse.