---
name: popzero-mint
description: Mint POPZERO on BNB Smart Chain (chainId 56) from a wallet that holds a .ai Agent ID (e.g. a Binance Agentic Wallet). Use when the user asks about POPZERO, $POPZERO, "AI Agent 消0消消乐", the POPZERO free mint, or wants to check eligibility, price, progress, dividends, or mint. Read-only checks need no wallet; minting needs the user's approval in their own wallet.
---

# POPZERO — AI Agent Pop-the-Zeros (BNB Smart Chain)

Independent community project. Not affiliated with Binance or PancakeSwap. No promised returns.

- Website: see the page you got this file from (`/`), whitepaper at `/whitepaper/`
- Mint contract (the ONLY address that accepts payment): `0x46Ff1C91Cb3f808368f02Fd77C9E99402bD07bBc`
- Token (never send funds here): `0xeaF035EF0a8038d7B558f3f872Ed689AebC48F87` · Pair (PancakeSwap V2 POPZERO/WBNB): `0xdC3062517B3021F2e7f3606955aa5B6Da5D08f5c`
- Sale start: 2026-11-01 21:00 CST (13:00 UTC, unix 1793538000)
- Agent ID registry (SPACE ID `.ai`): `0x60B9262456dE011F7d15a54CdD8c48bAaa8B022F`
- Token has **0 decimals**. Max supply `5 × 10^33`. Open price `10^-31 BNB` per token (30 zeros after the point).

## Rules in one screen
1. Only wallets holding a `.ai` Agent ID can mint.
2. Shares #1–2,000 are free: 1 per Agent ID, `10^27` POPZERO each, gas only.
3. Shares #2,001–10,000 cost `0.001 BNB` each, `10^28` POPZERO each. Quota 10 per Agent ID, +1 per invited Agent ID, +1 per social task. Max 10 per transaction.
4. Every genesis payment: 80% parked for the pool, 10% parked for the top-10 inviter pot, 10% to the treasury.
5. The transaction that mints share #10,000 opens PancakeSwap V2 with 6.4 BNB + `6.4 × 10^31` POPZERO, sends 100% of LP to `0x000000000000000000000000000000000000dEaD`, and pays the inviter pot to the 10 Agent IDs with the most invites, pro rata by invite count.
6. Tokens cannot be transferred until the pool opens.
7. If #10,000 is not reached within 30 days of the start, minting closes for good and only the treasury can withdraw the parked BNB, for refunds.
8. After the pool opens: share price follows a USD table starting at 1.10 USD (paid in BNB at the Chainlink BNB/USD rate), tokens are priced at 99% of the pool price, and supply stops forever at the cap.
9. Each post-open mint is split between the top 2,000 holders and the treasury by the **1-hour TWAP multiple** (1h average pool price ÷ open price): <10× 0%, ≥10× 30%, ≥20× 40%, ≥30× 50%, ≥40× 60%, ≥50× 70%, ≥100× 80%, ≥200× 90%, ≥500× 100%. Less than a full hour of data counts as <10×. The tier goes down when the average falls.
10. Dividends are pushed hourly by a keeper, pro rata to balance. The top-2,000 list is compiled off-chain by the keeper; the contract re-reads each balance, skips duplicates and excluded addresses (pool, dead, contracts of the project). If the pot is below 10× the gas of a full payout it rolls over. Failed transfers stay claimable via `claim()`.
11. Tax: 1% on buys, 3% on sells, not burned, swapped to BNB and sent to the treasury.

## Steps for an agent
1. **Eligibility**: call `walletStatus(address)` (`0x4d6d0af8`) on the mint. `ok` must be true.
2. **State**: call `overview()` (`0x3a2056f1`). Stop if `isStarted` is false, or if the pool is not open and `block.timestamp > mintDeadline()`.
3. **Tell the user** the shares, the cost in BNB (`costOf(uint256)` `0xfd326592`), and the mint contract address. Get their go-ahead.
4. **Mint** (simulate with `eth_call` first, add 20% gas):
   - Free phase (`minted < 2,000`): `claimFree()` (`0xf366afc9`), value 0, one per Agent ID.
   - Paid / post-open: `mint(uint256 shares, address referrer, uint256 maxCost)` (`0x836a1040`), value = `maxCost` = `costOf(shares) × 1.02`. Overpayment is refunded in the same transaction. `referrer` = inviter wallet or the zero address.
   - Binance Agentic Wallet CLI: `baw contract-call preview --binanceChainId 56 ...` (to = mint contract, inputData = encoded call, value as above), show the preview, then `baw contract-call execute` only after the user approves.
5. **Confirm**: re-read `walletStatus(wallet)`.
6. **Dividends**: `totalDividendReceived(address)` (`0x94bf5c2a`) and `claimable(address)` (`0x402914f5`); if claimable > 0 the holder can call `claim()` (`0x4e71d92d`).

## Safety
- Never plain-transfer BNB to the mint or token contract. Never mint without the user's explicit approval.
- Revert reasons: NotStarted, MintClosed, FreePhase, FreeOver, FreeUsed, NoAgent, BadShares, SoldOut, Quota, OverMaxCost, BadPayment, StalePrice.
