/* global React, I, Button, Reveal, MacWindow, CountUp, SAMPLE_NOTE, ANALYSIS, PIPELINE */
const { useState:useAS, useEffect:useAE, useRef:useAR } = React;

/* ============ NEW NOTE ============ */
const INFO_CARDS = [
  { ic:"spark",  t:"Best input for this workflow", d:"Use an office/outpatient visit note that includes the assessed problems, reviewed data, and management plan." },
  { ic:"doc",    t:"Supported files", d:"Upload .txt, .pdf, or .docx records. Paste-first is still the fastest path for testing." },
  { ic:"shield", t:"Current guardrails", d:"Input validation, note-size caps, upload limits, and request rate limiting keep the workflow stable and reviewable." },
];
function NewNote({ go, runAnalysis }){
  const [note,setNote]=useAS("");
  const [file,setFile]=useAS("");
  const [status,setStatus]=useAS("Established");
  const [enc,setEnc]=useAS("Office / Outpatient");
  const [spec,setSpec]=useAS("Internal Medicine");
  const [icd,setIcd]=useAS(true);
  const fileRef=useAR(null);
  const canRun = note.trim().length > 30;
  const onFile=(e)=>{ const f=e.target.files&&e.target.files[0]; if(f){ setFile(f.name); setNote(SAMPLE_NOTE); } };
  return React.createElement("section",{ className:"section", style:{ paddingTop:150 } },
    React.createElement("div",{ className:"wrap", style:{ maxWidth:960 } },
      React.createElement(Reveal,null, React.createElement("p",{ className:"eyebrow" }, "New encounter")),
      React.createElement(Reveal,{ delay:60 }, React.createElement("h2",{ className:"h-sec", style:{ maxWidth:"14ch", fontSize:"clamp(34px,4.4vw,54px)" } }, "Paste a note and generate a coding assessment.")),
      React.createElement(Reveal,{ delay:120 }, React.createElement("p",{ className:"sub-sec" }, "Submit an office or outpatient note to receive structured MDM scoring, CPT guidance, ICD suggestions, and an evidence-backed audit trail.")),

      React.createElement("div",{ className:"feat-grid", style:{ marginTop:44, gridTemplateColumns:"repeat(3,1fr)" } },
        INFO_CARDS.map((c,i)=>(
          React.createElement(Reveal,{ key:c.t, delay:i*80 },
            React.createElement("div",{ className:"feat-card", style:{ padding:22 } },
              React.createElement("div",{ className:"feat-ic", style:{ width:38, height:38, borderRadius:11, marginBottom:14 } }, React.createElement(I[c.ic],{ size:18 })),
              React.createElement("h3",{ style:{ fontSize:16 } }, c.t),
              React.createElement("p",{ style:{ fontSize:13.5 } }, c.d)))))),

      React.createElement(Reveal,{ delay:120, scale:true },
        React.createElement("div",{ className:"card", style:{ marginTop:24, padding:36 } },
          React.createElement("label",{ className:"flabel" }, "Upload record"),
          React.createElement("div",{ style:{ display:"flex", gap:0, alignItems:"center", border:"1px solid var(--line-2)", borderRadius:999, padding:"5px 5px 5px 18px", background:"#fff" } },
            React.createElement("span",{ style:{ display:"flex", alignItems:"center", gap:10, flex:1, color: file?"var(--ink)":"var(--muted)", fontSize:15 } },
              React.createElement(I.upload,{ size:16 }), file ? file : "Choose file — No file chosen"),
            React.createElement("input",{ ref:fileRef, type:"file", accept:".txt,.pdf,.docx", style:{ display:"none" }, onChange:onFile }),
            React.createElement("button",{ className:"btn btn-ghost", style:{ padding:"10px 18px" }, onClick:()=>fileRef.current&&fileRef.current.click() }, "Browse")),
          React.createElement("p",{ className:"fhint" }, "Upload the medical record in .txt, .pdf, or .docx format if you prefer. We'll extract the note text into the editor below so you can review it before analysis."),

          React.createElement("div",{ style:{ display:"flex", justifyContent:"space-between", alignItems:"center", margin:"24px 0 9px" } },
            React.createElement("label",{ className:"flabel", style:{ margin:0 } }, "Medical note"),
            React.createElement("button",{ className:"btn", style:{ padding:"6px 12px", fontSize:13, background:"var(--purple-soft)", color:"var(--purple-ink)" }, icon:false, onClick:()=>setNote(SAMPLE_NOTE) },
              React.createElement("span",{ className:"ic", style:{ background:"rgba(106,92,208,.16)" } }, React.createElement(I.spark,{ size:11 })),
              React.createElement("span",null,"Use sample note"))),
          React.createElement("textarea",{ className:"field", rows:9, placeholder:"Paste the office/outpatient medical note here…", value:note, onChange:e=>setNote(e.target.value) }),
          React.createElement("p",{ className:"fhint" }, "Tip: include the follow-up reason, diagnoses assessed, reviewed labs or records, and management decisions."),

          React.createElement("div",{ style:{ display:"grid", gridTemplateColumns:"1fr 1fr", gap:20, marginTop:24 } },
            React.createElement("div",null,
              React.createElement("label",{ className:"flabel" }, "Patient status"),
              React.createElement("select",{ className:"field", value:status, onChange:e=>setStatus(e.target.value) },
                ["Established","New"].map(o=>React.createElement("option",{ key:o },o)))),
            React.createElement("div",null,
              React.createElement("label",{ className:"flabel" }, "Encounter type"),
              React.createElement("select",{ className:"field", value:enc, onChange:e=>setEnc(e.target.value) },
                ["Office / Outpatient","Telehealth","Consultation"].map(o=>React.createElement("option",{ key:o },o))))),
          React.createElement("div",{ style:{ display:"grid", gridTemplateColumns:"1fr 1fr", gap:20, marginTop:18, alignItems:"end" } },
            React.createElement("div",null,
              React.createElement("label",{ className:"flabel" }, "Specialty"),
              React.createElement("select",{ className:"field", value:spec, onChange:e=>setSpec(e.target.value) },
                ["Internal Medicine","Family Medicine","Endocrinology","Cardiology"].map(o=>React.createElement("option",{ key:o },o)))),
            React.createElement("label",{ style:{ display:"flex", alignItems:"center", gap:10, fontSize:14.5, color:"var(--ink-2)", cursor:"pointer", paddingBottom:14 } },
              React.createElement("span",{ onClick:()=>setIcd(!icd), className:"toggle "+(icd?"on":""),
                style:{ width:40, height:23, borderRadius:999, background:icd?"var(--purple)":"#d6d3e6", position:"relative", transition:".25s", flex:"none" } },
                React.createElement("span",{ style:{ position:"absolute", top:3, left:icd?20:3, width:17, height:17, borderRadius:"50%", background:"#fff", transition:".25s" } })),
              "Generate ICD suggestions")),

          React.createElement("div",{ style:{ display:"flex", gap:18, alignItems:"center", marginTop:28, flexWrap:"wrap" } },
            React.createElement(Button,{ variant:canRun?"grad":"ghost", onClick:()=>canRun&&runAnalysis(),
              style:canRun?undefined:{ opacity:.55, cursor:"not-allowed" } }, "Analyze note"),
            React.createElement("p",{ style:{ fontSize:13, color:"var(--muted)", margin:0, maxWidth:"42ch", lineHeight:1.5 } },
              "Results are designed to support coding review and should be verified against official guidelines before billing use."))
        ))
    )
  );
}

