/* BLOCKS E — extra style-agnostic DATA blocks (area / bars / table) for Empire UI v2 */
(function(){
  const { cx, Slot, Spark, Bars, Ring, Glyph, G } = window;
  const B = 'inline-flex items-center justify-center gap-2 cursor-pointer select-none whitespace-nowrap';
  const ghost = s => s.cls.btnGhost || s.cls.btn;
  const head = (s, x='') => cx(s.cls.display, s.cls.glow, x);
  const div = 'rgba(128,128,128,.18)';

  const blocks = [
    /* ===================== AREA ===================== */
    { id:'eD-area-revenue', type:'data', subtype:'area', title:'Revenue area card', w:1,
      Render:(s)=>(
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5')}>
          <div className={cx('text-xs font-semibold uppercase tracking-wider',s.cls.muted)}>Revenue</div>
          <div className="flex items-end gap-2 mt-1">
            <div className={head(s,'text-2xl font-extrabold')}>$48,290</div>
            <span className={cx(s.cls.chip,'px-1.5 py-0.5 text-[11px] font-bold mb-1')}>+12.4%</span>
          </div>
          <div className="h-24 mt-3"><Spark colors={[s.chart[0]]} h={96} data={[28,31,29,38,42,40,52,49,61,58,70,78]}/></div>
          <div className={cx('text-[11px] mt-2',s.cls.muted)}>vs. $42,950 last month</div>
        </div>) },

    { id:'eD-area-legend-delta', type:'data', subtype:'area', title:'Area with legend + delta', w:2,
      Render:(s)=>(
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className="flex items-center justify-between mb-3">
            <div>
              <div className={head(s,'font-extrabold')}>Traffic overview</div>
              <div className={cx('text-xs',s.cls.muted)}>Last 12 weeks</div>
            </div>
            <div className="flex gap-2">
              <span className={cx(s.cls.chip,'px-2 py-1 text-[11px] font-bold')}>Visitors +9.2%</span>
              <span className="px-2 py-1 text-[11px] font-bold rounded-lg text-white" style={{background:s.cls.accent}}>Signups +21%</span>
            </div>
          </div>
          <div className="relative h-40">
            <div className="absolute inset-0"><Spark colors={[s.chart[0]]} h={160} data={[40,46,42,55,60,57,68,64,76,80,88,96]}/></div>
            <div className="absolute inset-0 opacity-70"><Spark colors={[s.chart[1]||s.chart[0]]} h={160} data={[20,24,22,30,28,36,33,42,40,48,52,60]}/></div>
          </div>
          <div className="flex gap-5 mt-3 text-[11px]">
            <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded-full" style={{background:s.chart[0]}}/>Visitors</span>
            <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded-full" style={{background:s.chart[1]||s.chart[0]}}/>Signups</span>
          </div>
        </div>) },

    { id:'eD-area-compare', type:'data', subtype:'area', title:'Dual sparkline compare', w:2,
      Render:(s)=>{
        const rows=[
          ['This week','$12,480','+8.1%',[20,28,24,34,30,42,48],s.chart[0]],
          ['Last week','$11,540','+2.4%',[26,22,30,27,35,31,38],s.chart[1]||s.chart[0]],
        ];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[540px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Sales comparison</div>
          <div className="grid grid-cols-2 gap-4">
            {rows.map(([l,v,d,data,c])=>(
              <div key={l} className={cx(s.cls.surface2,'p-4 rounded-xl')}>
                <div className={cx('text-xs',s.cls.muted)}>{l}</div>
                <div className="flex items-center justify-between mt-0.5">
                  <div className={cx('text-xl font-extrabold',s.cls.text)}>{v}</div>
                  <span className="text-[11px] font-bold" style={{color:s.cls.accent}}>{d}</span>
                </div>
                <div className="h-12 mt-2"><Spark colors={[c]} h={48} data={data}/></div>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-area-axis', type:'data', subtype:'area', title:'Area with gradient + axis', w:2,
      Render:(s)=>(
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className="flex items-center justify-between mb-2">
            <div className={head(s,'font-extrabold')}>API requests</div>
            <span className={cx('text-xs',s.cls.muted)}>req / min</span>
          </div>
          <div className="flex gap-3">
            <div className="flex flex-col justify-between text-[10px] py-1 shrink-0" style={{height:144}}>
              {['3k','2k','1k','0'].map(t=><span key={t} className={s.cls.muted}>{t}</span>)}
            </div>
            <div className="flex-1 min-w-0">
              <div className="h-36"><Spark colors={[s.chart[0]]} h={144} data={[12,18,15,28,24,38,30,44,40,52,48,62,58,70]}/></div>
              <div className="flex justify-between mt-1 text-[10px]">
                {['00','04','08','12','16','20','24'].map(t=><span key={t} className={s.cls.muted}>{t}h</span>)}
              </div>
            </div>
          </div>
        </div>) },

    { id:'eD-area-trio', type:'data', subtype:'area', title:'Mini area trio', w:2,
      Render:(s)=>{
        const cards=[
          ['Latency','142ms','-6%',[40,36,38,30,34,28,24]],
          ['Errors','0.42%','-18%',[30,28,32,24,20,18,12]],
          ['Uptime','99.98%','+0.1%',[60,62,61,63,64,66,68]],
        ];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Service health</div>
          <div className="grid grid-cols-3 gap-3">
            {cards.map(([l,v,d,data],i)=>(
              <div key={l} className={cx(s.cls.surface2,'p-3 rounded-xl')}>
                <div className={cx('text-[11px]',s.cls.muted)}>{l}</div>
                <div className={cx('text-lg font-extrabold mt-0.5',s.cls.text)}>{v}</div>
                <div className="text-[10px] font-bold mb-1" style={{color:s.cls.accent}}>{d}</div>
                <div className="h-8"><Spark colors={[i%2?s.chart[1]||s.chart[0]:s.chart[0]]} h={32} data={data}/></div>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-area-stat-header', type:'data', subtype:'area', title:'Area with stat header', w:2,
      Render:(s)=>(
        <div className={cx(s.cls.surface,'w-full max-w-[540px] p-0 overflow-hidden')}>
          <div className="grid grid-cols-3" style={{borderBottom:`1px solid ${div}`}}>
            {[['MRR','$84.2k','+5.4%'],['Customers','1,284','+38'],['Churn','1.9%','-0.3%']].map(([l,v,d])=>(
              <div key={l} className="p-4" style={{borderRight:`1px solid ${div}`}}>
                <div className={cx('text-[11px] uppercase tracking-wider',s.cls.muted)}>{l}</div>
                <div className={cx('text-lg font-extrabold mt-0.5',s.cls.text)}>{v}</div>
                <div className="text-[11px] font-bold" style={{color:s.cls.accent}}>{d}</div>
              </div>))}
          </div>
          <div className="p-5">
            <div className={cx('text-xs mb-2',s.cls.muted)}>Monthly recurring revenue</div>
            <div className="h-28"><Spark colors={[s.chart[0]]} h={112} data={[34,40,38,48,52,50,62,68,66,78,84,92]}/></div>
          </div>
        </div>) },

    /* ===================== BARS ===================== */
    { id:'eD-bars-axis', type:'data', subtype:'bars', title:'Vertical bars with axis', w:1,
      Render:(s)=>(
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5')}>
          <div className={head(s,'font-extrabold')}>Weekly active</div>
          <div className={cx('text-xs mb-3',s.cls.muted)}>users / day</div>
          <div className="h-28 mb-1"><Bars colors={s.chart} data={[420,680,540,820,610,920,740]}/></div>
          <div className="flex justify-between text-[10px]">
            {['M','T','W','T','F','S','S'].map((d,i)=><span key={i} className={s.cls.muted}>{d}</span>)}
          </div>
        </div>) },

    { id:'eD-bars-ranking', type:'data', subtype:'bars', title:'Horizontal ranking bars', w:1,
      Render:(s)=>{
        const rows=[['United States',92],['Germany',74],['Japan',61],['Brazil',48],['India',39]];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Top regions</div>
          <div className="space-y-2.5">
            {rows.map(([l,v])=>(
              <div key={l}>
                <div className="flex justify-between text-xs mb-1">
                  <span className={s.cls.sub}>{l}</span>
                  <span className={cx('font-bold',s.cls.text)}>{v}%</span>
                </div>
                <div className="h-2 rounded-full overflow-hidden" style={{background:div}}>
                  <div className="h-full rounded-full" style={{width:`${v}%`,background:`linear-gradient(90deg, ${s.chart[0]}, ${s.chart[1]||s.chart[0]})`}}/>
                </div>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-bars-grouped', type:'data', subtype:'bars', title:'Grouped bars + legend', w:2,
      Render:(s)=>{
        const groups=[['Q1',60,40],['Q2',80,55],['Q3',70,62],['Q4',95,72]];
        const max=100;
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className="flex items-center justify-between mb-4">
            <div className={head(s,'font-extrabold')}>Revenue vs target</div>
            <div className="flex gap-4 text-[11px]">
              <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded" style={{background:s.chart[0]}}/>Actual</span>
              <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded" style={{background:s.chart[1]||s.chart[0]}}/>Target</span>
            </div>
          </div>
          <div className="flex items-end justify-around gap-4 h-36">
            {groups.map(([l,a,t])=>(
              <div key={l} className="flex-1 flex flex-col items-center gap-1.5 h-full justify-end">
                <div className="flex items-end gap-1.5 w-full justify-center h-full">
                  <div className="w-1/3 rounded-t-md" style={{height:`${(a/max)*100}%`,background:s.chart[0]}}/>
                  <div className="w-1/3 rounded-t-md" style={{height:`${(t/max)*100}%`,background:s.chart[1]||s.chart[0],opacity:.85}}/>
                </div>
                <span className={cx('text-[11px]',s.cls.muted)}>{l}</span>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-bars-donut', type:'data', subtype:'bars', title:'Donut breakdown', w:1,
      Render:(s)=>{
        const items=[['Direct',46,s.chart[0]],['Referral',32,s.chart[1]||s.chart[0]],['Social',22,s.cls.accent]];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5 flex items-center gap-5')}>
          <div className="relative w-24 h-24 shrink-0" style={{color:s.cls.text}}>
            <Ring colors={s.chart} value={68} size={96}/>
            <div className="absolute inset-0 flex flex-col items-center justify-center">
              <div className={cx('text-lg font-extrabold',s.cls.text)}>68%</div>
              <div className={cx('text-[10px]',s.cls.muted)}>organic</div>
            </div>
          </div>
          <div className="flex-1 space-y-2">
            <div className={head(s,'font-extrabold text-sm mb-1')}>Channels</div>
            {items.map(([l,v,c])=>(
              <div key={l} className="flex items-center justify-between text-xs">
                <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded-full" style={{background:c}}/><span className={s.cls.sub}>{l}</span></span>
                <span className={cx('font-bold',s.cls.text)}>{v}%</span>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-bars-progress-list', type:'data', subtype:'bars', title:'Progress bars list', w:1,
      Render:(s)=>{
        const rows=[['Storage','38 / 50 GB',76],['Bandwidth','120 / 200 GB',60],['Seats','8 / 10',80],['API calls','4.2k / 10k',42]];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Usage this period</div>
          <div className="space-y-3">
            {rows.map(([l,sub,v])=>(
              <div key={l}>
                <div className="flex justify-between text-xs mb-1">
                  <span className={cx('font-medium',s.cls.text)}>{l}</span>
                  <span className={s.cls.muted}>{sub}</span>
                </div>
                <div className="h-1.5 rounded-full overflow-hidden" style={{background:div}}>
                  <div className="h-full rounded-full" style={{width:`${v}%`,background:v>75?s.cls.accent:s.chart[0]}}/>
                </div>
              </div>))}
          </div>
        </div>); } },

    { id:'eD-bars-stacked', type:'data', subtype:'bars', title:'Stacked bar single', w:1,
      Render:(s)=>{
        const segs=[['Completed',52,s.chart[0]],['In progress',28,s.chart[1]||s.chart[0]],['Blocked',20,s.cls.accent]];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[320px] p-5')}>
          <div className="flex items-center justify-between mb-3">
            <div className={head(s,'font-extrabold')}>Sprint progress</div>
            <span className={cx('text-xs',s.cls.muted)}>48 tasks</span>
          </div>
          <div className="flex h-5 rounded-full overflow-hidden">
            {segs.map(([l,v,c])=><div key={l} style={{width:`${v}%`,background:c}}/>)}
          </div>
          <div className="flex flex-col gap-2 mt-3">
            {segs.map(([l,v,c])=>(
              <div key={l} className="flex items-center justify-between text-xs">
                <span className="flex items-center gap-1.5"><span className="w-2.5 h-2.5 rounded" style={{background:c}}/><span className={s.cls.sub}>{l}</span></span>
                <span className={cx('font-bold',s.cls.text)}>{v}%</span>
              </div>))}
          </div>
        </div>); } },

    /* ===================== TABLE ===================== */
    { id:'eD-table-status', type:'data', subtype:'table', title:'Table with status pills', w:2,
      Render:(s)=>{
        const rows=[
          ['#3201','Acme Corp','$1,240','Paid'],
          ['#3200','Globex','$860','Pending'],
          ['#3199','Initech','$2,180','Paid'],
          ['#3198','Umbrella','$540','Overdue'],
          ['#3197','Hooli','$1,920','Paid'],
        ];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className="flex items-center justify-between mb-3">
            <div className={head(s,'font-extrabold')}>Recent invoices</div>
            <button className={cx(B,ghost(s),'px-3 py-1.5 text-xs')}>Export<Glyph d={G.arrow} size={13}/></button>
          </div>
          <div className={cx('grid grid-cols-[auto_1.6fr_1fr_auto] gap-x-4 text-[11px] uppercase tracking-wider pb-2',s.cls.muted)} style={{borderBottom:`1px solid ${div}`}}>
            <span>Invoice</span><span>Client</span><span>Amount</span><span className="text-right">Status</span>
          </div>
          {rows.map(([id,c,a,st])=>(
            <div key={id} className="grid grid-cols-[auto_1.6fr_1fr_auto] gap-x-4 items-center py-2.5 text-sm" style={{borderBottom:`1px solid ${div}`}}>
              <span className={cx('font-mono text-xs',s.cls.muted)}>{id}</span>
              <span className={cx('font-medium truncate',s.cls.text)}>{c}</span>
              <span className={cx('font-bold',s.cls.text)}>{a}</span>
              <span className={cx(s.cls.chip,'px-2 py-0.5 text-[10px] font-bold justify-self-end')}>{st}</span>
            </div>))}
        </div>); } },

    { id:'eD-table-avatars', type:'data', subtype:'table', title:'Table with avatars', w:2,
      Render:(s)=>{
        const rows=[
          ['Ava Mercer','Design Lead','online'],
          ['Leo Park','Frontend Eng','online'],
          ['Mira Costa','PM','away'],
          ['Theo Wood','Backend Eng','offline'],
        ];
        const dot={online:'#34d399',away:'#fbbf24',offline:'rgba(128,128,128,.5)'};
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[520px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Team</div>
          {rows.map(([n,r,st])=>(
            <div key={n} className="flex items-center gap-3 py-2.5" style={{borderBottom:`1px solid ${div}`}}>
              <span className="relative w-9 h-9 rounded-full flex items-center justify-center text-[11px] font-bold text-white shrink-0" style={{background:s.cls.accent}}>
                {n.split(' ').map(p=>p[0]).join('')}
                <span className="absolute -bottom-0.5 -right-0.5 w-3 h-3 rounded-full border-2" style={{background:dot[st],borderColor:s.cls.accent}}/>
              </span>
              <div className="flex-1 min-w-0">
                <div className={cx('text-sm font-medium truncate',s.cls.text)}>{n}</div>
                <div className={cx('text-[11px] truncate',s.cls.muted)}>{r}</div>
              </div>
              <span className={cx('text-[11px] capitalize',s.cls.sub)}>{st}</span>
            </div>))}
        </div>); } },

    { id:'eD-table-sortable', type:'data', subtype:'table', title:'Sortable table + checkboxes', w:2,
      Render:(s)=>{
        const data=[['Landing page','12,840','3.2%'],['Pricing','8,210','5.8%'],['Blog post','6,540','1.9%'],['Docs home','4,120','2.4%']];
        const [sel,setSel]=React.useState({0:true,2:true});
        const toggle=i=>setSel(p=>({...p,[i]:!p[i]}));
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className={head(s,'font-extrabold mb-3')}>Top pages</div>
          <div className={cx('grid grid-cols-[auto_1.6fr_1fr_auto] gap-x-4 items-center text-[11px] uppercase tracking-wider pb-2',s.cls.muted)} style={{borderBottom:`1px solid ${div}`}}>
            <span/>
            <span className="flex items-center gap-1 cursor-pointer">Page<Glyph d="M6 9l6 6 6-6" size={11}/></span>
            <span className="flex items-center gap-1 cursor-pointer">Views<Glyph d="M6 9l6 6 6-6" size={11}/></span>
            <span className="text-right">CVR</span>
          </div>
          {data.map(([p,v,c],i)=>(
            <div key={p} className="grid grid-cols-[auto_1.6fr_1fr_auto] gap-x-4 items-center py-2.5 text-sm" style={{borderBottom:`1px solid ${div}`}}>
              <button onClick={()=>toggle(i)} className="w-4 h-4 rounded flex items-center justify-center shrink-0" style={{background:sel[i]?s.cls.accent:'transparent',border:`1.5px solid ${sel[i]?s.cls.accent:'rgba(128,128,128,.5)'}`,color:'#fff'}}>
                {sel[i]&&<Glyph d={G.check} size={11}/>}
              </button>
              <span className={cx('font-medium truncate',s.cls.text)}>{p}</span>
              <span className={s.cls.sub}>{v}</span>
              <span className={cx('font-bold text-right',s.cls.text)} style={{color:s.cls.accent}}>{c}</span>
            </div>))}
        </div>); } },

    { id:'eD-table-compact-list', type:'data', subtype:'table', title:'Compact list table', w:1,
      Render:(s)=>{
        const rows=[['Deploy to prod','2m ago','ok'],['Run migrations','14m ago','ok'],['Backup db','1h ago','ok'],['Sync CDN','3h ago','warn']];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[340px] p-4')}>
          <div className={head(s,'font-extrabold text-sm mb-2')}>Activity log</div>
          {rows.map(([l,t,st])=>(
            <div key={l} className="flex items-center gap-2.5 py-2" style={{borderBottom:`1px solid ${div}`}}>
              <span className="w-1.5 h-1.5 rounded-full shrink-0" style={{background:st==='ok'?'#34d399':s.cls.accent}}/>
              <span className={cx('flex-1 text-sm truncate',s.cls.text)}>{l}</span>
              <span className={cx('text-[11px] shrink-0',s.cls.muted)}>{t}</span>
            </div>))}
        </div>); } },

    { id:'eD-table-pricing-usage', type:'data', subtype:'table', title:'Pricing / usage table', w:2,
      Render:(s)=>{
        const rows=[
          ['Compute','$0.08 / hr','1,240 hrs','$99.20'],
          ['Storage','$0.02 / GB','850 GB','$17.00'],
          ['Bandwidth','$0.05 / GB','420 GB','$21.00'],
          ['Requests','$0.50 / 1M','12.4M','$6.20'],
        ];
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[560px] p-5')}>
          <div className="flex items-center justify-between mb-3">
            <div className={head(s,'font-extrabold')}>Usage breakdown</div>
            <span className={cx(s.cls.chip,'px-2 py-0.5 text-[11px] font-bold')}>June 2026</span>
          </div>
          <div className={cx('grid grid-cols-[1.4fr_1fr_1fr_auto] gap-x-4 text-[11px] uppercase tracking-wider pb-2',s.cls.muted)} style={{borderBottom:`1px solid ${div}`}}>
            <span>Resource</span><span>Rate</span><span>Used</span><span className="text-right">Cost</span>
          </div>
          {rows.map(([r,rate,u,c])=>(
            <div key={r} className="grid grid-cols-[1.4fr_1fr_1fr_auto] gap-x-4 items-center py-2.5 text-sm" style={{borderBottom:`1px solid ${div}`}}>
              <span className={cx('font-medium',s.cls.text)}>{r}</span>
              <span className={cx('text-xs',s.cls.muted)}>{rate}</span>
              <span className={s.cls.sub}>{u}</span>
              <span className={cx('font-bold text-right',s.cls.text)}>{c}</span>
            </div>))}
          <div className="grid grid-cols-[1.4fr_1fr_1fr_auto] gap-x-4 items-center pt-3 text-sm">
            <span className={cx('font-bold col-span-3',s.cls.text)}>Total due</span>
            <span className="font-extrabold text-right text-base" style={{color:s.cls.accent}}>$143.40</span>
          </div>
        </div>); } },

    { id:'eD-table-leaderboard', type:'data', subtype:'table', title:'Leaderboard table', w:2,
      Render:(s)=>{
        const rows=[
          [1,'Ava Mercer','4,920','+12'],
          [2,'Leo Park','4,310','+8'],
          [3,'Mira Costa','3,880','-2'],
          [4,'Theo Wood','3,540','+5'],
          [5,'Sora Lind','3,210','+1'],
        ];
        const medal={1:'#facc15',2:'#cbd5e1',3:'#d6924b'};
        return (
        <div className={cx(s.cls.surface,'w-full max-w-[540px] p-5')}>
          <div className="flex items-center justify-between mb-3">
            <div className={head(s,'font-extrabold')}>Leaderboard</div>
            <span className={cx('text-xs',s.cls.muted)}>this month</span>
          </div>
          {rows.map(([rk,n,pts,d])=>(
            <div key={rk} className="flex items-center gap-3 py-2.5" style={{borderBottom:`1px solid ${div}`}}>
              <span className="w-7 h-7 rounded-full flex items-center justify-center text-[12px] font-extrabold shrink-0" style={medal[rk]?{background:medal[rk],color:'#1a1a1a'}:{background:div,color:s.cls.accent}}>{rk}</span>
              <span className="w-8 h-8 rounded-full flex items-center justify-center text-[10px] font-bold text-white shrink-0" style={{background:s.cls.accent}}>{n.split(' ').map(p=>p[0]).join('')}</span>
              <span className={cx('flex-1 text-sm font-medium truncate',s.cls.text)}>{n}</span>
              <span className={cx('text-sm font-bold',s.cls.text)}>{pts}</span>
              <span className="text-[11px] font-bold w-9 text-right" style={{color:d[0]==='-'?'#ef4444':'#34d399'}}>{d}</span>
            </div>))}
        </div>); } },
  ];
  blocks.forEach(b=>window.BLOCKS.push(b));
})();
