counters.FUN
⌘K
(()=>{'use strict';const $=x=>document.getElementById(x),hex=n=>(n>>>0).toString(16).padStart(8,'0');function sha256(s){const M=2**32,L='length';let i,j,o='',w=[],bits=s[L]*8,h=sha256 .h=sha256 .h||[],k=sha256 .k=sha256 .k||[],pc=k[L],c={};for(let n=2;pc<64;n++)if(!c[n]){for(i=0;i<313;i+=n)c[i]=n;h[pc]=(Math.sqrt(n)*M)|0;k[pc++]=(Math.cbrt(n)*M)|0}s+='\x80';while(s[L]%64-56)s+='\x00';for(i=0;i<s[L];i++){j=s.charCodeAt(i);if(j>>8)return '';w[i>>2]|=j<<((3-i)%4)*8}w[w[L]]=(bits/M)|0;w[w[L]]=bits;for(j=0;j<w[L];){let q=w.slice(j,j+=16),old=h.slice(0);h=h.slice(0,8);for(i=0;i<64;i++){let a=h[0],e=h[4],x=q[i-15],y=q[i-2],t1=h[7]+((e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7))+((e&h[5])^((~e)&h[6]))+k[i]+(q[i]=i<16?q[i]:(q[i-16]+((x>>>7|x<<25)^(x>>>18|x<<14)^(x>>>3))+q[i-7]+((y>>>17|y<<15)^(y>>>19|y<<13)^(y>>>10)))|0),t2=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a&h[1])^(a&h[2])^(h[1]&h[2]));h=[(t1+t2)|0,a,h[1],h[2],(h[3]+t1)|0,e,h[5],h[6]]}for(i=0;i<8;i++)h[i]=(h[i]+old[i])|0}for(i=0;i<8;i++)o+=hex(h[i]);return o}const H=s=>sha256(String(s)),u32=h=>parseInt(h.slice(0,8),16)>>>0,byte=(h,n)=>parseInt(h.slice(n*2,n*2+2),16),esc=s=>String(s).replace(/[&<>"']/g,m=>({'&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#39;'}[m])),lerp=(v,a,b)=>a+(b-a)*(v/255),clamp=(v,a,b)=>Math.max(a,Math.min(b,v));const R='repeatCount="indefinite"',X='attributeName="transform"',O='attributeName="opacity"',N='fill="none"';const T={host:[['Degen Homunculus',32],['Bag Goblin',20],['Doomposter',14],['Pepe-Blooded',12],['Liquidity Blob',10],['Rekt Skeleton',6],['Whale Mutation',4],['Reply Goblin',2]],eyes:[['Dead Screen',30],['Bloodshot',20],['Liquidated Tears',14],['Spiral Vision',10],['Candle Eyes',8],['Dollar Vision',6],['Laser Gaze',5],['69 Pupils',4],['Satoshi Vision',3]],mouth:[['Smug',28],['Clenched Cope',22],['Perpetual Scream',16],['Cigarette of Conviction',12],['Liquidity Drool',10],['Giga Grin',8],['No Mouth',4]],head:[['Barely Thinking',28],['Degen Cap',18],['Tinfoil Alpha Receiver',14],['Propeller Hat',11],['Bitcoin Miner Helmet',9],['Liquidity Wizard Hat',7],['Minimum-Wage Visor',5],['King of Nothing Crown',5],['Block Zero Crown',3]],drip:[['Degen Hoodie',26],['Exit Liquidity Suit',20],['3AM Bathrobe',16],['High-Visibility Bagworker',12],['I BUY TOPS Tee',10],['Financial Barrel',7],['Moon Mission Suit',5],['Counterparty Cult Robe',4]],object:[['The Bag',24],['Cracked Phone',18],['Keyboard',14],['Chart Tablet',12],['XCP Coin',10],['Orange Bitcoin Orb',8],['Emergency Hotdog',6],['Empty Wallet',5],['Ancient Dispenser',3]],habitat:[["Mom's Basement",25],['Chart Hell',20],['Dumpster Fire',15],['24/7 Casino',12],['Cursed Desktop',10],['The Moon',8],['Mempool Purgatory',6],['Counterparty 2014',4]],aura:[['No Discernible Aura',45],['Cope Haze',20],['Radioactive Conviction',14],['Burn Flames',10],['Holy Pump',7],['69 Resonance',4]],behavior:[['LOCKED IN',35],['TWEAKING',25],['CRASHING',18],['ASCENDING',14],['BRAINROT',8]]};const K=['host','eyes','mouth','head','drip','object','habitat','aura','behavior'],P=['H','E','M','N','D','O','B','A','X'];const PREMIUM_MAX=8,traitWeight=(k,n)=>{const r=(T[k]||[]).find(v=>v[0]===n);return r?r[1]:999},premiumNames=g=>K.filter(k=>traitWeight(k,g[k].n)<=PREMIUM_MAX).map(k=>({k,n:g[k].n,w:traitWeight(k,g[k].n)}));function premiumBadge(g){const p=premiumNames(g);if(!p.length)return '';const c=p.length;return`<g transform="translate(${c>1?774:812} 128)"><rect width="${c>1?168:128}" height="34" rx="8" fill="#3b2908" stroke="#ffca54" stroke-width="3" opacity=".97"/><text x="${c>1?84:64}" y="23" text-anchor="middle" fill="#ffe7a0" font-size="18" font-weight="900">PREMIUM${c>1?` × ${c}`:''}</text></g>`}function premiumFX(g){const p=premiumNames(g);if(!p.length)return '';const c=p.length,pc=Math.min(5+c,10),base=`<g opacity=".82" transform="translate(500 540)"><g fill="#ffcf63" opacity=".9">${Array.from({length:pc},(_,i)=>{const a=i*(Math.PI*2/pc),r=228+(i%3)*26,x=Math.cos(a)*r,y=Math.sin(a)*r;return`<path d="M${x} ${y-10}L${x+4} ${y-3}L${x+12} ${y}L${x+4} ${y+3}L${x} ${y+10}L${x-4} ${y+3}L${x-12} ${y}L${x-4} ${y-3}Z"><animate ${O} values=".25;1;.25" dur="${1.7+i*.17}s" ${R}/></path>`}).join('')}</g><circle r="${238+c*10}" ${N} stroke="#ffd76a" stroke-width="2" stroke-dasharray="4 18" opacity=".38"><animateTransform ${X} type="rotate" from="0" to="360" dur="${Math.max(8,16-c)}s" ${R}/></circle></g>`;let extra='';if(g.aura.n==='Holy Pump')extra+=`<g transform="translate(500 535)" opacity=".72"><g stroke="#fff5c7">${Array.from({length:24},(_,i)=>`<path d="M0-250V-345" stroke-width="${i%3?4:8}" transform="rotate(${i*15})"><animate ${O} values=".2;1;.2" dur="${1.6+i*.05}s" ${R}/></path>`).join('')}</g><g fill="#fff4c3">${[-170,-86,0,86,170].map((x,i)=>`<circle cx="${x}" cy="${-270+i*20}" r="${4+i%2}"><animate ${O} values=".2;1;.2" dur="${1.3+i*.15}s" ${R}/></circle>`).join('')}</g></g>`;if(g.aura.n==='69 Resonance')extra+=`<g transform="translate(500 535)" opacity=".78"><g fill="#dfff00" font-size="18" font-weight="900">${Array.from({length:10},(_,i)=>{const a=i*.628,r=268,x=Math.cos(a)*r,y=Math.sin(a)*r;return`<text x="${x}" y="${y}">69</text>`}).join('')}</g><g fill="#ff8a00" opacity=".65">${Array.from({length:8},(_,i)=>{const a=i*.785,r=212,x=Math.cos(a)*r,y=Math.sin(a)*r;return`<rect x="${x-5}" y="${y-5}" width="10" height="10" transform="rotate(45 ${x} ${y})"><animate ${O} values=".15;1;.15" dur="${1.9+i*.09}s" ${R}/></rect>`}).join('')}</g></g>`;if(g.aura.n==='Radioactive Conviction')extra+=`<g transform="translate(500 535)" opacity=".62">${Array.from({length:6},(_,i)=>{const a=i*Math.PI/3,r=262,x=Math.cos(a)*r,y=Math.sin(a)*r;return`<path d="M${x} ${y-16}L${x+14} ${y+10}H${x-14}Z" ${N} stroke="#dfff00" stroke-width="3"><animate ${O} values=".2;1;.2" dur="${2+i*.12}s" ${R}/></path>`}).join('')}</g>`;if(g.aura.n==='Burn Flames')extra+=`<g transform="translate(500 720)" opacity=".68" fill="#ffd36b">${[-185,-120,-60,0,60,120,185].map((x,i)=>`<circle cx="${x}" cy="${50-(i%3)*14}" r="${4+i%3}"><animateTransform ${X} type="translate" values="0 0;${i%2?9:-7} -88;0 0" dur="${1.2+i*.18}s" ${R}/></circle>`).join('')}</g>`;if(p.some(v=>['Satoshi Vision','69 Pupils','Laser Gaze','Dollar Vision','King of Nothing Crown','Block Zero Crown','Ancient Dispenser','Orange Bitcoin Orb','XCP Coin','Moon Mission Suit','Counterparty Cult Robe','The Moon','Counterparty 2014'].includes(v.n)))extra+=`<g transform="translate(500 540)" opacity=".72"><path d="M-210-186H-160M160-186H210M0-278V-232" stroke="#ffe18b" stroke-width="6" stroke-linecap="round"/><circle r="292" ${N} stroke="#ffe18b" stroke-width="1.5" opacity=".3"/></g>`;return base+extra}function pick(seed,t){let s=seed;for(;;){const x=u32(s),lim=4294967200;if(x<lim){let r=x%100,c=0;for(let i=0;i<t.length;i++){c+=t[i][1];if(r<c)return{i,n:t[i][0],w:t[i][1]}}}s=H(s+'|R')}}function bagState(q){q=Math.max(0,Number(q)||0);if(q===0)return['GHOST BAG',.34];if(q<69000)return['CRUMB HOLDER',.44];if(q<420000)return['BAG ACQUIRED',.62];if(q<690000)return['COOKED',.78];if(q<1000000)return['OVEREXPOSED',.94];if(q===1000000)return['MAXIMUM BAGGAGE',1.08];return['UNAUTHORIZED WHALE',clamp(1.08+Math.log10(q/1e6+1)*.18,1.08,1.36)]}function derive(addr,block,qty){addr=(addr||'').trim()||'bc1p-missing';block=(block||'').trim().toLowerCase().replace(/^0x/,'');if(!/^[0-9a-f]{64}$/.test(block))block=H(block||'missing');const master=H(`MEMENOME:v1|MEMENOME|${addr}|${block}`),V=H(master+'|V'),M=H(master+'|M'),C=H(master+'|C'),D=H(master+'|D'),E=H(master+'|E'),g={};K.forEach((k,i)=>g[k]=pick(H(V+'|'+i),T[k]));const motion={tempo:byte(M,0),jitter:byte(M,1),bounce:byte(M,2),sway:byte(M,3),glitch:byte(M,4),blink:byte(M,5),prop:byte(M,6),bag:byte(M,7),phase:byte(M,8)},bag=bagState(qty),p=K.reduce((a,k)=>a*g[k].w/100,1);return{addr,block,qty:Number(qty)||0,master,V,M,C,D,E,g,motion,bag,p,one:Math.max(1,Math.round(1/p)),id:'MN-'+master.slice(0,6).toUpperCase(),code:K.map((k,i)=>P[i]+(g[k].i+1)).join('-')}}function defs(face){return`<defs><linearGradient id="bagG" x1="0" y1="0" x2="1" y2="1"><stop stop-color="#75512e"/><stop offset="1" stop-color="#2d1a0d"/></linearGradient><clipPath id="eyeL"><ellipse cx="-72" cy="-10" rx="53" ry="43"/></clipPath><clipPath id="eyeR"><ellipse cx="72" cy="-10" rx="53" ry="43"/></clipPath></defs>`}function habitat(n){const grid=`<g opacity=".18" stroke="#7e9cac" stroke-width="2"><path d="M50 250H950M50 350H950M50 450H950M50 550H950M50 650H950M50 750H950M50 850H950"/><path d="M150 155V895M250 155V895M350 155V895M450 155V895M550 155V895M650 155V895M750 155V895M850 155V895"/></g>`;if(n==="Mom's Basement")return`<rect width="1000" height="1000" fill="#15110e"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#251d17" stroke="#68513d" stroke-width="6"/><rect x="70" y="590" width="860" height="220" fill="#38261a"/><rect x="95" y="230" width="350" height="270" rx="8" fill="#070a09" stroke="#777" stroke-width="8"/><rect x="120" y="255" width="300" height="220" fill="#0d3529"><animate attributeName="fill" values="#0d3529;#17493a;#0d3529" dur="5.3s" ${R}/></rect><text x="150" y="315" fill="#77ff8d" font-size="24">STILL EARLY</text><path d="M118 418L185 365L230 390L305 320L379 352" ${N} stroke="#7eff98" stroke-width="8"><animate attributeName="d" values="M118 418L185 365L230 390L305 320L379 352;M118 430L185 378L230 345L305 305L379 330;M118 418L185 365L230 390L305 320L379 352" dur="6.8s" ${R}/></path>`;if(n==='Chart Hell')return`<rect width="1000" height="1000" fill="#080e12"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#0c161b" stroke="#607681" stroke-width="6"/>${grid}<g opacity=".18" stroke="#4e6068" stroke-width="1">${Array.from({length:24},(_,i)=>`<path d="M${70+i*36} 190V860"/>`).join('')}</g><g opacity=".9">${Array.from({length:18},(_,i)=>{const x=88+i*46,up=i%3!==1,bodyY=up?430-(i%5)*22:455+(i%4)*18,bodyH=up?58+(i%4)*11:44+(i%5)*14,wickTop=bodyY-(up?26:18),wickBot=bodyY+bodyH+(up?20:28),fill=up?'#5eff6a':'#ff4d57';return`<g transform="translate(${x} 0)"><path d="M0 ${wickTop}V${wickBot}" stroke="${fill}" stroke-width="6"/><rect x="-13" y="${bodyY}" width="26" height="${bodyH}" rx="2" fill="${fill}"><animate attributeName="y" values="${bodyY};${bodyY+(up?-18:18)};${bodyY}" dur="${4.8+i*.22}s" ${R}/><animate attributeName="height" values="${bodyH};${bodyH+(up?18:24)};${bodyH}" dur="${4.8+i*.22}s" ${R}/></rect></g>`}).join('')}</g><path d="M65 720L155 665L240 692L320 540L398 603L484 452L565 505L645 340L720 388L804 255L935 420" ${N} stroke="#61ff6b" stroke-width="15" stroke-linecap="round"><animate attributeName="d" values="M65 720L155 665L240 692L320 540L398 603L484 452L565 505L645 340L720 388L804 255L935 420;M65 760L155 708L240 640L320 618L398 512L484 560L565 420L645 470L720 300L804 340L935 250;M65 790L155 735L240 742L320 680L398 730L484 590L565 630L645 470L720 540L804 390L935 560;M65 720L155 665L240 692L320 540L398 603L484 452L565 505L645 340L720 388L804 255L935 420" dur="8.8s" ${R}/></path><path d="M65 740L155 690L240 700L320 575L398 628L484 470L565 525L645 370L720 418L804 280L935 445" ${N} stroke="#113820" stroke-width="8" opacity=".65"><animate attributeName="d" values="M65 740L155 690L240 700L320 575L398 628L484 470L565 525L645 370L720 418L804 280L935 445;M65 780L155 730L240 655L320 640L398 530L484 575L565 435L645 488L720 315L804 358L935 270;M65 810L155 750L240 760L320 700L398 748L484 608L565 645L645 485L720 560L804 410L935 575;M65 740L155 690L240 700L320 575L398 628L484 470L565 525L645 370L720 418L804 280L935 445" dur="8.8s" ${R}/></path><g font-size="16" font-weight="900"><text x="115" y="212" fill="#5eff6a">+420%<animate attributeName="x" values="115;125;115" dur="2.5s" ${R}/></text><text x="770" y="210" fill="#ff5a5a">-69%<animate attributeName="y" values="210;220;210" dur="2.1s" ${R}/></text></g><rect x="72" y="816" width="856" height="54" rx="8" fill="#081216" stroke="#35505e" stroke-width="3"/><text x="92" y="850" fill="#8fd6ff" font-size="20">MEMENOME/COPE  69m  +4.20%  VOL: EXTREME  LIQ: QUESTIONABLE</text><text x="900" y="850" text-anchor="end" fill="#ff6f78" font-size="20">CHART HELL</text>`;if(n==='Dumpster Fire')return`<rect width="1000" height="1000" fill="#170e0a"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#2a1710" stroke="#754f3e" stroke-width="6"/><g transform="translate(500 730)"><path d="M-370-45H370L320 145H-320Z" fill="#37463c" stroke="#111" stroke-width="15"/><text y="70" text-anchor="middle" fill="#9baa9d" font-size="50" font-weight="900">MARKET</text><path d="M-300-45Q-310-180-240-210Q-250-105-190-75Q-205-205-125-250Q-135-115-55-70Q-60-230 20-280Q5-115 90-68Q95-205 165-235Q150-105 225-65Q235-165 300-195L320-45Z" fill="#ff6420"><animateTransform ${X} type="scale" values="1 1;1 .87;1 1" dur="1.3s" ${R}/></path></g>`;if(n==='24/7 Casino')return`<rect width="1000" height="1000" fill="#150716"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#260a27" stroke="#ff51bf" stroke-width="6"/><text x="500" y="255" text-anchor="middle" fill="#ffe761" font-size="74" font-family="Impact">24/7 CASINO<animate ${O} values="1;.35;1" dur=".9s" ${R}/></text><g transform="translate(500 405)"><rect x="-270" y="-80" width="540" height="220" rx="18" fill="#4b1748" stroke="#f4c64b" stroke-width="10"/>${[-150,0,150].map((x,i)=>`<rect x="${x-55}" y="-18" width="110" height="105" fill="#eee"/><text x="${x}" y="55" text-anchor="middle" font-size="70">${['7','₿','?'][i]}<animate ${O} values="1;.2;1" dur="${1.1+i*.23}s" ${R}/></text>`).join('')}</g>`;if(n==='Cursed Desktop')return`<rect width="1000" height="1000" fill="#090d11"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#111a22" stroke="#6d7d85" stroke-width="6"/>${grid}<g opacity="0"><rect x="90" y="245" width="310" height="150" fill="#ddd" stroke="#111" stroke-width="5"/><rect x="90" y="245" width="310" height="34" fill="#204a9b"/><text x="106" y="270" fill="#fff" font-size="18">ALPHA.EXE</text><text x="110" y="325" fill="#111" font-size="19" font-weight="900">SELL BUTTON NOT FOUND</text><animate ${O} values="0;0;1;1;0;0" keyTimes="0;.2;.21;.47;.48;1" dur="12.9s" ${R}/></g><g opacity="0"><rect x="650" y="255" width="245" height="120" fill="#e2dfd2" stroke="#111" stroke-width="5"/><rect x="650" y="255" width="245" height="30" fill="#7a0a0a"/><text x="666" y="277" fill="#fff" font-size="16">WARNING</text><text x="670" y="320" fill="#111" font-size="18" font-weight="900">BAG TOO HEAVY</text><animate ${O} values="0;0;1;1;0;0" keyTimes="0;.56;.57;.77;.78;1" dur="17.3s" ${R}/></g>`;if(n==='The Moon')return`<rect width="1000" height="1000" fill="#050713"/><circle cx="820" cy="250" r="105" fill="#18234a" stroke="#8796ca" stroke-width="4"/><circle cx="170" cy="260" r="4" fill="#fff"/><circle cx="310" cy="200" r="6" fill="#fff"/><circle cx="540" cy="285" r="3" fill="#fff"/><circle cx="680" cy="185" r="5" fill="#fff"/><path d="M25 770Q250 650 470 735T975 720V930H25Z" fill="#777c82"/><circle cx="180" cy="730" r="45" fill="#5a5f65"/><circle cx="790" cy="745" r="60" fill="#5a5f65"/>`;if(n==='Mempool Purgatory')return`<rect width="1000" height="1000" fill="#090a0d"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#11131a" stroke="#5c6170" stroke-width="6"/>${[0,1,2,3,4,5,6].map(i=>`<g transform="translate(${110+i*108} ${255+(i%3)*140})"><rect width="95" height="52" rx="6" fill="#242938" stroke="#7f8da8"/><text x="47" y="32" fill="#ced7ea" text-anchor="middle" font-size="13">TX ${i+1}</text><animateTransform ${X} type="translate" values="0 0;${i%2?18:-16} -42;0 0" dur="${5.7+i*.63}s" ${R} additive="sum"/></g>`).join('')}<text x="500" y="855" text-anchor="middle" fill="#9098aa" font-size="25">AWAITING CONFIRMATION…</text>`;return`<rect width="1000" height="1000" fill="#03120a"/><rect x="35" y="140" width="930" height="790" rx="20" fill="#03170d" stroke="#3b8c52" stroke-width="6"/><g fill="#65ff88" font-size="17" font-family="monospace" opacity=".72">${Array.from({length:16},(_,i)=>`<text x="70" y="${185+i*42}">BLOCK ${312000+i} OP_RETURN XCP ${H('xcp'+i).slice(0,24).toUpperCase()}</text>`).join('')}<animateTransform ${X} type="translate" values="0 0;0 -42;0 0" dur="3.8s" ${R}/></g><text x="500" y="860" text-anchor="middle" fill="#9dffae" font-size="34" font-weight="900">COUNTERPARTY // 2014</text>`}function aura(n){if(n==='No Discernible Aura')return '';if(n==='Cope Haze')return`<g transform="translate(500 540)" opacity=".42"><g ${N} stroke="#9c95ff"><ellipse rx="190" ry="230" stroke-width="24" opacity=".2"><animate attributeName="rx" values="185;215;185" dur="4.8s" ${R}/></ellipse><ellipse rx="235" ry="270" stroke-width="10" opacity=".12" stroke-dasharray="30 18"><animateTransform ${X} type="rotate" from="0" to="360" dur="16s" ${R}/></ellipse></g><g fill="#bdb6ff" opacity=".22">${[-160,-85,-15,78,145].map((x,i)=>`<ellipse cx="${x}" cy="${-90+i*62}" rx="${35+i*4}" ry="${18+i*3}"><animateTransform ${X} type="translate" values="0 0;${i%2?18:-16} -26;0 0" dur="${5.3+i*.45}s" ${R}/></ellipse>`).join('')}</g></g>`;if(n==='Radioactive Conviction')return`<g transform="translate(500 535)"><circle r="188" ${N} stroke="#dfff00" stroke-width="10" opacity=".55"><animate attributeName="r" values="178;228;178" dur="2.3s" ${R}/><animate ${O} values=".6;.08;.6" dur="2.3s" ${R}/></circle><circle r="242" ${N} stroke="#dfff00" stroke-width="4" stroke-dasharray="8 18" opacity=".4"><animateTransform ${X} type="rotate" from="0" to="360" dur="9s" ${R}/></circle><g fill="#dfff00" opacity=".7">${Array.from({length:10},(_,i)=>`<circle cx="${Math.cos(i*.628)*214}" cy="${Math.sin(i*.628)*214}" r="${i%3+4}"><animate ${O} values=".2;1;.2" dur="${1.8+i*.14}s" ${R}/></circle>`).join('')}</g><g ${N} stroke="#c1ff00" opacity=".35">${Array.from({length:3},(_,i)=>`<path d="M${-80+i*80} -255L${-40+i*80} -205L${-70+i*80} -205L${-30+i*80} -150" stroke-width="8"><animate ${O} values="0;0;1;0" dur="${3.4+i*.5}s" ${R}/></path>`).join('')}</g></g>`;if(n==='Burn Flames')return`<g transform="translate(500 742)" opacity=".8"><path d="M-255 80Q-272-35-215-90Q-206 8-163 15Q-167-98-95-140Q-108-16-35 28Q-45-110 25-160Q13-22 75 19Q83-96 148-132Q138-18 204 27Q212-56 255-89L276 95Z" fill="#ff5b1f"><animateTransform ${X} type="scale" values="1 1;1 .88;1 1" dur="1.12s" ${R}/></path><path d="M-225 80Q-205-12-164-40Q-150 30-120 27Q-125-40-74-77Q-80 25-22 43Q-16-44 34-89Q28 24 81 39Q90-48 138-73Q138 16 190 44L208 86Z" fill="#ff9f39" opacity=".82"><animateTransform ${X} type="scale" values="1 .98;1 1.06;1 .98" dur=".86s" ${R}/></path><g fill="#ffd36b" opacity=".85">${[-190,-112,-30,52,138,210].map((x,i)=>`<circle cx="${x}" cy="${50-(i%3)*16}" r="${5+i%3}"><animateTransform ${X} type="translate" values="0 0;${i%2?8:-5} -65;0 0" dur="${1.6+i*.25}s" ${R}/></circle>`).join('')}</g></g>`;if(n==='Holy Pump')return`<g transform="translate(500 520)" opacity=".68"><g stroke="#ffe98a">${Array.from({length:16},(_,i)=>`<path d="M0-192V-332" stroke-width="${i%2?6:12}" transform="rotate(${i*22.5})"><animate ${O} values=".2;1;.2" dur="${2+i*.06}s" ${R}/></path>`).join('')}</g><circle r="205" ${N} stroke="#fff3b0" stroke-width="10"><animate attributeName="r" values="196;219;196" dur="2.6s" ${R}/></circle><circle r="245" ${N} stroke="#ffe98a" stroke-width="4" stroke-dasharray="6 20" opacity=".45"><animateTransform ${X} type="rotate" from="0" to="360" dur="10s" ${R}/></circle><g fill="#fff4bf" opacity=".72">${[-160,-75,0,75,160].map((x,i)=>`<circle cx="${x}" cy="${-250+i*34}" r="${4+i%2}"><animate ${O} values=".2;.9;.2" dur="${1.4+i*.2}s" ${R}/></circle>`).join('')}</g></g>`;return`<g transform="translate(500 535)" opacity=".55"><circle r="175" ${N} stroke="#dfff00" stroke-width="7" stroke-dasharray="13 19"><animate attributeName="r" values="160;220;160" dur="3.19s" ${R}/><animate ${O} values=".7;.1;.7" dur="3.19s" ${R}/></circle><circle r="240" ${N} stroke="#ff7a00" stroke-width="4" stroke-dasharray="6 18"><animateTransform ${X} type="rotate" from="0" to="360" dur="11.69s" ${R}/></circle><circle r="285" ${N} stroke="#dfff00" stroke-width="3" stroke-dasharray="2 15" opacity=".35"><animateTransform ${X} type="rotate" from="360" to="0" dur="16s" ${R}/></circle><g fill="#dfff00" font-size="22" font-weight="900"><text x="-12" y="-247">69</text><text x="-12" y="266">69</text><text x="243" y="7">69</text><text x="-267" y="7">69</text><text x="172" y="-171">69</text><text x="-194" y="192">69</text></g><g fill="#ff7a00" opacity=".75">${Array.from({length:12},(_,i)=>`<circle cx="${Math.cos(i*.523)*208}" cy="${Math.sin(i*.523)*208}" r="${i%4+3}"><animateTransform ${X} type="scale" values="1;1.8;1" dur="${2+i*.13}s" ${R}/></circle>`).join('')}</g></g>`}function hostSpec(n){let s={face:'#d0ad8e',body:'#8f6a56',kind:'degen',rx:156,ry:174,headY:424,headRot:0,eyeT:'translate(0 2) scale(.96 .98)',mouthT:'translate(0 8)',ears:'<ellipse cx="-142" cy="10" rx="20" ry="32" fill="#d0ad8e" stroke="#171911" stroke-width="10"/><ellipse cx="142" cy="10" rx="20" ry="32" fill="#d0ad8e" stroke="#171911" stroke-width="10"/>',extra:'',brow:'',bodyT:'',bagX:720,bagY:680};if(n==='Bag Goblin'){Object.assign(s,{face:'#8f9b53',body:'#56622f',kind:'goblin',rx:156,ry:145,headY:438,headRot:-3,eyeT:'translate(0 4) scale(.92 .9)',mouthT:'translate(0 6)',bagX:688,bagY:688});s.ears=`<path d="M-142-12L-225-80L-184 45Z" fill="#8f9b53" stroke="#171911" stroke-width="12"/><path d="M142-12L225-80L184 45Z" fill="#8f9b53" stroke="#171911" stroke-width="12"/><path d="M-181-41L-205-60L-191 12M181-41L205-60L191 12" ${N} stroke="#5c6638" stroke-width="8"/>`;s.extra=`<path d="M-128 48Q-104 70-78 78M128 48Q104 70 78 78" ${N} stroke="#65713b" stroke-width="6" opacity=".45"/><circle cx="-103" cy="20" r="6" fill="#4e5b2e"/><circle cx="103" cy="20" r="6" fill="#4e5b2e"/>`;s.brow=`<path d="M-114-48Q-72-72-29-58M29-58Q73-72 114-48" ${N} stroke="#32391a" stroke-width="15" stroke-linecap="round"/>`}if(n==='Doomposter'){Object.assign(s,{face:'#9b9b86',body:'#484a46',kind:'doomer',rx:146,ry:188,headY:404,headRot:4,eyeT:'translate(0 9) scale(.84 .9)',mouthT:'translate(0 25)',bagX:744,bagY:694});s.extra=`<path d="M-104 40Q-70 58-34 47M104 40Q70 58 34 47" ${N} stroke="#4b4d48" stroke-width="7" opacity=".28"/><path d="M-88 10Q-72 20-50 17M88 10Q72 20 50 17" ${N} stroke="#555851" stroke-width="5" opacity=".22"/>`;s.brow=`<path d="M-112-52Q-73-66-32-47M32-47Q73-66 112-52" ${N} stroke="#30322f" stroke-width="15" stroke-linecap="round"/>`}if(n==='Pepe-Blooded'){Object.assign(s,{face:'#67a84e',body:'#39763c',kind:'pepe',rx:212,ry:152,headY:430,eyeT:'translate(0 -10) scale(1.15 1.08)',mouthT:'translate(0 16) scale(1.22 1)',bagX:706,bagY:690});s.extra=`<ellipse cx="-150" cy="55" rx="48" ry="40" fill="#5d9b46"/><ellipse cx="150" cy="55" rx="48" ry="40" fill="#5d9b46"/><path d="M-182 12Q-205 72-166 116M182 12Q205 72 166 116" ${N} stroke="#477e38" stroke-width="8" opacity=".55"/><path d="M-112 15Q-83 29-52 21M112 15Q83 29 52 21" ${N} stroke="#3d6e31" stroke-width="5" opacity=".35"/><ellipse cx="0" cy="98" rx="84" ry="28" fill="#76b55b" opacity=".18"/>`;s.brow=`<path d="M-134-60Q-78-80-18-58M18-58Q78-80 134-60" ${N} stroke="#294f27" stroke-width="14" stroke-linecap="round"/>`}if(n==='Liquidity Blob'){Object.assign(s,{face:'#82b7a5',body:'#4f8c7b',kind:'blob',rx:184,ry:170,headY:438,eyeT:'translate(0 5) scale(1.04 .96)',mouthT:'translate(0 16)',bagX:724,bagY:704});s.extra=`<circle cx="-125" cy="108" r="22" fill="#5fcab2"/><circle cx="132" cy="94" r="15" fill="#5fcab2"/><path d="M-170 102Q-130 132-95 119M170 103Q130 132 97 118" ${N} stroke="#55a995" stroke-width="9"/><path d="M-82 68Q-58 110-83 138Q-109 110-82 68Z" fill="#72d7bf" opacity=".55"/><path d="M84 58Q107 102 84 129Q58 99 84 58Z" fill="#72d7bf" opacity=".45"/>`}if(n==='Rekt Skeleton'){Object.assign(s,{face:'#ddd7c3',body:'#343533',kind:'skel',rx:145,ry:150,headY:420,eyeT:'translate(0 -5) scale(.9 1)',mouthT:'translate(0 10)',bagX:732,bagY:702});s.extra=`<path d="M-105 64Q-75 118-43 113M105 64Q75 118 43 113" ${N} stroke="#171911" stroke-width="10"/><path d="M0 29L-21 64L0 70L21 64Z" fill="#171911"/><circle cx="-46" cy="103" r="12" fill="#171911"/><circle cx="46" cy="103" r="12" fill="#171911"/><path d="M-84 32Q-65 52-46 44M84 32Q65 52 46 44" ${N} stroke="#8f8a7d" stroke-width="5" opacity=".5"/>`;s.brow=`<path d="M-111-54L-29-43M29-43L111-54" stroke="#171911" stroke-width="14" stroke-linecap="round"/>`}if(n==='Whale Mutation'){Object.assign(s,{face:'#688da9',body:'#426982',kind:'whale',rx:220,ry:162,headY:426,eyeT:'translate(0 -4) scale(1.1 .94)',mouthT:'translate(0 16) scale(1.24 1)',bagX:724,bagY:692});s.extra=`<path d="M-178 30Q-230 72-194 124Q-155 101-135 71M178 30Q230 72 194 124Q155 101 135 71" fill="#688da9" stroke="#171911" stroke-width="9"/><ellipse cx="0" cy="73" rx="112" ry="54" fill="#7397b0" opacity=".75"/><path d="M-86 77Q0 101 86 77" ${N} stroke="#34556c" stroke-width="7"/><ellipse cx="-135" cy="20" rx="24" ry="18" fill="#7ca0b8" opacity=".55"/><ellipse cx="135" cy="20" rx="24" ry="18" fill="#7ca0b8" opacity=".55"/>`;s.brow=`<path d="M-129-52Q-76-70-14-54M14-54Q76-70 129-52" ${N} stroke="#365c75" stroke-width="12" stroke-linecap="round"/>`}if(n==='Reply Goblin'){Object.assign(s,{face:'#b5a452',body:'#706128',kind:'reply',rx:164,ry:148,headY:422,headRot:-6,eyeT:'translate(0 -2) scale(1.04 .98)',mouthT:'translate(0 6)',bagX:748,bagY:692});s.ears=`<path d="M-145-18L-217-52L-176 40Z" fill="#b5a452" stroke="#171911" stroke-width="12"/><path d="M145-18L214-78L179 39Z" fill="#b5a452" stroke="#171911" stroke-width="12"/>`;s.extra=`<path d="M-148 35Q-117 68-85 72M148 35Q117 68 85 72" ${N} stroke="#817436" stroke-width="8"/><path d="M-122 14Q-94 38-64 30M122 14Q94 38 64 30" ${N} stroke="#8c7d39" stroke-width="6"/><circle cx="-118" cy="8" r="5" fill="#8f7f35"/><circle cx="118" cy="8" r="5" fill="#8f7f35"/>`;s.brow=`<path d="M-122-48Q-78-78-28-51M28-51Q77-78 122-44" ${N} stroke="#49411e" stroke-width="14" stroke-linecap="round"/>`}else if(n==='Degen Homunculus'){s.extra=`<ellipse cx="-76" cy="40" rx="18" ry="8" fill="#b88f73" opacity=".18"/><ellipse cx="76" cy="40" rx="18" ry="8" fill="#b88f73" opacity=".18"/><path d="M0 8Q12 30 0 50Q-12 30 0 8Z" fill="#bf987c" opacity=".72"/>`;s.brow=`<path d="M-92-44Q-56-60-18-50M18-50Q58-60 92-44" ${N} stroke="#6c5142" stroke-width="10" stroke-linecap="round" opacity=".9"/>`}return s}function headShape(s){if(s.kind==='degen')return`<path d="M-132-118Q-78-167 0-169Q78-167 132-118Q154-77 150-11Q148 77 98 126Q52 166 0 169Q-52 166-98 126Q-148 77-150-11Q-154-77-132-118Z" fill="${s.face}" stroke="#171911" stroke-width="14"/><path d="M-62 110Q0 136 62 110" ${N} stroke="#c49f82" stroke-width="7" opacity=".45"/>`;if(s.kind==='blob')return`<path d="M-181 25Q-202-85-125-143Q-40-194 58-164Q178-146 193-35Q210 75 135 142Q31 185-88 153Q-180 125-181 25Z" fill="${s.face}" stroke="#171911" stroke-width="14"/><path d="M-125 -86Q-94-118-43-121M41-118Q93-121 125-84" ${N} stroke="#95d4c0" stroke-width="8" opacity=".45"/>`;if(s.kind==='skel')return`<path d="M-126-103Q-77-159 0-158Q77-159 126-103Q155-62 143 13Q134 72 89 94L73 133H37L26 150H-26L-37 133H-73L-89 94Q-134 72-143 13Q-155-62-126-103Z" fill="${s.face}" stroke="#171911" stroke-width="14"/><path d="M-66 115H66" stroke="#171911" stroke-width="10"/>`;if(s.kind==='reply')return`<path d="M-147-103Q-52-173 57-142Q151-117 163-25Q171 58 123 118Q38 166-69 139Q-151 112-161 23Q-170-54-147-103Z" fill="${s.face}" stroke="#171911" stroke-width="14"/><path d="M-110-18Q-78-35-37-21M35-20Q85-32 116-8" ${N} stroke="#d1c06a" stroke-width="8" opacity=".35"/>`;if(s.kind==='pepe')return`<ellipse rx="${s.rx}" ry="${s.ry}" fill="${s.face}" stroke="#171911" stroke-width="14"/><ellipse cx="0" cy="15" rx="122" ry="112" fill="#7ab960" opacity=".18"/>`;if(s.kind==='whale')return`<ellipse rx="${s.rx}" ry="${s.ry}" fill="${s.face}" stroke="#171911" stroke-width="14"/><ellipse cx="0" cy="24" rx="142" ry="88" fill="#8aa9bf" opacity=".18"/>`;if(s.kind==='doomer')return`<ellipse rx="${s.rx}" ry="${s.ry}" fill="${s.face}" stroke="#171911" stroke-width="14"/><path d="M-88 108Q0 136 88 108" ${N} stroke="#777766" stroke-width="7" opacity=".35"/>`;return`<ellipse rx="${s.rx}" ry="${s.ry}" fill="${s.face}" stroke="#171911" stroke-width="14"/>`}function hostTorso(s,cl,m){if(cl.barrel){const back=s.kind==='whale'?`<path d="M-168 68Q-158-110-48-140Q77-160 158-70Q178 8 159 82L119 154H-120Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:s.kind==='pepe'?`<path d="M-154 66Q-144-98-48-120Q58-141 151-72Q168 11 151 80L116 154H-117Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:s.kind==='blob'?`<path d="M-148 40Q-174-54-112-117Q-17-156 79-124Q160-99 156 21Q172 103 108 149Q14 176-88 151Q-160 125-148 40Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:s.kind==='skel'?`<path d="M-96 50Q-92-96 0-121Q92-96 96 50L72 145H-72Z" fill="#3e3e3d" stroke="#171911" stroke-width="12"/><g ${N} stroke="#d9d3c0" stroke-width="11" stroke-linecap="round"><path d="M-56-48Q0-20 56-48M-64-14Q0 15 64-14M-60 18Q0 42 60 18"/></g>`:s.kind==='doomer'?`<path d="M-104 28Q-95-140 0-146Q95-140 104 28L73 168H-73Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:s.kind==='goblin'?`<path d="M-146 70Q-140-98-42-125Q68-150 138-60Q154-1 141 80L109 148H-116Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:s.kind==='reply'?`<path d="M-127 48Q-114-122-6-136Q103-122 137-16L114 154H-97Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`:`<path d="M-116 58Q-108-112 0-131Q108-112 116 58L84 166H-84Z" fill="${s.body}" stroke="#171911" stroke-width="12"/>`;return`<g transform="translate(500 596)">${back}<path d="M-120 42L-78 -18M120 42L78 -18" ${N} stroke="#c7ab7a" stroke-width="10" opacity=".7"/><rect x="-15" y="-76" width="30" height="52" rx="12" fill="${s.face}" stroke="#171911" stroke-width="8"/></g><g transform="translate(500 707)"><ellipse cy="74" rx="148" ry="37" fill="#4d311a" stroke="#15100c" stroke-width="9"/><rect x="-142" y="-62" width="284" height="132" rx="42" fill="#704b29" stroke="#15100c" stroke-width="10"/><path d="M-123-20H123M-130 24H130" stroke="#c79b56" stroke-width="12"/><text x="0" y="18" text-anchor="middle" fill="#f0d69a" font-size="28" font-weight="900">FINANCIAL</text><text x="0" y="48" text-anchor="middle" fill="#f0d69a" font-size="28" font-weight="900">BARREL</text></g>`;}let p='M-126 58Q-116-118 0-138Q116-118 126 58L88 170H-88Z',tr='translate(500 586)',after='';if(s.kind==='goblin'){p='M-157 72Q-151-104-45-132Q74-158 149-62Q166-1 151 83L116 151H-124Z';tr='translate(500 603) rotate(-3)';after=`<path d="M-95 95Q0 126 95 95" ${N} stroke="#39421f" stroke-width="9" opacity=".65"/><path d="M-58 -90L0 -48L58 -90" ${N} stroke="#2e3418" stroke-width="8"/><path d="M-55 10Q0 35 55 10" ${N} stroke="#485427" stroke-width="7" opacity=".6"/>`}if(s.kind==='pepe'){p='M-176 71Q-166-105-54-127Q59-148 165-73Q183 15 164 79L124 158H-128Z';tr='translate(500 600)';after=`<ellipse cx="0" cy="103" rx="112" ry="35" fill="#2e6335" opacity=".35"/><path d="M-102-64Q0-25 102-64" ${N} stroke="#2f5e31" stroke-width="9"/><path d="M-74 7Q0 38 74 7" ${N} stroke="#4a8c47" stroke-width="7" opacity=".6"/>`}if(s.kind==='blob'){p='M-164 42Q-190-60-119-128Q-23-173 85-133Q177-101 170 23Q188 111 115 159Q16 188-95 161Q-175 132-164 42Z';tr='translate(500 600)';after=`<circle cx="-116" cy="117" r="18" fill="#63bfa9"/><circle cx="119" cy="126" r="25" fill="#63bfa9"/><path d="M-78 -78Q0 -34 78 -78" ${N} stroke="#91d8c4" stroke-width="7" opacity=".45"/><path d="M-34 114Q0 141 34 114" ${N} stroke="#3f8e7c" stroke-width="8"/>`}if(s.kind==='skel'){p='M-105 53Q-100-104 0-131Q100-104 105 53L77 154H-77Z';tr='translate(500 598)';after=cl.boneOverlay?`<g ${N} stroke="#d9d3c0" stroke-width="13" stroke-linecap="round"><path d="M-66-62Q0-26 66-62M-78-25Q0 9 78-25M-76 13Q0 40 76 13M-62 49Q0 69 62 49"/><path d="M0-93V93"/></g><path d="M-30 117L0 143L30 117" ${N} stroke="#bdb7aa" stroke-width="8"/>`:`<path d="M-56 -88L0 -20L56 -88" ${N} stroke="#5a5d60" stroke-width="8" opacity=".45"/><path d="M-56 112Q0 132 56 112" ${N} stroke="#5a5d60" stroke-width="8" opacity=".35"/>`}if(s.kind==='whale'){p='M-188 68Q-186-117-51-151Q92-171 177-67Q203 11 183 91L132 167H-137Z';tr='translate(500 594)';after=`<path d="M-177 6Q-238 50-206 107Q-163 87-135 54M177 6Q238 50 206 107Q163 87 135 54" fill="${s.body}" stroke="#171911" stroke-width="10"/><path d="M-96 -82Q0 -42 96 -82" ${N} stroke="#35556d" stroke-width="10"/><path d="M-94 14Q0 48 94 14" ${N} stroke="#5d8198" stroke-width="8" opacity=".55"/>`}if(s.kind==='doomer'){p='M-108 30Q-99-151 0-158Q99-151 108 30L74 177H-74Z';tr='translate(500 587) rotate(3)';after=`<path d="M-78 105Q0 123 78 105" ${N} stroke="#292a28" stroke-width="8"/><path d="M-18 -102L17 -102L10 137H-10Z" fill="#5a5b58" opacity=".12"/>`}if(s.kind==='reply'){p='M-139 52Q-125-132-8-146Q117-130 150-17L127 164H-106Z';tr='translate(505 590) rotate(-5)';after=`<path d="M-99 94Q-28 121 76 91" ${N} stroke="#51471f" stroke-width="8"/><path d="M-76 -86Q0 -35 88 -70" ${N} stroke="#8e7c39" stroke-width="8" opacity=".65"/>`}else if(s.kind==='degen'){after=`<path d="M-56 -92Q0 -36 56 -92" ${N} stroke="#6c5142" stroke-width="8" opacity=".5"/><path d="M-46 22Q0 44 46 22" ${N} stroke="#9f7b65" stroke-width="6" opacity=".45"/><path d="M0 -116V140" stroke="#694b3b" stroke-width="4" opacity=".14"/>`}return`<g transform="${tr}"><path d="${p}" fill="${cl.fill}" stroke="#171911" stroke-width="12"/>${cl.extra}${after}<animateTransform ${X} additive="sum" type="scale" values="1 1;1.015 .985;1 1" dur="${lerp(m.tempo,3.1,2).toFixed(2)}s" ${R}/></g>`}function hostArms(s){if(s.kind==='skel')return`<g ${N} stroke="#ddd7c3" stroke-width="18" stroke-linecap="round"><path d="M401 610Q330 660 315 744"/><path d="M599 610Q670 645 704 720"/></g><g fill="#ddd7c3" stroke="#171911" stroke-width="7"><circle cx="312" cy="744" r="20"/><circle cx="705" cy="720" r="20"/></g>`;if(s.kind==='whale')return`<g stroke="#171911" stroke-width="13" stroke-linejoin="round"><path d="M354 596Q266 626 266 710Q300 747 339 714Q358 660 412 635" fill="${s.face}"/><path d="M646 590Q736 608 760 689Q737 731 696 707Q670 652 590 630" fill="${s.face}"/></g>`;if(s.kind==='pepe')return`<g stroke="#171911" stroke-width="12" stroke-linejoin="round"><path d="M365 606Q286 671 279 734Q313 756 342 723Q361 675 420 646" fill="${s.face}"/><path d="M635 606Q714 671 721 734Q687 756 658 723Q639 675 580 646" fill="${s.face}"/></g>`;if(s.kind==='goblin')return`<g stroke="#171911" stroke-width="12" stroke-linejoin="round"><path d="M390 610Q326 655 337 710Q358 736 384 706Q389 669 429 647" fill="${s.face}"/><path d="M610 603Q676 629 690 683Q672 713 643 692Q627 659 578 642" fill="${s.face}"/></g><g ${N} stroke="#171911" stroke-width="5" stroke-linecap="round"><path d="M352 708l-13 18M372 712l-12 20M649 691l17 13M630 688l16 18"/></g>`;if(s.kind==='blob')return`<g stroke="#171911" stroke-width="11" stroke-linejoin="round"><path d="M366 603Q287 625 285 719Q321 755 360 715Q375 661 422 637" fill="${s.face}"/><path d="M634 603Q713 625 715 719Q679 755 640 715Q625 661 578 637" fill="${s.face}"/></g>`;if(s.kind==='doomer')return`<g stroke="#171911" stroke-width="11" stroke-linejoin="round"><path d="M414 594Q345 650 334 757Q360 778 380 744Q387 668 438 626" fill="${s.face}"/><path d="M586 594Q655 649 669 750Q645 775 622 740Q614 669 562 626" fill="${s.face}"/></g>`;if(s.kind==='reply')return`<g stroke="#171911" stroke-width="12" stroke-linejoin="round"><path d="M393 602Q293 621 253 677Q269 713 307 693Q349 653 428 645" fill="${s.face}"/><path d="M623 592Q714 584 757 640Q756 682 720 687Q676 650 584 633" fill="${s.face}"/></g><g ${N} stroke="#171911" stroke-width="5" stroke-linecap="round"><path d="M284 696l0 24M295 693l9 21M706 685l15 14M687 681l12 18"/></g>`;return`<g stroke="#171911" stroke-width="12" stroke-linejoin="round"><path d="M390 605Q312 645 298 732Q332 754 366 722Q380 670 426 640" fill="${s.face}"/><path d="M610 605Q689 641 704 731Q672 753 637 723Q622 669 576 640" fill="${s.face}"/></g>`}function hostMotion(n,m){if(n==='Bag Goblin')return`<animateTransform ${X} type="rotate" values="-1.5 500 620;2.2 500 620;-1.5 500 620" dur="${lerp(m.jitter,1.3,.76).toFixed(2)}s" ${R}/>`;if(n==='Pepe-Blooded')return`<animateTransform ${X} type="translate" values="0 4;0 -7;0 4" dur="${lerp(m.bounce,3.5,2.3).toFixed(2)}s" ${R}/>`;if(n==='Liquidity Blob')return`<animateTransform ${X} type="scale" values="1 1;1.025 .978;.988 1.02;1 1" dur="${lerp(m.tempo,3.4,2.1).toFixed(2)}s" ${R}/>`;if(n==='Rekt Skeleton')return`<animateTransform ${X} type="translate" values="0 0;3 -2;-3 2;0 0" dur="${lerp(m.jitter,1.4,.68).toFixed(2)}s" ${R}/>`;if(n==='Whale Mutation')return`<animateTransform ${X} type="rotate" values="-1.2 500 650;1.2 500 650;-1.2 500 650" dur="${lerp(m.sway,5.1,3.6).toFixed(2)}s" ${R}/>`;if(n==='Doomposter')return`<animateTransform ${X} type="translate" values="0 0;0 8;0 0" dur="${lerp(m.tempo,4.8,3.2).toFixed(2)}s" ${R}/>`;if(n==='Reply Goblin')return`<animateTransform ${X} type="translate" values="0 0;7 -2;-3 2;0 0" dur="${lerp(m.tempo,1.5,.95).toFixed(2)}s" ${R}/>`;return`<animateTransform ${X} type="translate" values="0 1;0 -2;0 1" dur="${lerp(m.bounce,3.5,2.4).toFixed(2)}s" ${R}/>`}function clothing(n,body,kind){let fill=body,extra='',barrel=false,boneOverlay=true;if(n==='Degen Hoodie')extra=`<path d="M-92-98Q0-20 92-98" ${N} stroke="#30351f" stroke-width="20"/><path d="M-35-45L0-5L35-45" ${N} stroke="#d6d7ce" stroke-width="5"/>`;if(n==='Exit Liquidity Suit'){fill='#33383b';extra=`<path d="M-68-100L0 40L68-100" fill="#eee" stroke="#171911" stroke-width="7"/><path d="M0-15L-22 45L0 82L22 45Z" fill="#ff4242"/>`}if(n==='3AM Bathrobe'){fill='#6f5c75';extra=`<path d="M-88-105L0 25L88-105" ${N} stroke="#d4c8d9" stroke-width="24"/><path d="M-105 55H105" stroke="#d4c8d9" stroke-width="12"/>`}if(n==='High-Visibility Bagworker'){fill='#c6d637';extra=kind==='doomer'?`<path d="M-64 -100L-18 -16L18 -16L64 -100" ${N} stroke="#eef2bf" stroke-width="14" stroke-linecap="round"/><path d="M-76 16H76" stroke="#eef2bf" stroke-width="12" stroke-linecap="round"/><path d="M-62 86H62" stroke="#2f3420" stroke-width="8" opacity=".42"/>`:kind==='skel'?`<path d="M-58 -88L-16 -10L16 -10L58 -88" ${N} stroke="#eef2bf" stroke-width="13" stroke-linecap="round"/><path d="M-72 10H72" stroke="#eef2bf" stroke-width="11" stroke-linecap="round"/>`:kind==='degen'||kind==='reply'?`<path d="M-88 -92L-18 -14L18 -14L88 -92" ${N} stroke="#eef2bf" stroke-width="15" stroke-linecap="round"/><path d="M-92 18H92" stroke="#eef2bf" stroke-width="13" stroke-linecap="round"/>`:`<path d="M-110-18H110M-98 38H98" stroke="#f3f7ca" stroke-width="14" stroke-linecap="round"/>`}if(n==='I BUY TOPS Tee'){fill='#393b3e';extra=`<text x="0" y="25" text-anchor="middle" fill="#fff" font-size="31" font-weight="900">I BUY</text><text x="0" y="58" text-anchor="middle" fill="#ff5252" font-size="31" font-weight="900">TOPS</text>`}if(n==='Financial Barrel')barrel=true;if(n==='Moon Mission Suit'){fill='#d9d9d3';extra=`<rect x="-98" y="-45" width="196" height="120" rx="20" fill="#c8cbc9" stroke="#7f8586" stroke-width="8"/><circle cx="0" cy="12" r="33" fill="#202c3e" stroke="#7990ad" stroke-width="8"/>`}if(n==='Counterparty Cult Robe'){fill='#501f36';extra=`<path d="M0-72L-30-10L0 55L30-10Z" ${N} stroke="#ff7044" stroke-width="8"/><text x="0" y="90" text-anchor="middle" fill="#ff966f" font-size="18">XCP</text>`}if(kind==='skel'&&n!=='Financial Barrel')boneOverlay=false;return{fill,extra,barrel,boneOverlay}}function blink(skin,m){const d=lerp(m.blink,5.1,8.2).toFixed(2);return`<g clip-path="url(#eyeL)"><rect x="-125" y="-53" width="106" height="0" fill="${skin}"><animate attributeName="height" values="0;0;86;86;0;0" keyTimes="0;.905;.925;.945;.965;1" dur="${d}s" ${R}/></rect></g><path d="M-121-10Q-72-4-23-10" ${N} stroke="#171911" stroke-width="8" stroke-linecap="round" opacity="0"><animate ${O} values="0;0;1;1;0;0" keyTimes="0;.92;.93;.95;.965;1" dur="${d}s" ${R}/></path><g clip-path="url(#eyeR)"><rect x="19" y="-53" width="106" height="0" fill="${skin}"><animate attributeName="height" values="0;0;86;86;0;0" keyTimes="0;.913;.933;.953;.973;1" dur="${d}s" ${R}/></rect></g><path d="M23-10Q72-4 121-10" ${N} stroke="#171911" stroke-width="8" stroke-linecap="round" opacity="0"><animate ${O} values="0;0;1;1;0;0" keyTimes="0;.928;.938;.958;.973;1" dur="${d}s" ${R}/></path>`}function eyeBase(L,R,skin,m,x=''){return`<ellipse cx="-72" cy="-10" rx="53" ry="43" fill="#e9e4c7" stroke="#171911" stroke-width="9"/><ellipse cx="72" cy="-10" rx="53" ry="43" fill="#e9e4c7" stroke="#171911" stroke-width="9"/>${L}${R}${x}${blink(skin,m)}`}function eyes(n,skin,m){if(n==='Dead Screen')return`<rect x="-126" y="-52" width="108" height="84" rx="22" fill="#11191a" stroke="#171911" stroke-width="9"/><rect x="18" y="-52" width="108" height="84" rx="22" fill="#11191a" stroke="#171911" stroke-width="9"/><path d="M-108-8H-36M36-8H108" stroke="#8cffb1" stroke-width="4"><animate ${O} values=".2;.8;.2" dur="3.1s" ${R}/></path>`;if(n==='Bloodshot')return eyeBase(`<circle cx="-72" cy="-10" r="14" fill="#171911"/><path d="M-115-18L-92-13M-103 18L-89 5M-34-29L-50-18" stroke="#d64f4f" stroke-width="3"/>`,`<circle cx="72" cy="-10" r="14" fill="#171911"/><path d="M115-18L92-13M103 18L89 5M34-29L50-18" stroke="#d64f4f" stroke-width="3"/>`,skin,m);if(n==='Liquidated Tears')return eyeBase(`<circle cx="-72" cy="-10" r="16" fill="#171911"/>`,`<circle cx="72" cy="-10" r="16" fill="#171911"/>`,skin,m,`<g fill="#79d8ff"><path d="M-83 30Q-68 62-83 80Q-98 62-83 30Z"><animateTransform ${X} type="translate" values="0 0;0 55;0 0" dur="1.8s" ${R}/></path><path d="M83 30Q98 62 83 80Q68 62 83 30Z"><animateTransform ${X} type="translate" values="0 0;0 55;0 0" dur="2.1s" ${R}/></path></g>`);if(n==='Spiral Vision')return eyeBase(`<path d="M-72-10m-24 0a24 24 0 1 1 48 0a18 18 0 1 0-36 0a12 12 0 1 1 24 0" ${N} stroke="#1c1b18" stroke-width="6"><animateTransform ${X} type="rotate" from="0 -72 -10" to="360 -72 -10" dur="2.5s" ${R}/></path>`,`<path d="M72-10m-24 0a24 24 0 1 1 48 0a18 18 0 1 0-36 0a12 12 0 1 1 24 0" ${N} stroke="#1c1b18" stroke-width="6"><animateTransform ${X} type="rotate" from="360 72 -10" to="0 72 -10" dur="2.8s" ${R}/></path>`,skin,m);if(n==='Candle Eyes')return eyeBase(`<rect x="-83" y="-25" width="22" height="34" fill="#ff4747"/><path d="M-72-26V-42" stroke="#ff4747" stroke-width="5"/>`,`<rect x="61" y="-18" width="22" height="35" fill="#57ff68"/><path d="M72-20V-42" stroke="#57ff68" stroke-width="5"/>`,skin,m);if(n==='Dollar Vision')return eyeBase(`<text x="-72" y="4" text-anchor="middle" font-size="38" font-weight="900">$<animateTransform ${X} type="scale" values="1;1.15;1" dur="1.6s" ${R}/></text>`,`<text x="72" y="4" text-anchor="middle" font-size="38" font-weight="900">$<animateTransform ${X} type="scale" values="1;1.15;1" dur="1.9s" ${R}/></text>`,skin,m);if(n==='Laser Gaze')return eyeBase(`<circle cx="-72" cy="-10" r="16" fill="#ff3434"/>`,`<circle cx="72" cy="-10" r="16" fill="#ff3434"/>`,skin,m,`<g stroke="#ff3434" stroke-width="14" opacity="0"><path d="M-72-10L-450-65M72-10L450-65"/><animate ${O} values="0;0;1;.8;0;0" keyTimes="0;.68;.69;.75;.77;1" dur="6.9s" ${R}/></g>`);if(n==='69 Pupils')return eyeBase(`<text x="-72" y="2" text-anchor="middle" font-size="30" font-weight="1000">69<animateTransform ${X} type="rotate" from="0 -72 -10" to="360 -72 -10" dur="4.81s" ${R}/></text>`,`<text x="72" y="2" text-anchor="middle" font-size="30" font-weight="1000">69<animateTransform ${X} type="rotate" from="360 72 -10" to="0 72 -10" dur="5.17s" ${R}/></text>`,skin,m);return eyeBase(`<circle cx="-72" cy="-10" r="18" fill="#ff9b23"><animate attributeName="fill" values="#ff9b23;#fff2a2;#ff9b23" dur="4.2s" ${R}/></circle>`,`<circle cx="72" cy="-10" r="18" fill="#ff9b23"><animate attributeName="fill" values="#ff9b23;#fff2a2;#ff9b23" dur="4.2s" ${R}/></circle>`,skin,m)}function mouth(n){if(n==='Smug')return`<path d="M-68 82Q8 122 73 73" ${N} stroke="#171911" stroke-width="10" stroke-linecap="round"><animate attributeName="d" values="M-68 82Q8 122 73 73;M-68 82Q8 128 73 69;M-68 82Q8 122 73 73" dur="3.2s" ${R}/></path>`;if(n==='Clenched Cope')return`<g transform="translate(0 88)"><rect x="-68" y="-26" width="136" height="52" rx="18" fill="#efe7c8" stroke="#171911" stroke-width="9"/><path d="M-36-21V21M0-23V23M36-21V21" stroke="#7f745e" stroke-width="5"/><animateTransform ${X} additive="sum" type="translate" values="0 0;2 0;-2 1;1 -1;0 0" dur=".39s" ${R}/></g>`;if(n==='Perpetual Scream')return`<ellipse cx="0" cy="87" rx="55" ry="68" fill="#351517" stroke="#171911" stroke-width="10"><animate attributeName="ry" values="64;74;64" dur=".8s" ${R}/></ellipse><ellipse cx="0" cy="112" rx="22" ry="14" fill="#bc5a68"/>`;if(n==='Cigarette of Conviction')return`<path d="M-58 83Q3 105 60 83" ${N} stroke="#171911" stroke-width="10"/><g transform="translate(43 91) rotate(15)"><rect width="88" height="12" rx="5" fill="#eee" stroke="#171911" stroke-width="4"/><rect x="0" width="22" height="12" fill="#c97d35"/><circle cx="91" cy="6" r="7" fill="#ff7138"><animate ${O} values=".4;1;.4" dur="1.2s" ${R}/></circle></g>`;if(n==='Liquidity Drool')return`<path d="M-58 83Q0 112 58 83" ${N} stroke="#171911" stroke-width="10"/><path d="M22 98Q40 145 22 169Q3 144 22 98Z" fill="#79d8ff"><animateTransform ${X} type="translate" values="0 0;0 25;0 0" dur="1.7s" ${R}/></path>`;if(n==='Giga Grin')return`<path d="M-84 69Q0 145 84 69Q70 137 0 149Q-70 137-84 69Z" fill="#efe7c8" stroke="#171911" stroke-width="9"><animateTransform ${X} type="scale" values="1 1;1.08 1.03;1 1" dur="3.7s" ${R}/></path>`;return`<g opacity="0"><path d="M-50 88Q0 120 50 88" ${N} stroke="#171911" stroke-width="9"/><animate ${O} values="0;0;1;0;0" keyTimes="0;.73;.735;.75;1" dur="9.4s" ${R}/></g>`}function headwear(n,m){if(n==='Barely Thinking')return`<g transform="translate(0 -174)" stroke="#c2bda7" stroke-width="4" opacity=".7"><path d="M-30-10L-48-45M0-16V-58M30-10L48-45"/></g>`;if(n==='Degen Cap')return`<g transform="translate(0 -160)"><path d="M-120 15Q-88-85 15-80Q108-65 120 22Z" fill="#405bba" stroke="#171911" stroke-width="10"/><path d="M70 14Q150 8 176 42Q111 47 48 37" fill="#30469a" stroke="#171911" stroke-width="8"/></g>`;if(n==='Tinfoil Alpha Receiver')return`<g transform="translate(0 -172)"><path d="M-115 22L-60-78L0-32L57-86L115 22Z" fill="#cfd5d4" stroke="#171911" stroke-width="10"/><path d="M-55-52L-20 13M45-62L13 13" stroke="#fff" stroke-width="5"/><path d="M0-82V-135" stroke="#dfff00" stroke-width="6"><animate ${O} values=".2;1;.2" dur="1.3s" ${R}/></path></g>`;if(n==='Propeller Hat')return`<g transform="translate(0 -170)"><path d="M-105 28Q-75-60 0-62Q75-60 105 28Z" fill="#ff5454" stroke="#171911" stroke-width="10"/><path d="M0-64V-105" stroke="#171911" stroke-width="8"/><g transform="translate(0 -111)"><ellipse rx="72" ry="15" fill="#ffe34f" stroke="#171911" stroke-width="7"/><ellipse rx="15" ry="72" fill="#75e7ff" stroke="#171911" stroke-width="7"/><circle r="12" fill="#ddd" stroke="#171911" stroke-width="5"/><animateTransform ${X} type="rotate" from="0" to="360" dur="${lerp(m.prop,.55,1.25).toFixed(2)}s" ${R}/></g></g>`;if(n==='Bitcoin Miner Helmet')return`<g transform="translate(0 -170)"><path d="M-120 28Q-92-68 0-75Q92-68 120 28Z" fill="#e0b234" stroke="#171911" stroke-width="10"/><rect x="-42" y="-84" width="84" height="42" rx="12" fill="#333" stroke="#171911" stroke-width="8"/><circle cx="0" cy="-63" r="19" fill="#fff5a5"><animate ${O} values=".35;1;.35" dur="2.2s" ${R}/></circle></g>`;if(n==='Liquidity Wizard Hat')return`<g transform="translate(0 -174)"><path d="M-110 24L-30-205Q-8-242 35-204L112 24Z" fill="#673c99" stroke="#171911" stroke-width="10"/><path d="M-145 24Q0-15 145 24Q115 62 0 54Q-115 62-145 24Z" fill="#5e338e" stroke="#171911" stroke-width="10"/><g fill="#ffe86b"><circle cx="-22" cy="-135" r="8"/><circle cx="35" cy="-90" r="7"/><circle cx="10" cy="-175" r="5"/></g></g>`;if(n==='Minimum-Wage Visor')return`<g transform="translate(0 -161)"><path d="M-124 24Q-75-45 0-48Q75-45 124 24Z" fill="#ee4239" stroke="#171911" stroke-width="10"/><path d="M38 11Q142 2 176 42Q107 48 38 36Z" fill="#d12f2a" stroke="#171911" stroke-width="8"/></g>`;if(n==='King of Nothing Crown')return`<g transform="translate(0 -175)"><path d="M-110 22L-95-87L-45-30L0-105L45-30L95-87L110 22Z" fill="#e4b834" stroke="#171911" stroke-width="10"/><circle cx="0" cy="-58" r="12" fill="#ff4b4b"/><circle cx="-70" cy="-30" r="8" fill="#75dfff"/><circle cx="70" cy="-30" r="8" fill="#75dfff"/></g>`;return`<g transform="translate(0 -176)"><path d="M-118 20L-95-92L-52-42L0-126L52-42L95-92L118 20Z" fill="#22292c" stroke="#73ff9b" stroke-width="9"/><g fill="#73ff9b" font-size="20" font-weight="900"><text x="-77" y="-25">0</text><text x="-8" y="-58">0</text><text x="66" y="-25">0</text></g></g>`}function held(n){if(n==='The Bag')return``;if(n==='Cracked Phone')return`<g transform="translate(300 680) rotate(-14)"><rect x="-52" y="-90" width="104" height="180" rx="13" fill="#17222d" stroke="#101314" stroke-width="9"/><rect x="-39" y="-70" width="78" height="128" fill="#48b8dd"/><path d="M-22-64L9-25L-6-5L25 28" stroke="#fff" stroke-width="4" ${N}/><circle cy="74" r="8" fill="#aaa"/></g>`;if(n==='Keyboard')return`<g transform="translate(310 700) rotate(-7)"><path d="M-122-55H116L132 52H-139Z" fill="#34383a" stroke="#111" stroke-width="9"/>${[[-96,-31,30],[-61,-31,30],[-26,-31,30],[9,-31,30],[44,-31,30],[79,-31,30],[-105,2,27],[-74,2,27],[-43,2,27],[-12,2,27],[19,2,27],[50,2,27],[81,2,27],[-92,33,27],[-61,33,27],[-30,33,27],[1,33,27],[32,33,27],[63,33,27]].map(k=>`<rect x="${k[0]}" y="${k[1]}" width="${k[2]}" height="20" rx="3" fill="#777d80" stroke="#151719" stroke-width="2"/>`).join('')}<rect x="-60" y="33" width="120" height="18" rx="4" fill="#92989a"/><animateTransform ${X} additive="sum" type="translate" values="0 0;0 4;0 0" dur=".42s" ${R}/></g>`;if(n==='Chart Tablet')return`<g transform="translate(300 680) rotate(-10)"><rect x="-80" y="-105" width="160" height="210" rx="12" fill="#151b20" stroke="#111" stroke-width="9"/><rect x="-62" y="-80" width="124" height="145" fill="#071116"/><path d="M-52 42L-18 10L12 25L42-50L59-12" ${N} stroke="#5eff6a" stroke-width="9"><animate attributeName="stroke" values="#5eff6a;#5eff6a;#ff4949;#5eff6a" dur="4.2s" ${R}/></path></g>`;if(n==='XCP Coin')return`<g transform="translate(330 675)"><circle r="62" fill="#7d2d12" opacity=".28"/><circle r="58" fill="#ff7144" stroke="#37150d" stroke-width="10"/><circle r="45" ${N} stroke="#ffd1c2" stroke-width="4" opacity=".65"/><circle r="51" ${N} stroke="#fff1b7" stroke-width="2" opacity=".5" stroke-dasharray="4 10"><animateTransform ${X} type="rotate" from="0" to="360" dur="6.8s" ${R}/></circle><text x="0" y="12" text-anchor="middle" fill="#fff" font-size="31" font-weight="900">XCP</text><g fill="#ffeab5">${[0,120,240].map(a=>`<circle cx="${Math.cos(a*Math.PI/180)*68}" cy="${Math.sin(a*Math.PI/180)*68}" r="4"><animate ${O} values=".2;1;.2" dur="${1.8+a/240}s" ${R}/></circle>`).join('')}</g><animateTransform ${X} additive="sum" type="rotate" from="0 0 0" to="360 0 0" dur="3.7s" ${R}/></g>`;if(n==='Orange Bitcoin Orb')return`<g transform="translate(330 680)"><circle r="70" fill="#ff8a00" opacity=".12"/><circle r="62" fill="#ff7a00" stroke="#552900" stroke-width="10"/><circle r="48" ${N} stroke="#ffd9a1" stroke-width="4" opacity=".55"/><circle r="54" ${N} stroke="#fff1bf" stroke-width="2" opacity=".45" stroke-dasharray="3 9"><animateTransform ${X} type="rotate" from="0" to="360" dur="7s" ${R}/></circle><path d="M-18-26Q0-42 18-26" ${N} stroke="#fff2cc" stroke-width="5" opacity=".5"/><text x="0" y="20" text-anchor="middle" fill="#fff" font-size="58" font-weight="900">₿</text><g fill="#ffd68e">${[-78,0,78].map((x,i)=>`<circle cx="${x}" cy="${i==1?-82:0}" r="${i==1?5:4}"><animate ${O} values=".2;1;.2" dur="${1.4+i*.2}s" ${R}/></circle>`).join('')}</g><animateTransform ${X} additive="sum" type="translate" values="0 8;0 -14;0 8" dur="3.2s" ${R}/></g>`;if(n==='Emergency Hotdog')return`<g transform="translate(300 690) rotate(-10)"><path d="M-100-10Q-80-50-40-40L90 20Q115 38 95 68Q75 95 35 74L-88 18Q-115 8-100-10Z" fill="#e5a759" stroke="#321d10" stroke-width="9"/><path d="M-70-4L65 58" stroke="#c34b3d" stroke-width="28" stroke-linecap="round"/><path d="M-55-8Q-15 18 20 24T75 58" ${N} stroke="#f3db4a" stroke-width="8"/></g>`;if(n==='Empty Wallet')return`<g transform="translate(300 690)"><rect x="-55" y="-38" width="110" height="76" rx="12" fill="#421c18" stroke="#140b09" stroke-width="8"/><rect x="-42" y="-26" width="84" height="52" rx="8" fill="#6f352d"/><path d="M-50 0H50" stroke="#d2a889" stroke-width="5"/></g><g transform="translate(300 680)" opacity="0"><path d="M0 0L-14-10L-7 4L-16 10L0 6L16 10L7 4L14-10Z" fill="#e6dfbd" stroke="#332f24" stroke-width="2"/><animate ${O} values="0;0;1;1;0" keyTimes="0;.67;.68;.86;1" dur="11.17s" ${R}/><animateTransform ${X} type="translate" values="0 0;0 0;-40 -60;-80 -115" keyTimes="0;.67;.82;1" dur="11.17s" ${R}/></g>`;return`<g transform="translate(300 690)"><rect x="-75" y="-105" width="150" height="210" rx="12" fill="#19211b" stroke="#0a0f0b" stroke-width="9"/><rect x="-55" y="-75" width="110" height="95" fill="#07140c" stroke="#4d7d5b" stroke-width="5"/><text x="0" y="-25" text-anchor="middle" fill="#7dff9a" font-size="18">DISPENSE</text><circle cx="0" cy="62" r="30" fill="#1f2b22" stroke="#78ff99" stroke-width="7"><animate attributeName="fill" values="#1f2b22;#7dff9a;#1f2b22" dur="7.7s" ${R}/></circle></g>`}function balanceBag(state,scale,m,heldBag,s){const ghost=state==='GHOST BAG',whale=state==='UNAUTHORIZED WHALE',bx=heldBag?315:(s&&s.bagX||720),by=heldBag?690:(s&&s.bagY||680),sub=state==='MAXIMUM BAGGAGE'?'1M BAG':state==='UNAUTHORIZED WHALE'?'OVER CAP':state==='GHOST BAG'?'GHOST':state==='CRUMB HOLDER'?'CRUMBS':state==='BAG ACQUIRED'?'ACQUIRED':state==='OVEREXPOSED'?'OVEREXPOSED':state;return`<g transform="translate(${bx} ${by}) scale(${scale})" opacity="${ghost?.28:1}"><path d="M-86-88Q-20-132 88-82L102 12Q100 128 0 159Q-110 126-101 16Z" fill="${ghost?'#67727d':'url(#bagG)'}" stroke="#160d07" stroke-width="12"/><path d="M-41-93Q-19-124 0-112Q23-126 45-91" ${N} stroke="#160d07" stroke-width="12"/><text x="0" y="24" text-anchor="middle" fill="#f2d39a" font-size="${whale?26:35}" font-family="Impact">${whale?'WHALE':state==='MAXIMUM BAGGAGE'?'MAX':'BAG'}</text><text x="0" y="61" text-anchor="middle" fill="#f2d39a" font-size="${sub.length>10?17:20}" font-weight="900">${sub}</text><animateTransform ${X} additive="sum" type="rotate" values="-${lerp(m.bag,2,6).toFixed(1)} 0 -55;${lerp(m.bag,2,6).toFixed(1)} 0 -55;-${lerp(m.bag,2,6).toFixed(1)} 0 -55" dur="${lerp(255-m.bag,1.5,3.2).toFixed(2)}s" ${R}/></g>`}function behaviorAnim(n,m){if(n==='LOCKED IN')return`<animateTransform ${X} type="translate" values="0 0;0 -3;0 0" dur="1.1s" ${R}/>`;if(n==='TWEAKING')return`<animateTransform ${X} type="translate" values="0 0;${lerp(m.jitter,1,4).toFixed(1)} -2;-${lerp(m.jitter,1,5).toFixed(1)} 1;2 2;0 0" dur="${lerp(255-m.jitter,.85,1.7).toFixed(2)}s" ${R}/>`;if(n==='CRASHING')return`<animateTransform ${X} type="translate" values="0 0;0 -16;0 -20;0 34;0 0" keyTimes="0;.58;.7;.73;1" dur="5.7s" ${R}/>`;if(n==='ASCENDING')return`<animateTransform ${X} type="translate" values="0 12;0 -24;0 12" dur="4.4s" ${R}/>`;return`<animateTransform ${X} type="translate" values="0 0;3 -2;-4 1;2 3;-2 -1;0 0" dur="${lerp(255-m.jitter,.78,1.42).toFixed(2)}s" ${R}/>`}function caption(d){const B={'LOCKED IN':[['THE TIMELINE NEEDS ME','the timeline has requested otherwise'],['POST THROUGH IT','recovery is for offline people'],['I HAVE INFORMATION','source: internal vibration'],['DELETE NOTHING','the screenshots already exist'],['ENGAGEMENT IS LIQUIDITY','none detected'],['ONE MORE POST','surely this fixes the chart'],['THE REPLIES WILL UNDERSTAND','they did not'],['I AM BUILDING IN PUBLIC','mostly posting in public'],['SIGNAL BOOSTED','content unchanged'],['LOG OFF?','not in this economy']],'TWEAKING':[['THE SIGNAL IS GETTING LOUDER','signal quality remains disputed'],['I CAN FEEL THE ALPHA','medical opinion pending'],['SOMETHING IS HAPPENING','evidence unavailable'],['THE CHART JUST BLINKED','I blinked first'],['I HAVE CONNECTED THE DOTS','the dots filed a complaint'],['DO NOT DISTURB','pattern recognition in progress'],['THE BLOCKS ARE SPEAKING','they said nothing useful'],['MY THESIS IS VIBRATING','peer review declined'],['THIS GOES DEEPER','unfortunately so do I'],['I HAVE SEEN ENOUGH','continues watching']],'CRASHING':[['IT HAS NEVER BEEN MORE OVER','until the next block'],['DELETE THE CHART','I have seen enough'],['THERE IS NO FLOOR','only additional basement'],['PRICE DISCOVERY','wrong direction'],['MY BAG HAS BECOME A LESSON','tuition was expensive'],['WE ARE SO NOT BACK','status may change without notice'],['THE DIP HAS A BASEMENT','and a sub-basement'],['THIS CANDLE KNOWS MY NAME','cease and desist pending'],['FUNDAMENTALS REMAIN INTACT','portfolio not included'],['I HAVE ACHIEVED DOWNSIDE','achievement unlocked']],'ASCENDING':[['WE ARE SO BACK','historical sample size: one candle'],['UP ONLY','terms and conditions apply'],['THE PROPHECY','recently invented'],['THIS IS IT','I say this every block'],['GENERATONAL WEALTH','spelling impaired by euphoria'],['THEY LAUGHED','they are still laughing'],['I CAN FEEL THE LIQUIDITY','please do not ask where'],['MOM GET THE CAMERA','green candle detected'],['NUMBER GO UP','analysis complete'],['MY THESIS HAS LEGS','for approximately six minutes']],'BRAINROT':[["I'M IN IT FOR THE TECHNOLOGY",'the technology is generating this creature'],['THE BAG IS LEARNING','do not teach it finance'],['THE CHART HAS A MOUTH','it keeps saying buy'],['I HAVE SEEN THE OTHER MEMPOOL','diagnosis unavailable'],['DO NOT REFRESH','it knows'],['ADVANCED CRYPTOGRAPHY','produced this'],['MY WALLET IS SENTIENT','and financially irresponsible'],['THE SEED REMEMBERS','I wish it did not'],['TRUSTLESS INFRASTRUCTURE','for whatever this is'],['BRAINROT CONFIRMED','no treatment planned']]};const G=[['PROBABLY NOTHING','statistically something'],['STILL EARLY','to making better decisions'],['DO YOUR OWN RESEARCH','I did somebody else\'s'],['THIS IS FINANCIAL CULTURE','not financial advice'],['THE FUNDAMENTALS ARE MEMETIC','citation needed'],['CONVICTION LOADING','risk controls skipped'],['BITCOIN DID THIS','do not blame the renderer'],['IMMUTABLE BAD DECISIONS','finally a use case'],['THE BAG REMEMBERS','even if you sell'],['FULLY DETERMINISTIC','completely unnecessary'],['DECENTRALIZED BRAIN DAMAGE','permissionless by design'],['ONCHAIN AND UNWELL','status: canonical'],['CULTURAL INFRASTRUCTURE','mostly memes'],['TRUST THE PROCESS','process not audited'],['THE MEME IS THE MESSAGE','the wallet is the evidence']];const S={hotdog:[['THE HOTDOG KNOWS','diagnosis unavailable'],['EMERGENCY ALPHA','served with mustard'],['THE CONDIMENTS HAVE SPOKEN','bullish unfortunately'],['PROVISIONS SECURED','thesis remains unfed'],['DO NOT ASK ABOUT THE HOTDOG','you have been warned'],['LIQUIDITY AND MUSTARD','a balanced portfolio']],empty:[['I HAVE NO EXIT STRATEGY','I also had no entry strategy'],['WALLET CONTENTS: VIBES','funds not detected'],['MY WALLET IS AIR-GAPPED','from money'],['LIQUIDITY NOT FOUND','conviction still present'],['ZERO IS A POSITION','technically'],['I BROUGHT AN EMPTY WALLET','optimism was free']],satoshi:[['FEW UNDERSTAND','including me'],['I SEE THE ORANGE LIGHT','eye exam recommended'],['SATOSHI SENT A SIGNAL','translation unavailable'],['ANCIENT KNOWLEDGE DETECTED','mostly orange'],['READ THE BLOCKCHAIN','I cannot read the chart'],['THE VISION IS CLEAR','the thesis is not']],res69:[['NICE HAS ACHIEVED CONSCIOUSNESS','please remain calm'],['NICE.','the protocol agrees'],['69 RESONANCE DETECTED','maturity not detected'],['THE NUMBER HAS AWAKENED','nice'],['SYMMETRY ACHIEVED','nice² pending'],['MEMETIC ALIGNMENT: NICE','scientifically rigorous']],xcp:[['THE OLD MACHINE STILL RUNS','you simply stopped looking'],['BUILT DIFFERENT SINCE 2014','documentation archaeological'],['THE DISPENSER HAS SPOKEN','exact change only'],['COUNTERPARTY NEVER LEFT','you stopped looking'],['OP_RETURN OR RETURN HOME','the old ways persist'],['PROTOCOL ARCHAEOLOGY','artifact still operational']],moon:[['MOON MISSION APPROVED','fuel source questionable'],['WE HAVE LEFT THE CHART','navigation unavailable'],['ORBITAL CONVICTION','gravity sold separately'],['THE MOON WAS PRICED IN','apparently not'],['LOW GRAVITY HIGH CERTAINTY','science-adjacent']],dispenser:[['THE OLD MACHINE STILL DISPENSES','please insert conviction'],['ANCIENT DISPENSER ONLINE','maintenance overdue'],['2014 CALLED','it wants its alpha back'],['THE MACHINE REMEMBERS','exact change preferred'],['DISPENSING THE OLD WAYS','modernity declined']],pepe:[['MEMETIC ANCESTRY CONFIRMED','frog-adjacent no longer'],['PEPE BLOOD DETECTED','internet lineage verified'],['THE FROG GENE PERSISTS','timeline heritage'],['ANCESTRAL MEME SIGNAL','ribbit responsibly'],['FROG LINEAGE ONLINE','emotional range: complicated']],skeleton:[['ALREADY REKT','nothing left to liquidate'],['BONES HOLDING STRONG','flesh sold earlier'],['MY BAG OUTLIVED ME','bullish for calcium'],['LIQUIDATION COMPLETE','skeleton remains'],['DIAMOND BONES','hands unavailable']],whale:[['POSITION SIZE: YES','risk controls unavailable'],['WHALE ACTIVITY DETECTED','krill remain calm'],['I AM THE LIQUIDITY','allegedly'],['SIZE IS A THESIS','risk management disagrees'],['OCEAN MODE','exit route narrow']],maxbag:[['MAXIMUM BAGGAGE','minimum restraint'],['I SENT THE FULL BAG','the organism noticed'],['MAX ALLOCATION','minimum hesitation'],['CONVICTION: FULL SEND','exit capability reduced'],['THE BAG IS AT CAPACITY','cope has room']],premium:[['PREMIUM DAMAGE DETECTED','rarity has consequences'],['THE RNG WAS KIND','suspiciously kind'],['THIS ONE CAME LOADED','premium traits confirmed'],['RARE SIGNAL CLUSTER','do not become unbearable'],['STATISTICALLY ANNOYING','collector behavior imminent'],['MULTIPLE PREMIUM MUTATIONS','timeline contamination likely']],degen:[['JUST A NORMAL DEGEN','normal is doing work here'],['HUMAN ENOUGH','financial judgment excluded'],['DEFAULT SPECIMEN','default decisions not included'],['A DEGEN IN THE WILD','approach with liquidity'],['BIOLOGICALLY ONLINE','spiritually in the replies']],goblin:[['DO NOT TOUCH MY BAG','seriously'],['HOARD MODE','sharing disabled'],['BAG FIRST QUESTIONS LATER','custody instinct engaged'],['GREED HAS A SILHOUETTE','it looks like this'],['MY BAG','our liquidity']],doomer:[['I HAVE READ THE NEWS','regrettably'],['DOOMSCROLL COMPLETE','starting another pass'],['EVERYTHING IS PRICED IN','including despair'],['BEARISH ON SUNLIGHT','monitor glow sufficient'],['I EXPECTED THIS','I always say that']],blob:[['LIQUIDITY HAS BECOME SENTIENT','surface tension bullish'],['I AM MOSTLY SLIPPAGE','shape unstable'],['MARKET GOO','do not refrigerate'],['FORM IS TEMPORARY','bag is permanent'],['LIQUIDITY CONDITION: VISCOUS','exit slowly']],reply:[['ACTUALLY,','nobody requested this'],['I AM IN YOUR REPLIES','bag included'],['ONE SMALL CORRECTION','followed by twelve posts'],['ALLOW ME TO EXPLAIN','please do not'],['ENGAGEMENT GOBLIN ONLINE','mentions endangered']],orb:[['ORANGE ORB ACQUIRED','do not stare directly'],['BITCOIN HAS ENTERED THE CHAT','subtlety unavailable'],['ORANGE ENERGY DETECTED','network effects intensify'],['THE ORB IS WATCHING','probably bullish']],xcpcoin:[['XCP IN HAND','archaeology becomes currency'],['COUNTERPARTY COIN DETECTED','vintage alpha'],['THE ORANGE COIN HAS A COUSIN','few remember'],['XCP SIGNAL LOCKED','2014 intensifies']]};const base=B[d.g.behavior.n]||B['LOCKED IN'],hm={'Degen Homunculus':S.degen,'Bag Goblin':S.goblin,'Doomposter':S.doomer,'Pepe-Blooded':S.pepe,'Liquidity Blob':S.blob,'Rekt Skeleton':S.skeleton,'Whale Mutation':S.whale,'Reply Goblin':S.reply},hp=hm[d.g.host.n]||base,traits=[];if(d.g.object.n==='Emergency Hotdog')traits.push(S.hotdog);if(d.g.object.n==='Empty Wallet')traits.push(S.empty);if(d.g.object.n==='Ancient Dispenser')traits.push(S.dispenser);if(d.g.object.n==='Orange Bitcoin Orb')traits.push(S.orb);if(d.g.object.n==='XCP Coin')traits.push(S.xcpcoin);if(d.g.eyes.n==='Satoshi Vision')traits.push(S.satoshi);if(d.g.aura.n==='69 Resonance')traits.push(S.res69);if(d.g.habitat.n==='Counterparty 2014')traits.push(S.xcp);if(d.g.habitat.n==='The Moon')traits.push(S.moon);const mode=u32(H(d.C+'|CAPTION_MODE'))%100;let p;if(mode<44)p=base;else if(mode<59)p=G;else if(mode<72)p=hp;else if(mode<90&&traits.length)p=traits[u32(H(d.C+'|TRAIT_FAMILY'))%traits.length];else if(mode<96&&premiumNames(d.g).length>=2)p=S.premium;else if(mode>=96&&(d.bag[0]==='MAXIMUM BAGGAGE'||d.bag[0]==='UNAUTHORIZED WHALE'))p=S.maxbag;else p=traits.length?traits[u32(H(d.C+'|FALLBACK_TRAIT'))%traits.length]:base;const li=u32(H(d.C+'|CAPTION_LINE|'+mode))%p.length;return p[li]}function render(d,target){const s=hostSpec(d.g.host.n),cl=clothing(d.g.drip.n,s.body,s.kind),cap=caption(d),m=d.motion,torso=hostTorso(s,cl,m),arms=hostArms(s);const art=target||$('art');if(!art)throw Error('MEMENOME render target missing');art.innerHTML=`${defs(s.face)}${habitat(d.g.habitat.n)}<rect x="35" y="35" width="930" height="83" rx="10" fill="#efe9d9" stroke="#111" stroke-width="5"/><text x="62" y="78" fill="#111" font-family="Impact,Arial Black,sans-serif" font-size="${cap[0].length>36?30:cap[0].length>29?36:cap[0].length>22?42:46}" letter-spacing="2">${esc(cap[0])}</text><text x="64" y="104" fill="#272727" font-size="18" font-weight="700">${esc(cap[1])}</text>${aura(d.g.aura.n)}${premiumFX(d.g)}${premiumBadge(d.g)}<g id="organism">${behaviorAnim(d.g.behavior.n,m)}<g>${hostMotion(d.g.host.n,m)}${torso}${arms}${held(d.g.object.n)}${balanceBag(d.bag[0],d.bag[1],m,d.g.object.n==='The Bag',s)}<g id="head" transform="translate(500 ${s.headY}) rotate(${s.headRot})">${s.ears}${headShape(s)}${s.extra}${s.brow||`<path d="M-118-48Q-73-76-25-58M25-58Q76-77 118-47" ${N} stroke="#202311" stroke-width="14" stroke-linecap="round"/>`}<g transform="${s.eyeT}">${eyes(d.g.eyes.n,s.face,m)}</g><g transform="${s.mouthT}">${mouth(d.g.mouth.n)}</g>${headwear(d.g.head.n,m)}<animateTransform ${X} additive="sum" type="rotate" values="-${lerp(m.sway,.7,2).toFixed(1)} 0 0;${lerp(m.sway,.7,2).toFixed(1)} 0 0;-${lerp(m.sway,.7,2).toFixed(1)} 0 0" dur="${lerp(m.tempo,3.9,2.8).toFixed(2)}s" ${R}/></g></g></g><g><rect x="58" y="790" width="425" height="107" rx="8" fill="#070907" opacity=".92" stroke="#8ef65f" stroke-width="3"/><text x="78" y="821" fill="#8ef65f" font-size="18" font-weight="900">SPECIMEN ${d.id}</text><text x="78" y="849" fill="#e9e4c7" font-size="16">GENOME: ${d.code}</text><text x="78" y="875" fill="#e9e4c7" font-size="16">HOST: ${esc(d.g.host.n)}</text><rect x="517" y="790" width="425" height="129" rx="8" fill="#070907" opacity=".92" stroke="#ff7a00" stroke-width="3"/><text x="537" y="818" fill="#ffb35d" font-size="16">BAG: ${esc(d.bag[0])}</text><text x="537" y="844" fill="#ffb35d" font-size="16">EXACT COMBO ≈ 1 / ${d.one.toLocaleString('en-US')}</text><text x="537" y="870" fill="#ffb35d" font-size="16">BEHAVIOR: ${d.g.behavior.n}</text><text x="537" y="896" fill="#ffe08a" font-size="15" font-weight="900">PREMIUM TRAITS: ${premiumNames(d.g).length||0}</text></g><text x="57" y="944" fill="#9ca8ae" font-size="12" letter-spacing="2">MEMENOME ENGINE // 69 ALLELES // 9 LOCI // V1</text><text x="942" y="944" fill="#9ca8ae" font-size="12" text-anchor="end">GENE 69: BRAINROT</text><text x="500" y="970" fill="#77838a" font-size="10" text-anchor="middle">TEMPO ${m.tempo} · JITTER ${m.jitter} · GLITCH ${m.glitch} · BAG ENERGY ${m.bag}</text>${d.g.aura.n==='69 Resonance'?`<g opacity="0"><rect width="1000" height="1000" fill="#dfff00" opacity=".84"/><text x="500" y="535" text-anchor="middle" fill="#0b0b0b" font-family="Impact" font-size="220">NICE.</text><text x="500" y="605" text-anchor="middle" fill="#0b0b0b" font-size="24" font-weight="900" letter-spacing="5">69 RESONANCE DETECTED</text><animate ${O} values="0;0;1;1;0;0" keyTimes="0;.72;.725;.755;.76;1" dur="${lerp(m.phase,19.69,29.69).toFixed(2)}s" ${R}/></g>`:''}${d.g.behavior.n==='BRAINROT'?`<rect x="0" y="460" width="1000" height="34" fill="#c385ff" opacity="0"><animate ${O} values="0;0;.45;0;0" keyTimes="0;.47;.475;.49;1" dur="${lerp(m.glitch,7.3,11).toFixed(2)}s" ${R}/><animate attributeName="y" values="460;460;275;700;460" keyTimes="0;.47;.475;.49;1" dur="${lerp(m.glitch,7.3,11).toFixed(2)}s" ${R}/></rect>`:''}`;return d}function renderInputs(address,firstMintBlockHash,initialMintQuantity,target){const d=derive(address,firstMintBlockHash,initialMintQuantity);render(d,target);return d}const API={version:'1.0-rc3',frozen:1,protocol:'MEMENOME:v1',asset:'MEMENOME',alleles:69,loci:9,traitTables:T,traitKeys:K,derive,render,renderInputs,bagState,premiumNames};Object.defineProperty(window,'MEMENOME',{value:Object.freeze(API),writable:false,configurable:false});})()
160fairminter

MEMENOME

XCP.FUN

69.0 KB of text/javascript in Bitcoin witness data, block 964,250.

MEMENOME/XCP pool50 bps
price
8.899e-6 XCP
24h
+4.3%
depth
445.11 XCP
reserve
50.02M
liquidity locked98.2%

146.3k of 149.0k A18189972090142917414 at 1CounterpartyX…UWLpVr — the remainder can be withdrawn by whoever holds it.

swap
you pay
XCP
balance
you receive (est.)
MEMENOME
connect a wallet

Both wallets speak Counterparty. Minting needs a taproot account in either.

supply100,000,000
divisibleyes
lockedno
ownerbc1qqvw6ar…ejzqq7aq

Provenance

verifiable against the chain
counter number160
content sha2566064c3a0f37d3de50defc29de362a691a4b98583dcbd0356f211f4a226358f98
block964,250
position in block3176664
inscribed2026-08-27 05:37 UTC
reveal size70.0 KB
miner fee17,673 sat
rolling hash55b80733e45f31bcc220c92cf55751650f729ef3fde096fe5e98ef024eadf39c