// $PNZI — simple landing page const { useState, useEffect } = React; const CA = "9hXCPbWZQ4pxFxgh55Ejz1iLZ6g6E1cT61u8urUvpump"; function useCountUp(target, duration = 1800) { const [val, setVal] = useState(0); useEffect(() => { const t0 = performance.now(); let raf; const tick = (t) => { const p = Math.min(1, (t - t0) / duration); const eased = 1 - Math.pow(1 - p, 3); setVal(target * eased); if (p < 1) raf = requestAnimationFrame(tick); }; raf = requestAnimationFrame(tick); return () => cancelAnimationFrame(raf); }, [target, duration]); return val; } function fmt(n, d = 0) { if (n >= 1e9) return (n / 1e9).toFixed(d) + "B"; if (n >= 1e6) return (n / 1e6).toFixed(d) + "M"; if (n >= 1e3) return (n / 1e3).toFixed(d) + "K"; return n.toFixed(d); } // ============================================================ // MARQUEE // ============================================================ function Marquee({ items, speed = 45 }) { const content = [...items, ...items, ...items]; return (
{content.map((it, i) => ( {it} ))}
); } // ============================================================ // NAV // ============================================================ function Nav({ bg, onToggleBg }) { const isNoir = bg === "noir"; return (
$PNZI $PNZI BUY NOW
); } // ============================================================ // HERO // ============================================================ function Hero() { const [copied, setCopied] = useState(false); const copyCA = () => { navigator.clipboard?.writeText(CA); setCopied(true); setTimeout(() => setCopied(false), 1500); }; return (
Reposted by Adam Back

Ponzi Strategy

Alistair Milne boiled the "ponzi or genius?" argument around $STRC down to one ticker. Adam Back reposted it. We put it on-chain.

READ THE LORE ↓
CA {CA} {copied ? "copied" : "copy"}
$PNZI
); } function Stat({ label, value }) { return (
{value}
{label}
); } // ============================================================ // LORE (the narrative) // ============================================================ function Lore() { return (
§ THE LORE

Born from a real argument,
not a vibe.

↻ Adam Back reposted
Alistair Milne
Alistair Milne
@alistairmilne
STRC× $102.72 MMSTR× $173.66

Dear @saylor, I am not sure there's enough people screaming 'ponzi'.

My idea: a *cumulative* version of $STRC which reinvests dividends into buying more $STRC

(v2: a cumulative version of $STRC which reinvests dividends into buying $MSTR)

Ticker idea: PNZI

11:46 AM · Apr 21, 2026 · 10.1K Views

It didn't come from nowhere.

$STRC had quietly become the center of a live argument in Bitcoin culture — "ponzi or genius?" — with Saylor at the middle of it. Alistair compressed the whole debate down to four letters: PNZI.

Adam Back reposting it was the part that mattered. A quiet cosign from someone who actually carries weight in Bitcoin. We took the hint and shipped the ticker before anyone could talk us out of it.

Not financial advice. Not a security. A memecoin about recursion, financial engineering, and how far the joke can be pushed.

); } // ============================================================ // HOW TO BUY // ============================================================ function HowToBuy() { const steps = [ { n: "01", t: "Get a wallet", b: "Phantom, Solflare, whatever. You probably already have one." }, { n: "02", t: "Fund it with SOL", b: "Send SOL to your wallet. Don't lose the seed phrase." }, { n: "03", t: "Buy on pump.fun", b: "Paste the contract. Hit buy. Welcome aboard the joke." }, ]; return (
§ HOW TO APE

Three steps.
None of them are hard.

{steps.map(s => (
{s.n}

{s.t}

{s.b}

))}
); } // ============================================================ // FOOTER // ============================================================ function Footer() { return ( ); } // ============================================================ // TWEAKS // ============================================================ function Tweaks({ tweaks, setTweaks, visible }) { if (!visible) return null; const set = (k, v) => setTweaks({ ...tweaks, [k]: v }); return (
Tweaks
); } // ============================================================ // APP // ============================================================ function App() { const [tweaksOn, setTweaksOn] = useState(false); const DEFAULTS = /*EDITMODE-BEGIN*/{ "hue": 35, "bg": "cream", "grain": true, "marquee": true }/*EDITMODE-END*/; const [tweaks, setTweaks] = useState(DEFAULTS); useEffect(() => { const handler = (e) => { if (!e.data) return; if (e.data.type === "__activate_edit_mode") setTweaksOn(true); if (e.data.type === "__deactivate_edit_mode") setTweaksOn(false); }; window.addEventListener("message", handler); window.parent.postMessage({ type: "__edit_mode_available" }, "*"); return () => window.removeEventListener("message", handler); }, []); useEffect(() => { window.parent.postMessage({ type: "__edit_mode_set_keys", edits: tweaks }, "*"); }, [tweaks]); const rootStyle = { "--hue": tweaks.hue }; const bgClass = `bg-${tweaks.bg}`; const [transitioning, setTransitioning] = useState(false); const toggleBg = () => { if (transitioning) return; const goingNoir = tweaks.bg !== "noir"; setTransitioning(true); setTweaks({ ...tweaks, bg: goingNoir ? "noir" : "cream" }); setTimeout(() => setTransitioning(false), 320); }; return (