/* ============ ANALYZING (processing animation) ============ */
function Analyzing({ onDone }){
  const reduce = matchMedia("(prefers-reduced-motion: reduce)").matches;
  const [step,setStep]=useAS(0);
  useAE(()=>{
    if(reduce){ const t=setTimeout(onDone,400); return ()=>clearTimeout(t); }
    let i=0;
    const id=setInterval(()=>{ i++; setStep(i); if(i>=PIPELINE.length){ clearInterval(id); setTimeout(onDone,650); } },560);
    return ()=>clearInterval(id);
  },[]);
  const pct = Math.min(100, Math.round(step/PIPELINE.length*100));
  return React.createElement("section",{ className:"section", style:{ paddingTop:170, minHeight:"82vh", display:"grid", placeItems:"center" } },
    React.createElement("div",{ className:"wrap", style:{ maxWidth:620 } },
      React.createElement("p",{ className:"eyebrow" }, "Running assessment"),
      React.createElement("h2",{ className:"h-sec", style:{ fontSize:"clamp(28px,3.4vw,40px)", marginBottom:30 } }, "Analyzing the encounter"),
      React.createElement(MacWindow,{ title:"coding.assessment — running",
        barRight: React.createElement("span",{ style:{ fontSize:12, color:"#9a9eb1", fontWeight:600, display:"inline-flex", gap:6, alignItems:"center" } },
          React.createElement("span",{ className:"hd-livedot" }), pct+"%") },
        React.createElement("div",{ style:{ padding:"22px 26px 26px" } },
          React.createElement("div",{ style:{ height:6, borderRadius:999, background:"#eceaf6", overflow:"hidden", marginBottom:22 } },
            React.createElement("div",{ style:{ height:"100%", width:`${pct}%`, background:"linear-gradient(90deg,#8b7ee6,#e08a63)", transition:"width .5s cubic-bezier(.3,.8,.3,1)" } })),
          React.createElement("div",{ style:{ display:"flex", flexDirection:"column", gap:4 } },
            PIPELINE.map((p,i)=>{
              const done=i<step, active=i===step;
              return React.createElement("div",{ key:p.k, style:{ display:"flex", alignItems:"center", gap:13, padding:"11px 13px", borderRadius:12,
                background: active?"var(--purple-soft)":"transparent", transition:".3s", opacity: i<=step?1:.4 } },
                React.createElement("span",{ style:{ width:30, height:30, borderRadius:9, display:"grid", placeItems:"center", flex:"none",
                  background: done?"var(--green-soft)":active?"#fff":"#f0eff7", color: done?"var(--green)":active?"var(--purple-ink)":"var(--muted-2)",
                  border: active?"1px solid #ddd6f4":"none", transition:".3s" } },
                  done ? React.createElement(I.check,{ size:15 })
                    : active ? React.createElement("span",{ style:{ width:14, height:14, border:"2px solid #c9c0ee", borderTopColor:"var(--purple)", borderRadius:"50%", animation:"spin .7s linear infinite" } })
                    : React.createElement(I[p.icon],{ size:15 })),
                React.createElement("span",{ style:{ fontSize:14.5, fontWeight: active?600:500, color: done||active?"var(--ink)":"var(--muted)" } }, p.label),
                done && React.createElement("span",{ style:{ marginLeft:"auto", fontSize:12, color:"var(--green)", fontWeight:600 } }, "done"));
            }))
        ))
    )
  );
}

