Reference

Docs

Five contracts. None upgradeable, none pausable. The owner holds a small registry of launch settings, and every open fixture snapshots what it needs from that registry at birth.

The contracts

SportsPad

The factory

Opens a fixture in one transaction: a market, two coins, two curves, two pools, the oracle question and the creator's opening buy. Stores the graduation bar per sport, the launch fee and the fee vault, and holds no power over anything it deploys.

MatchMarket

The fixture

Owns both curves, the match details and the pot. Reads the oracle once, latches the answer and spends the pot on the winner. settle() and flush() take no arguments and anyone can call them.

MatchCurve

One side

A constant-product curve with virtual reserves, quoted in native ETH. Takes 1% of a trade, splits it three ways, and graduates into a locked full-range Uniswap v4 pool once it hits its bar. migrate() and sweep() are open to anyone and pay the caller nothing.

MatchCoin

The token

A plain ERC-20. Fixed supply minted once to its curve, no owner, no minter, no pause, no upgrade. Name, image, description and links sit in its own storage, written at birth and never editable. Supply only falls.

MatchOracle

The answer

Optimistic. propose after kick-off against a bond, dispute by matching it inside the window, finalise once the window runs out. A question reaches the arbiter only if somebody challenged it, and only once.

CurveDeployer

The bytecode

Carries the curve bytecode, which is what keeps the factory under the size limit, and deploys at CREATE2 addresses computable before anything exists at them. The pad accepts it once and cannot be repointed.

Constants

Total supply

1,000,000,000

Sold on the curve

800,000,000

Seeds the pool

200,000,000

Curve to bar

~15x

Pool fee tier

1%

Tick spacing

200

Pool range

Full

Liquidity

Locked

The owner's reach

Can

Move a sport's graduation bar, close a sport to new launches, set or clear the launch fee, repoint the fee vault, set the oracle's bond and challenge window, rule on a challenged result, and hand the whole role away.

Cannot

Touch a curve, a reserve, a pot, a pool, a coin or anyone's balance. Change a fixture already open, because a curve copies its bar into an immutable at birth. Redirect a creator's fee wallet. Re-answer a settled question. Stop a launch, a trade, a graduation, a migration, a settlement or a sweep.

Risks

A person posts the result

The bond and the challenge window make a wrong answer expensive. They are not a proof. A challenged answer comes down to the arbiter, who is a key held by a person.

A coin can go to zero

The pot is real money and it is only ever as big as the trading that fed it. Winning does not entitle a holder to anything. It buys and burns, and the price is whatever the market says.

There are no odds

Nobody is taking the other end of a bet and no price is quoted to you in advance. You are buying a coin whose fee flow turns on a match result.

Sportspad is unaudited software on a public chain. Read the contracts before you send anything to them.