PageSourceSearch

https://ante.org/assets/index-PvRh0I5B.js

js ante.org collected 2026-10-05 08:54:45 UTC 69,951 bytes, 117 lines download raw bytes

1import{j as e,b as d,L as C,r,n as R}from"./index-B5iPToL1.js";import{t as D}from"./index-Br7REqB6.js";const S="q-storage",j={"q-storage":{id:"q-storage",type:"choice",text:["How did you store your crypto?"],choices:[{label:"It's on Coinbase / Binance",next:"q-exchange-login"},{label:"It's on a Ledger / Trezor",next:"q-seed-phrase"},{label:"It's in MetaMask / across protocols",next:"q-reconstruct"}]},"q-exchange-login":{id:"q-exchange-login",type:"choice",text:["Who knows your exchange login?"],choices:[{label:"My partner has the password",next:"n-partner-login"},{label:"Nobody",next:"n-nobody-exchange"},{label:"My email auto-fills it",next:"n-email-autofill"}]},"n-partner-login":{id:"n-partner-login",type:"choice",text:["Your partner sits down at your laptop.","They open Coinbase. The email auto-fills. They type the password you gave them last year.","A 2FA prompt appears."],reaction:"The code goes to your phone. Your phone is locked. Your face no longer unlocks it.",choices:[{label:"They can't get past 2FA",next:"q-partner-2fa-options"},{label:"They get in somehow",next:"n-partner-balance"}]},"q-partner-2fa-options":{id:"q-partner-2fa-options",type:"choice",text:['Your partner Googles "bypass 2FA deceased account holder."',"Two options appear."],choices:[{label:"Contact exchange support directly",next:"n-exchange-support-call"},{label:"Hire a crypto recovery service",next:"n-recovery-scam"}]},"n-exchange-support-call":{id:"n-exchange-support-call",type:"narration",text:["Your partner calls Coinbase support.",`"I need to access my husband's account. He passed away."`,`"I'm sorry for your loss. We'll need a death certificate, notarized power of attorney, and proof of relationship."`,'"How long will that take?"','"6 to 8 weeks after we receive the documents."'],reaction:'Your partner starts crying on hold. The hold music is a jazz rendition of "What a Wonderful World."',choices:[{label:"Continue",next:"e-account-frozen"}]},"n-recovery-scam":{id:"n-recovery-scam",type:"narration",text:["The recovery service has a professional website. Testimonials. A live chat.",'"We specialize in deceased account recovery. Success rate: 94%."','"We just need $1,500 upfront and the device with the 2FA codes."',"Your partner ships the phone. Pays $1,500 via Zelle.","Two weeks later: the website is gone. The phone number is disconnected."],reaction:"They lost you, then they lost the phone, then they lost the money.",choices:[{label:"Continue",next:"e-double-grief"}]},"e-double-grief":{id:"e-double-grief",type:"ending",text:["The recovery service was a scam. The phone is gone.","Without the 2FA device, the exchange account is permanently inaccessible.","Your partner doesn't tell anyone about the $1,500.","They add it to the list of things they'll never talk about."],ending:{id:"DOUBLE_GRIEF",title:"DOUBLE GRIEF",causeOfLoss:"Recovery service vanished with $1,500 and the only device with 2FA codes. The exchange account is now permanently locked.",timeOfLoss:"2 months after your passing",punchline:'"They lost you, then the phone, then the money."',shareText:"💀 My family hired a crypto recovery service. It was a scam. They lost $1,500 AND the only phone with 2FA. What’s YOUR ending?"}},"n-partner-balance":{id:"n-partner-balance",type:"narration",text:["They get in. Finally.","The balance reads $47.","You moved everything to DeFi last year. You never mentioned that."],reaction:"The look on their face would break your heart. If you had one.",choices:[{label:"Continue",next:"n-defi-bookmark"}]},"n-defi-bookmark":{id:"n-defi-bookmark",type:"choice",text:['Your partner notices a browser bookmark labeled "Aave."',"They click it. A MetaMask popup appears. It needs a password."],choices:[{label:"They try your usual passwords",next:"n-defi-glimpse"},{label:"They close the laptop",next:"e-pyrrhic-victory"}]},"n-defi-glimpse":{id:"n-defi-glimpse",type:"narration",text:["Your birthday works. MetaMask opens.","They see numbers: 1.7 ETH, 2,400 USDC, 8,000 PEPE.",`They don't know what any of this means. They don't know how to "send" it anywhere.`,'They click "Send." It asks for a "destination address."',"They close the tab."],reaction:"The assets are still there. The knowledge gap is infinite.",choices:[{label:"Continue",next:"e-pyrrhic-victory"}]},"e-account-frozen":{id:"e-account-frozen",type:"ending",text:["Your partner calls Coinbase support.",`They explain the situation. "I need to access my husband's account. He passed away."`,`"I understand. Can you please verify the account holder's identity?"`,`"He's dead."`,'"I understand. Can the account holder call us back?"'],ending:{id:"ACCOUNT_FROZEN",title:"ACCOUNT FROZEN",causeOfLoss:'Exchange support ticket #847,291 remains open. Your wife calls every Thursday. They keep asking for "the account holder."',timeOfLoss:"14 months after your passing",pu
1nchline:'"Please hold. Your call is important to us."',shareText:"💀 My crypto died because exchange support keeps asking the dead guy to verify his identity. What’s YOUR ending?"}},"e-pyrrhic-victory":{id:"e-pyrrhic-victory",type:"ending",text:["Your partner stares at the $47 balance.","They close the laptop.","They never find the DeFi positions. They didn't even know DeFi was a word."],ending:{id:"PYRRHIC_VICTORY",title:"PYRRHIC VICTORY",causeOfLoss:"Exchange account accessed successfully. Balance: $47. The other $23,000 is in DeFi positions nobody will ever find.",timeOfLoss:"3 weeks after your passing",punchline:'"We got in! ...oh."',shareText:"💀 My family cracked my exchange login and found $47. The rest is in DeFi. Forever. What’s YOUR ending?"}},"n-nobody-exchange":{id:"n-nobody-exchange",type:"choice",text:["Nobody knows your exchange login. Nobody knows which exchange.","Your family starts going through your email."],choices:[{label:"They find exchange confirmation emails",next:"n-death-cert-submitted"},{label:"They don't even know to look",next:"n-digital-slow-fade"}]},"n-death-cert-submitted":{id:"n-death-cert-submitted",type:"choice",text:["Your brother finds a Coinbase email from 2021. He contacts support.","He submits a death certificate. Six weeks later, a reply:",'"We need a probate court order OR a will naming a digital asset beneficiary."'],choices:[{label:"Go to probate court",next:"n-probate-grind"},{label:"Check the will",next:"e-last-will"}]},"n-probate-grind":{id:"n-probate-grind",type:"narration",text:["4 months. $3,200 in legal fees. Three court appearances.","The probate court order arrives. Your brother submits it to Coinbase.","Coinbase processes it in 6 weeks.",'Then: "Inherited accounts are subject to a 90-day security review before any withdrawals."'],reaction:"Week 47 of the process. The crypto is worth 30% less than when you died.",choices:[{label:"Continue",next:"e-bureaucratic-purgatory"}]},"e-last-will":{id:"e-last-will",type:"ending",text:["Your brother finds the will.",'It says: "I leave my digital assets to my brother."',"The lawyer reads it and sighs.",'"Digital assets" without specifying exchanges, accounts, credentials, or transfer procedures is legally meaningless.','The will might as well say "I leave my thoughts and prayers."'],ending:{id:"LAST_WILL",title:"LAST WILL & TESTAMENT (INSUFFICIENT)",causeOfLoss:'Will says "I leave my digital assets to my brother." Lawyer says this is legally meaningless without specifying accounts, platforms, and transfer procedures. Probate court agrees.',timeOfLoss:"Never recovered",punchline:`"Digital assets" is not a magic spell. It's a Post-it note on a locked vault.`,shareText:`💀 My will said "I leave my digital assets to my brother." Turns out that's legally meaningless. What’s YOUR ending?`}},"n-digital-slow-fade":{id:"n-digital-slow-fade",type:"narration",text:["Six months pass. Your family finds insurance documents, bank statements, tax returns.",'They find an email from "Binance" between a Groupon and a shipping notification.',`Your mother asks, "What's a Binance?" Nobody answers.`,"The email is archived."],reaction:"The crypto is forgotten before it was ever known.",choices:[{label:"Continue",next:"e-digital-ghost"}]},"e-bureaucratic-purgatory":{id:"e-bureaucratic-purgatory",type:"ending",text:["Your brother has now spent $3,200 in legal fees and 47 weeks waiting.",'Coinbase support sends a new email: "We need one more document to verify the court order."',"He starts the process again.","He'll finish it. Eventually."],ending:{id:"BUREAUCRATIC_PURGATORY",title:"BUREAUCRATIC PURGATORY",causeOfLoss:"Family contacted exchange support. Required: death certificate, notarized power of attorney, proof of relationship, and 6–8 weeks. They are currently on week 47.",timeOfLoss:"11+ months and counting",punchline:'"We need one more document. Please allow 6–8 weeks for processing."',shareText:"💀 My crypto is trapped in bureaucratic purgatory. 47 weeks of support tickets. What’s YOUR ending?"}},"e-digital-ghost":{id:"e-digital-ghost",type:"ending",text:["Your family doesn't know you had crypto.","They don't check your email for months. When they finally do, they're looking for insurance documents.","They scroll past the Binance confirmation. They don't know 
1what Binance is.","Your crypto sits there. Untouched. Unknown."],ending:{id:"DIGITAL_GHOST",title:"DIGITAL GHOST",causeOfLoss:"Family didn't know the account existed. The exchange sends annual statements to an email nobody reads.",timeOfLoss:"∞",punchline:'"We found his old emails. Mostly spam and something called Binance."',shareText:"💀 My family didn’t even know I had crypto. It’ll sit on the exchange forever. What’s YOUR ending?"}},"n-email-autofill":{id:"n-email-autofill",type:"choice",text:["Your family gets into your email. The exchange login auto-fills in the browser.",'They click "Sign In."',"The exchange flags a new device. A verification email is sent."],choices:[{label:"Account locked — new device detected",next:"n-reset-link"},{label:"They wait too long to try again",next:"e-the-great-purge"}]},"n-reset-link":{id:"n-reset-link",type:"choice",text:["The exchange emails a password reset link. Your family has access to the email.","They click it. It works. A new password form appears."],reaction:"Hope.",choices:[{label:"Reset the password",next:"n-reverification"},{label:"The link expires before they click",next:"e-the-great-purge"}]},"n-reverification":{id:"n-reverification",type:"narration",text:["New password set. They're in. The dashboard loads.",'Then: "New device detected. Please complete identity verification."',"Step 1: Upload a government-issued photo ID.","Step 2: Take a live selfie for facial comparison."],reaction:"The selfie requirement stares back. It needs you. Alive.",choices:[{label:"Continue",next:"e-security-theater"}]},"e-security-theater":{id:"e-security-theater",type:"ending",text:["New device detected. Account temporarily locked.",'"For your security, please verify your identity."',"The verification requires a selfie. Of you. Alive.","The account remains locked."],ending:{id:"SECURITY_THEATER",title:"SECURITY THEATER",causeOfLoss:"Exchange flagged new device. Identity verification requires a live selfie of the account holder. The account holder is no longer live.",timeOfLoss:"6 months after your passing",punchline:'"Please take a clear selfie in good lighting."',shareText:"💀 The exchange wants a selfie to unlock my account. I’m dead. What’s YOUR ending?"}},"e-the-great-purge":{id:"e-the-great-purge",type:"ending",text:["Your family gets busy. Grief is exhausting.","They don't try the exchange again for months.","Your email provider deletes inactive accounts after 12 months. The auto-fill credentials go with it.","When they finally try again, there's nothing to auto-fill."],ending:{id:"THE_GREAT_PURGE",title:"THE GREAT PURGE",causeOfLoss:"Email provider purged inactive account after 12 months. Browser auto-fill credentials deleted. No one remembers the exchange password.",timeOfLoss:"14 months after your passing",punchline:'"The email address you entered does not exist."',shareText:"💀 My email got deleted after 12 months. The exchange login 
1went with it. What’s YOUR ending?"}},"q-seed-phrase":{id:"q-seed-phrase",type:"choice",text:["Where's your seed phrase?"],choices:[{label:"Written on paper, somewhere safe",next:"n-paper-seed"},{label:"Engraved in titanium, in a safe",next:"n-titanium-safe"},{label:"In my head",next:"n-memorized-pride"},{label:"I'd have to look for it",next:"n-family-searches"}]},"n-paper-seed":{id:"n-paper-seed",type:"choice",text:["Your family finds the Ledger in a desk drawer.",'Your sister says, "Is this a USB drive?"','They Google "how to use a Ledger." They need something called a seed phrase.',"They search the house."],choices:[{label:"They find the paper",next:"n-found-paper"},{label:"They can't find it",next:"n-search-books"}]},"n-found-paper":{id:"n-found-paper",type:"narration",text:["They find it. 24 words in your handwriting.",'Your brother Googles "how to recover wallet with seed phrase."',"He clicks the third result.","It's a website called ledger-support-recovery.com.","It was registered 3 days ago. In Moldova.",'It has a "seed phrase validator."'],choices:[{label:"Continue",next:"q-brother-hesitates"}]},"q-brother-hesitates":{id:"q-brother-hesitates",type:"choice",text:['Your brother hovers over the "Validate" button.',"Something feels off. The site looks... almost right."],choices:[{label:"He enters all 24 words",next:"e-phished"},{label:'He Googles "is this site legit"',next:"n-second-phish"}]},"n-second-phish":{id:"n-second-phish",type:"narration",text:['He finds a Reddit post: "NEVER enter your seed phrase on any website."',"He closes the tab. Smart.",'He searches again. Finds "Ledger Recovery Tool" — clean design, SSL certificate, "Ledger" in the URL.',"It's also a phishing site. This one was registered last week. In Romania.","He enters all 24 words."],reaction:"The first trap missed. The second one didn't.",choices:[{label:"Continue",next:"e-phished"}]},"e-phished":{id:"e-phished",type:"ending",text:["The wallet is drained in 11 seconds.","Your brother stares at the screen. He doesn't understand what happened.","He will never tell the rest of the family how much was in there."],ending:{id:"PHISHED_FROM_BEYOND_THE_GRAVE",title:"PHISHED FROM BEYOND THE GRAVE",causeOfLoss:"Seed phrase entered into ledger-support-recovery.com (registered 3 days ago in Moldova). Wallet drained in 11 seconds.",timeOfLoss:"6 months after your passing",punchline:'"At least someone got your crypto."',shareText:"💀 My family found my seed phrase and entered it into a phishing site. Wallet drained in 11 seconds. What’s YOUR ending?"}},"n-search-books":{id:"n-search-books",type:"choice",text:["They search the desk, the nightstand, the junk drawer. Nothing.",'Your partner remembers: "He was always hiding things in books."'],choices:[{label:"Check the bookshelf",next:"n-bookshelf-search"},{label:"Check the donation pile",next:"n-donation-gone"}]},"n-bookshelf-search":{id:"n-bookshelf-search",type:"narration",text:["They flip through every book on the shelf. 43 books. Nothing.",'Your mother finds a folded piece of paper in "Mastering Bitcoin."',"It's a $20 bill you used as a bookmark in 2019."],reaction:'The seed phrase was in "The Intelligent Investor." That book was in the donation box.',choices:[{label:"Continue",next:"e-goodwill-hunting"}]},"n-donation-gone":{id:"n-donation-gone",type:"narration",text:["The donation pile in the garage is empty.","Your partner donated 3 boxes of books two weeks after the funeral.",'They call Goodwill. "Do you still have a copy of The Intelligent Investor?"',`"Ma'am, we sell 400 books a day."`],reaction:"Your seed phrase has a price tag on it now. $4.99.",choices:[{label:"Continue",next:"e-goodwill-hunting"}]},"e-goodwill-hunting":{id:"e-goodwill-hunting",type:"ending",text:["The seed phrase was inside a copy of The Intelligent Investor.","The book was in a box marked 'DONATE.'","Your partner dropped it off at Goodwill two weeks after the funeral.","It's on a shelf in Tucson now. $4.99."],ending:{id:"GOODWILL_HUNTING",title:"GOODWILL HUNTING",causeOfLoss:"Seed phrase was inside a copy of 'The Intelligent Investor.' The book was donated to a thrift store in Tucson.",timeOfLoss:"9 months after your passing",pu
1nchline:'"Someone’s going to have a very good day at Goodwill."',shareText:"💀 My seed phrase got donated to Goodwill inside a book. It’s on a shelf in Tucson. What’s YOUR ending?"}},"n-titanium-safe":{id:"n-titanium-safe",type:"choice",text:["Your seed phrase is engraved in titanium. Inside a fireproof safe.","The safe is in the closet. Your family knows it exists."],choices:[{label:"Nobody knows the combination",next:"n-locksmith-attempt"},{label:"They open the safe",next:"n-youtube-recovery"}]},"n-locksmith-attempt":{id:"n-locksmith-attempt",type:"narration",text:["Your wife tries your birthday. Your anniversary. 0000. 1234.","She calls a locksmith. He charges $300.",'He examines the safe. "This is a Liberty HDX-250. Military-grade."',`"I can drill it, but it'll take a week to get the bit. And it might destroy what's inside."`,"She decides not to risk it."],reaction:"The safe becomes furniture. The titanium plate inside becomes a legend nobody can verify.",choices:[{label:"Continue",next:"e-russian-nesting"}]},"e-russian-nesting":{id:"e-russian-nesting",type:"ending",text:["The safe sits in the closet.","Your wife stares at it sometimes.","She knows there's something valuable inside. She'll never know how valuable.","The safe becomes the most expensive piece of furniture in the house."],ending:{id:"RUSSIAN_NESTING_PROBLEM",title:"RUSSIAN NESTING PROBLEM",causeOfLoss:"The seed is in a safe. The safe combination is in your head. Your head is in the ground.",timeOfLoss:"∞",punchline:'"Security so good, it worked against everyone. Including your family."',shareText:"💀 My seed phrase is in a safe nobody can open. Security so good it works against my own family. What’s YOUR ending?"}},"n-youtube-recovery":{id:"n-youtube-recovery",type:"choice",text:["Inside: a titanium plate with 24 words engraved on it.","Your mother holds it carefully. She reads them aloud.","She watches 4 YouTube videos. She buys a new Ledger from Amazon.","She follows the instructions. She types the 24 words."],choices:[{label:"The wallet opens",next:"n-ux-abyss"},{label:"She enters a word wrong",next:"e-one-word-off"}]},"n-ux-abyss":{id:"n-ux-abyss",type:"narration",text:["The wallet opens. She sees numbers.",'1.7 ETH. 2,400 USDC. 8,000 tokens called "PEPE."','She clicks "Send." It asks for a destination address.',"She doesn't have a destination address. She doesn't know what that means.","She closes the tab. The titanium plate goes back in the safe."],reaction:"She got further than anyone expected. It wasn't far enough.",choices:[{label:"Continue",next:"e-rosetta-stone"}]},"e-one-word-off":{id:"e-one-word-off",type:"ending",text:["She types carefully. Word by word.",'Word 1: "abandone." It should be "abandon."',"The wallet opens to a completely empty address.",'She thinks you had nothing. She tells the family: "There was nothing in there."',"The real wallet, with the correct 24 words, remains untouched."],ending:{id:"ONE_WORD_OFF",title:"ONE WORD OFF",causeOfLoss:'Titanium engraving read "abandone" instead of "abandon." Wallet opened to empty address 0x7f2...000. Real wallet untouched.',timeOfLoss:"8 months after your passing",punchline:'"One letter. Twenty-three thousand dollars."',shareText:"💀 My mom entered my seed phrase one letter wrong. The wallet looked empty. The real one is still untouched. What’s YOUR ending?"}},"e-rosetta-stone":{id:"e-rosetta-stone",type:"ending",text:["Your mother got the wallet open. She saw the numbers.","She just didn't know what to do with them.",'She Googles "how to cash out Ethereum" fourteen times.',"She gives up. The titanium plate goes back in the safe."],ending:{id:"ROSETTA_STONE_PROBLEM",title:"ROSETTA STONE PROBLEM",causeOfLoss:'Your mother is holding 24 words and a Ledger Nano. She has successfully typed "ledger help" into Google 14 times.',timeOfLoss:"11 months after your passing",punchline:'"She loves you. She just doesn’t love cryptography."',shareText:'💀 My mom found 24 words and a Ledger. She Googled "ledger help" 14 times. What’s YOUR ending?'}},"n-memorized-pride":{id:"n-memorized-pride",type:"choice",text:["You memorized 24 words. You were proud of that.","Every Sunday morning, while making coffee, you'd recite them silently.","abandon... ability... able..."],choices:[{label:"I told my brother I have 'some Bitcoin'",next:"n-brother-searches"},{label:"Nobody knew",next:"n-memory-fades"}]},"n-brother-searches":{id:"n-brother-searches",type:"narration",text:["Your brother searches your apartment. He finds a Ledger in the desk.","He connects it to your laptop. It asks for a PIN.","He tries 000000. Wrong. Two attempts remaining before the device wipes itself.","He tries your birthday. Wrong. One attempt remaining.","He puts the Ledger back in the drawer. Very carefully."],reaction:"The seed phrase is in a brain that no longer exists. The Ledger is one guess from erasing itself.",choices:[{label:"Continue",next:"e-single-point"}]},"n-memory-fades":{id:"n-memory-fades",type:"narration",text:["You also memorized your childhood phone number. You forgot that 3 years ago.","You memorized your college roommate's birthday. That faded in 2021.","You memorized 24 words and told no one.","Nobody will ever know they existed."],reaction:"The vault was your mind. The vault is closed.",choices:[{label:"Continue",next:"e-single-point"}]},"e-single-point":{id:"e-single-point",type:"ending",text:["You memorized 24 words and told no one.","You also memorized your childhood phone number. You forgot that last year.","Your memory was the vault. The vault is closed."],ending:{id:"SINGLE_POINT_OF_FAILURE",title:"SINGLE POINT OF FAILURE",causeOfLoss:"You memorized 24 words and told no one. You also memorized your childhood phone number but forgot that last year.",timeOfLoss:"0 days",punchline:'"Your memory was the vault. The vault is closed."',shareText:"💀 I memorized my seed phrase and told no one. My memory was the vault. The vault is closed. What’s YOUR ending?"}},"n-family-searches":{id:"n-family-searches",type:"choice",text:["You kept meaning to organize your crypto stuff.",`"I'll do it this weekend." Every weekend for two years.`,"Your family starts searching the house."],choices:[{label:"They search the office",next:"n-false-hope-find"},{label:"They search the filing cabinet",next:"n-breadcrumb-trail"}]},"n-false-hope-find":{id:"n-false-hope-find",type:"narration",text:["They find: 3 expired warranties. A receipt for a Ledger purchase.",`A Post-it that says "IMPORTANT" with a phone number. It's your dentist.`,"And a notebook with what looks like a list of words.","It's a grocery list from March."],reaction:"The real seed phrase fell behind the desk in 2022. The cleaning service threw it out in January.",choices:[{label:"Continue",next:"e-already-gone"}]},"n-breadcrumb-trail":{id:"n-breadcrumb-trail",type:"narration",text:['In the filing cabinet: a folder labeled "CRYPTO."',"Inside: printed CoinDesk articles from 2017. A Ledger purchase receipt.",'And a handwritten note: "seed phrase → see book."',"Which book? You owned 200 books. 47 were donated to Goodwill."],reaction:"It's a treasure map to a treasure that was thrown away.",choices:[{label:"Continue",next:"e-already-gone"}]},"e-already-gone":{id:"e-already-gone",type:"ending",text:["You'd have to look for it. You never did.","Your family will look for it. They w
1on't find it either.","It was on a Post-it note that fell behind the desk in 2022.","The cleaning service threw it out in January."],ending:{id:"ITS_ALREADY_GONE",title:"IT'S ALREADY GONE",causeOfLoss:"Seed phrase location unknown even to the owner. It was last seen on a Post-it note that fell behind a desk and was discarded during routine cleaning.",timeOfLoss:"Before your passing, technically",punchline:'"It was gone before you were."',shareText:"💀 My seed phrase was lost before I even died. A Post-it note behind a desk, thrown out by the cleaner. What’s YOUR ending?"}},"q-reconstruct":{id:"q-reconstruct",type:"choice",text:["Could anyone reconstruct your wallet setup?"],choices:[{label:"I have a spreadsheet / doc somewhere",next:"n-spreadsheet"},{label:"It's... complicated",next:"n-complicated"},{label:"No",next:"n-wallet-on-chain"}]},"n-spreadsheet":{id:"n-spreadsheet",type:"choice",text:["You have a doc. Somewhere.",`It's called "IMPORTANT - crypto stuff (draft v2 DO NOT DELETE)."`,"It was last edited 18 months ago."],choices:[{label:"Family finds the doc",next:"n-friend-helps"},{label:"It's in a password manager",next:"n-password-chain"}]},"n-friend-helps":{id:"n-friend-helps",type:"choice",text:['Your wife finds the Google Doc: "IMPORTANT - crypto stuff (draft v2 DO NOT DELETE)."',"It lists three wallets. Last edited 18 months ago.","She calls your crypto-savvy college friend for help."],choices:[{label:"Friend tries to recover",next:"n-bridge-disaster"},{label:"Friend says it's too risky",next:"e-stale-map"}]},"n-bridge-disaster":{id:"n-bridge-disaster",type:"narration",text:["Your friend recovers 2 of the 3 wallets. Not bad.",'The third wallet has tokens on Arbitrum. The doc says "Ethereum."',"Your friend bridges tokens to mainnet. Gas fee: $47.","The bridged tokens arrive. They're from a contract that migrated 6 months ago.","The tokens are worthless on the new contract. The $47 gas fee is the most expensive nothing ever purchased."],reaction:"Recovered 12% of total holdings. The other 88% is scattered across chains nobody's heard of.",choices:[{label:"Continue",next:"e-stale-map"}]},"e-stale-map":{id:"e-stale-map",type:"ending",text:["Your wife finds the Google Doc.","It lists three wallets. You had seven.","It references two protocols that migrated to new contracts six months ago.",'The "recovery instructions" section says "TODO."',"She follows what she can. She recovers about 12% of your holdings.","The rest is scattered across chains she’s never heard of."],ending:{id:"STALE_MAP",title:"STALE MAP",causeOfLoss:'Recovery doc found but 18 months out of date. Listed 3 of 7 wallets. Two referenced protocols had migrated. Instructions section: "TODO."',timeOfLoss:"8 months after your passing",punchline:'"The map was real. The territory had moved."',shareText:'💀 My family found my crypto doc. It was 18 months old and said "TODO" in the recovery section. What’s YOUR ending?'}},"n-password-chain":{id:"n-password-chain",type:"choice",text:["The doc is in 1Password. The master key is in your email.","Your email requires 2FA from your phone.","Your phone's passcode died with you."],choices:[{label:"Take the phone to Apple",next:"n-apple-store"},{label:"Try to guess the passcode",next:"n-passcode-lockout"}]},"n-apple-store":{id:"n-apple-store",type:"narration",text:["Apple requires: death certificate, proof of ownership, and an in-store appointment.","Six weeks later, the phone is unlocked. The authenticator app is there.","They rush to 1Password. The session timed out. They re-enter the master key from the email.","The vault opens. The recovery doc is inside.",'It says: "Wallet addresses: see attached spreadsheet."',"The spreadsheet link is broken. It was on Google Drive. The Google account was deleted for inactivity 3 months ago."],reaction:"Five locks opened. The treasure was behind a sixth.",choices:[{label:"Continue",next:"e-inception"}]},"n-passcode-lockout":{id:"n-passcode-lockout",type:"narration",text:["Your brother tries your birthday. Wrong.","Your dog's name. Wrong.","1234. Wrong.","After 10 attempts, the phone disables for 1 hour. After 11, it wipes itself.","He puts the phone down."],reaction:"The 2FA codes are 4 inches away and a universe apart.",choices:[{label:"Continue",next:"e-inception"}]},"e-inception":{id:"e-inception",type:"ending",text:["The doc is in 1Password.","The 1Password master key is in your email.","Your email requires 2FA from your phone.","Your phone's passcode died with you."],ending:{id:"INCEPTION",title:"INCEPTION",causeOfLoss:"The recovery doc is in 1Password. The 1Password master key is in your email. Your email requires 2FA from your phone. Your phone's passcode died with you.",timeOfLoss:"Never recovered",punchline:'"It’s turtles all the way down."',shareText:"💀 My crypto doc is in a password manager locked behind an email locked behind a phone locked behind my face. What’s YOUR ending?"}}
1,"n-complicated":{id:"n-complicated",type:"choice",text:["Your DeFi positions are spread across four chains, nine protocols, and one governance vote that never resolved.","Nobody else has ever seen your wallet."],choices:[{label:"The market crashes while nobody’s watching",next:"q-defi-decay"},{label:"Tokens locked in governance",next:"n-dao-vote"}]},"q-defi-decay":{id:"q-defi-decay",type:"choice",text:["Your positions don't disappear overnight. They decay.","The lending position on Aave creeps toward its liquidation threshold.","The LP position accumulates impermanent loss. Staking rewards go unclaimed."],choices:[{label:"A crypto friend notices on-chain",next:"n-good-samaritan"},{label:"Nobody notices",next:"n-silent-liquidation"}]},"n-good-samaritan":{id:"n-good-samaritan",type:"narration",text:["A friend in your Discord sees your Aave health factor dropping.",'They DM your partner: "Does [name] still have crypto on Aave?"',`Your partner: "What's Aave?"`,"Your friend adds $800 of collateral from their own wallet. The position is saved.","But they can't withdraw any of it. Only your keys can."],reaction:"They paid $800 to preserve assets nobody can ever touch.",choices:[{label:"Continue",next:"e-good-samaritan"}]},"e-good-samaritan":{id:"e-good-samaritan",type:"ending",text:["Your friend saved the position. The assets are safe.","Safe from everyone. Including your family.","Your friend checks the wallet sometimes. The numbers are still there.","They'll never move."],ending:{id:"GOOD_SAMARITAN",title:"THE GOOD SAMARITAN",causeOfLoss:"A friend saved your Aave position by adding $800 of their own collateral. They can see the assets. They can't touch them. Nobody can.",timeOfLoss:"Preserved indefinitely. Accessible never.",punchline:'"The most expensive act of kindness on the blockchain."',shareText:"💀 A friend paid $800 to save my DeFi position. They can see the assets. Nobody can touch them. Ever. What’s YOUR ending?"}},"n-silent-liquidation":{id:"n-silent-liquidation",type:"narration",text:["ETH drops 40% on a Thursday.","Your Aave position needed more collateral. Nobody knew. Nobody added it.","Liquidated. The liquidation penalty takes 10%. Gas fees take another 5%.","The remains aren't worth the gas to claim."],reaction:"The market doesn't observe a moment of silence.",choices:[{label:"Continue",next:"e-liquidated"}]},"e-liquidated":{id:"e-liquidated",type:"ending",text:["ETH drops 40% on a Thursday.","Your Aave position needed more collateral.","Nobody knew about it. Nobody added collateral.","Liquidated. The remains aren’t worth the gas to claim."],ending:{id:"LIQUIDATED_IN_ABSENTIA",title:"LIQUIDATED IN ABSENTIA",causeOfLoss:"ETH dropped 40% while nobody was watching. Aave position liquidated. The remains aren’t worth the gas to claim.",timeOfLoss:"3 months after your passing",punchline:'"The market doesn’t observe a moment of silence."',shareText:"💀 My DeFi position got liquidated because nobody knew to add collateral. The market doesn’t pause for funerals. What’s YOUR ending?"}},"n-dao-vote":{id:"n-dao-vote",type:"choice",text:["Your tokens are locked in a governance vote that's been running for 9 months.","Someone in the DAO notices your wallet has been inactive. They submit a proposal:",'"Compassionate release of tokens from wallet 0x7f2...3d. Reason: owner deceased."'],choices:[{label:"The DAO votes to help",next:"n-compassionate-release"},{label:"The proposal fails quorum",next:"n-still-voting"}]},"n-compassionate-release":{id:"n-compassionate-release",type:"narration",text:["The vote passes. 73% in favor.","The tokens are released from the governance lock.","They sit in your wallet. Ready to be claimed.","Claiming requires a transaction signed by your private key.","Nobody has your private key."],reaction:"The community voted to free your tokens into a cage only you can open.",choices:[{label:"Continue",next:"e-governance-hell"}]},"n-still-voting":{id:"n-still-voting",type:"narration",text:["The proposal doesn't reach quorum. Not enough people voted.","Your tokens remain locked. They're still counting toward quorum for other proposals.","Your delegation auto-renews. The delegate you chose 2 years ago is now voting for proposals you'd hate."],reaction:"Your dead vote is actively making the protocol worse.",choices:[{label:"Continue",next:"e-governance-hell"}]},"e-governance-hell":{id:"e-governance-hell",type:"ending",text:["Your tokens are locked in a governance vote.","The vote has been ongoing for nine months. Quorum hasn’t been reached.",'Nobody knows how to undelegate. Nobody knows what "undelegate" means.',"The tokens sit in governance limbo. Contributing to a quorum that will never come."],ending:{id:"GOVERNANCE_HELL",title:"GOVERNANCE HELL",causeOfLoss:"Tokens locked in a governance vote that hasn’t reached quorum in 9 months. Nobody knows how to undelegate.",timeOfLoss:"9+ months and counting",punchline:'"Still voting. Still dead."',shareText:"💀 My tokens are locked in a governance vote that’ll never reach quorum. I’m still voting from beyond the grave. What’s YOUR ending?"}},"n-wallet-on-chain":{id:"n-wallet-on-chain",type:"choice",text:["Nobody knew the wallet existed. But the blockchain knew.","147 transactions. An ENS name: yourname.eth. Two NFTs from a friend's art project.","All of it, perfectly preserved. Perfectly unreachable."],choices:[{label:"Someone finds the wallet on-chain",next:"n-ghost-wallet-thread"},{label:"The ENS name expires",next:"e-identity-squatted"}]},"n-ghost-wallet-thread":{id:"n-ghost-wallet-thread",type:"narration",text:["Months later, a crypto Twitter sleuth finds an inactive wallet with a registered ENS.",'Thread: "Found a ghost wallet. 2.1 ETH, active until 6 months ago. Anyone know this person?"',"The thread goes viral. 47,000 impressions.","Your cousin sees it. She now knows about the crypto.","She still can't access it."],reaction:"Visible to 47,000 people. Accessible to zero.",choices:[{label:"Continue",next:"e-0xdead"}]},"e-identity-squatted":{id:"e-identity-squatted",type:"ending",text:["Your ENS name expires after 1 year. Nobody renews it.","A domain squatter registers yourname.eth three hours later.",'They use it for a meme coin launchpad called "PUMP420INU."',"Your on-chain identity now advertises a rug pull."],ending:{id:"IDENTITY_SQUATTED",title:"IDENTITY SQUATTED",causeOfLoss:'ENS name expired after 1 year. Re-registered by a domain squatter. Now used for a meme coin launchpad. Your on-chain identity advertises "PUMP420INU."',timeOfLoss:"14 months after your passing",pu
1nchline:`"Your name is still on-chain. It's just not yours anymore."`,shareText:"💀 My ENS name expired and got squatted. My on-chain identity now advertises a rug pull called PUMP420INU. What’s YOUR ending?"}},"e-0xdead":{id:"e-0xdead",type:"ending",text:["Nobody knew the wallet existed.","It sits on-chain. Visible to the entire world. Accessible to no one.","A monument to self-sovereignty.","The blockchain remembers everything. It just doesn’t care."],ending:{id:"0x000_DEAD",title:"0x000...DEAD",causeOfLoss:"Nobody knew the wallet existed. It sits on-chain, visible to the entire world, accessible to no one. A monument to self-sovereignty.",timeOfLoss:"∞",punchline:'"On-chain forever. Untouched forever."',shareText:"💀 Nobody knew my wallet existed. It’s on-chain forever, untouched forever. What’s YOUR ending?"}}},P=[{id:"ostrich",emoji:"🪶",name:"The Ostrich",headline:"Doesn't think about it.",color:"#D4A574"},{id:"prepper",emoji:"🔐",name:"The Prepper",headline:"Fort Knox. Zero recovery.",color:"#4A7C9B"},{id:"optimist",emoji:"🌈",name:"The Optimist",headline:"Partner will figure it out.",color:"#E88DA0"},{id:"procrastinator",emoji:"⏳",name:"The Procrastinator",headline:"Been meaning to since 2021.",color:"#E5A93D"},{id:"degen",emoji:"🎲",name:"The Degen",headline:"Keys in a screenshot. WAGMI.",color:"#39FF14"},{id:"one_percent",emoji:"👑",name:"The 1%",headline:"Actually has a plan. Suspicious.",color:"#FFD700"}];function U({art:t,className:n,color:s="text-foreground/[0.15]"}){return e.jsx("pre",{className:d("font-mono text-[10px] md:text-xs leading-tight select-none whitespace-pre text-center animate-flicker",s,n),children:t})}const F=`
2        ╭──────────╮
3       ╱  ░░░░░░░░  ╲
4      │  ┌──┐  ┌──┐  │
5      │  │▓▓│  │▓▓│  │
6      │  └──┘  └──┘  │
7      │      ╲╱      │
8      │    ╭────╮    │
9       ╲   ╰┬┬┬┬╯   ╱
10        ╰──────────╯`,M=`
11      ╔══════════════════╗
12      ║ ┌──────────────┐ ║
13      ║ │ ◈  0x7f...3d │ ║
14      ║ │              │ ║
15      ║ │  ████ ████   │ ║
16      ║ │  ████ ████   │ ║
17      ║ └──────────────┘ ║
18      ╚══════════════════╝`,W=`
19           ┌─────────┐
20           │ ╔═════╗ │
21           │ ║     ║ │
22           │ ║  🔒 ║ │
23           │ ║     ║ │
24           │ ╚═════╝ │
25           │  ○ ○ ○  │
26           └─────────┘`,H=`
27         ╔═══════════════╗
28         ║ ┌───────────┐ ║
29         ║ │           │ ║
30         ║ │    [X]    │ ║
31         ║ │           │ ║
32         ║ └───────────┘ ║
33         ║          ◎    ║
34         ╚═══════════════╝`,q=`
35        ┌─────────────────┐
36        │ ┌─────────────┐ │
37        │ │  L E D G E R│ │
38        │ │             │ │
39        │ │  ▓▓▓▓▓▓▓▓▓ │ │
40        │ │  ▓▓▓▓▓▓▓▓▓ │ │
41        │ └─────────────┘ │
42        │       [□□]      │
43        └─────────────────┘`,G=`
44        ┌───────────────────┐
45        │ ╭───────────────╮ │
46        │ │ C:\\> _        │ │
47        │ │               │ │
48        │ │               │ │
49        │ ╰───────────────╯ │
50        └───────┬─────┬─────┘
51                │═════│
52            ╰═══════════╯`,_=`
53      ╭───────────────────────╮
54      │  ◇ EXCHANGE  ◇       │
55      │  ────────────────     │
56      │  BTC    ████████  ↑   │
57      │  ETH    ██████    ↓   │
58      │  SOL    ████      ↑   │
59      ╰───────────────────────╯`,$=`
60             ╭─────────╮
61            ╱           ╲
62           │   R. I. P.  │
63           │             │
64           │    YOUR     │
65           │   CRYPTO    │
66           │             │
67           │  20XX-20XX  │
68           ╰─────────────╯
69         ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒`,B=`
70        ◇─────◇─────◇
71       ╱│╲   ╱│╲   ╱│╲
72      ◇ │ ◇ ◇ │ ◇ ◇ │ ◇
73       ╲│╱   ╲│╱   ╲│╱
74        ◇─────◇─────◇
75       ╱│╲   ╱│╲   ╱│╲
76      ◇ │ ◇ ◇ │ ◇ ◇ │ ◇
77       ╲│╱   ╲│╱   ╲│╱
78        ◇─────◇─────◇`,z=`
79   ╔═══════════════════════════╗
80   ║ ┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ║
81   ║                           ║
82   ║   CERTIFICATE OF          ║
83   ║     PERMANENT LOSS        ║
84   ║                           ║
85   ║ ┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ ║
86   ╚═══════════════════════════╝`,V=`
87          ╱─────────────╲
88         ╱               ╲
89        │ ┌─────────────┐ │
90        │ │ THE         │ │
91        │ │ INTELLIGENT │ │
92        │ │ INVESTOR    │ │
93        │ │             │ │
94        │ └─────────────┘ │
95        ╰─────────────────╯`,K=`
96        ╭──╮   ╭──╮   ╭──╮
97        │  ╰───╯  ╰───╯  │
98        │  ╭───╮  ╭───╮  │
99        ╰──╯   ╰──╯   ╰──╯`,X=`
100         ╭─────╮
101         │░░░░░│
102         │ ░░░ │
103         │  ░  │
104         │ ░░░ │
105         │░░░░░│
106         ╰─────╯`,Q=`
107           (
108          )
109         ( )
110        ┌───┐
111        │░░░│
112        │░░░│
113        │░░░│
114        └───┘`,Z={skull:F,wallet:M,phone:W,safe:H,ledger:q,computer:G,exchange:_,gravestone:$,defi:B,certificate:z,book:V,chain:K,hourglass:X,candle:Q};function b({scene:t,className:n,color:s}){return e.jsx(U,{art:Z[t],className:n,color:s})}function I({className:t}){return e.jsx("div",{className:d("flex items-center justify-center py-2 select-none",t),children:e.jsx("span",{className:"text-[10px] font-mono text-foreground
114/[0.12] tracking-[0.4em]",children:"─ ─ ── ─ ─"})})}const E={"q-storage":"wallet","q-exchange-login":"exchange","n-partner-login":"computer","n-partner-balance":"computer","n-nobody-exchange":"computer","n-email-autofill":"phone","q-seed-phrase":"ledger","n-paper-seed":"ledger","n-found-paper":"computer","n-titanium-safe":"safe","q-reconstruct":"defi","n-spreadsheet":"computer","n-complicated":"defi","e-account-frozen":"phone","e-pyrrhic-victory":"computer","e-bureaucratic-purgatory":"exchange","e-digital-ghost":"gravestone","e-security-theater":"phone","e-the-great-purge":"computer","e-phished":"skull","e-goodwill-hunting":"book","e-russian-nesting":"safe","e-rosetta-stone":"ledger","e-single-point":"skull","e-already-gone":"gravestone","e-stale-map":"computer","e-inception":"chain","e-liquidated":"defi","e-governance-hell":"defi","e-0xdead":"gravestone","q-partner-2fa-options":"phone","n-exchange-support-call":"exchange","n-recovery-scam":"skull","e-double-grief":"skull","n-defi-bookmark":"computer","n-defi-glimpse":"defi","n-death-cert-submitted":"exchange","n-probate-grind":"exchange","e-last-will":"book","n-digital-slow-fade":"gravestone","n-reset-link":"computer","n-reverification":"phone","n-memorized-pride":"skull","n-brother-searches":"ledger","n-memory-fades":"gravestone","n-family-searches":"computer","n-false-hope-find":"
114computer","n-breadcrumb-trail":"book","q-brother-hesitates":"computer","n-second-phish":"skull","n-search-books":"book","n-bookshelf-search":"book","n-donation-gone":"book","n-youtube-recovery":"ledger","n-ux-abyss":"ledger","e-one-word-off":"ledger","n-locksmith-attempt":"safe","n-wallet-on-chain":"defi","n-ghost-wallet-thread":"defi","e-identity-squatted":"gravestone","n-password-chain":"chain","n-apple-store":"phone","n-passcode-lockout":"phone","n-friend-helps":"computer","n-bridge-disaster":"defi","q-defi-decay":"defi","n-good-samaritan":"defi","n-silent-liquidation":"defi","e-good-samaritan":"defi","n-dao-vote":"defi","n-compassionate-release":"defi","n-still-voting":"defi"};function J({children:t,className:n,showBack:s=!0,noScroll:a=!1}){return e.jsxs("div",{className:"dark fixed inset-0 z-40 bg-black flex flex-col",children:[e.jsx("div",{className:"pointer-events-none fixed inset-0 z-50 opacity-[0.015]",style:{backgroundImage:"repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.03) 4px)"}}),e.jsx("div",{className:"pointer-events-none fixed inset-0 z-50 opacity-[0.02] mix-blend-overlay",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")`,backgroundSize:"128px 128px"}}),s&&e.jsx("div",{className:"relative z-[51] px-4 pt-3 pb-0",children:e.jsxs(C,{to:"/games",className:"inline-flex items-center gap-1.5 text-[10px] font-mono tracking-wider uppercase text-foreground/15 hover:text-foreground/40 transition-colors",children:[e.jsx("span",{className:"text-[10px]",children:"←"}),e.jsx("span",{children:"esc"})]})}),e.jsx("div",{className:d("flex-1 flex flex-col w-full max-w-lg md:max-w-xl lg:max-w-2xl xl:max-w-3xl mx-auto px-5 md:px-6 lg:px-8 relative z-[1]",a?"overflow-hidden":"overflow-y-auto no-scrollbar",n),children:t}),e.jsx("div",{className:"relative z-[1] h-px w-full bg-gradient-to-r from-transparent via-foreground/[0.04] to-transparent"})]})}function g({className:t}){return e.jsx("div",{className:d("w-full py-2",t),children:e.jsxs("div",{className:"flex items-center gap-2 opacity-20",children:[e.jsx("div",{className:"flex-1 h-px bg-gradient-to-r from-transparent to-foreground/30"}),e.jsx("span",{className:"text-[8px] font-mono text-foreground/40 tracking-[0.3em] animate-glow-breathe",children:"···"}),e.jsx("div",{className:"flex-1 h-px bg-gradient-to-l from-transparent to-foreground/30"})]})})}function v({children:t,className:n}){return e.jsxs("div",{className:d("flex items-start gap-2 font-mono",n),children:[e.jsx("span",{className:"text-primary/50 text-xs mt-0.5 select-none shrink-0",children:">"}),e.jsx("div",{className:"flex-1 text-sm text-foreground/80 leading-relaxed",children:t})]})}function ee({onSelect:t}){const[n,s]=r.useState(null),[a,l]=r.useState(!1);function i(o){n||(s(o.id),setTimeout(()=>{l(!0),setTimeout(()=>t(o.id),400)},500))}return e.jsxs("div",{className:d("flex-1 flex flex-col transition-all duration-400",a&&"opacity-0 translate-y-[-8px]"),children:[e.jsx("div",{className:"flex-1 flex flex-col items-center justify-center pt-4 pb-2",children:e.jsx("div",{className:"animate-float",children:e.jsx(b,{scene:"skull"})})}),e.jsx(g,{}),e.jsxs("div",{className:"pb-6 pt-2",children:[e.jsx("p",{className:"text-[10px] font-mono text-foreground/30 tracking-[0.3em] uppercase text-center mb-1",children:"Step 1 of 3"}),e.jsx("h2",{className:"text-base md:text-lg font-bold font-mono text-center mb-1 text-foreground/90",children:"Choose your character"}),e.jsx("p",{className:"text-xs font-mono text-foreground/35 italic mb-5 text-center",children:"This will determine your fate."}),e.jsx(I,{className:"mb-3"}),e.jsx("div",{className:"flex flex-col gap-2",children:P.map(o=>{const m=n===o.id,f=n!==null&&!m;return e.jsxs("button",{onClick:()=>i(o),className:d("relative flex items-center gap-3 text-left rounded border px-3 py-2.5 transition-all duration-300",n===null&&"cursor-pointer hover:border-foreground
114/20",n!==null&&"cursor-default",m&&"scale-[1.02]",f&&"opacity-15 scale-[0.98]",!m&&!f&&"border-foreground/[0.06] bg-foreground/[0.02]"),style:m?{borderColor:`${o.color}80`,backgroundColor:`${o.color}10`,boxShadow:`0 0 16px ${o.color}15, inset 0 0 16px ${o.color}05`}:void 0,children:[e.jsx("span",{className:"text-xl shrink-0",children:o.emoji}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("span",{className:d("text-xs lg:text-sm font-semibold font-mono block",!m&&"text-foreground/70"),style:m?{color:o.color}:void 0,children:o.name}),e.jsx("span",{className:"text-[10px] lg:text-[11px] text-foreground/35 font-mono block leading-tight mt-0.5",children:o.headline})]})]},o.id)})})]})]})}function te({current:t,total:n}){return e.jsx("div",{className:"flex gap-1.5 justify-center",children:Array.from({length:n},(s,a)=>e.jsx("div",{className:d("h-px w-4 transition-colors duration-300",a<t?"bg-primary/60":a===t?"bg-primary/30":"bg-foreground/[0.06]")},a))})}function O({stepIndex:t,title:n,subtitle:s,options:a,onSelect:l}){const[i,o]=r.useState(null),[m,f]=r.useState(!1);function y(c){i||(o(c),setTimeout(()=>{f(!0),setTimeout(()=>l(c),350)},500))}return e.jsxs("div",{className:d("flex-1 flex flex-col transition-all duration-350",m&&"opacity-0 translate-y-[-8px]"),children:[e.jsx("div",{className:"flex-1 flex flex-col items-center justify-center pt-4 pb-2",children:e.jsx(b,{scene:t===1?"wallet":"chain"})}),e.jsx(g,{}),e.jsxs("div",{className:"pb-6 pt-2",children:[e.jsx(te,{current:t,total:3}),e.jsxs("p",{className:"text-[10px] font-mono text-foreground/30 tracking-[0.3em] uppercase text-center mb-2 mt-3",children:["Step ",t+1," of 3"]}),e.jsx("h2",{className:"text-sm md:text-base font-semibold font-mono text-center mb-0.5 text-foreground/90 leading-snug",children:n}),s&&e.jsx("p",{className:"text-xs font-mono text-foreground/30 italic mb-4 text-center",children:s}),!s&&e.jsx("div",{className:"mb-4"}),e.jsx("div",{className:"flex flex-col gap-1.5",children:a.map(c=>{const u=i===c.value,h=i!==null&&!u;return e.jsxs("button",{onClick:()=>y(c.value),className:d("text-left rounded border px-4 py-2.5 text-sm lg:text-base font-mono leading-relaxed transition-all duration-200 min-h-[44px]",i===null&&"cursor-pointer hover:border-foreground
114/20 hover:bg-foreground/[0.02]",i!==null&&"cursor-default",u&&"border-primary/60 text-primary bg-primary/5",!u&&!h&&"border-foreground/[0.08] text-foreground/60 bg-transparent",h&&"border-foreground/[0.03] text-foreground/15 bg-transparent"),children:[e.jsx("span",{className:d("mr-2",u?"text-primary/60":"text-foreground/15"),children:">"}),c.label]},c.value)})})]})]})}const ne=[{label:"< $1K",value:"under-1k"},{label:"$1K – $10K",value:"1k-10k"},{label:"$10K – $100K",value:"10k-100k"},{label:"$100K – $1M",value:"100k-1m"},{label:"$1M+",value:"1m-plus"},{label:"I'd rather not say",value:"rather-not"}],ae=[{label:"Ethereum",value:"ethereum"},{label:"Bitcoin",value:"bitcoin"},{label:"Solana",value:"solana"},{label:"Base",value:"base"},{label:"Too many to count",value:"multi"},{label:"I don't know what that means",value:"idk"}],k=[{text:"> initializing timeline...",delay:0},{text:"> loading profile data...",delay:300},{text:"> simulating outcomes...",delay:600},{text:"> calculating probability of survival...",delay:900},{text:"> result: 0%",delay:1200}];function oe({onComplete:t}){const[n,s]=r.useState(0),[a,l]=r.useState(0);return r.useEffect(()=>{const m=53.333333333333336;let f=0;const y=setInterval(()=>{f++;const c=f/m,u=c<.7?c*1.2:.84+(c-.7)*.53;s(Math.min(Math.round(u*100),100)),f>=m&&(clearInterval(y),s(100),setTimeout(t,400))},30);return()=>clearInterval(y)},[t]),r.useEffect(()=>{k.forEach((i,o)=>{setTimeout(()=>l(o+1),i.delay)})},[]),e.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-6",children:[e.jsx("div",{className:"animate-float",children:e.jsx(b,{scene:"hourglass",color:"text-foreground/[0.05]"})}),e.jsx("div",{className:"w-full max-w-xs space-y-1.5",children:k.map((i,o)=>e.jsx("p",{className:d("text-[11px] font-mono transition-all duration-300",o<a?"opacity-100 translate-y-0":"opacity-0 translate-y-1",o===k.length-1&&a>o?"text-red-500/60":"text-foreground/30"),children:i.text},o))}),e.jsxs("div",{className:"w-48",children:[e.jsx("div",{className:"h-px bg-foreground
114/[0.04] rounded-full overflow-hidden",children:e.jsx("div",{className:"h-full bg-primary/40 transition-[width] duration-75",style:{width:`${n}%`}})}),e.jsxs("p",{className:"text-[10px] font-mono text-foreground/25 tabular-nums text-center mt-2",children:[n,"%"]})]})]})}const A=new Intl.DateTimeFormat("en-US",{weekday:"long"}).format(new Date),N=[{text:"It wasn’t dramatic.",pause:1400},{text:"No car chase. No last words.",pause:1400},{text:`Just a ${A} that didn’t end the way ${A}s usually do.`,pause:1800},{text:"",pause:600},{text:"Your family loved you.",pause:1400},{text:"They also have no idea what MetaMask is.",pause:1600},{text:"",pause:600},{text:"Let’s see what happens to your crypto.",pause:0}];function se({onComplete:t}){const[n,s]=r.useState("black"),[a,l]=r.useState(0),[i,o]=r.useState(!1);r.useEffect(()=>{const c=setTimeout(()=>s("reveal"),600),u=setTimeout(()=>s("hold"),1e3),h=setTimeout(()=>o(!0),1800),p=setTimeout(()=>s("dim"),3e3),x=setTimeout(()=>s("narrate"),3800);return()=>{clearTimeout(c),clearTimeout(u),clearTimeout(h),clearTimeout(p),clearTimeout(x)}},[]),r.useEffect(()=>{if(n!=="narrate"&&n!=="ready")return;if(a>=N.length){const h=setTimeout(()=>s("ready"),600);return()=>clearTimeout(h)}const c=a===0?800:N[a-1].pause,u=setTimeout(()=>l(h=>h+1),c);return()=>clearTimeout(u)},[n,a]);const m=r.useCallback(()=>{s("exit"),setTimeout(t,600)},[t]),f=n==="narrate"||n==="ready"||n==="exit",y=n==="dim"||f;return e.jsx("div",{className:d("flex-1 flex flex-col items-center justify-center relative transition-opacity duration-600",n==="exit"&&"opacity-0"),children:e.jsxs("div",{className:"flex flex-col items-center w-full max-w-sm md:max-w-md lg:max-w-lg px-4",children:[e.jsx("div",{className:d("mb-6 text-center font-mono select-none transition-all duration-[2000ms]",i?"opacity-100":"opacity-0"),style:{color:"rgba(220, 38, 38, 0.08)"},children:e.jsx("pre",{className:"text-[10px] leading-tight",children:`    ┃
115  ━━╋━━
116    ┃
117    ┃`})}),e.jsx("h1",{className:"text-5xl md:text-7xl lg:text-8xl font-bold font-mono tracking-tight select-none transition-all text-center",style:{color:"#DC2626",textShadow:n==="hold"||n==="reveal"?"0 0 80px rgba(220, 38, 38, 0.6), 0 0 160px rgba(220, 38, 38, 0.25), 0 0 320px rgba(220, 38, 38, 0.08)":y?"0 0 40px rgba(220, 38, 38, 0.15)":"none",opacity:n==="black"?0:n==="reveal"||n==="hold"?1:y?.25:0,transform:n==="black"?"scale(1.08)":n==="reveal"?"scale(1.03)":"scale(1)",transitionDuration:n==="reveal"?"400ms":n==="dim"?"1200ms":"600ms",transitionTimingFunction:"cubic-bezier(0.25, 0.1, 0.25, 1)"},children:"YOU DIED."}),e.jsx("div",{className:d("mt-4 mb-6 w-16 h-px transition-all duration-[1500ms]",y?"opacity-100":"opacity-0"),style:{background:"linear-gradient(90deg, transparent, rgba(220,38,38,0.15), transparent)"}}),e.jsx("div",{className:d("flex flex-col items-center gap-3 transition-opacity duration-1000",f?"opacity-100":"opacity-0"),children:N.map((c,u)=>c.text===""?e.jsx("div",{className:d("h-3 transition-opacity duration-700",u<a?"opacity-100":"opacity-0")},u):e.jsx("p",{className:d("text-sm md:text-[15px] lg:text-base font-mono leading-relaxed text-center text-foreground/80 transition-all",u<a?"opacity-100 translate-y-0":"opacity-0 translate-y-2"),style:{transitionDuration:"1200ms",transitionTimingFunction:"cubic-bezier(0.25, 0.1, 0.25, 1)"},children:c.text},u))}),e.jsx("div",{className:d("mt-8 flex gap-1 transition-all duration-[1500ms]",n==="ready"?"opacity-100":"opacity-0"),children:[0,1,2].map(c=>
117e.jsx("div",{className:"w-1 h-1 rounded-full bg-foreground/[0.08]"},c))}),e.jsxs("button",{onClick:m,className:d("mt-6 flex items-center gap-2 text-sm font-mono transition-all duration-[1000ms]",n==="ready"?"opacity-100 translate-y-0 text-primary/70 hover:text-primary":"opacity-0 translate-y-3 pointer-events-none text-primary/50"),children:[e.jsx("span",{className:"text-primary/30",children:">"}),e.jsx("span",{className:"underline underline-offset-4",children:"Continue"}),e.jsx("span",{className:"animate-pulse text-primary/40",children:"_"})]})]})})}const ie=5;function L({depth:t}){return e.jsx("div",{className:"flex items-center justify-center gap-2",children:Array.from({length:ie},(n,s)=>e.jsx("div",{className:d("h-px transition-all duration-300",s<t?"w-3 bg-primary/40":s===t?"w-3 bg-primary/20":"w-2 bg-foreground/[0.05]")},s))})}const Y=[{text:"> accessing wallet records...",delay:0},{text:"> owner status: deceased",delay:800},{text:"> reconstructing last known state...",delay:1800}];function re({node:t,depth:n,onChoose:s}){var u;const[a,l]=r.useState(null),[i,o]=r.useState(n===0?"preamble":"in"),[m,f]=r.useState(0),y=E[t.id]??"wallet";r.useEffect(()=>{if(i!=="preamble")return;Y.forEach((p,x)=>{setTimeout(()=>f(x+1),p.delay)});const h=setTimeout(()=>o("in"),3200);return()=>clearTimeout(h)},[i]);const c=r.useCallback(h=>{a!==null||!t.choices||i!=="in"||(l(h),t.reaction?(o("react"),setTimeout(()=>{o("out"),setTimeout(()=>s(t.choices[h].next),350)},1200)):setTimeout(()=>{o("out"),setTimeout(()=>s(t.choices[h].next),350)},500))},[a,t,s,i]);return i==="preamble"?e.jsx("div",{className:"flex-1 flex flex-col items-center justify-center",children:e.jsx("div",{className:"w-full max-w-xs space-y-3",children:Y.map((h,p)=>e.jsxs("p",{className:d("text-xs font-mono transition-all duration-700",p<m?"opacity-100 translate-y-0":"opacity-0 translate-y-1",p===1&&m>p?"text-red-500/40":"text-foreground/20"),children:[h.text,p===m-1&&e.jsx("span",{className:"animate-pulse ml-0.5 text-primary/30",children:"_"})]},p))})}):e.jsxs("div",{className:d("flex-1 flex flex-col transition-all duration-350",i==="out"&&"opacity-0 translate-y-[-8px]"),children:[e.jsx("div",{className:"flex-1 flex flex-col items-center justify-center pt-2 pb-1 min-h-[120px]",children:e.jsx("div",{className:"animate-float",children:e.jsx(b,{scene:y})})}),e.jsx(g,{}),e.jsx("div",{className:"py-3 space-y-2.5",children:t.text.map((h,p)=>e.jsx("p",{className:"text-sm lg:text-base font-mono leading-relaxed text-foreground/80 animate-in fade-in slide-in-from-bottom-1 duration-500",style:{animationDelay:`${p*150}ms`,animationFillMode:"both"},children:h},p))}),a!==null&&i==="react"&&t.reaction&&e.jsx("div",{className:"mb-3 px-3 py-2.5 border-l border-primary/30 animate-in fade-in slide-in-from-bottom-1 duration-300",children:e.jsx("p",{className:"text-xs lg:text-sm font-mono text-primary/60 italic leading-relaxed",children:t.reaction})}),e.jsx(g,{className:"mb-1"}),e.jsxs("div",{className:"pb-5 pt-1",children:[e.jsx("div",{className:"flex flex-col gap-1.5",children:(u=t.choices)==null?void 0:u.map((h,p)=>{const x=a===p,w=a!==null&&!x;return e.jsxs("button",{onClick:()=>c(p),className:d("text-left rounded border px-4 py-3 text-sm lg:text-base font-mono leading-relaxed transition-all duration-200 min-h-[48px]","animate-in fade-in slide-in-from-bottom-1 duration-400",a===null&&"cursor-pointer hover:border-foreground
117/20 hover:bg-foreground/[0.02]",a!==null&&"cursor-default",x&&"border-primary/60 text-primary bg-primary/5",!x&&!w&&"border-foreground/[0.08] text-foreground/60",w&&"border-foreground/[0.03] text-foreground/15"),style:{animationDelay:`${300+p*100}ms`,animationFillMode:"both"},children:[e.jsx("span",{className:d("mr-2",x?"text-primary/50":"text-foreground/15"),children:">"}),h.label]},p)})}),e.jsx("div",{className:"mt-3",children:e.jsx(L,{depth:n})})]})]})}function le({node:t,depth:n,onContinue:s}){const[a,l]=r.useState(!1),[i,o]=r.useState(0),[m,f]=r.useState(!1),y=E[t.id]??"wallet";r.useEffect(()=>{const h=t.text.length+(t.reaction?1:0);t.text.forEach((p,x)=>{setTimeout(()=>o(x+1),400+x*600)}),t.reaction&&setTimeout(()=>o(h),400+t.text.length*600),setTimeout(()=>f(!0),400+h*600+300)},[t]);function c(){var h;(h=t.choices)!=null&&h[0]&&(l(!0),setTimeout(()=>s(t.choices[0].next),350))}const u=t.text.length;return e.jsxs("div",{className:d("flex-1 flex flex-col transition-all duration-350",a&&"opacity-0 translate-y-[-8px]"),children:[e.jsx("div",{className:"flex-1 flex flex-col items-center justify-center pt-2 pb-1 min-h-[120px]",children:e.jsx("div",{className:"animate-float",children:e.jsx(b,{scene:y})})}),e.jsx(g,{}),e.jsx("div",{className:"py-3 space-y-2.5",children:t.text.map((h,p)=>e.jsx("p",{className:d("text-sm lg:text-base font-mono leading-relaxed text-foreground/80 transition-all duration-700",p<i?"opacity-100 translate-y-0":"opacity-0 translate-y-2"),children:h},p))}),t.reaction&&e.jsx("div",{className:d("mb-3 px-3 py-2.5 border-l border-primary/30 transition-all duration-700",u<i?"opacity-100 translate-y-0":"opacity-0 translate-y-2"),children:e.jsx("p",{className:"text-xs lg:text-sm font-mono text-primary/60 italic leading-relaxed",children:t.reaction})}),e.jsx(g,{className:"mb-1"}),e.jsxs("div",{className:"pb-5 pt-2",children:[e.jsxs("button",{onClick:c,className:d("flex items-center gap-2 text-sm font-mono transition-all duration-700",m?"opacity-100 translate-y-0 text-primary/60 hover:text-primary/90":"opacity-0 translate-y-2 pointer-events-none"),children:[e.jsx("span",{className:"text-primary/30",children:">"}),e.jsx("span",{className:"underline underline-offset-4",children:"Continue"}),e.jsx("span",{className:"animate-pulse text-primary/40",children:"_"})]}),e.jsx("div",{className:"mt-3",children:e.jsx(L,{depth:n})})]})]})}function T({label:t,children:n,delay:s,visible:a}){const[l,i]=r.useState(!1);return r.useEffect(()=>{if(!a)return;const o=setTimeout(()=>i(!0),s);return()=>clearTimeout(o)},[a,s]),e.jsxs("div",{className:d("transition-all duration-500",l?"opacity-100 translate-y-0":"opacity-0 translate-y-1"),children:[e.jsx("span",{className:"text-[10px] lg:text-[11px] font-mono uppercase tracking-wider text-red-900/50 block mb-0.5",children:t}),e.jsx("div",{className:"text-[13px] lg:text-sm font-mono text-foreground/65 leading-relaxed",children:n})]})}const ce=r.forwardRef(function({ending:n},s){const[a,l]=r.useState(!1);return r.useEffect(()=>{const i=setTimeout(()=>l(!0),400);return()=>clearTimeout(i)},[]),e.jsx("div",{ref:s,className:d("w-full transition-opacity duration-700",a?"opacity-100":"opacity-0"),children:e.jsxs("div",{className:"border border-red-900/25 rounded bg-red-950/[0.06] p-4 md:p-5 lg:p-6",style:{boxShadow:"inset 0 0 30px rgba(127, 29, 29, 0.04), 0 0 20px rgba(127, 29, 29, 0.03)"},children:[e.jsx("div",{className:"text-center pb-3 mb-3 border-b border-red-900/15",children:e.jsx("p",{className:"text-[9px] font-mono tracking-[0.3em] uppercase text-red-900/50",children:"Certificate of Permanent Loss"})}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(T,{label:"Owner",delay:200,visible:a,children:"You (deceased)"}),e.jsx(T,{label:"Cause of Loss",delay:400,visible:a,children:n.causeOfLoss}),e.jsx(T,{label:"Time of Loss",delay:600,visible:a,children:n.timeOfLoss}),e.jsx(T,{label:"Survived by",delay:800,visible:a,children:"Nobody. The crypto is gone."})]}),e.jsxs("div",{className:d("mt-4 pt-3 border-t border-red-900/15 transition-all duration-700",a?"opacity-100 translate-y-0":"opacity-0 translate-y-1"),style:{transitionDelay:"1000ms"},children:[e.jsx("span",{className:"text-[10px] font-mono uppercase tracking-wider text-red-900/50 block mb-1",children:"Final words"}),e.jsx("p",{className:"text-sm lg:text-base font-mono italic text-red-500/70 leading-relaxed",children:n.punchline})]}),e.jsx("div",{className:"mt-4 pt-2 border-t border-red-900/10 text-center",children:e.jsx("p",{className:"text-[8px] font-mono tracking-[0.25em] uppercase text-foreground
117/15",children:n.title})})]})})}),de="https://ante.org/games/dead-mans-wallet";function he({ending:t}){const[n,s]=r.useState(!1),a=`${de}?ending=${encodeURIComponent(t.id)}`,l=t.shareText;function i(o){o==="twitter"?window.open(`https://twitter.com/intent/tweet?text=${encodeURIComponent(l)}&url=${encodeURIComponent(a)}`,"_blank"):o==="telegram"?window.open(`https://t.me/share/url?url=${encodeURIComponent(a)}&text=${encodeURIComponent(l)}`,"_blank"):(navigator.clipboard.writeText(`${l} ${a}`).catch(()=>{}),s(!0),setTimeout(()=>s(!1),2e3))}return e.jsx("div",{className:"flex gap-2 justify-center",children:["twitter","telegram","copy"].map(o=>e.jsx("button",{onClick:()=>i(o),className:"rounded border border-foreground/[0.10] bg-foreground/[0.03] px-3 py-1.5 text-[11px] font-mono text-foreground/40 hover:text-foreground/60 hover:border-foreground/20 transition-all duration-200 active:scale-[0.97]",children:o==="copy"&&n?"copied!":o==="twitter"?"twitter":o==="telegram"?"telegram":"copy"},o))})}function ue(){return e.jsxs("div",{className:"w-full",children:[e.jsx(g,{className:"mb-4"}),e.jsx("p",{className:"text-xs font-mono text-foreground/50 text-center mb-4",children:"What if this wasn’t the ending?"}),e.jsxs("div",{className:"space-y-2 mb-5",children:[e.jsx(v,{children:"You set up guardians — people you trust"}),e.jsx(v,{children:"You check in periodically to confirm you’re OK"}),e.jsx(v,{children:"If you stop checking in, guardians transfer your assets"}),e.jsx(v,{children:"No keys to lose. No passwords to remember."})]}),e.jsxs("button",{onClick:()=>window.open("https://app.ante.org/vaults","_blank"),className:"w-full rounded border border-primary/30 bg-primary/5 px-4 py-3 text-sm font-mono text-primary/80 hover:text-primary hover:border-primary/50 hover:bg-primary/10 transition-all duration-200 active:scale-[0.98]",children:[e.jsx("span",{className:"text-primary/40 mr-2",children:">"}),"Create Your Vault"]})]})}function pe(){return typeof navigator<"u"&&typeof navigator.share=="function"&&typeof navigator.canShare=="function"}
117function me({node:t,onRestart:n}){const s=r.useRef(null),[a,l]=r.useState(!1),[i,o]=r.useState(!1),m=r.useCallback(async()=>{if(!(!s.current||a)){l(!0);try{const y=await D(s.current,{backgroundColor:"#080B12",pixelRatio:2});if(pe()){const h=await(await fetch(y)).blob(),p=new File([h],"death-certificate.png",{type:"image/png"});if(navigator.canShare({files:[p]})){await navigator.share({files:[p],title:"Dead Man's Wallet — Certificate of Permanent Loss"}),o(!0),setTimeout(()=>o(!1),2500);return}}const c=document.createElement("a");c.download="death-certificate.png",c.href=y,c.click(),o(!0),setTimeout(()=>o(!1),2500)}catch{}finally{l(!1)}}},[a]);if(!t.ending)return null;const f=E[t.id]??"gravestone";return e.jsxs("div",{className:"flex flex-col items-center pt-4 pb-8 min-h-full animate-in fade-in duration-700 gap-5",children:[e.jsx("div",{className:"py-2 animate-float",children:e.jsx(b,{scene:f,color:"text-red-900/50"})}),e.jsx("div",{className:"w-full space-y-2.5",children:t.text.map((y,c)=>e.jsx("p",{className:"text-sm lg:text-base font-mono leading-relaxed text-foreground/70 animate-in fade-in slide-in-from-bottom-1 duration-500",style:{animationDelay:`${c*200}ms`,animationFillMode:"both"},children:y},c))}),e.jsx(g,{}),e.jsx(ce,{ref:s,ending:t.ending}),e.jsxs("button",{onClick:m,disabled:a,className:"flex items-center gap-2 text-[11px] font-mono text-foreground/35 hover:text-foreground/55 transition-all duration-200 active:scale-[0.97] disabled:opacity-40",children:[e.jsx("span",{className:"text-foreground/10",children:">"}),e.jsx("span",{className:"underline underline-offset-2",children:i?"saved!":a?"generating...":"save certificate as image"})]}),e.jsx(I,{}),e.jsxs("div",{className:"w-full pt-2",children:[e.jsx("p",{className:"text-[10px] text-foreground/25 text-center mb-2.5 font-mono tracking-wider uppercase",children:"Share your ending"}),e.jsx(he,{ending:t.ending})]}),e.jsx(ue,{}),e.jsx(I,{}),e.jsxs("div",{className:"flex flex-col items-center gap-3",children:[e.jsx("div",{className:"animate-float",children:e.jsx(b,{scene:"candle",color:"text-foreground/[0.04]"})}),e.jsxs("button",{onClick:n,className:"flex items-center gap-2 text-xs font-mono text-foreground/30 hover:text-foreground/50 transition-colors",children:[e.jsx("span",{className:"text-foreground/10",children:">"}),e.jsx("span",{className:"underline underline-offset-2",children:"Play again — try a different path"})]})]})]})}function fe(t){var s,a;if(!t)return null;const n=t.toUpperCase().replace(/-/g,"_");for(const l of Object.values(j))if(((s=l.ending)==null?void 0:s.id)===n||((a=l.ending)==null?void 0:a.id)===t)return l;return null}function ge(){const[t,n]=R(),s=fe(t.get("ending")),[a,l]=r.useState(s?"ending":"character-select"),[i,o]=r.useState((s==null?void 0:s.id)??S),[m,f]=r.useState([]),y=r.useCallback(p=>{f(w=>[...w,i]),o(p);const x=j[p];(x==null?void 0:x.type)==="ending"&&(l("ending"),x.ending&&n({ending:x.ending.id},{replace:!0}))},[i,n]),c=r.useCallback(()=>{l("character-select"),o(S),f([]),n({},{replace:!0})},[n]),u=j[i],h=a!=="loading"&&a!=="death-reveal";return e.jsxs(J,{showBack:h,noScroll:a==="death-reveal"||a==="loading",children:[a==="character-select"&&e.jsx(ee,{onSelect:()=>l("setup-worth")}),a==="setup-worth"&&e.jsx(O,{stepIndex:1,title:"What's your net worth in crypto?",subtitle:"Be honest. It matters.",options:ne,onSelect:()=>l("setup-chain")},"worth"),a==="setup-chain"&&e.jsx(O,{stepIndex:2,title:"What's your primary chain?",subtitle:"Almost there.",options:ae,onSelect:()=>l("loading")},"chain"),a==="loading"&&e.jsx(oe,{onComplete:()=>l("death-reveal")}),a==="death-reveal"&&e.jsx(se,{onComplete:()=>l("playing")}),a==="playing"&&u&&e.jsxs(e.Fragment,{children:[u.type==="choice"&&e.jsx(re,{node:u,depth:m.length,onChoose:y},i),u.type==="narration"&&e.jsx(le,{node:u,depth:m.length,onContinue:y},i)]}),a==="ending"&&(u==null?void 0:u.ending)&&e.jsx(me,{node:u,onRestart:c})]})}export{ge as DeadMansWallet};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.