/* ============ ANALYSIS RESULT ============ */
function MdmRow({ name, level, summary, evidence, openDefault }){
  const [open,setOpen]=useAS(!!openDefault);
  const tone = level==="moderate"?"purple":level==="low"?"blue":level==="high"?"green":"purple";
  const cap = level.charAt(0).toUpperCase()+level.slice(1);
  return React.createElement("div",{ style:{ borderTop:"1px solid var(--line)", paddingTop:16, marginTop:16 } },
    React.createElement("div",{ style:{ display:"flex", alignItems:"center", justifyContent:"space-between", cursor:"pointer" }, onClick:()=>setOpen(!open) },
      React.createElement("span",{ style:{ fontSize:15.5, fontWeight:600 } }, name),
      React.createElement("span",{ style:{ display:"flex", alignItems:"center", gap:8 } },
        React.createElement("span",{ className:`badge ${tone}` }, cap),
        React.createElement("span",{ style:{ color:"var(--muted-2)", transform:open?"rotate(180deg)":"none", transition:".3s", display:"inline-flex" } }, React.createElement(I.chevron,{ size:16 })))),
    React.createElement("div",{ style:{ maxHeight: open?600:0, overflow:"hidden", transition:"max-height .4s cubic-bezier(.3,.8,.3,1)" } },
      React.createElement("p",{ style:{ fontSize:14, color:"var(--muted)", lineHeight:1.55, margin:"10px 0 12px" } }, summary),
      evidence.map((ev,i)=>(
        React.createElement("div",{ key:i, style:{ display:"flex", gap:10, background:"var(--card-2)", border:"1px solid var(--line)", borderRadius:12, padding:"12px 14px", marginBottom:8 } },
          React.createElement("span",{ style:{ color:"#cfc7f2", flex:"none" } }, React.createElement(I.quote,{ size:16 })),
          React.createElement("div",null,
            React.createElement("div",{ style:{ fontSize:13.5, fontStyle:"italic", color:"var(--ink-2)" } }, '"'+ev.quote+'"'),
            React.createElement("div",{ style:{ fontSize:12.5, color:"var(--muted)", marginTop:3 } }, ev.reason)))
      )))
  );
}
function Panel({ icon, title, children, style }){
  return React.createElement("div",{ className:"card", style:{ padding:26, ...style } },
    React.createElement("div",{ style:{ display:"flex", alignItems:"center", gap:10, marginBottom:18 } },
      React.createElement("span",{ style:{ width:30, height:30, borderRadius:9, background:"var(--purple-soft)", color:"var(--purple-ink)", display:"grid", placeItems:"center" } }, React.createElement(I[icon],{ size:16 })),
      React.createElement("span",{ style:{ fontSize:12, fontWeight:700, letterSpacing:".1em", textTransform:"uppercase", color:"var(--muted-2)" } }, title)),
    children
  );
}
function SummaryRow({ k, v, sub }){
  return React.createElement("div",{ style:{ display:"flex", justifyContent:"space-between", gap:20, padding:"13px 0", borderTop:"1px solid var(--line)", fontSize:14.5 } },
    React.createElement("span",{ style:{ color:"var(--muted)" } }, k),
    React.createElement("span",{ style:{ fontWeight:600, textAlign:"right", maxWidth:"60%", color: sub?"var(--muted)":"var(--ink)" } }, v));
}
function Analysis({ go }){
  const A=ANALYSIS, m=A.mdm_coding_rationale;
  return React.createElement("section",{ className:"section", style:{ paddingTop:150 } },
    React.createElement("div",{ className:"wrap" },
      React.createElement(Reveal,null,
        React.createElement("div",{ style:{ textAlign:"center" } },
          React.createElement("span",{ className:"badge green", style:{ padding:"7px 14px" } }, React.createElement(I.check,{ size:14 }), "Analysis complete · High confidence"))),
      React.createElement(Reveal,{ delay:60 }, React.createElement("p",{ className:"eyebrow", style:{ marginTop:16 } }, "Analysis result")),
      React.createElement(Reveal,{ delay:100 }, React.createElement("h2",{ className:"h-sec", style:{ fontSize:"clamp(32px,4.2vw,52px)" } }, "CPT 99213 recommended, Moderate MDM")),
      React.createElement(Reveal,{ delay:160 }, React.createElement("p",{ className:"sub-sec" }, A.recommended_cpt.summary)),
      React.createElement(Reveal,{ delay:220 },
        React.createElement("div",{ style:{ display:"flex", gap:12, justifyContent:"center", marginTop:26 } },
          React.createElement(Button,{ variant:"grad", onClick:()=>go("raw") }, "View raw response"),
          React.createElement(Button,{ variant:"ghost", icon:false, onClick:()=>go("new") }, "Analyze another note"))),

      // KPI window
      React.createElement(Reveal,{ delay:160, scale:true, style:{ marginTop:42 } },
        React.createElement(MacWindow,{ title:"coding.assessment" },
          React.createElement("div",{ style:{ display:"grid", gridTemplateColumns:"repeat(4,1fr)", gap:14, padding:22 } },
            React.createElement("div",{ className:"card", style:{ padding:18, boxShadow:"none" } },
              React.createElement("div",{ style:{ fontSize:12.5, color:"var(--muted)" } }, "Recommended CPT"),
              React.createElement("div",{ style:{ fontSize:34, fontWeight:600, letterSpacing:"-.02em", margin:"4px 0 6px" } }, A.recommended_cpt.code),
              React.createElement("div",{ style:{ fontSize:12, color:"var(--muted)", lineHeight:1.4 } }, "Established Patient Office or Other Outpatient Visit, Moderate MDM")),
            React.createElement("div",{ className:"card", style:{ padding:18, boxShadow:"none" } },
              React.createElement("div",{ style:{ fontSize:12.5, color:"var(--muted)" } }, "MDM Level"),
              React.createElement("div",{ style:{ fontSize:34, fontWeight:600, letterSpacing:"-.02em", margin:"4px 0 8px" } }, "Moderate"),
              React.createElement("div",{ style:{ display:"flex", alignItems:"flex-end", gap:4, height:22 } },
                [9,16,22].map((h,i)=>React.createElement("span",{ key:i, style:{ width:8, height:h, borderRadius:2, background:i===2?"var(--purple)":"#cfc7f2", animation:`barGrow .8s ease-out ${i*120}ms both` } })))),
            React.createElement("div",{ className:"card", style:{ padding:18, boxShadow:"none" } },
              React.createElement("div",{ style:{ fontSize:12.5, color:"var(--muted)" } }, "Confidence"),
              React.createElement("div",{ style:{ fontSize:34, fontWeight:600, letterSpacing:"-.02em", margin:"4px 0 6px" } }, "High"),
              React.createElement("div",{ style:{ fontSize:12, color:"var(--muted)" } }, "Evidence supports each MDM element")),
            React.createElement("div",{ className:"card", style:{ padding:18, boxShadow:"none" } },
              React.createElement("div",{ style:{ fontSize:12.5, color:"var(--muted)" } }, "ICD Suggestions"),
              React.createElement("div",{ style:{ fontSize:34, fontWeight:600, letterSpacing:"-.02em", margin:"4px 0 6px" } }, React.createElement(CountUp,{ to:3 })),
              React.createElement("div",{ style:{ fontSize:12, color:"var(--muted)" } }, "2 high · 1 moderate confidence")))
        )),

      // 2x2 detail grid
      React.createElement("div",{ className:"analysis-grid", style:{ marginTop:18 } },
        React.createElement(Reveal,null,
          React.createElement(Panel,{ icon:"doc", title:"Encounter summary" },
            React.createElement("div",{ style:{ marginTop:-13 } },
              React.createElement(SummaryRow,{ k:"Status", v:"Success" }),
              React.createElement(SummaryRow,{ k:"Patient status applied", v:"Established" }),
              React.createElement(SummaryRow,{ k:"Encounter type", v:"Office / Outpatient" }),
              React.createElement(SummaryRow,{ k:"Recommended CPT", v:"99213" }),
              React.createElement(SummaryRow,{ k:"Alternative CPT", v:A.alternative_cpt, sub:true })))),
        React.createElement(Reveal,{ delay:90 },
          React.createElement(Panel,{ icon:"activity", title:"MDM breakdown" },
            React.createElement("div",{ style:{ marginTop:-4 } },
              React.createElement(MdmRow,{ name:"Problems", level:m.problems.level, summary:m.problems.summary, evidence:m.problems.evidence, openDefault:true }),
              React.createElement(MdmRow,{ name:"Data", level:m.data.level, summary:m.data.summary, evidence:m.data.evidence }),
              React.createElement(MdmRow,{ name:"Risk", level:m.risk.level, summary:m.risk.summary, evidence:m.risk.evidence }),
              React.createElement("div",{ style:{ display:"flex", justifyContent:"space-between", alignItems:"center", borderTop:"1px solid var(--line)", paddingTop:16, marginTop:16 } },
                React.createElement("span",{ style:{ fontSize:15.5, fontWeight:600 } }, "Final"),
                React.createElement("span",{ className:"badge purple" }, "Moderate"))))),
        React.createElement(Reveal,null,
          React.createElement(Panel,{ icon:"doc", title:"Guidance summary" },
            React.createElement("div",{ style:{ background:"var(--green-soft)", border:"1px solid #cfeede", borderRadius:14, padding:"14px 16px", fontSize:14, lineHeight:1.55, color:"#1f7a55" } }, A.guidance_summary),
            React.createElement("div",{ style:{ fontSize:11, fontWeight:700, letterSpacing:".1em", textTransform:"uppercase", color:"var(--muted-2)", margin:"20px 0 10px" } }, "Strengths"),
            A.strengths.map((s,i)=>React.createElement("div",{ key:i, style:{ display:"flex", gap:9, fontSize:14, color:"var(--ink-2)", marginBottom:8, lineHeight:1.5 } },
              React.createElement("span",{ style:{ color:"var(--purple)", marginTop:2 } }, "•"), s)),
            React.createElement("div",{ style:{ fontSize:11, fontWeight:700, letterSpacing:".1em", textTransform:"uppercase", color:"var(--muted-2)", margin:"18px 0 10px" } }, "Suggested additions"),
            A.suggested_missing_information.map((s,i)=>React.createElement("div",{ key:i, style:{ display:"flex", gap:9, fontSize:14, color:"var(--ink-2)", marginBottom:8, lineHeight:1.5 } },
              React.createElement("span",{ style:{ color:"var(--purple)", marginTop:2 } }, "•"), s)))),
        React.createElement(Reveal,{ delay:90 },
          React.createElement(Panel,{ icon:"workflow", title:"ICD suggestions" },
            A.icd_suggestions.map((c,i)=>(
              React.createElement("div",{ key:c.code, style:{ display:"flex", alignItems:"center", justifyContent:"space-between", gap:12, border:"1px solid var(--line)", borderRadius:14, padding:"14px 16px", marginBottom:10 } },
                React.createElement("div",null,
                  React.createElement("div",{ style:{ fontSize:16, fontWeight:600, fontFamily:"var(--mono)" } }, c.code),
                  React.createElement("div",{ style:{ fontSize:13, color:"var(--muted)", marginTop:2 } }, c.desc)),
                React.createElement("span",{ className:`badge ${c.confidence==="high"?"green":"purple"}` }, c.confidence==="high"?"High":"Moderate"))))))
      )
    )
  );
}

/* ============ RAW RESPONSE ============ */
function hl(json){
  json = json.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');
  return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, (m)=>{
    let cls='tok-num';
    if(/^"/.test(m)){ cls = /:\s*$/.test(m) ? 'tok-key' : 'tok-str'; }
    else if(/true|false/.test(m)) cls='tok-bool';
    else if(/null/.test(m)) cls='tok-null';
    return `<span class="${cls}">${m}</span>`;
  });
}
function Raw({ go }){
  const [copied,setCopied]=useAS(false);
  const json = JSON.stringify(ANALYSIS, null, 2);
  const copy=()=>{ try{ navigator.clipboard.writeText(json);}catch(e){} setCopied(true); setTimeout(()=>setCopied(false),1800); };
  return React.createElement("section",{ className:"section", style:{ paddingTop:150 } },
    React.createElement("div",{ className:"wrap", style:{ maxWidth:1000 } },
      React.createElement(Reveal,null, React.createElement("p",{ className:"eyebrow" }, "Raw AI response")),
      React.createElement(Reveal,{ delay:60 }, React.createElement("h2",{ className:"h-sec", style:{ fontSize:"clamp(32px,4vw,50px)" } }, "Model response, inspected end to end")),
      React.createElement(Reveal,{ delay:140 },
        React.createElement("div",{ style:{ display:"flex", gap:12, justifyContent:"center", marginTop:24 } },
          React.createElement(Button,{ variant:"ghost", icon:false, onClick:()=>go("analysis") }, "Back to analysis"),
          React.createElement(Button,{ variant:"grad", icon:false, onClick:copy },
            React.createElement("span",{ className:"ic" }, React.createElement(I.copy,{ size:13 })),
            React.createElement("span",null, copied?"Copied!":"Copy JSON")))),
      React.createElement(Reveal,{ delay:120 },
        React.createElement("div",{ className:"card", style:{ marginTop:34, padding:"20px 24px", display:"flex", gap:13, alignItems:"flex-start" } },
          React.createElement("span",{ style:{ color:"var(--amber)", flex:"none", marginTop:1 } }, React.createElement(I.alert,{ size:20 })),
          React.createElement("div",null,
            React.createElement("div",{ style:{ fontWeight:600, fontSize:15.5, marginBottom:4 } }, "Demo output disclaimer"),
            React.createElement("p",{ style:{ fontSize:14, color:"var(--muted)", margin:0, lineHeight:1.55 } }, "This structured response is guidance-oriented output for demo purposes only and is not a substitute for billing review. Verify against official coding guidelines before use.")))),
      React.createElement(Reveal,{ delay:120, scale:true, style:{ marginTop:18 } },
        React.createElement(MacWindow,{ title:"response.json", dark:true },
          React.createElement("pre",{ className:"code", style:{ margin:0, padding:"22px 26px", overflowX:"auto", color:"#aeb3da" },
            dangerouslySetInnerHTML:{ __html: hl(json) } })))
    )
  );
}

Object.assign(window, { NewNote, Analyzing, Analysis, Raw });
