@punica/editor-shell-classic 1.0.18 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.bundle.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{emitShellEvent as e,isHeadlessScope as t,Profile as n,MODULE_NAMES as r,ModuleLifecycleState as i,COMMAND_IDS as s,parseKeyChord as a,registerShell as o}from"@punica/editor";const l="shell-classic-sidebar-dock-style",c="primarySidebar-resizer",u="punica-editor",d="--primary-sidebar-width",h="sidebar.width",p=300,m=`\n/* \`:not(.layout-welcome)\` keeps the welcome profile's full-bleed single-column\n grid intact: it is defined with the same specificity in the host stylesheet,\n so this injected rule would otherwise win on order alone and re-introduce a\n sidebar track the welcome layout has no element for. */\n#${u}[data-sidebar-mode='docked']:not(.layout-welcome) {\n grid-template-columns: 48px var(${d}, 300px) 1fr;\n grid-template-areas:\n 'activityBar primarySidebar mainContent'\n 'statusBar statusBar statusBar';\n}\n#${u}[data-sidebar-mode='docked'][data-sidebar-collapsed='true']:not(.layout-welcome) {\n grid-template-columns: 48px 0 1fr;\n}\n#${u}[data-sidebar-mode='docked'] #primarySidebar {\n grid-area: primarySidebar;\n /* Containing block for the resize handle. */\n position: relative;\n top: auto;\n bottom: auto;\n left: auto;\n width: auto;\n min-width: 0;\n height: 100%;\n transform: none;\n transition: none;\n /* In flow now, but it must still outrank the contextual drawer: that drawer\n slides in from off-screen left and has to look like it comes out from\n UNDER the sidebar, not sweep across the top of it. Same rank the host\n gives the sidebar in drawer mode; menus and popovers live at\n --zindex-popover, far above this. */\n z-index: calc(var(--zindex-drawer, 1200) + 1);\n}\n/* \`:not(:empty)\` is required: \`#contentSidebar:empty\` in the host stylesheet is\n the only thing that closes the contextual drawer, and this two-id selector\n would otherwise outrank it and pin the drawer open forever. */\n#${u}[data-sidebar-mode='docked'] #contentSidebar:not(:empty) {\n transform: translateX(calc(48px + var(${d}, 300px)));\n}\n#${u}[data-sidebar-mode='docked'][data-sidebar-collapsed='true'] #contentSidebar:not(:empty) {\n transform: translateX(48px);\n}\n/* The contextual drawer's offset follows the sidebar width, and the host gives\n it a 225ms transform transition — which would make it trail behind the\n pointer during a drag. Pin it to the sidebar while resizing. */\n#${u}[data-sidebar-resizing='true'] #contentSidebar {\n transition: none;\n}\n#${c} {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n width: var(--split-gutter-hitbox, 6px);\n cursor: col-resize;\n background: transparent;\n z-index: 1;\n}\n#${c}:hover,\n#${c}:focus-visible {\n background: var(--split-gutter-hover, var(--highlight));\n outline: none;\n}\n`;function f(){return globalThis.punica?.extensions?.settings?.manager??null}const g=new class{#e=!1;#t="drawer";#n=!1;#r=p;#i=null;#s=null;#a=null;#o=!1;init(){this.#e||(this.#e=!0,this.#l(),this.#c(),this.#u(),this.#d())}getMode(){return this.#t}isVisible(){return this.#n}setVisible(e){this.#n=e,this.#e?this.#d():this.init()}setDismissHandler(e){this.#a=e}getWidth(){return this.#h(this.#r)}#l(){if(document.getElementById(l))return;const e=document.createElement("style");e.id=l,e.textContent=m,document.head.appendChild(e)}#p(){try{const e=globalThis.punica?.shell?.Layout?.manager?.getSlot?.("primarySidebar");return e?.content??null}catch{return null}}#m(){const e=this.#p();return e?.parentElement??document.getElementById(u)}#f(){try{const e=globalThis.punica?.shell?.Layout?.manager?.getSlot?.("activityBar"),t=e?.content?.getBoundingClientRect?.().width;if("number"==typeof t&&t>0)return t}catch{}return 48}#d(){const e=this.#p(),t=this.#m();e&&t&&(t.dataset.sidebarMode=this.#t,t.dataset.sidebarCollapsed=this.#n?"false":"true",e.classList.toggle("primarySidebar-hidden",!this.#n),this.#g(t),"docked"===this.#t?(this.#b(),this.#y(e)):(this.#v(),this.#n?this.#w(t):this.#b()))}#g(e){const t=e??this.#m();t&&t.style.setProperty(d,`${this.#h(this.#r)}px`)}#h(e){const t="undefined"!=typeof window?window.innerWidth:0,n=t>0?Math.min(720,Math.max(180,.6*t)):720,r=Math.min(Math.max(e,180),n);return Math.round(r)}#c(){try{const e=f()?.get?.("system",h),t="string"==typeof e?Number(e):e;"number"==typeof t&&Number.isFinite(t)&&t>0&&(this.#r=t)}catch{}}#E(){const e=f();e?.set&&Promise.resolve(e.set("system",h,this.#h(this.#r),"global")).catch(e=>{console.warn("[SidebarDock] failed to persist sidebar width",e)})}#_(e,t){this.#r=this.#h(e),this.#g(null),t&&this.#E()}#u(){const e="undefined"!=typeof window&&"function"==typeof window.matchMedia?window.matchMedia("(min-width: 1024px)"):null;if(this.#t=e?.matches?"docked":"drawer","undefined"==typeof window)return;const t=e=>{const t=e.matches?"docked":"drawer";t!==this.#t&&(this.#t=t,this.#d())};e?.addEventListener?e.addEventListener("change",e=>t(e)):"function"==typeof e?.addListener&&e.addListener(t),window.addEventListener("resize",()=>this.#g(null))}#w(e){if(!this.#i){const e=document.createElement("div");e.id="primarySidebar-scrim",e.setAttribute("style","position:absolute;inset:0;background:transparent;z-index:calc(var(--zindex-drawer, 1200) - 1);"),e.addEventListener("pointerdown",()=>this.#a?.()),this.#i=e}this.#i.parentElement!==e&&e.appendChild(this.#i),this.#i.style.display="block"}#b(){this.#i&&(this.#i.style.display="none")}#y(e){if(!this.#s){const e=document.createElement("div");e.id=c,e.setAttribute("role","separator"),e.setAttribute("aria-orientation","vertical"),e.setAttribute("aria-label","Resize primary side bar"),e.tabIndex=0,e.addEventListener("pointerdown",e=>this.#k(e)),e.addEventListener("keydown",e=>this.#x(e)),e.addEventListener("dblclick",()=>this.#_(p,!0)),this.#s=e}this.#s.parentElement!==e&&e.appendChild(this.#s),this.#s.style.display=this.#n?"block":"none"}#v(){const e=this.#s?.parentElement;e&&this.#s&&e.removeChild(this.#s)}#k(e){if("docked"!==this.#t||!this.#n||this.#o)return;e.preventDefault(),this.#o=!0;const t=this.#f(),n=this.#m();n&&(n.dataset.sidebarResizing="true");try{this.#s?.setPointerCapture?.(e.pointerId)}catch{}const r=e=>{this.#_(e.clientX-t,!1)},i=()=>{window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",i),window.removeEventListener("pointercancel",i),document.documentElement.style.removeProperty("user-select"),n&&delete n.dataset.sidebarResizing,this.#o=!1,this.#E()};window.addEventListener("pointermove",r),window.addEventListener("pointerup",i),window.addEventListener("pointercancel",i),document.documentElement.style.setProperty("user-select","none")}#x(e){if("ArrowLeft"!==e.key&&"ArrowRight"!==e.key)return;e.preventDefault();const t=e.shiftKey?64:16,n="ArrowLeft"===e.key?-t:t;this.#_(this.#h(this.#r)+n,!0)}};const b={manager:new class{#A=new Map;#C=new Map;#D=null;#S=null;#N;#T;#L;#I=new Map;#F=0;#z(e,t,n){this.#I.has(n)||this.#I.set(n,this.#F++);const r=this.#I.get(n),i=e.querySelector("#"+n);i&&e.removeChild(i);let s=null;for(const t of Array.from(e.children)){const e=this.#I.get(t.id);if(void 0!==e&&e>r){s=t;break}}e.insertBefore(t,s)}#M(){const e=punica.shell.Layout.manager,t=e.getSlot("activityBar")??e.getSlot("primarySidebar"),n=t?.content;if(this.#N=document.createElement("div"),this.#T=document.createElement("div"),this.#L=document.createElement("div"),this.#N.setAttribute("style","display: flex; flex-direction: column; height: 100%;"),this.#T.classList.add("activityBar-primary-scroll"),this.#T.setAttribute("style","display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden;"),this.#L.setAttribute("style","display: flex; flex-direction: column; flex: 0 0 auto;"),!document.getElementById("activityBar-scroll-style")){const e=document.createElement("style");e.id="activityBar-scroll-style",e.textContent=".activityBar-primary-scroll::-webkit-scrollbar { width: 0; height: 0; }.activityBar-primary-scroll { scrollbar-width: none; }",document.head.appendChild(e)}this.#N.appendChild(this.#T),this.#N.appendChild(this.#L),n?.appendChild(this.#N)}constructor(){g.setDismissHandler(()=>this.#O())}#O(){const e=globalThis.punica?.shell?.Views?.manager,t=e?.getVisibleView?.("primarySidebar");t?e.hide(t,{kind:"user-gesture",id:"outside-click"}):this.#B(null)}setActiveByViewId(e){if(e){for(const t of this.#A.values())if(t.viewId===e)return void this.#B(t.id);for(const t of this.#C.values())if(t.viewId===e)return void this.#B(t.id)}else this.#B(null)}#R(e,t){const n=globalThis,r=()=>{const r=n.punica?.shell?.Views?.manager;return r?.reveal?.(e,{kind:"user-gesture",id:`activity-bar:${t}`})},i=n.punica?.runtime?.capabilities?.gateway;if(!i?.call)return void Promise.resolve(r()).catch(t=>{console.error("[ActivityBar] Failed to reveal view",e,t)});const s=n.punica?.kernel?.Events?.manager,a=s?.createCorrelationId?.()??`activity-bar-${Date.now()}`;i.call("shell.revealView",{viewId:e},{sessionId:"default",actor:{type:"user"},origin:{kind:"command",id:`activity-bar:${t}`},trace:{traceId:a},policy:{mode:"execute"}}).catch(e=>(console.warn("[ActivityBar] shell.revealView failed, falling back to direct reveal:",e),Promise.resolve(r()))).catch(t=>{console.error("[ActivityBar] Failed to reveal view",e,t)})}#B(e){this.#D=e;const t=punica.shell.Layout.manager;e?(this.#S=null,g.setVisible(!0)):(g.setVisible(!1),t.resetContentSidebar?.()),this.#$()}syncContentTool(e){const t=e?this.#j(e):void 0;this.#S=t?.id??null,this.#$()}#j(e){for(const t of this.#C.values())if(t.contentViewType===e)return t;for(const t of this.#A.values())if(t.contentViewType===e)return t}#$(){if(!this.#N)return;const e="extension-is-active",t=this.#S??this.#D;if(this.#N.querySelectorAll(".extension").forEach(t=>t.classList.remove(e)),!t)return;const n=this.#N.querySelector("#"+t);n&&n.classList.add(e)}addItem(e){this.#N||this.#M();const t=punica.shell.Layout.manager,n=document.createElement("punica-button");n.setAttribute("id",e.id),n.setAttribute("rounded",""),n.setAttribute("color","primary"),n.setAttribute("variant","text"),n.setAttribute("size","medium"),n.setAttribute("style","margin-bottom: 4px;"),n.setAttribute("title",e.title),n.onclick=()=>{const n=globalThis.punica?.shell?.Views?.manager,r=!!e.viewId&&!!n?.getPlacement?.(e.viewId),i=()=>{if(e.command)try{punica.kernel.Commands.manager.executeCommand(e.command)}catch(t){console.error("[ActivityBar] Failed to execute command for item",e.id,e.command,t)}};if(!(r||!!e.viewId)){return e.contentViewType&&(this.#S=e.id,"drawer"===g.getMode()&&(this.#D=null,g.setVisible(!1)),punica.shell.Layout.manager.resetContentSidebar?.(),this.#$()),void i()}if(this.#D===e.id)return r&&n.hide(e.viewId,{kind:"user-gesture",id:`activity-bar:${e.id}`}),void this.#B(null);if(this.#B(e.id),r)this.#R(e.viewId,e.id);else{try{t.ensureViewHost("primarySidebar",e.viewId)}catch(t){console.error("[ActivityBar] Failed to show primary view for item",e.id,e.viewId,t)}i()}},n.innerHTML=`<punica-icon size="xlarge">${e.icon}</punica-icon>`,n.className="extension";const r="primary"===e.alignment,i=r?this.#T:this.#L;(r?this.#A:this.#C).set(e.id,e),this.#z(i,n,e.id);(this.#S??this.#D)===e.id&&n.classList.add("extension-is-active")}removeItem(e){if(this.#A.has(e)){const t=this.#T.querySelector("#"+e);t&&(this.#T.removeChild(t),this.#A.delete(e))}else if(this.#C.has(e)){const t=this.#L.querySelector("#"+e);t&&(this.#L.removeChild(t),this.#C.delete(e))}}}};const y={manager:new class{#A=new Map;#C=new Map;#N;#T;#L;#I=new Map;#F=0;#z(e,t,n){this.#I.has(n)||this.#I.set(n,this.#F++);const r=this.#I.get(n),i=e.querySelector("#"+n);i&&e.removeChild(i);let s=null;for(const t of Array.from(e.children)){const e=this.#I.get(t.id);if(void 0!==e&&e>r){s=t;break}}e.insertBefore(t,s)}#M(){const e=window.punica?.shell?.Layout.manager,t=e.getSlot("statusbar"),n=t?.content;this.#N=document.createElement("div"),this.#N.className="status-bar-inner",this.#T=document.createElement("div"),this.#T.className="status-bar-group status-bar-group-primary",this.#L=document.createElement("div"),this.#L.className="status-bar-group status-bar-group-secondary",this.#N.appendChild(this.#T),this.#N.appendChild(this.#L),n?.appendChild(this.#N)}constructor(){}addItem(e){this.#N||this.#M();const t=document.createElement("button");t.type="button",t.id=e.id,t.title=e.title,t.className="status-bar-action";const n=e.command??e.capability;t.onclick=()=>{if(n)try{punica.kernel.Commands.manager.executeCommand(n)}catch(t){console.error("[Statusbar] Failed to execute command for item",e.id,n,t)}};const r=[];e.icon&&r.push(`<punica-icon size="small">${e.icon}</punica-icon>`),e.label&&r.push(`<span class="status-bar-label">${e.label}</span>`),t.innerHTML=r.join("");const i="primary"===e.alignment,s=i?this.#T:this.#L;(i?this.#A:this.#C).set(e.id,e),this.#z(s,t,e.id)}removeItem(e){if(this.#A.has(e)){const t=this.#T.querySelector("#"+e);t&&(this.#T.removeChild(t),this.#A.delete(e))}else if(this.#C.has(e)){const t=this.#L.querySelector("#"+e);t&&(this.#L.removeChild(t),this.#C.delete(e))}}}};function v(e,t){const n=document.createElement("punica-typography");if(n.textContent=e,t?.variant&&n.setAttribute("variant",t.variant),t?.color&&n.setAttribute("color",t.color),"bold"===t?.fontWeight&&n.setAttribute("fontweight","bold"),t?.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t?.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t?.className&&(n.className=t.className),n}const w="punica-card-styles";function E(){if("undefined"==typeof document)return;if(document.getElementById(w))return;const e=document.createElement("style");e.id=w,e.textContent='\n.punica-card { position: relative; overflow: hidden; display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 6px; background: var(--background-paper, rgba(255,255,255,0.03)); cursor: pointer; user-select: none; }\n.punica-card:hover { background: var(--neutral-main, rgba(127,127,127,0.14)); }\n.punica-card--selected { background: var(--neutral-main, rgba(127,127,127,0.2)); }\n.punica-card--inactive .punica-card-name { opacity: 0.7; }\n.punica-card-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; overflow: hidden; }\n.punica-card-name { font-size: 13px; font-weight: 600; color: var(--text-primary, inherit); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.punica-card-sub { font-size: 12px; color: var(--text-secondary, #8a8a8a); opacity: 0.75; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.punica-card-meta { font-size: 11px; font-family: var(--font-mono, ui-monospace, monospace); font-variant-numeric: tabular-nums; color: var(--text-secondary, #8a8a8a); flex-shrink: 0; margin-left: auto; }\n.punica-card-icon { flex-shrink: 0; width: 16px; text-align: center; color: var(--text-secondary, #8a8a8a); font-size: 13px; }\n.punica-card-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; background: var(--text-disabled, #6d6d6d); }\n.punica-card-dot--running, .punica-card-dot--success { background: var(--success-main, #4caf50); box-shadow: 0 0 5px rgba(76,175,80,0.7); }\n.punica-card-dot--paused, .punica-card-dot--warning { background: var(--warning-main, #ff9800); }\n.punica-card-dot--stopped, .punica-card-dot--idle { background: var(--text-disabled, #6d6d6d); }\n.punica-card-dot--error { background: var(--error-main, #e5534b); }\n.punica-group-header { display: flex; align-items: center; gap: 6px; font-size: 9.5px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--text-secondary, #8a8a8a); opacity: 0.8; padding: 6px 4px 2px 6px; }\n.punica-group-header::after { content: ""; flex: 1; height: 1px; background: var(--divider, rgba(128,128,128,0.25)); opacity: 0.4; }\n',document.head.appendChild(e)}const _="punica-capability-styles";function k(e,t,n){const r=document.createElement("span");r.className=`json-view-${n}`,r.textContent=t,e.appendChild(r)}function x(e,t,n){const r=" ".repeat(n);if(null===t)return k(e,"null","null");if("boolean"==typeof t)return k(e,String(t),"boolean");if("number"==typeof t)return k(e,String(t),"number");if("string"==typeof t)return k(e,JSON.stringify(t),"string");if(Array.isArray(t))return e.appendChild(document.createTextNode("[\n")),t.forEach((i,s)=>{e.appendChild(document.createTextNode(`${r} `)),x(e,i,n+1),s<t.length-1&&e.appendChild(document.createTextNode(",")),e.appendChild(document.createTextNode("\n"))}),void e.appendChild(document.createTextNode(`${r}]`));if("object"==typeof t){const i=Object.keys(t);e.appendChild(document.createTextNode("{\n")),i.forEach((s,a)=>{e.appendChild(document.createTextNode(`${r} `)),k(e,JSON.stringify(s),"key"),e.appendChild(document.createTextNode(": ")),x(e,t[s],n+1),a<i.length-1&&e.appendChild(document.createTextNode(",")),e.appendChild(document.createTextNode("\n"))}),e.appendChild(document.createTextNode(`${r}}`))}}function A(e){const t=document.createElement("pre");return t.className="json-view cap-schema-code",x(t,e,0),t}function C(e){const t=document.createElement("div");return t.className="cap-detail-section",t.textContent=e,t}function D(e){const t=document.createElement("div");return t.className="cap-detail-meta cap-detail-note",t.textContent=e,t}function S(e,t){const n=document.createElement("span");return n.className=`cap-pill cap-pill-${t}`,n.textContent=e,n}function N(e,t,n){const r=[`source: ${n.source||"unknown"}`];t.id&&r.push(`id: ${t.id}`),t.version&&r.push(`version: ${t.version}`);const i=t.policy?.approval;i&&r.push(`approval: ${i}`),t.sideEffects&&t.sideEffects.length>0&&r.push(`sideEffects: ${t.sideEffects.join(", ")}`);const s=document.createElement("div");if(s.className="cap-detail-meta",s.textContent=r.join(" · "),e.appendChild(s),e.appendChild(C("Inputs")),t.inputs?.schema?e.appendChild(A(t.inputs.schema)):e.appendChild(D("This capability takes no input parameters.")),e.appendChild(C("Outputs")),t.outputs){const n=t.outputs;if("event"===n.kind){const t=[];n.resultEvent&&t.push(`success → ${n.resultEvent}`),n.errorEvent&&t.push(`error → ${n.errorEvent}`);const r=document.createElement("div");r.className="cap-detail-meta",r.textContent=t.length?`Emits an event on completion (${t.join(" · ")}).`:"Emits an event on completion.",e.appendChild(r)}else if("direct"===n.kind)e.appendChild(D("Returns a value directly to the caller."));else if(n.kind){const t=document.createElement("div");t.className="cap-detail-meta",t.textContent=`kind: ${n.kind}`,e.appendChild(t)}n.schema?(e.appendChild(C("Result payload")),e.appendChild(A(n.schema))):e.appendChild(D("Result payload shape is not documented."))}else e.appendChild(D("No outputs declared."));if(t.tags&&t.tags.length>0){e.appendChild(C("Tags"));const n=document.createElement("div");n.className="cap-detail-tags";for(const e of t.tags){const t=document.createElement("span");t.className="cap-tag",t.textContent=e,n.appendChild(t)}e.appendChild(n)}if(n.extraSections)for(const t of n.extraSections)e.appendChild(t);const a=document.createElement("button");a.type="button",a.className="cap-detail-raw-toggle",a.textContent="Show raw definition";const o=A(t);o.style.display="none",a.addEventListener("click",()=>{const e="none"===o.style.display;o.style.display=e?"block":"none",a.textContent=e?"Hide raw definition":"Show raw definition"}),e.appendChild(C("Raw")),e.appendChild(a),e.appendChild(o)}const T={createElement:function(e,t){const n=document.createElement(e);if(t?.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t?.text&&(n.textContent=t.text),t?.children&&t.children.forEach(e=>n.appendChild(e)),t?.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t?.className&&(n.className=t.className),n},createSidebarCard:function(e){E();const t=document.createElement("div");let n="punica-card";if(e.inactive&&(n+=" punica-card--inactive"),e.selected&&(n+=" punica-card--selected"),t.className=n,t.dataset.nodeId=e.id,e.data)for(const[n,r]of Object.entries(e.data))t.dataset[n]=r;if(e.title&&(t.title=e.title),e.dot){const n=document.createElement("span");n.className=`punica-card-dot punica-card-dot--${e.dot}`,t.appendChild(n)}else if(e.icon){const n=document.createElement("span");n.className="punica-card-icon";const r=document.createElement("i");r.className=e.icon,n.appendChild(r),t.appendChild(n)}const r=document.createElement("div");r.className="punica-card-main";const i=document.createElement("div");if(i.className="punica-card-name",i.textContent=e.name,r.appendChild(i),e.sub){const t=document.createElement("div");t.className="punica-card-sub",t.textContent=e.sub,r.appendChild(t)}if(t.appendChild(r),e.meta){const n=document.createElement("span");n.className="punica-card-meta",n.textContent=e.meta,t.appendChild(n)}return t},createGroupHeader:function(e){E();const t="string"==typeof e?e:e.label,n="string"==typeof e?void 0:e.count,r=document.createElement("div");return r.className="punica-group-header",r.textContent=n?`${t} · ${n}`:t,r},attachContextMenu:function(e){if("undefined"==typeof document)return()=>{};const t=document.createElement("punica-context-menu");t.setAttribute("id",e.menuId),e.listEl.id&&t.setAttribute("target",`#${e.listEl.id}`);let n=null;const r=r=>{const i=r.target.closest("[data-node-id]");if(n=i,t.innerHTML="",i)for(const n of e.buildItems(i)){n.separatorBefore&&t.appendChild(document.createElement("punica-context-menu-separator"));const e=document.createElement("punica-context-menu-item");e.setAttribute("label",n.label),e.setAttribute("value",n.value),n.icon&&e.setAttribute("icon",n.icon),t.appendChild(e)}},i=t=>{const r=t?.detail?.value;r&&n&&e.onSelect(r,n)};return e.listEl.addEventListener("contextmenu",r),t.addEventListener("punica-context-menu-select",i),e.listEl.insertAdjacentElement("afterend",t),()=>{e.listEl.removeEventListener("contextmenu",r),t.removeEventListener("punica-context-menu-select",i),t.remove()}},createCapabilityDetail:function(e,t){!function(){if("undefined"==typeof document)return;if(document.getElementById(_))return;const e=document.createElement("style");e.id=_,e.textContent='\n.cap-row { border: 1px solid var(--divider-color, rgba(127,127,127,0.16)); border-radius: 8px; background: var(--background-paper, rgba(127,127,127,0.04)); margin-bottom: 6px; overflow: hidden; }\n.cap-row.expanded { border-color: var(--primary-main, #6ea8fe); }\n.cap-row--static { border: none; background: transparent; }\n.cap-row-head { display: flex; align-items: center; gap: 10px; padding: 10px 12px; cursor: pointer; }\n.cap-row-head:hover { background: var(--action-hover, rgba(127,127,127,0.08)); }\n.cap-row--static .cap-row-head { cursor: default; padding: 0 0 4px; }\n.cap-row--static .cap-row-head:hover { background: transparent; }\n.cap-row-chevron { flex: 0 0 auto; font-size: 11px; color: var(--text-secondary); transition: transform 0.15s ease; }\n.cap-row.expanded .cap-row-chevron { transform: rotate(90deg); }\n.cap-row-main { flex: 1 1 auto; min-width: 0; }\n.cap-row-title-line { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }\n.cap-row-title { font-size: 13.5px; font-weight: 600; color: var(--text-primary); }\n.cap-row-id { font-size: 11px; font-family: "SF Mono", "Courier New", monospace; color: var(--text-secondary); opacity: 0.8; }\n.cap-row-desc { margin-top: 2px; font-size: 12px; color: var(--text-secondary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.cap-row.expanded .cap-row-desc, .cap-row--static .cap-row-desc { white-space: normal; }\n.cap-row-badges { flex: 0 0 auto; display: flex; gap: 6px; align-items: center; }\n.cap-pill { font-size: 10.5px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; padding: 2px 8px; border-radius: 10px; border: 1px solid transparent; white-space: nowrap; }\n.cap-pill-risk-low { color: #5bbf7b; background: rgba(91,191,123,0.12); border-color: rgba(91,191,123,0.3); }\n.cap-pill-risk-medium { color: #e0a13a; background: rgba(224,161,58,0.12); border-color: rgba(224,161,58,0.3); }\n.cap-pill-risk-high { color: #e06c6c; background: rgba(224,108,108,0.14); border-color: rgba(224,108,108,0.35); }\n.cap-pill-approval { color: var(--text-secondary); background: var(--action-hover, rgba(127,127,127,0.14)); }\n.cap-row-detail { padding: 4px 14px 14px 34px; border-top: 1px solid var(--divider-color, rgba(127,127,127,0.12)); }\n.cap-row--static .cap-row-detail { padding: 0; border-top: none; }\n.cap-detail-section { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-secondary); margin: 12px 0 6px; }\n.cap-detail-meta { font-size: 12px; color: var(--text-secondary); font-family: "SF Mono", "Courier New", monospace; margin-bottom: 6px; }\n.cap-schema-code { background: var(--background-main, rgba(0,0,0,0.18)); border: 1px solid var(--neutral-light, rgba(127,127,127,0.2)); border-radius: 6px; padding: 10px 12px; overflow-x: auto; font-family: "SF Mono", "Courier New", monospace; font-size: 11.5px; line-height: 1.5; color: var(--text-primary); }\n.cap-detail-note { font-style: italic; opacity: 0.85; }\n.cap-detail-raw-toggle { margin: 0 0 6px; padding: 0; background: none; border: none; cursor: pointer; font-size: 12px; color: var(--text-link, var(--accent-color, #6ea8fe)); opacity: 0.85; }\n.cap-detail-raw-toggle:hover { opacity: 1; text-decoration: underline; }\n.cap-detail-tags { display: flex; flex-wrap: wrap; gap: 6px; }\n.cap-tag { font-size: 11px; padding: 2px 8px; border-radius: 10px; border: 1px solid var(--neutral-light, rgba(127,127,127,0.24)); color: var(--text-secondary); }\n.json-view-key { color: var(--primary-main, #7ec8e3); }\n.json-view-string { color: var(--success-main, #98c379); }\n.json-view-number { color: var(--warning-main, #d19a66); }\n.json-view-boolean { color: var(--error-main, #c678dd); }\n.json-view-null { color: var(--text-placeholder, #9aa0a6); font-style: italic; }\n',document.head.appendChild(e)}();const n=t??{},r=!0===n.collapsible,i=document.createElement("div");i.className=r?"cap-row":"cap-row cap-row--static";const s=document.createElement("div");if(s.className="cap-row-head",r){s.setAttribute("role","button"),s.setAttribute("tabindex","0");const e=document.createElement("i");e.className="cap-row-chevron fa-solid fa-chevron-right",s.appendChild(e)}const a=document.createElement("div");a.className="cap-row-main";const o=document.createElement("div");o.className="cap-row-title-line";const l=document.createElement("span");if(l.className="cap-row-title",l.textContent=e.title||e.id||"(untitled)",o.appendChild(l),e.id){const t=document.createElement("span");t.className="cap-row-id",t.textContent=e.id,o.appendChild(t)}if(a.appendChild(o),e.description){const t=document.createElement("div");t.className="cap-row-desc",t.textContent=e.description,a.appendChild(t)}s.appendChild(a);const c=document.createElement("div");c.className="cap-row-badges";const u=e.policy?.risk;u&&c.appendChild(S(u,`risk-${u}`));const d=e.policy?.approval;d&&"none"!==d&&c.appendChild(S(d,"approval")),s.appendChild(c),i.appendChild(s);const h=document.createElement("div");if(h.className="cap-row-detail",i.appendChild(h),r){h.style.display=n.open?"block":"none";let t=!1;const r=()=>{t||(t=!0,N(h,e,n))};n.open&&(r(),i.classList.add("expanded"));const a=()=>{const e="none"===h.style.display;e&&r(),h.style.display=e?"block":"none",i.classList.toggle("expanded",e)};s.addEventListener("click",a),s.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),a())})}else N(h,e,n);return i},createButton:function(e,t,n){const r=document.createElement("punica-button");if(e.includes("<")||e.includes("<")?r.innerHTML=e:r.textContent=e,!1!==n?.rounded&&r.setAttribute("rounded",""),r.setAttribute("size",n?.size??"small"),r.setAttribute("variant",n?.variant??"outlined"),n?.color&&r.setAttribute("color",n.color),n?.disabled&&r.setAttribute("disabled",""),n?.fullwidth&&r.setAttribute("fullwidth",""),n?.icon){const e=document.createElement("punica-icon");e.setAttribute("slot","startIcon");const t=document.createElement("i");t.className=n.icon,e.appendChild(t),r.appendChild(e)}return n?.disabled||r.addEventListener("click",t),r},createIconButton:function(e,t,n){const r=document.createElement("punica-icon-button");if(r.setAttribute("size",n?.size??"x-small"),n?.variant&&r.setAttribute("variant",n.variant),n?.title&&r.setAttribute("title",n.title),n?.disabled&&r.setAttribute("disabled",""),n?.attrs)for(const[e,t]of Object.entries(n.attrs))r.setAttribute(e,t);return r.innerHTML=`<i class="${e}"></i>`,n?.disabled||r.addEventListener("click",t),r},createTypography:v,createChip:function(e,t){const n=document.createElement("punica-chip");return n.textContent=e,n.setAttribute("size",t?.size??"small"),n.setAttribute("variant",t?.variant??"filled"),t?.color&&n.setAttribute("color",t.color),n},createBox:function(e){const t=document.createElement("punica-box");if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createRow:function(e){const t=document.createElement("punica-row");if(e?.spacing&&t.setAttribute("spacing",e.spacing),e?.alignItems&&t.setAttribute("alignitems",e.alignItems),e?.wrap&&t.setAttribute("wrap",e.wrap),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createCol:function(e){const t=document.createElement("punica-col");if(void 0!==e?.xs&&t.setAttribute("xs",String(e.xs)),void 0!==e?.sm&&t.setAttribute("sm",String(e.sm)),void 0!==e?.md&&t.setAttribute("md",String(e.md)),void 0!==e?.lg&&t.setAttribute("lg",String(e.lg)),void 0!==e?.xl&&t.setAttribute("xl",String(e.xl)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createInput:function(e){const t=document.createElement("punica-input");if(void 0!==e?.value&&(t.value=e.value),e?.placeholder&&t.setAttribute("placeholder",e.placeholder),e?.type&&t.setAttribute("type",e.type),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),void 0!==e?.min&&t.setAttribute("min",String(e.min)),void 0!==e?.max&&t.setAttribute("max",String(e.max)),void 0!==e?.step&&t.setAttribute("step",String(e.step)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onInput&&t.addEventListener("input",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onInput(n)}),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createSelect:function(e){const t=document.createElement("punica-select");if(void 0!==e?.value&&(t.value=e.value),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.minimumTargetWidth&&t.setAttribute("minimumtargetwidth",""),e?.id&&t.setAttribute("id",e.id),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createSelectItem:function(e){const t=document.createElement("punica-select-item");if(t.setAttribute("value",e.value),e.text&&(t.textContent=e.text),e.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createCheckbox:function(e){const t=document.createElement("punica-checkbox");if(void 0!==e?.checked&&(t.checked=e.checked),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),e?.label&&t.setAttribute("label",e.label),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.checked??t?.target?.checked??!1;e.onChange(n)}),t},createIcon:function(e){const t=document.createElement("punica-icon");if(e?.iconClass){const n=document.createElement("i");n.className=e.iconClass,t.appendChild(n)}else e?.innerHTML&&(t.innerHTML=e.innerHTML);if(e?.slot&&t.setAttribute("slot",e.slot),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createTextarea:function(e){const t=document.createElement("punica-textarea");if(void 0!==e?.value&&(t.value=e.value),e?.placeholder&&t.setAttribute("placeholder",e.placeholder),e?.rows&&t.setAttribute("rows",String(e.rows)),e?.cols&&t.setAttribute("cols",String(e.cols)),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onInput&&t.addEventListener("input",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onInput(n)}),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createDivider:function(e){const t=document.createElement("punica-divider");if(e?.orientation&&t.setAttribute("orientation",e.orientation),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createListView:function(e){const t=document.createElement("punica-list-view");if(e?.enableDivider&&t.setAttribute("enabledivider",""),e?.spacing&&t.setAttribute("spacing",e.spacing),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createListViewItem:function(e){const t=document.createElement("punica-list-view-item");if(e?.label)if("string"==typeof e.label){const n=document.createElement("punica-typography");n.setAttribute("slot","label"),n.textContent=e.label,t.appendChild(n)}else e.label.getAttribute("slot")||e.label.setAttribute("slot","label"),t.appendChild(e.label);if(e?.content)if("string"==typeof e.content){const n=document.createElement("div");n.setAttribute("slot","content"),n.textContent=e.content,t.appendChild(n)}else e.content.getAttribute("slot")||e.content.setAttribute("slot","content"),t.appendChild(e.content);if(e?.endAdornment&&(e.endAdornment.getAttribute("slot")||e.endAdornment.setAttribute("slot","endAdornment"),t.appendChild(e.endAdornment)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),t},createPaper:function(e){const t=document.createElement("punica-paper");if(void 0!==e?.elevation&&t.setAttribute("elevation",String(e.elevation)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createTab:function(e){const t=document.createElement("punica-tab");if(e?.value&&t.setAttribute("value",e.value),e?.orientation&&t.setAttribute("orientation",e.orientation),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.getAttribute("value")??"";e.onChange(n)}),t},createTabItem:function(e){const t=document.createElement("punica-tab-item");if(t.setAttribute("value",e.value),e.text&&(t.textContent=e.text),e.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createTabPanel:function(e){const t=document.createElement("punica-tab-panel");if(t.setAttribute("value",e.value),e.selectedValue&&t.setAttribute("selectedvalue",e.selectedValue),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createBadge:function(e){const t=document.createElement("punica-badge");if(e?.text&&(t.textContent=e.text),e?.variant&&t.setAttribute("variant",e.variant),e?.color&&t.setAttribute("color",e.color),e?.size&&t.setAttribute("size",e.size),e?.title&&t.setAttribute("title",e.title),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createMenu:function(e){const t=document.createElement("punica-menu");if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createMenuItem:function(e){const t=document.createElement("punica-menu-item");if(e?.text){const n=v(e.text);t.appendChild(n)}if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.onClick&&t.addEventListener("click",e.onClick),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.children&&e.children.forEach(e=>t.appendChild(e)),t},createLink:function(e,t){const n=document.createElement("a");if(n.href=t.href,n.textContent=e,t.target&&(n.target=t.target),t.rel&&(n.rel=t.rel),t.download&&(n.download=t.download),t.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t.children&&t.children.forEach(e=>n.appendChild(e)),t.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t.className&&(n.className=t.className),n},createToolbar:function(e){const t=document.createElement("punica-toolbar");if(e?.variant&&t.setAttribute("variant",e.variant),e?.disableGutters&&t.setAttribute("disablegutters",""),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t}};const L={light:{id:"light",name:"Light",variables:{"--background-main":"#ffffff","--background-paper":"#f0f0f0","--background-navbar":"#0969da","--background-tabbar":"#e1e4e8","--background-backdrop":"rgba(0, 0, 0, 0.25)","--text-primary":"#24292f","--text-secondary":"#57606a","--text-placeholder":"#8c959f","--text-navbar":"#ffffff","--text-tabbar":"#0969da","--icon-navbar":"#ffffff","--icon-tabbar-active":"#0969da","--icon-tabbar-inactive":"#656d76","--primary-light":"#58a6ff","--primary-main":"#0969da","--primary-dark":"#0550ae","--error-light":"#ffebe9","--error-main":"#cf222e","--error-dark":"#a40e26","--warning-light":"#fff8c5","--warning-main":"#9a6700","--warning-dark":"#7d4e00","--success-light":"#dafbe1","--success-main":"#1a7f37","--success-dark":"#116329","--info-light":"#ddf4ff","--info-main":"#0969da","--info-dark":"#0550ae","--neutral-light":"#d1d9e0","--neutral-main":"#e9e9e9","--neutral-dark":"#8c959f","--disabled":"#33353a","--highlight":"#ddf4ff","--white":"#ffffff","--black":"#000000","--divider":"#d1d9e0","--focus-ring":"#0969da","--root-border-radius":"8px","--root-padding":"16px"}},dark:{id:"dark",name:"Dark",variables:{"--background-main":"#131416","--background-paper":"#2a2d33","--background-navbar":"#0969da","--background-tabbar":"#232529","--background-backdrop":"rgba(0, 0, 0, 0.5)","--text-primary":"#f5f7fa","--text-secondary":"#c0c4cc","--text-placeholder":"#9aa0a6","--text-navbar":"#ffffff","--text-tabbar":"#0a84ff","--icon-navbar":"#ffffff","--icon-tabbar-active":"#0a84ff","--icon-tabbar-inactive":"#6b6e76","--primary-light":"#66b3ff","--primary-main":"#0a84ff","--primary-dark":"#0056b3","--error-light":"#f8d7da","--error-main":"#ff453a","--error-dark":"#c41c12","--warning-light":"#ffe28a","--warning-main":"#ffd60a","--warning-dark":"#c9a400","--success-light":"#48e09e","--success-main":"#30d158","--success-dark":"#228c3f","--info-light":"#4ac8ff","--info-main":"#64d2ff","--info-dark":"#0a84ff","--neutral-light":"#45484e","--neutral-main":"#35383f","--neutral-dark":"#25272b","--disabled":"#33353a","--highlight":"#52a8ff","--white":"#ffffff","--black":"#000000","--divider":"#3a3d44","--focus-ring":"#52a8ff","--root-border-radius":"8px","--root-padding":"16px"}}};const I=new class{currentProfileId=null;listeners=new Set;async loadProfile(e){const t=L[e];if(!t)return void console.warn(`[Theme] Profile not found: ${e}`);const n=document.documentElement;if(Object.entries(t.variables).forEach(([e,t])=>{n.style.setProperty(e,t)}),this.currentProfileId=e,this.listeners.forEach(t=>t(e)),"undefined"!=typeof punica&&punica.extensions?.settings?.manager)try{await punica.extensions.settings.manager.set("system","theme.profile",e,"global")}catch(e){console.error("[Theme] Failed to save profile to settings:",e)}}getCurrentProfile(){return this.currentProfileId}getProfiles(){return{...L}}getProfile(e){return L[e]}registerProfile(e){L[e.id]=e}onDidChangeProfile(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}loadDefaultImmediate(){const e=L.dark;if(!e)return void console.warn("[Theme] Default dark profile not found");const t=document.documentElement;Object.entries(e.variables).forEach(([e,n])=>{t.style.setProperty(e,n)}),this.currentProfileId="dark"}async initialize(){if("undefined"!=typeof punica&&punica.extensions?.settings?.manager)try{await punica.extensions.settings.manager.load();const e=punica.extensions.settings.manager.get("system","theme.profile");e&&"string"==typeof e&&L[e]?await this.loadProfile(e):await this.loadProfile("dark")}catch(e){console.error("[Theme] Failed to initialize from settings:",e),await this.loadProfile("dark")}else await this.loadProfile("dark")}};async function F(e){return new Promise(t=>{const{title:n,message:r,html:i,buttons:s=[{label:"OK",variant:"filled",action:"ok"}],footerHtml:a,modal:o=!0,width:l,height:c,icon:u,tone:d,onMount:h}=e,p=`punica-dialog-${Date.now()}`,m=document.querySelector(`#${p}`);m?.remove();const f=document.createElement("punica-dialog");f.id=p,f.setAttribute("rounded",""),o&&f.setAttribute("modal","");const g=[`width: ${l||"440px"}`];c&&g.push(`height: ${c}`);const b=` style="${g.join("; ")}"`,y=d?`var(--${d}-main)`:"",v=u||(d?{info:"fa-circle-info",warning:"fa-triangle-exclamation",error:"fa-circle-exclamation",success:"fa-circle-check"}[d]:""),w=v&&y?`<span style="flex:0 0 auto; width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background: color-mix(in srgb, ${y} 16%, transparent); color:${y}; font-size:16px;"><i class="fa-duotone fa-solid ${v}"></i></span>`:"",E=i||(r?`<punica-typography style="color: var(--text-secondary); line-height: 1.6;">${r}</punica-typography>`:"");f.innerHTML=`\n <punica-dialog-header>\n <punica-box style="display:flex; align-items:center; gap:12px;">\n ${w}\n <punica-typography fontweight="bold" style="color: var(--text-primary); font-size: 16px;">${n}</punica-typography>\n </punica-box>\n </punica-dialog-header>\n <punica-dialog-content${b}>\n <punica-box style="display:flex; flex-direction: column; gap: 10px; padding: 4px 2px 8px;">\n ${E}\n </punica-box>\n </punica-dialog-content>\n <punica-dialog-footer>\n ${a||`\n <punica-box style="display:flex; width:100%; box-sizing:border-box; gap: 8px; justify-content: flex-end; padding-top: 14px; border-top: 1px solid var(--divider);">\n ${s.map((e,t)=>`<punica-button id="${`${p}-btn-${t}`}" variant="${e.variant||"outlined"}" color="${e.color||"primary"}" size="small" rounded>${e.label}</punica-button>`).join("")}\n </punica-box>\n `}\n </punica-dialog-footer>\n `,document.body.appendChild(f),queueMicrotask(()=>{try{f.setAttribute("open","true"),f.open=!0,h?.(f)}catch{}});const _=e=>{try{f.remove()}catch{}t(e)};s.forEach((e,t)=>{const n=`${p}-btn-${t}`,r=f.querySelector(`#${n}`);r?.addEventListener("click",()=>{_(e.action||e.label.toLowerCase())})}),f.addEventListener?.("close",()=>{_(void 0)})})}async function z(e){const{title:t,message:n,variant:r="info",buttonLabel:i="OK"}=e,s=t||("success"===r?"Success":"warning"===r?"Warning":"error"===r?"Error":"Information");await F({title:s,message:n,tone:r,buttons:[{label:i,variant:"filled",color:"error"===r?"error":"primary",action:"ok"}]})}const M={showInformationMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"info",title:"Information"}):await F({title:"Information",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showWarningMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"warning",title:"Warning"}):await F({title:"Warning",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showErrorMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"error",title:"Error"}):await F({title:"Error",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showDialog:F,showConfirm:async function(e){const{title:t="Confirm",message:n,confirmLabel:r="OK",cancelLabel:i="Cancel",variant:s="info"}=e;return"confirm"===await F({title:t,message:n,tone:s,buttons:[{label:i,variant:"text",action:"cancel"},{label:r,variant:"filled",color:"error"===s?"error":"primary",action:"confirm"}]})},showAlert:z,showPrompt:async function(e){return new Promise(t=>{const{title:n="Prompt",message:r,placeholder:i="",defaultValue:s="",confirmLabel:a="OK",cancelLabel:o="Cancel",type:l="text"}=e,c=`punica-prompt-${Date.now()}`,u=`${c}-input`;let d=s;F({title:n,html:`\n <punica-box style="display:flex; flex-direction: column; gap: 10px;">\n <punica-typography>${r}</punica-typography>\n <punica-input\n id="${u}"\n type="${l}"\n placeholder="${i}"\n value="${s}"\n rounded>\n </punica-input>\n </punica-box>\n `,buttons:[{label:o,variant:"outlined",action:"cancel"},{label:a,variant:"filled",action:"confirm"}],onMount:e=>{const t=e.querySelector(`#${u}`);if(!t)return;const n=()=>{const e=t.value??t.getAttribute?.("value");"string"==typeof e&&(d=e)};t.addEventListener("input",n),t.addEventListener("change",n),t.addEventListener("keydown",t=>{if("Enter"===t.key){n();const t=e.querySelector(`#${c}-btn-1`);t?.click()}}),setTimeout(()=>t.focus?.(),0)}}).then(e=>{if("confirm"===e){const e=(d??"").trim();t(e?d:void 0)}else t(void 0)})})},showToast:function(e){const{title:t="",message:n="",variant:r="neutral",duration:i=1e3,dismissible:s=!0,placement:a="top-right"}=e,o=function(){let e=document.querySelector("punica-toaster");return e||(e=document.createElement("punica-toaster"),document.body.appendChild(e)),e}().shadowRoot;if(!o){if(window.Toast?.show)return window.Toast.show(e);throw new Error("punica-toaster shadow root not available")}const l=o.querySelector(`.region.${a}`)||o.querySelector(".region.top-right");if(!l)throw new Error(`Toast region not found: ${a}`);const c=document.createElement("punica-toast");return c.setAttribute("variant",r),t&&c.setAttribute("title",t),n&&c.setAttribute("message",n),i>0&&c.setAttribute("duration",String(i)),c.setAttribute("dismissible",String(s)),c.setAttribute("enter-from",a.startsWith("top")?"top":"bottom"),l.prepend(c),c},showChangesPreview:async function(e){const{title:t,summary:n,files:r,onConfirm:i,onCancel:s}=e,a=`changes-preview-files-${Date.now()}`,o=`changes-preview-content-${Date.now()}`,l=`changes-preview-selected-${Date.now()}`;let c=0;const u=()=>{const e=document.querySelector(`#${l}`);e&&r[c]&&(e.textContent=r[c].path)},d=e=>{e.innerHTML="",r.forEach((t,n)=>{const r=T.createBadge({text:t.action,variant:"filled",color:"delete"===t.action?"error":"create"===t.action?"success":"primary",size:"small"}),i=T.createListViewItem({label:t.path,content:t.action,endAdornment:r});n===c&&(i.style.backgroundColor="rgba(255, 255, 255, 0.1)"),i.style.cursor="pointer",i.addEventListener("click",()=>{c=n,d(e),h(document.getElementById(o)),u()}),e.appendChild(i)})},h=e=>{const t=r[c];if(e.innerHTML="","delete"===t.action){const n=T.createTypography(`This file will be deleted: ${t.path}`,{variant:"body"});return void e.appendChild(n)}if(!t.content){const t=T.createTypography("No content preview available",{variant:"body"});return void e.appendChild(t)}const n=T.createBox({style:{width:"100%",height:"400px",border:"1px solid rgba(255, 255, 255, 0.1)",borderRadius:"4px",overflow:"hidden"}});e.appendChild(n);const i=window.monaco||globalThis.monaco;if(i?.editor)try{const r=m(t.path),s=i.editor.create(n,{value:t.content||"",language:r,theme:"vs-dark",readOnly:!0,minimap:{enabled:!1},fontSize:13,fontLigatures:!0,automaticLayout:!0,scrollBeyondLastLine:!1});e.__monacoEditor=s}catch(e){p(n,t.content||"")}else p(n,t.content||"")},p=(e,t)=>{const n=document.createElement("pre");n.style.cssText="margin: 0; padding: 10px; overflow: auto; font-family: monospace; font-size: 12px; white-space: pre-wrap; word-wrap: break-word;",n.textContent=t,e.innerHTML="",e.appendChild(n)},m=e=>{const t=e.split(".").pop()?.toLowerCase();return{ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",py:"python",json:"json",md:"markdown",html:"html",css:"css",yaml:"yaml",yml:"yaml"}[t||""]||"plaintext"},f=`\n <punica-box style="display: flex; flex-direction: column; gap: 12px; min-width: 800px; max-width: 1200px; max-height: 80vh;">\n ${n?`<punica-typography>${n}</punica-typography>`:""}\n <punica-box style="display: flex; gap: 12px; flex: 1; min-height: 0;">\n <punica-box style="flex: 0 0 300px; display: flex; flex-direction: column; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; overflow: hidden;">\n <punica-box style="padding: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);">\n <punica-typography fontweight="bold">Files (${r.length})</punica-typography>\n </punica-box>\n <punica-box id="${a}" style="flex: 1; overflow-y: auto; padding: 4px;"></punica-box>\n </punica-box>\n <punica-box style="flex: 1; display: flex; flex-direction: column; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; overflow: hidden; min-width: 0;">\n <punica-box style="padding: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);">\n <punica-typography fontweight="bold" id="${l}">${r[0]?.path||""}</punica-typography>\n </punica-box>\n <punica-box id="${o}" style="flex: 1; overflow: auto; padding: 0;"></punica-box>\n </punica-box>\n </punica-box>\n </punica-box>\n `;return new Promise(e=>{punica.shell.View.showDialog({title:t,html:f,buttons:[{label:"Cancel",variant:"outlined",action:"cancel"},{label:"Apply Changes",variant:"filled",color:"primary",action:"confirm"}],width:"90vw",onMount:e=>{const t=e.querySelector(`#${a}`),n=e.querySelector(`#${o}`);e.querySelector(`#${l}`),t&&d(t),n&&h(n),u()}}).then(async t=>{const n=document.querySelector('[id^="punica-dialog-"]');if(n){const e=n.querySelector(`#${o}`);if(e&&e.__monacoEditor)try{e.__monacoEditor.dispose()}catch{}}if("confirm"===t)try{await i(),e("confirm")}catch(t){await punica.shell.View.showAlert({title:"Error",message:`Failed to apply changes: ${t instanceof Error?t.message:String(t)}`,variant:"error"}),e(void 0)}else s?.(),e("cancel"===t?"cancel":void 0)})})},Helpers:T,Theme:{manager:I,profiles:L}};function O(){return globalThis.punica?.shell?.Layout?.manager}function B(e){const t=(globalThis.punica?.shell?.PanelContainers)?.forSlot?.(e);return t||("panel"===e?globalThis.punica?.shell?.PanelTabs:null)}function R(){return globalThis.punica?.shell?.ActivityBar?.manager}const $={manager:new class{#P=new Map;#H=new Map;#q=new Map;#V=new Map;registerPlacement(t){if(!t?.viewId||!t.slot)return;const n=this.#P.get(t.viewId);n&&n.extensionName!==t.extensionName&&console.warn(`[Views] Placement collision for view "${t.viewId}" between "${n.extensionName}" and "${t.extensionName}". Keeping the last registered.`),this.#P.set(t.viewId,t),e({name:"shell.view.registered",source:"shell:views",payload:{viewId:t.viewId,slot:t.slot,extensionName:t.extensionName}})}registerProvider(e,t,n){return this.#P.has(e)||console.warn(`[Views] Provider registered for "${e}" but no placement is declared in any manifest.`+(n?` (extension: ${n})`:"")),this.#H.set(e,t),{dispose:()=>{this.#H.get(e)===t&&this.#H.delete(e)}}}getPlacement(e){return this.#P.get(e)}hasProvider(e){return this.#H.has(e)}getState(e){if(!this.#P.has(e)&&!this.#H.has(e))return;const t=this.#P.get(e);return t&&this.#V.get(t.slot)===e?"visible":this.#q.has(e)?"materialized":"registered"}getVisibleView(e){return this.#V.get(e)}listViews(){return Array.from(this.#P.values()).map(e=>({viewId:e.viewId,slot:e.slot,extensionName:e.extensionName,title:e.title,state:this.getState(e.viewId)??"registered"}))}async reveal(t,n,r){const i=this.#P.get(t);if(!i)throw new Error(`[Views] Cannot reveal "${t}": no placement is registered for this view.`);if(!this.#H.has(t)){const e=globalThis.punica?.extensions?.manager;e?.activate&&await e.activate(i.extensionName,{reason:"view",trigger:t,presentation:"interactive"})}const s=O();if(!s)throw new Error("[Views] Layout manager unavailable — cannot reveal.");const a=s.materializeViewHost(i.slot,t),o=this.#H.get(t),l="contentSidebar"===i.slot;if(o&&(l||!this.#q.has(t))){if(l){const e=this.#q.get(t);try{e?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${t}":`,e)}}const e=await o.render(a);this.#q.set(t,e&&"function"==typeof e.dispose?e:null)}s.showView(i.slot,t),s.setSlotCollapsed?.(i.slot,!1),this.#V.set(i.slot,t);const c=B(i.slot);if(c&&(c.open?.({id:t,title:i.title??t,commandId:i.fallbackCommand??"",iconClass:i.icon,order:i.order,autoActivate:!1,toolbar:i.panelToolbar}),c.activateTabVisual?.(t)),"primarySidebar"===i.slot)try{R()?.setActiveByViewId?.(t)}catch{}if(!o&&i.fallbackCommand)try{(globalThis.punica?.kernel?.Commands?.manager)?.executeCommand?.(i.fallbackCommand)}catch(e){console.warn(`[Views] fallback command "${i.fallbackCommand}" for view "${t}" failed:`,e)}e({name:"shell.view.revealed",source:"shell:views",payload:{viewId:t,slot:i.slot,extensionName:i.extensionName,source:n?.kind??"host",sourceId:n?.id,focus:r?.focus??!1}})}hide(t,n){const r=this.#P.get(t);if(!r)return;if(this.#V.get(r.slot)!==t)return;const i=O();if("contentSidebar"===r.slot?this.#U(r.slot):(i?.hideSlotViews(r.slot),i?.setSlotCollapsed?.(r.slot,!0),r.onDemand&&B(r.slot)?.close?.(t,{silent:!0})),this.#V.delete(r.slot),"primarySidebar"===r.slot)try{R()?.setActiveByViewId?.(null)}catch{}e({name:"shell.view.hidden",source:"shell:views",payload:{viewId:t,slot:r.slot,source:n?.kind??"host",sourceId:n?.id}})}async moveView(t,n,r){const i=this.#P.get(t);if(!i)throw new Error(`[Views] Cannot move "${t}": no placement is registered.`);const s=i.allowedSlots??[i.slot];if(!s.includes(n))throw new Error(`[Views] "${t}" cannot be moved to "${n}". Allowed slots: ${s.join(", ")}.`);const a=i.slot;if(a===n)return;const o=this.#V.get(a)===t,l=O(),c=B(a);c?.close?.(t,{silent:!0});const u=this.#q.get(t);try{u?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${t}":`,e)}this.#q.delete(t),l?.removeViewHost?.(a,t);let d=null;if(o){this.#V.delete(a);const e=(c?.listTabs?.()??[]).filter(e=>!e.userHidden&&e.id!==t);e.length>0?d=e[0].id:l?.setSlotCollapsed?.(a,!0)}i.slot=n;try{await((globalThis.punica?.shell?.PanelLayout?.manager)?.setSlotOverride?.(t,n,i.homeSlot??a))}catch(e){console.warn(`[Views] failed to persist slot override for "${t}":`,e)}if(o?await this.reveal(t,r):i.onDemand||B(n)?.open?.({id:t,title:i.title??t,commandId:i.fallbackCommand??"",iconClass:i.icon,order:i.order,autoActivate:!1,toolbar:i.panelToolbar}),d)try{await this.reveal(d,r)}catch(e){console.warn(`[Views] failed to promote sibling "${d}" in "${a}":`,e)}e({name:"shell.view.moved",source:"shell:views",payload:{viewId:t,fromSlot:a,toSlot:n,source:r?.kind??"host",sourceId:r?.id}})}notifySlotReset(t){this.#U(t);const n=this.#V.get(t);void 0!==n&&(this.#V.delete(t),e({name:"shell.view.hidden",source:"shell:views",payload:{viewId:n,slot:t,source:"host",sourceId:"slot-reset"}}))}#U(e){const t=O();for(const n of this.#P.values()){if(n.slot!==e)continue;const r=this.#q.get(n.viewId);try{r?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${n.viewId}":`,e)}this.#q.delete(n.viewId),t?.removeViewHost?.(e,n.viewId)}}unmountByExtension(e){for(const t of this.#P.values()){if(t.extensionName!==e)continue;const n=t.viewId;this.#V.get(t.slot)===n&&this.hide(n,{kind:"host",id:"deactivate"});const r=this.#q.get(n);try{r?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${n}":`,e)}this.#q.delete(n),this.#H.delete(n);const i=O();i?.removeViewHost?.(t.slot,n)}}}};const j={manager:new class{#Z=[];#K(e,t){return e.length===t.length&&e.every((e,n)=>e.key.toLowerCase()===t[n].key.toLowerCase()&&!!e.ctrlKey==!!t[n].ctrlKey&&!!e.shiftKey==!!t[n].shiftKey&&!!e.altKey==!!t[n].altKey&&!!e.metaKey==!!t[n].metaKey)}#W(e,t){return t.every(t=>!!t.ctrlKey===e.ctrlKey&&!!t.shiftKey===e.shiftKey&&!!t.altKey===e.altKey&&!!t.metaKey===e.metaKey&&e.key.toLowerCase()===t.key.toLowerCase())}constructor(){document.addEventListener("keydown",this.handleKeyEvent.bind(this))}#G(e){switch(e){case"editorTextFocus":return this.#X();case"fileExplorerFocus":return this.#J("primarySidebar","file-explorer-sidebar");default:return}}#X(){const e="undefined"!=typeof document?document.activeElement:null;if(!e)return!1;const t=e.tagName;return"INPUT"===t||"TEXTAREA"===t||(!!e.isContentEditable||!!e.closest?.(".monaco-editor, .cm-editor"))}#J(e,t){if("undefined"==typeof document)return!1;if((punica.shell.Views?.manager?.getVisibleView?.(e)??null)!==t)return!1;const n=document.getElementById(e),r=document.activeElement;return!!(n&&r&&n.contains(r))}#Q(e){const t=e.when;return!t||t.split("&&").map(e=>e.trim()).filter(e=>e.length>0).every(e=>this.#Y(e))}#Y(e){const t=e.indexOf("==");if(-1!==t){const n=e.slice(0,t).trim(),r=e.slice(t+2).trim().replace(/^['"]|['"]$/g,"");if("view"===n){return(punica.shell.ContentTabs?.getActiveViewType?.()??null)===r}return!1}if(e.startsWith("!")){const t=this.#G(e.slice(1).trim());return void 0!==t&&!t}return!0===this.#G(e)}registerShortcut(e){const t=this.#Z.find(t=>this.#K(t.keys,e.keys)&&(t.when??"")===(e.when??""));t?console.warn(`[KeyboardShortcuts] Ignoring duplicate binding for command "${e.command}"; "${t.command}" already owns this chord${e.when?` (when: ${e.when})`:""}.`):this.#Z.push(e)}unregisterShortcut(e){this.#Z=this.#Z.filter(t=>!this.#K(t.keys,e))}handleKeyEvent(e){if(e.repeat)return;const t=this.#Z.find(t=>this.#W(e,t.keys)&&this.#Q(t));t&&(e.preventDefault(),punica.kernel.Commands.manager.executeCommand(t.command))}}},P={id:"classic-editor",title:"Classic Editor",root:{type:"row",sizes:[70,30],children:[{type:"column",sizes:[80,20],children:[{type:"slot",id:"content",role:"content"},{type:"slot",id:"panel",role:"panel"}]},{type:"slot",id:"secondarySidebar",role:"secondarySidebar"}]}},H={id:"welcome",title:"Welcome",root:{type:"row",sizes:[100],children:[{type:"column",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]}]}},q={type:"row",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]};const V={manager:new class{#ee;#te=new Map;#ne=new Map;#re;#ie=new Map;constructor(){this.#ee=document.createElement("div"),this.#ee.id="punica-editor",this.#re=P}applyProfile(e){if(this.#re=e,this.#te.clear(),this.#ne.clear(),this.#ie.clear(),this.#ee.innerHTML="",this.#ee.classList.remove("layout-welcome","layout-classic"),this.#ee.classList.add("welcome"===e.id?"layout-welcome":"layout-classic"),"welcome"!==e.id){const e=document.createElement("div");e.id="activityBar",this.#ee.appendChild(e),this.#te.set("activityBar",{id:"activityBar",role:"activityBar",content:e})}const t=document.createElement("div");if(t.id="mainContent",t.style.height="100%",t.style.width="100%",t.style.display="flex",this.#ee.appendChild(t),"welcome"!==e.id){const e=document.createElement("div");e.id="primarySidebar",this.#ee.appendChild(e),this.#te.set("primarySidebar",{id:"primarySidebar",role:"primarySidebar",content:e});const t=document.createElement("div");t.id="contentSidebar",this.#ee.appendChild(t),this.#te.set("contentSidebar",{id:"contentSidebar",role:"overlay",content:t})}const n=document.createElement("div");n.id="statusbar",this.#ee.appendChild(n),this.#te.set("statusbar",{id:"statusbar",role:"statusbar",content:n}),this.#se(e.root,t,!0)}getActiveProfile(){return this.#re}getSlot(e){return this.#te.get(e)}materializeViewHost(e,t){const n=this.#te.get(e);if(!n)throw new Error(`Layout slot "${e}" not found in active profile`);let r=this.#ne.get(e);r||(r=new Map,this.#ne.set(e,r));let i=n.content;if("panel"===e||"secondarySidebar"===e){const e=n.content.querySelector("[data-views-root]");e&&(i=e)}let s=r.get(t);return s?s.parentElement||i.appendChild(s):(s=document.createElement("div"),s.dataset.viewId=t,s.style.height="100%",s.style.width="100%",s.style.display="none",i.appendChild(s),r.set(t,s)),s}showView(e,t){"primarySidebar"===e&&this.resetContentSidebar();const n=this.#te.get(e);if(!n)throw new Error(`Layout slot "${e}" not found in active profile`);const r=this.#ne.get(e);if(r?.forEach((e,n)=>{e.style.display=n===t?"block":"none"}),n.content.style.display="block","primarySidebar"===e)try{punica.shell.ActivityBar.manager.setActiveByViewId?.(t)}catch(e){console.warn("[Layout] Failed to sync ActivityBar selection:",e)}}resetContentSidebar(){const e=this.#te.get("contentSidebar");if(!e)return;const t=this.#ne.get("contentSidebar");t&&(t.forEach(e=>{e.parentElement&&e.parentElement.removeChild(e)}),t.clear()),e.content.innerHTML="";try{punica.shell?.Views?.manager?.notifySlotReset?.("contentSidebar")}catch{}}hideSlotViews(e){const t=this.#ne.get(e);t?.forEach(e=>{e.style.display="none"})}#ae(e){const t=this.#te.get(e);if(!t)return;const n=t.content.closest("punica-split");if(!n)return;let r=t.content;for(;r&&r.parentElement!==n;)r=r.parentElement;if(!r)return;const i=Array.from(n.children).filter(e=>1===e.nodeType),s=i.indexOf(r);return s<0?void 0:{split:n,index:s,count:i.length}}isSlotCollapsed(e){return this.#ie.has(e)}setSlotCollapsed(e,t){const n=this.#ae(e);if(!n)return;const{split:r,index:i,count:s}=n;if("function"==typeof r.setSizes)if(t){if(this.#ie.has(e))return;const t=(r.getSizes?.()??[]).slice();if(t.length!==s||s<2)return;this.#ie.set(e,t);const n=t.reduce((e,t,n)=>n===i?e:e+t,0),a=t.map((e,t)=>t===i?0:n>0?e/n*100:100/(s-1));r.setSizes(a)}else{const t=this.#ie.get(e);this.#ie.delete(e),t&&t.length===s&&r.setSizes(t)}}removeViewHost(e,t){const n=this.#ne.get(e),r=n?.get(t);r&&(r.parentElement&&r.parentElement.removeChild(r),n?.delete(t))}ensureViewHost(n,r){const i=this.materializeViewHost(n,r);return t()?(e({name:"shell.view.revealBlocked",source:"shell:views",kind:"warn",payload:{viewId:r,slot:n,api:"Layout.ensureViewHost"}}),console.warn(`[Shell] UI mutation during headless activation blocked: ensureViewHost("${n}", "${r}"). Register a ViewProvider (context.ui.registerViewProvider) and reveal via the shell.revealView capability instead.`),i):(this.showView(n,r),i)}#se(e,t,n){if("slot"===e.type){const n=document.createElement("div");n.style.height="100%",n.style.width="100%",n.style.overflow="hidden",t.appendChild(n);const r={id:e.id,role:e.role,content:n};return void this.#te.set(e.id,r)}const r="row"===e.type,i=document.createElement("punica-split");i.style.height="100%",i.style.width="100%",i.setAttribute("orientation",r?"horizontal":"vertical"),e.sizes&&e.sizes.length&&i.setAttribute("sizes",e.sizes.join(",")),t.appendChild(i);const s=e.children.length;for(let t=0;t<s;t++){const n=document.createElement("div");n.style.height="100%",n.style.width="100%",i.appendChild(n),this.#se(e.children[t],n,!1)}}applyApplicationProfile(e){const t=new Set(e.shell.activeModules),n=t.has("shell.activityBar"),r=t.has("shell.view"),i=t.has("shell.statusbar"),s=e.shell.layout,a=s?.id??e.identity.id,o=s?.root??q;if(this.#re={id:a,title:e.identity.name,root:o},this.#te.clear(),this.#ne.clear(),this.#ie.clear(),this.#ee.innerHTML="",this.#ee.classList.remove("layout-welcome","layout-classic"),this.#ee.classList.add(n?"layout-classic":"layout-welcome"),this.#ee.dataset.profileId=e.identity.id,n){const e=document.createElement("div");e.id="activityBar",this.#ee.appendChild(e),this.#te.set("activityBar",{id:"activityBar",role:"activityBar",content:e})}const l=document.createElement("div");if(l.id="mainContent",l.style.height="100%",l.style.width="100%",l.style.display="flex",this.#ee.appendChild(l),r){const e=document.createElement("div");e.id="primarySidebar",this.#ee.appendChild(e),this.#te.set("primarySidebar",{id:"primarySidebar",role:"primarySidebar",content:e});const t=document.createElement("div");t.id="contentSidebar",this.#ee.appendChild(t),this.#te.set("contentSidebar",{id:"contentSidebar",role:"overlay",content:t})}if(i){const e=document.createElement("div");e.id="statusbar",this.#ee.appendChild(e),this.#te.set("statusbar",{id:"statusbar",role:"statusbar",content:e})}this.#se(o,l,!0)}render(e){try{const e=window,t=e.punica?.Runtime?.runtime??e.punica?.runtime,n=t?.lifecyclePhase,r="noWorkspace"===n?H:P,i=this.#re.id===P.id||this.#re.id===H.id;this.#ee.childElementCount?i&&this.#re.id!==r.id&&this.applyProfile(r):this.applyProfile(r)}catch{this.#ee.childElementCount||this.applyProfile(this.#re)}e.appendChild(this.#ee)}}};const U=new class{#e=!1;#oe=null;#le=null;#ce=new Map;#ue=null;#de(){if(this.#e)return;const e=punica.shell.Layout.manager.getSlot("content"),t=e?.content;if(!t)return void console.warn("[ContentTabs] content host not found");t.innerHTML="";const n=document.createElement("punica-box");n.id="content-tabs-root",n.style.height="100%",n.style.display="flex",n.style.flexDirection="column";const r=document.createElement("punica-box");r.id="content-tabs-bar",r.style.height="40px",r.style.flex="0 0 auto",r.style.display="flex",r.style.alignItems="center",r.style.overflowX="auto",r.style.overflowY="hidden",r.style.backgroundColor="var(--background-paper)",r.addEventListener("wheel",e=>{r.scrollWidth<=r.clientWidth||0!==e.deltaY&&(r.scrollLeft+=e.deltaY,e.preventDefault())},{passive:!1});const i=document.createElement("punica-tab");i.setAttribute("orientation","horizontal"),i.style.width="max-content",i.style.minWidth="100%",i.style.flex="0 0 auto",i.style.height="100%",i.addEventListener("change",e=>{const t=e?.detail?.value;t&&this.#he(t)}),r.appendChild(i);const s=document.createElement("style");s.textContent="\n #content-tabs-bar::-webkit-scrollbar { height: 6px; }\n #content-tabs-bar::-webkit-scrollbar-thumb {\n background: var(--divider, rgba(255, 255, 255, 0.15));\n border-radius: 3px;\n }\n #content-tabs-bar::-webkit-scrollbar-track { background: transparent; }\n ",r.appendChild(s);const a=document.createElement("punica-box");a.id="content-tabs-panels",a.style.flex="1",a.style.height="calc(100% - 40px)",n.appendChild(r),n.appendChild(a);const o=document.createElement("punica-context-menu");o.id="content-tabs-menu",o.setAttribute("target","#content-tabs-root");const l=document.createElement("punica-context-menu-item");l.setAttribute("label","Close"),l.setAttribute("value","close"),o.appendChild(l);const c=document.createElement("punica-context-menu-item");c.setAttribute("label","Close Others"),c.setAttribute("value","closeOthers"),o.appendChild(c);const u=document.createElement("punica-context-menu-item");u.setAttribute("label","Close All"),u.setAttribute("value","closeAll"),o.appendChild(u),o.addEventListener("punica-context-menu-select",e=>{const t=e?.detail?.value;if(!t)return;const n=this.#ue||this.#oe&&this.#oe.getAttribute("value")||"";switch(t){case"close":n&&this.closeById(n);break;case"closeOthers":n&&this.closeOthersById(n);break;case"closeAll":this.closeAll()}this.#ue=null}),n.appendChild(o),t.appendChild(n),this.#oe=i,this.#le=a,this.#e=!0}#he(e){if(!this.#oe||!this.#le)return;this.#oe.setAttribute("value",e);this.#oe.querySelectorAll("punica-tab-item").forEach(t=>{t.getAttribute("value")===e?(t.style.backgroundColor="var(--background-main)",t.scrollIntoView({block:"nearest",inline:"nearest"})):t.style.backgroundColor=""});this.#le.querySelectorAll("punica-tab-panel").forEach(t=>{t.setAttribute("selectedvalue",e)});try{const t=window,n=t?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand("file-explorer.revealFile",e)}catch(e){console.warn("[ContentTabs] Failed to notify file-explorer",e)}this.#pe(e)}#pe(e){try{const t=e?Array.from(this.#ce.values()).find(t=>t.id===e):void 0;punica.shell.ActivityBar.manager.syncContentTool?.(t?.viewType??null)}catch{}}open(e){if(this.#de(),!this.#oe||!this.#le)return null;const t=this.#ce.get(e.path);if(t)return this.#he(t.id),t.container;const n=e.path,r=e.title??e.path.split("/").pop()??e.path,i=document.createElement("punica-tab-item");i.setAttribute("value",n),i.className="content-file-type",i.style.maxWidth="200px",i.style.flex="0 0 auto",i.style.padding="var(--spacing-8) var(--spacing-4) var(--spacing-8) var(--spacing-12)";const s=document.createElement("punica-row");s.setAttribute("alignitems","center"),s.setAttribute("wrap","nowrap"),s.setAttribute("spacing","0.5"),s.style.maxWidth="200px";const a=document.createElement("punica-col"),o=document.createElement("punica-typography");o.setAttribute("truncate","1"),o.style.maxWidth="150px",o.setAttribute("title",e.path),o.textContent=r,a.appendChild(o);const l=document.createElement("punica-col"),c=document.createElement("punica-icon-button");c.setAttribute("size","small"),c.setAttribute("title","Close"),c.innerHTML="<i class='fa-duotone fa-solid fa-xmark'></i>",c.addEventListener("click",t=>{t.stopPropagation(),this.close(e.path)}),l.appendChild(c),s.appendChild(a),s.appendChild(l),i.appendChild(s),i.addEventListener("contextmenu",()=>{this.#ue=n,this.#he(n)}),this.#oe.appendChild(i);const u=document.createElement("punica-tab-panel");u.setAttribute("value",n),u.setAttribute("selectedvalue",n),u.style.height="100%",u.style.width="100%",u.style.boxSizing="border-box";const d=document.createElement("div");d.style.height="100%",d.style.width="100%",d.style.boxSizing="border-box",u.appendChild(d),this.#le.appendChild(u);const h={id:n,path:e.path,title:r,viewType:e.viewType,tabElement:i,labelElement:o,container:d,panel:u,dirty:!1};return this.#ce.set(e.path,h),this.#he(n),d}async close(e){const t=this.#ce.get(e);t&&await this.#me(t)&&this.#fe(t)}async closeById(e){const t=Array.from(this.#ce.values()).find(t=>t.id===e);t&&await this.#me(t)&&this.#fe(t)}async closeOthers(e){const t=this.#ce.get(e);t&&await this.closeOthersById(t.id)}async closeOthersById(e){const t=Array.from(this.#ce.values()).filter(t=>t.id!==e);for(const e of t){if(!await this.#me(e))return;this.#fe(e)}this.#he(e)}async closeAll(){const e=Array.from(this.#ce.values());for(const t of e){if(!await this.#me(t))return;this.#fe(t)}}#fe(e){if(!this.#oe||!this.#le)return;e.tabElement.parentElement===this.#oe&&this.#oe.removeChild(e.tabElement),e.panel.parentElement===this.#le&&this.#le.removeChild(e.panel),this.#ce.delete(e.path);const t=Array.from(this.#ce.values());if(t.length>0){const e=t[t.length-1];this.#he(e.id)}else this.#oe.removeAttribute("value"),this.#pe(null)}async#me(e){if(!e.dirty)return!0;this.#he(e.id);const t=e.title||e.path.split("/").pop()||e.path,n=await punica.shell.View.showDialog({title:"Unsaved changes",message:`"${t}" has unsaved changes. Do you want to save before closing?`,tone:"warning",buttons:[{label:"Cancel",variant:"text",action:"cancel"},{label:"Don't Save",variant:"outlined",action:"discard"},{label:"Save",variant:"filled",color:"primary",action:"save"}]});if("save"===n)try{const e=punica?.kernel?.Commands?.manager;return e&&"function"==typeof e.executeCommand&&await e.executeCommand("editor.saveActiveFile"),!0}catch(e){return await punica.shell.View.showAlert({title:"Save failed",message:`Could not save "${t}". The tab was left open.`,variant:"error"}),console.warn("[ContentTabs] save before close failed",e),!1}return"discard"===n}setDirty(e,t){const n=this.#ce.get(e);if(!n)return;n.dirty=t;const r=n.title||n.path.split("/").pop()||n.path;n.labelElement.textContent=t?`${r} •`:r}getActivePath(){if(!this.#oe)return null;const e=this.#oe.getAttribute("value");if(!e)return null;const t=Array.from(this.#ce.values()).find(t=>t.id===e);return t?.path??null}getActiveViewType(){if(!this.#oe)return null;const e=this.#oe.getAttribute("value");if(!e)return null;const t=Array.from(this.#ce.values()).find(t=>t.id===e);return t?.viewType??null}},Z="punica-tabbed-container-style",K={panel:"bottom panel",secondarySidebar:"right sidebar"};let W=null;const G=[];class X{slotId;orientation;#e=!1;#m=null;#oe=null;#ge=null;#be=null;#ye=null;#ve=null;#we=null;#Ee=null;#_e=!1;#ke=new Set;#xe=new Map;#D=null;#Ae="both";#Ce=null;#De=!1;#Se=!1;constructor(e,t){this.slotId=e,this.orientation=t,G.push(this)}#Ne(e){return`${this.slotId}-${e}`}get#Te(){return"horizontal"===this.orientation}#Le(){return globalThis.punica?.shell?.PanelLayout?.manager??null}#de(){if(this.#e)return;const e=punica.shell.Layout.manager.getSlot(this.slotId),t=e?.content;if(!t)return void console.warn(`[TabbedContainer] host not found for slot "${this.slotId}"`);t.innerHTML="";const n="vertical"===this.orientation?"icon":"both";this.#Ae=this.#Le()?.getDisplayMode?.(this.slotId)??n,this.#l();const r=document.createElement("punica-box");r.id=this.#Ne("tabs-root"),r.setAttribute("data-tabbed-container",""),r.setAttribute("data-orientation",this.orientation),r.style.height="100%",r.style.width="100%",r.style.display="flex",r.style.flexDirection=this.#Te?"column":"row";const i=document.createElement("punica-box");i.style.display="flex",i.style.alignItems="center",i.style.backgroundColor="var(--background-paper)",this.#Te?(i.style.height="32px",i.style.flexDirection="row"):(i.style.width="44px",i.style.height="100%",i.style.flexDirection="column");const s=document.createElement("punica-tab");s.setAttribute("orientation",this.orientation),s.style.flex="1 1 auto",s.style.overflow="hidden",s.style.backgroundColor="var(--background-paper)",this.#Te?(s.style.minWidth="0",s.style.height="100%"):(s.style.minHeight="0",s.style.width="100%",s.style.display="flex",s.style.flexDirection="column"),s.addEventListener("change",e=>{const t=e?.detail?.value;t&&this.#Ie(t,this.#Ne("tab"))}),i.addEventListener("contextmenu",e=>{this.#Fe(e)});const a=document.createElement("punica-icon-button");a.id=this.#Ne("tab-overflow-btn"),a.setAttribute("size","x-small"),a.setAttribute("title","More tabs"),a.setAttribute("aria-label","More tabs"),a.style.flex="0 0 auto",a.style.display="none",a.innerHTML='<i class="fa-solid fa-ellipsis"></i>',a.addEventListener("click",()=>{this.#ze()});const o=document.createElement("punica-icon-button");o.id=this.#Ne("tab-show-hidden-btn"),o.setAttribute("size","x-small"),o.setAttribute("title","Show hidden tabs"),o.setAttribute("aria-label","Show hidden tabs"),o.style.flex="0 0 auto",o.style.display="none",o.innerHTML='<i class="fa-solid fa-plus"></i>',o.addEventListener("click",()=>{this.#Me()});const l=document.createElement("punica-box");l.id=this.#Ne("toolbar-area"),l.style.flex="0 0 auto",l.style.display="flex",l.style.alignItems="center",l.style.padding="0 var(--spacing-8)",i.appendChild(s),i.appendChild(o),i.appendChild(a),i.appendChild(l);const c=document.createElement("punica-menu");c.id=this.#Ne("tab-overflow-menu"),c.addEventListener("close",()=>{c.removeAttribute("open")}),c.addEventListener("menu-item-click",e=>{const t=e?.detail?.data;t&&(e.stopPropagation?.(),c.removeAttribute("open"),this.#Ie(t,this.#Ne("tab-overflow")))});const u=document.createElement("punica-menu");u.id=this.#Ne("tab-context-menu"),u.addEventListener("close",()=>{u.removeAttribute("open")}),u.addEventListener("menu-item-click",e=>{const t=e?.detail?.data;u.removeAttribute("open"),t&&this.#Oe(t)});const d=document.createElement("div");if(d.id=this.#Ne("views-root"),d.setAttribute("data-views-root",""),d.style.flex="1",this.#Te?(d.style.height="calc(100% - 32px)",d.style.width="100%"):(d.style.height="100%",d.style.width="calc(100% - 44px)"),r.appendChild(i),r.appendChild(d),r.appendChild(c),r.appendChild(u),t.appendChild(r),this.#Be(r),"undefined"!=typeof ResizeObserver){new ResizeObserver(()=>{this.#Re()}).observe(i)}this.#m=r,this.#oe=s,this.#ge=l,this.#be=a,this.#ye=c,this.#ve=o,this.#we=u,this.#e=!0}#l(){if("undefined"==typeof document)return;if(document.getElementById(Z))return;const e=document.createElement("style");e.id=Z,e.textContent="\n [data-tabbed-container] punica-tab-item {\n cursor: pointer;\n transition: background-color 0.08s ease;\n }\n [data-tabbed-container] punica-tab-item:hover {\n background-color: var(--background-main);\n }\n [data-tabbed-container] punica-tab-item[data-user-hidden] {\n display: none !important;\n }\n /* The active tab uses OUR accent only; we strip the component's selected\n attribute (its border indicator), so restore its full opacity here. */\n [data-tabbed-container] punica-tab-item[active] {\n opacity: 1;\n }\n [data-orientation='horizontal'] punica-tab-item {\n border-top: 2px solid transparent;\n }\n [data-orientation='horizontal'] punica-tab-item[active] {\n background-color: var(--background-main);\n border-top: 2px solid var(--primary-main);\n }\n [data-orientation='vertical'] punica-tab-item {\n border-left: 2px solid transparent;\n justify-content: center;\n }\n [data-orientation='vertical'] punica-tab-item[active] {\n background-color: var(--background-main);\n border-left: 2px solid var(--primary-main);\n }\n [data-tabbed-container][data-drop-target] {\n outline: 2px dashed var(--primary-main);\n outline-offset: -2px;\n }\n",document.head.appendChild(e)}#Ie(e,t){const n=globalThis.punica?.shell?.Views?.manager;if(n?.getPlacement?.(e))return n.reveal(e,{kind:"user-gesture",id:`${t}:${e}`}).catch(t=>{console.warn("[TabbedContainer] reveal failed for tab",e,t)}),void this.activateTabVisual(e);this.setActive(e)}open(e){if(this.#de(),!this.#oe)return;if(this.#xe.get(e.id))return void(!1===e.autoActivate||this.#D===e.id||this.#$e(e.id,"PanelTabs.open")||this.setActive(e.id));const t=document.createElement("punica-tab-item");t.setAttribute("value",e.id),t.setAttribute("title",e.title),t.style.flex="0 0 auto",this.#Te?(t.style.maxWidth="160px",t.style.padding="var(--spacing-6) var(--spacing-8)"):(t.style.width="100%",t.style.padding="var(--spacing-8) var(--spacing-6)",t.style.height="auto",t.style.flexGrow="0"),t.draggable=!0;const n=document.createElement("punica-row");n.setAttribute("alignitems","center"),n.setAttribute("wrap","nowrap"),n.setAttribute("spacing","0.5");let r=null;if(e.iconClass){r=document.createElement("punica-col"),r.dataset.col="icon";const t=document.createElement("punica-icon"),i=e.iconClass.trim();if(i.startsWith("<"))t.innerHTML=i;else{const e=document.createElement("i");e.className=i,t.appendChild(e)}r.appendChild(t),n.appendChild(r)}const i=document.createElement("punica-col");i.dataset.col="label";const s=document.createElement("punica-typography");s.setAttribute("truncate","1"),s.textContent=e.title,i.appendChild(s),n.appendChild(i),t.appendChild(n);const a=!0===this.#Le()?.isTabHidden?.(e.id,this.slotId);a&&t.setAttribute("data-user-hidden","");const o=this.#je(e.id,e.order),l=Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).find(e=>e.order>o);l?this.#oe.insertBefore(t,l.tabElement):this.#oe.appendChild(t);const c={id:e.id,title:e.title,commandId:e.commandId,iconClass:e.iconClass,order:o,tabElement:t,iconColEl:r,labelColEl:i,userHidden:a,toolbar:e.toolbar,toolbarEl:null};e.toolbar?.length&&this.#ge&&(c.toolbarEl=this.#Pe(e.id,e.toolbar),this.#ge.appendChild(c.toolbarEl)),this.#xe.set(e.id,c),this.#He(c),this.#qe(c),this.#Ve(),this.#Re();const u=e.autoActivate;this.#D||a||!1===u||this.#$e(e.id,"PanelTabs.open")||this.setActive(e.id)}#je(e,t){const n=this.#Le()?.getTabOrder?.(this.slotId);if(n&&n.length){const r=n.indexOf(e);return r>=0?r:1e3*n.length+(t??1e3)}return t??1e3}#He(e){const t=this.#Ae,n=!!e.iconColEl,r=n&&("icon"===t||"both"===t),i="label"===t||"both"===t||!n;e.iconColEl&&(e.iconColEl.style.display=r?"":"none"),e.labelColEl&&(e.labelColEl.style.display=i?"":"none")}#Pe(e,t){const n=document.createElement("div");n.dataset.viewId=e,n.style.display="none",n.style.alignItems="center",n.style.gap="var(--spacing-4)";for(const e of t){if(!e?.command)continue;const t=document.createElement("punica-icon-button");t.setAttribute("size","x-small"),t.setAttribute("title",e.title??e.command),t.setAttribute("aria-label",e.title??e.command),t.dataset.actionId=e.id,t.style.flex="0 0 auto",t.innerHTML=e.icon??"",t.addEventListener("click",()=>{try{const t=window,n=t?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand(e.command)}catch(t){console.warn("[TabbedContainer] Failed to execute toolbar command",e.command,t)}}),n.appendChild(t)}return n}#$e(n,r){return!!t()&&(e({name:"shell.view.revealBlocked",source:"shell:views",kind:"warn",payload:{viewId:n,slot:this.slotId,api:r}}),console.warn(`[Shell] UI mutation during headless activation blocked: ${r}("${n}"). Declare the tab without autoActivate and reveal via the shell.revealView capability instead.`),!0)}activateTabVisual(e){if(!this.#oe)return;if(!this.#xe.get(e))return;this.#D=e,this.#oe.setAttribute("value",e);this.#oe.querySelectorAll("punica-tab-item").forEach(t=>{const n=t.getAttribute("value");t.removeAttribute("selected"),n===e?(t.setAttribute("active",""),t.setAttribute("aria-selected","true")):(t.removeAttribute("active"),t.setAttribute("aria-selected","false"))}),this.#xe.forEach(t=>{t.toolbarEl&&(t.toolbarEl.style.display=t.id===e?"flex":"none")}),this.recomputeOverflow()}close(e,t){if(!this.#oe)return;const n=this.#xe.get(e);if(n&&(n.tabElement.parentElement===this.#oe&&this.#oe.removeChild(n.tabElement),n.toolbarEl&&(n.toolbarEl.remove(),n.toolbarEl=null),this.#ke.delete(e),this.#xe.delete(e),this.#Re(),this.#D===e)){const e=Array.from(this.#xe.values()).filter(e=>!e.userHidden).sort((e,t)=>e.order-t.order);this.#D=null,!t?.silent&&e.length>0?this.setActive(e[0].id):this.#oe.removeAttribute("value")}}closeAll(){this.#oe&&Array.from(this.#xe.keys()).forEach(e=>this.close(e))}setActive(e){if(!this.#oe)return;const t=this.#xe.get(e);if(t&&!this.#$e(e,"PanelTabs.setActive")&&(this.activateTabVisual(e),t.commandId))try{const e=window,n=e?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand(t.commandId)}catch(e){console.warn("[TabbedContainer] Failed to execute command",t.commandId,e)}}getActiveId(){return this.#D}getDisplayMode(){return this.#Ae}setDisplayMode(e){this.#Ae=e,this.#xe.forEach(e=>this.#He(e)),this.#Le()?.setDisplayMode?.(e,{slot:this.slotId}),this.#Re()}hideTab(e){const t=this.#xe.get(e);if(t&&!t.userHidden){if(t.userHidden=!0,t.tabElement.setAttribute("data-user-hidden",""),this.#Le()?.setTabHidden?.(e,!0,{slot:this.slotId}),this.#Ve(),this.#D===e){this.#D=null,this.#oe?.removeAttribute("value"),t.tabElement.removeAttribute("active");const e=Array.from(this.#xe.values()).filter(e=>!e.userHidden).sort((e,t)=>e.order-t.order)[0];e&&this.#Ie(e.id,this.#Ne("tab-hide"))}this.#Re()}}showTab(e){const t=this.#xe.get(e);t&&t.userHidden&&(t.userHidden=!1,t.tabElement.removeAttribute("data-user-hidden"),this.#Le()?.setTabHidden?.(e,!1,{slot:this.slotId}),this.#Ve(),this.#Re(),this.#Ie(e,this.#Ne("tab-show")))}setUserOrder(e){this.#oe&&(e.forEach((e,t)=>{const n=this.#xe.get(e);n&&(n.order=t,this.#oe.appendChild(n.tabElement))}),Array.from(this.#xe.values()).filter(t=>!e.includes(t.id)).sort((e,t)=>e.order-t.order).forEach((t,n)=>{t.order=e.length+n,this.#oe.appendChild(t.tabElement)}),this.#Le()?.setTabOrder?.(this.#Ue(),{slot:this.slotId}),this.#Re())}listTabs(){return Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).map(e=>({id:e.id,title:e.title,userHidden:e.userHidden}))}#Ue(){return Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).map(e=>e.id)}#qe(e){const t=e.tabElement;t.addEventListener("dragstart",t=>{this.#Ce=e.id,W={viewId:e.id,sourceSlot:this.slotId},t.dataTransfer?.setData("application/x-punica-view",e.id),t.dataTransfer&&(t.dataTransfer.effectAllowed="move"),function(){for(const e of G)e.armDropZone()}()}),t.addEventListener("dragend",()=>{this.#Ce=null,W=null,function(){for(const e of G)e.disarmDropZone()}()}),t.addEventListener("dragover",t=>{this.#Ce&&this.#Ce!==e.id&&t.preventDefault()}),t.addEventListener("drop",t=>{t.preventDefault();const n=this.#Ce;if(this.#Ce=null,!n||n===e.id)return;const r=this.#Te?t.clientX:t.clientY;this.#Ze(n,e.id,r)})}#Ze(e,t,n){const r=this.#xe.get(t);if(!r)return;const i=r.tabElement.getBoundingClientRect(),s=this.#Te?n>i.left+i.width/2:n>i.top+i.height/2,a=this.#Ue().filter(t=>t!==e),o=a.indexOf(t),l=s?o+1:o;a.splice(l,0,e),this.setUserOrder(a)}#Be(e){e.addEventListener("dragover",e=>{this.#Ke()&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="move"),this.#m?.setAttribute("data-drop-target",""))}),e.addEventListener("dragleave",t=>{e.contains(t.relatedTarget)||this.#m?.removeAttribute("data-drop-target")}),e.addEventListener("drop",e=>{this.#m?.removeAttribute("data-drop-target");const t=W;t&&this.#Ke()&&(e.preventDefault(),e.stopPropagation(),this.#Se=!0,W=null,this.#We(t.viewId,this.slotId))})}armDropZone(){if(this.#Se=!1,!this.#Ke())return;this.#de();const e=punica.shell.Layout.manager;e.isSlotCollapsed?.(this.slotId)&&(e.setSlotCollapsed(this.slotId,!1),this.#De=!0)}disarmDropZone(){this.#m?.removeAttribute("data-drop-target"),this.#De&&!this.#Se&&punica.shell.Layout.manager.setSlotCollapsed(this.slotId,!0),this.#De=!1,this.#Se=!1}#Ke(){const e=W;if(!e||e.sourceSlot===this.slotId)return!1;const t=globalThis.punica?.shell?.Views?.manager?.getPlacement?.(e.viewId),n=t?.allowedSlots;return Array.isArray(n)&&n.includes(this.slotId)}#We(e,t){const n=globalThis.punica?.shell?.Views?.manager;"function"==typeof n?.moveView&&n.moveView(e,t,{kind:"user-gesture",id:`view-dnd:${e}`}).catch(t=>{console.warn("[TabbedContainer] moveView failed",e,t)})}#Fe(e){const t=this.#we;if(!t)return;e.preventDefault();const n=e.target?.closest?.("punica-tab-item");if(t.innerHTML="",n){const e=n.getAttribute("value");if(e){this.#Ge(t,`hide:${e}`,"Hide tab");const n=globalThis.punica?.shell?.Views?.manager?.getPlacement?.(e);(n?.allowedSlots??[]).filter(e=>e!==this.slotId).forEach(n=>{this.#Ge(t,`move:${e}:${n}`,`Move to ${K[n]??n}`)})}}this.#Ge(t,"display:both",("both"===this.#Ae?"● ":"")+"Show icons and labels"),this.#Ge(t,"display:icon",("icon"===this.#Ae?"● ":"")+"Show icons only"),this.#Ge(t,"display:label",("label"===this.#Ae?"● ":"")+"Show labels only"),this.#Xe(t,e.clientX,e.clientY)}#Oe(e){const t=e.split(":"),n=t[0];"hide"===n&&t[1]?this.hideTab(t[1]):"display"===n&&t[1]?this.setDisplayMode(t[1]):"show"===n&&t[1]?this.showTab(t[1]):"move"===n&&t[1]&&t[2]&&this.#We(t[1],t[2])}#Ge(e,t,n){const r=document.createElement("punica-menu-item");r.setAttribute("data-item",t),r.setAttribute("aria-label",n);const i=document.createElement("punica-typography");i.textContent=n,r.appendChild(i),e.appendChild(r)}#Xe(e,t,n){e.setAttribute("top",String(n)),e.setAttribute("left",String(t)),e.setAttribute("bottom",String(n)),e.setAttribute("placement","bottom"),e.setAttribute("open","true")}#Me(){const e=this.#we,t=this.#ve;if(!e||!t)return;e.innerHTML="",Array.from(this.#xe.values()).filter(e=>e.userHidden).sort((e,t)=>e.order-t.order).forEach(t=>this.#Ge(e,`show:${t.id}`,t.title));const n=t.getBoundingClientRect();this.#Xe(e,n.left,n.bottom)}#Ve(){const e=this.#ve;if(!e)return;const t=Array.from(this.#xe.values()).some(e=>e.userHidden);e.style.display=t?"inline-flex":"none"}#Re(){if(this.#_e)return;this.#_e=!0;const e=()=>{this.#_e=!1,this.recomputeOverflow()};"function"==typeof requestAnimationFrame?requestAnimationFrame(e):setTimeout(e,0)}#Je(){const e=this.#oe;return e?this.#Te?e.clientWidth:e.clientHeight:0}#Qe(e){return this.#Te?e.offsetWidth:e.offsetHeight}recomputeOverflow(){const e=this.#oe;if(!e)return;const t=Array.from(e.querySelectorAll("punica-tab-item")).filter(e=>!e.hasAttribute("data-user-hidden"));if(t.forEach(e=>{e.style.display=""}),0===t.length)return this.#ke.clear(),void this.#Ye(!1);const n=this.#Je();if(n<=0)return this.#ke.clear(),void this.#Ye(!1);const r=t.map(e=>this.#Qe(e));if(r.reduce((e,t)=>e+t,0)<=n)return this.#ke.clear(),void this.#Ye(!1);const i=n-this.#et(),s=t.findIndex(e=>e.getAttribute("value")===this.#D);let a=s>=0?r[s]:0;const o=new Set;let l=!0;t.forEach((e,t)=>{if(t===s)return;if(l&&a+r[t]<=i)return void(a+=r[t]);l=!1,e.style.display="none";const n=e.getAttribute("value");n&&o.add(n)}),this.#ke=o,this.#Ye(o.size>0)}#Ye(e){const t=this.#be;t&&(t.style.display=e?"inline-flex":"none",e||this.#ye?.removeAttribute("open"))}#et(){if(null!=this.#Ee)return this.#Ee;const e=this.#be;if(!e)return 28;const t=e.style.display;e.style.display="inline-flex";const n=this.#Qe(e)||28;return e.style.display=t,this.#Ee=n,n}#ze(){const e=this.#ye,t=this.#be,n=this.#oe;if(!e||!t||!n||0===this.#ke.size)return;e.innerHTML="",n.querySelectorAll("punica-tab-item").forEach(t=>{const n=t.getAttribute("value");if(!n||!this.#ke.has(n))return;const r=this.#xe.get(n);if(!r)return;const i=document.createElement("punica-menu-item");i.setAttribute("data-item",n),i.setAttribute("aria-label",r.title);const s=document.createElement("punica-typography");s.textContent=r.title,i.appendChild(s),e.appendChild(i)});const r=t.getBoundingClientRect();e.setAttribute("top",String(r.top)),e.setAttribute("left",String(r.left)),e.setAttribute("width",String(r.width)),e.setAttribute("height",String(r.height)),e.setAttribute("bottom",String(r.bottom)),e.setAttribute("placement","bottom"),e.setAttribute("open","true")}}const J=new class extends X{constructor(){super("panel","horizontal")}},Q=new X("secondarySidebar","vertical"),Y={bottom:J,right:Q,forSlot:e=>"panel"===e?J:"secondarySidebar"===e?Q:null},ee="panel.tabDisplay",te="panel.hiddenTabs",ne="panel.tabOrder",re="view.slotOverrides",ie="panel";function se(){return globalThis.punica?.extensions?.settings?.manager??null}function ae(){try{const e=globalThis.punica?.shell?.Profile?.manager?.registry?.getActive?.();return e?.shell??null}catch{return null}}const oe=new class{#tt=!1;#nt=null;#rt=new Map;#it={};async load(){const e=se();if(this.#nt=e,e){try{await e.load()}catch(e){console.warn("[PanelLayout] settings.load() failed",e)}this.#it=this.#st(e.get("system",re))??{}}this.#tt=!0}getDisplayMode(e=ie){const t=this.#at(this.#ot(ee,e));if(t)return t;if(e===ie){const e=this.#at(ae()?.panel?.tabDisplay);if(e)return e}return e===ie?"both":"icon"}getHiddenTabs(e=ie){const t=this.#lt(this.#ot(te,e));if(t)return t;if(e===ie){const e=this.#lt(ae()?.panel?.hiddenTabs);if(e)return e}return[]}isTabHidden(e,t=ie){return this.getHiddenTabs(t).includes(e)}getTabOrder(e=ie){const t=this.#lt(this.#ot(ne,e));return t||(e===ie?this.#lt(ae()?.panel?.tabOrder):void 0)}getSlotOverride(e){const t=this.#it[e];if(void 0!==t)return t;const n=this.#st(ae()?.viewDefaults?.slotOverrides);return n?.[e]}async setDisplayMode(e,t){await this.#ct(ee,e,t)}async setTabHidden(e,t,n){const r=n?.slot??ie,i=new Set(this.getHiddenTabs(r));t?i.add(e):i.delete(e),await this.#ct(te,Array.from(i),n)}async setTabOrder(e,t){await this.#ct(ne,[...e],t)}async setSlotOverride(e,t,n,r){const i={...this.#it};t===n?delete i[e]:i[e]=t,this.#it=i,await this.#ut(re,i,r)}#dt(e,t){return t===ie?e:`${e}.${t}`}#ot(e,t){const n=this.#dt(e,t);if(this.#rt.has(n))return this.#rt.get(n);const r=this.#nt?.get?.("system",n);return this.#rt.set(n,r),r}async#ct(e,t,n){const r=n?.slot??ie,i=this.#dt(e,r);this.#rt.set(i,t),await this.#ut(i,t,n)}async#ut(e,t,n){const r=se();if(!r)return;const i=n?.workspace?"project":"global";try{await r.set("system",e,t,i)}catch(t){console.warn("[PanelLayout] failed to persist",e,t)}}#at(e){return"icon"===e||"label"===e||"both"===e?e:void 0}#lt(e){return Array.isArray(e)&&e.every(e=>"string"==typeof e)?e:void 0}#st(e){if(!e||"object"!=typeof e||Array.isArray(e))return;const t={};for(const[n,r]of Object.entries(e))"string"==typeof r&&(t[n]=r);return t}},le={};function ce(e,t){"string"!=typeof t&&(t=ce.defaultChars);const n=function(e){let t=le[e];if(t)return t;t=le[e]=[];for(let e=0;e<128;e++){const n=String.fromCharCode(e);t.push(n)}for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);t[r]="%"+("0"+r.toString(16).toUpperCase()).slice(-2)}return t}(t);return e.replace(/(%[a-f0-9]{2})+/gi,function(e){let t="";for(let r=0,i=e.length;r<i;r+=3){const s=parseInt(e.slice(r+1,r+3),16);if(s<128)t+=n[s];else{if(192==(224&s)&&r+3<i){const n=parseInt(e.slice(r+4,r+6),16);if(128==(192&n)){const e=s<<6&1984|63&n;t+=e<128?"��":String.fromCharCode(e),r+=3;continue}}if(224==(240&s)&&r+6<i){const n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16);if(128==(192&n)&&128==(192&i)){const e=s<<12&61440|n<<6&4032|63&i;t+=e<2048||e>=55296&&e<=57343?"���":String.fromCharCode(e),r+=6;continue}}if(240==(248&s)&&r+9<i){const n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16),a=parseInt(e.slice(r+10,r+12),16);if(128==(192&n)&&128==(192&i)&&128==(192&a)){let e=s<<18&1835008|n<<12&258048|i<<6&4032|63&a;e<65536||e>1114111?t+="����":(e-=65536,t+=String.fromCharCode(55296+(e>>10),56320+(1023&e))),r+=9;continue}}t+="�"}}return t})}ce.defaultChars=";/?:@&=+$,#",ce.componentChars="";const ue={};function de(e,t,n){"string"!=typeof t&&(n=t,t=de.defaultChars),void 0===n&&(n=!0);const r=function(e){let t=ue[e];if(t)return t;t=ue[e]=[];for(let e=0;e<128;e++){const n=String.fromCharCode(e);/^[0-9a-z]$/i.test(n)?t.push(n):t.push("%"+("0"+e.toString(16).toUpperCase()).slice(-2))}for(let n=0;n<e.length;n++)t[e.charCodeAt(n)]=e[n];return t}(t);let i="";for(let t=0,s=e.length;t<s;t++){const a=e.charCodeAt(t);if(n&&37===a&&t+2<s&&/^[0-9a-f]{2}$/i.test(e.slice(t+1,t+3)))i+=e.slice(t,t+3),t+=2;else if(a<128)i+=r[a];else if(a>=55296&&a<=57343){if(a>=55296&&a<=56319&&t+1<s){const n=e.charCodeAt(t+1);if(n>=56320&&n<=57343){i+=encodeURIComponent(e[t]+e[t+1]),t++;continue}}i+="%EF%BF%BD"}else i+=encodeURIComponent(e[t])}return i}function he(e){let t="";return t+=e.protocol||"",t+=e.slashes?"//":"",t+=e.auth?e.auth+"@":"",e.hostname&&-1!==e.hostname.indexOf(":")?t+="["+e.hostname+"]":t+=e.hostname||"",t+=e.port?":"+e.port:"",t+=e.pathname||"",t+=e.search||"",t+=e.hash||"",t}function pe(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}de.defaultChars=";/?:@&=+$,-_.!~*'()#",de.componentChars="-_.!~*'()";const me=/^([a-z0-9.+-]+:)/i,fe=/:[0-9]*$/,ge=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,be=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),ye=["'"].concat(be),ve=["%","/","?",";","#"].concat(ye),we=["/","?","#"],Ee=/^[+a-z0-9A-Z_-]{0,63}$/,_e=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ke={javascript:!0,"javascript:":!0},xe={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function Ae(e,t){if(e&&e instanceof pe)return e;const n=new pe;return n.parse(e,t),n}pe.prototype.parse=function(e,t){let n,r,i,s=e;if(s=s.trim(),!t&&1===e.split("#").length){const e=ge.exec(s);if(e)return this.pathname=e[1],e[2]&&(this.search=e[2]),this}let a=me.exec(s);if(a&&(a=a[0],n=a.toLowerCase(),this.protocol=a,s=s.substr(a.length)),(t||a||s.match(/^\/\/[^@\/]+@[^@\/]+/))&&(i="//"===s.substr(0,2),!i||a&&ke[a]||(s=s.substr(2),this.slashes=!0)),!ke[a]&&(i||a&&!xe[a])){let e,t,n=-1;for(let e=0;e<we.length;e++)r=s.indexOf(we[e]),-1!==r&&(-1===n||r<n)&&(n=r);t=-1===n?s.lastIndexOf("@"):s.lastIndexOf("@",n),-1!==t&&(e=s.slice(0,t),s=s.slice(t+1),this.auth=e),n=-1;for(let e=0;e<ve.length;e++)r=s.indexOf(ve[e]),-1!==r&&(-1===n||r<n)&&(n=r);-1===n&&(n=s.length),":"===s[n-1]&&n--;const i=s.slice(0,n);s=s.slice(n),this.parseHost(i),this.hostname=this.hostname||"";const a="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!a){const e=this.hostname.split(/\./);for(let t=0,n=e.length;t<n;t++){const n=e[t];if(n&&!n.match(Ee)){let r="";for(let e=0,t=n.length;e<t;e++)n.charCodeAt(e)>127?r+="x":r+=n[e];if(!r.match(Ee)){const r=e.slice(0,t),i=e.slice(t+1),a=n.match(_e);a&&(r.push(a[1]),i.unshift(a[2])),i.length&&(s=i.join(".")+s),this.hostname=r.join(".");break}}}}this.hostname.length>255&&(this.hostname=""),a&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}const o=s.indexOf("#");-1!==o&&(this.hash=s.substr(o),s=s.slice(0,o));const l=s.indexOf("?");return-1!==l&&(this.search=s.substr(l),s=s.slice(0,l)),s&&(this.pathname=s),xe[n]&&this.hostname&&!this.pathname&&(this.pathname=""),this},pe.prototype.parseHost=function(e){let t=fe.exec(e);t&&(t=t[0],":"!==t&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)};var Ce,De=Object.freeze({__proto__:null,decode:ce,encode:de,format:he,parse:Ae}),Se=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Ne=/[\0-\x1F\x7F-\x9F]/,Te=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/,Le=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/,Ie=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,Fe=Object.freeze({__proto__:null,Any:Se,Cc:Ne,Cf:/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/,P:Te,S:Le,Z:Ie}),ze=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲϏϢϸontourIntegraìȹoɴ\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲy;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱còJTabcdfgorstרׯؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ߂ߐĀiyޱrc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣসে্ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४ĀnrࢃgleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpwਖਛgȀLRlr৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼અઋp;椅y;䐜Ādl੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑඞcy;䐊cute;䅃ƀaeyહાron;䅇dil;䅅;䐝ƀgswે૰ativeƀMTV૨ediumSpace;怋hiĀcn૦ëeryThiîtedĀGLଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷreak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater;EFGLSTஶஷ扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨setĀ;Eೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂෛ෧ขภยา฿ไlig;䅒cute耻Ó䃓Āiyීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲcr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬืde耻Õ䃕es;樷ml耻Ö䃖erĀBP๋Āar๐๓r;怾acĀek๚;揞et;掴arenthesis;揜ҀacfhilorsງຊຏຒດຝະrtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ檻cedesȀ;EST່້扺qual;檯lantEqual;扼ilde;找me;怳Ādpuct;戏ortionĀ;aȥl;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL憒ar;懥eftArrow;懄eiling;按oǵ\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄቕቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHcቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗ĀeiቻDzኀ\0ኇefore;戴a;䎘ĀcnኘkSpace;쀀 Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtèa;䎖r;愨pf;愤cr;쀀𝒵ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒;Eaeiopᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;eᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;eᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰᝃᝈ០៦ᠹᡐᜍ᥈ᥰot;櫭ĀcrᛶkȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀakoᠦᠵĀcn៲ᠣkƀlst֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ;敛;敘;攘;攔;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģbar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;elƀ;bhᥨᥩᥫ䁜;槅sub;柈ŬᥴlĀ;e怢t»pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭒\0᯽\0ᰌƀcprᦲute;䄇̀;abcdsᦿᧀᧄ᧕᧙戩nd;橄rcup;橉Āau᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r;Ecefms᩠ᩢᩫ᪤᪪旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ\0\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»eóɍǧ\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯delprvw᭠᭬᭷ᮂᮬᯔarrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;pᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰻᰿ᱝᱩᱵᲞᲬᲷᴍᵻᶑᶫᶻ᷆᷍ròar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂᳖᳜᳠mƀ;oș᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄĀDoḆᴴoôĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»ṺƀaeiἒἚls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧\0耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₥₰₴⃰℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽ƀ;qsؾٌlanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqrⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0proør;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼ròòΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonóquigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roøurĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨íistĀ;sடr;쀀𝔫ȀEest⩦⩹⩼ƀ;qs⩭ƀ;qs⩴lanôií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast⭕⭚⭟lleìl;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖchimpqu⮽⯍⯙⬄⯤⯯Ȁ;cerല⯆ഷ⯉uå;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭ååഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñĀ;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;cⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācrir;榿;쀀𝔬ͯ\0\0\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕⶥⶨrò᪀Āirⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔǒr;榷rp;榹;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ\0\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ脀¶;l䂶leìЃɩ\0\0m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳ᤈ⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t⾴ïrel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⋢⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔ABHabcdefhilmnoprstuxけさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstwガクシスゼゾダッデナp;極Ā;fゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ìâヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘rrowĀ;tㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowóarpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓ròaòՑ;怏oustĀ;a㈞掱che»mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì耻䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;qኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫwar;椪lig耻ß䃟㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rëƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproøim»ኬsðኞĀas㚺㚮ðrn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈadempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xôheadĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roðtré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜtré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map(e=>e.charCodeAt(0))),Me=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map(e=>e.charCodeAt(0)));const Oe=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),Be=null!==(Ce=String.fromCodePoint)&&void 0!==Ce?Ce:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+=String.fromCharCode(e),t};var Re;!function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(Re||(Re={}));var $e,je,Pe;function He(e){return e>=Re.ZERO&&e<=Re.NINE}function qe(e){return e>=Re.UPPER_A&&e<=Re.UPPER_F||e>=Re.LOWER_A&&e<=Re.LOWER_F}function Ve(e){return e===Re.EQUALS||function(e){return e>=Re.UPPER_A&&e<=Re.UPPER_Z||e>=Re.LOWER_A&&e<=Re.LOWER_Z||He(e)}(e)}!function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}($e||($e={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(je||(je={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(Pe||(Pe={}));class Ue{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=je.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Pe.Strict}startEntity(e){this.decodeMode=e,this.state=je.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case je.EntityStart:return e.charCodeAt(t)===Re.NUM?(this.state=je.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=je.NamedEntity,this.stateNamedEntity(e,t));case je.NumericStart:return this.stateNumericStart(e,t);case je.NumericDecimal:return this.stateNumericDecimal(e,t);case je.NumericHex:return this.stateNumericHex(e,t);case je.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===Re.LOWER_X?(this.state=je.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=je.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){const i=n-t;this.result=this.result*Math.pow(r,i)+parseInt(e.substr(t,i),r),this.consumed+=i}}stateNumericHex(e,t){const n=t;for(;t<e.length;){const r=e.charCodeAt(t);if(!He(r)&&!qe(r))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(r,3);t+=1}return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){const n=t;for(;t<e.length;){const r=e.charCodeAt(t);if(!He(r))return this.addToNumericResult(e,n,t,10),this.emitNumericEntity(r,2);t+=1}return this.addToNumericResult(e,n,t,10),-1}emitNumericEntity(e,t){var n;if(this.consumed<=t)return null===(n=this.errors)||void 0===n||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===Re.SEMI)this.consumed+=1;else if(this.decodeMode===Pe.Strict)return 0;return this.emitCodePoint(function(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=Oe.get(e))&&void 0!==t?t:e}(this.result),this.consumed),this.errors&&(e!==Re.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){const{decodeTree:n}=this;let r=n[this.treeIndex],i=(r&$e.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){const s=e.charCodeAt(t);if(this.treeIndex=Ke(n,r,this.treeIndex+Math.max(1,i),s),this.treeIndex<0)return 0===this.result||this.decodeMode===Pe.Attribute&&(0===i||Ve(s))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&$e.VALUE_LENGTH)>>14,0!==i){if(s===Re.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Pe.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;const{result:t,decodeTree:n}=this,r=(n[t]&$e.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){const{decodeTree:r}=this;return this.emitCodePoint(1===t?r[e]&~$e.VALUE_LENGTH:r[e+1],n),3===t&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case je.NamedEntity:return 0===this.result||this.decodeMode===Pe.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case je.NumericDecimal:return this.emitNumericEntity(0,2);case je.NumericHex:return this.emitNumericEntity(0,3);case je.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case je.EntityStart:return 0}}}function Ze(e){let t="";const n=new Ue(e,e=>t+=Be(e));return function(e,r){let i=0,s=0;for(;(s=e.indexOf("&",s))>=0;){t+=e.slice(i,s),n.startEntity(r);const a=n.write(e,s+1);if(a<0){i=s+n.end();break}i=s+a,s=0===a?i+1:i}const a=t+e.slice(i);return t="",a}}function Ke(e,t,n,r){const i=(t&$e.BRANCH_LENGTH)>>7,s=t&$e.JUMP_TABLE;if(0===i)return 0!==s&&r===s?n:-1;if(s){const t=r-s;return t<0||t>=i?-1:e[n+t]-1}let a=n,o=a+i-1;for(;a<=o;){const t=a+o>>>1,n=e[t];if(n<r)a=t+1;else{if(!(n>r))return e[t+i];o=t-1}}return-1}const We=Ze(ze);function Ge(e){return"[object String]"===function(e){return Object.prototype.toString.call(e)}(e)}Ze(Me);const Xe=Object.prototype.hasOwnProperty;function Je(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){if(t){if("object"!=typeof t)throw new TypeError(t+"must be object");Object.keys(t).forEach(function(n){e[n]=t[n]})}}),e}function Qe(e,t,n){return[].concat(e.slice(0,t),n,e.slice(t+1))}function Ye(e){return!(e>=55296&&e<=57343)&&(!(e>=64976&&e<=65007)&&(!!(65535&~e&&65534!=(65535&e))&&(!(e>=0&&e<=8)&&(11!==e&&(!(e>=14&&e<=31)&&(!(e>=127&&e<=159)&&!(e>1114111)))))))}function et(e){if(e>65535){const t=55296+((e-=65536)>>10),n=56320+(1023&e);return String.fromCharCode(t,n)}return String.fromCharCode(e)}const tt=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,nt=new RegExp(tt.source+"|"+/&([a-z#][a-z0-9]{1,31});/gi.source,"gi"),rt=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function it(e,t){if(35===t.charCodeAt(0)&&rt.test(t)){const n="x"===t[1].toLowerCase()?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Ye(n)?et(n):e}const n=function(e,t=Pe.Legacy){return We(e,t)}(e);return n!==e?n:e}function st(e){return e.indexOf("\\")<0&&e.indexOf("&")<0?e:e.replace(nt,function(e,t,n){return t||it(e,n)})}const at=/[&<>"]/,ot=/[&<>"]/g,lt={"&":"&","<":"<",">":">",'"':"""};function ct(e){return lt[e]}function ut(e){return at.test(e)?e.replace(ot,ct):e}const dt=/[.?*+^$[\]\\(){}|-]/g;function ht(e){switch(e){case 9:case 32:return!0}return!1}function pt(e){if(e>=8192&&e<=8202)return!0;switch(e){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function mt(e){return Te.test(e)||Le.test(e)}function ft(e){return mt(et(e))}function gt(e){switch(e){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function bt(e){return e=e.trim().replace(/\s+/g," "),"Ṿ"==="ẞ".toLowerCase()&&(e=e.replace(/ẞ/g,"ß")),e.toLowerCase().toUpperCase()}function yt(e){return 32===e||9===e||10===e||13===e}function vt(e){let t=0;for(;t<e.length&&yt(e.charCodeAt(t));t++);let n=e.length-1;for(;n>=t&&yt(e.charCodeAt(n));n--);return e.slice(t,n+1)}const wt={mdurl:De,ucmicro:Fe};var Et=Object.freeze({__proto__:null,arrayReplaceAt:Qe,asciiTrim:vt,assign:Je,escapeHtml:ut,escapeRE:function(e){return e.replace(dt,"\\$&")},fromCodePoint:et,has:function(e,t){return Xe.call(e,t)},isMdAsciiPunct:gt,isPunctChar:mt,isPunctCharCode:ft,isSpace:ht,isString:Ge,isValidEntityCode:Ye,isWhiteSpace:pt,lib:wt,normalizeReference:bt,unescapeAll:st,unescapeMd:function(e){return e.indexOf("\\")<0?e:e.replace(tt,"$1")}});var _t=Object.freeze({__proto__:null,parseLinkDestination:function(e,t,n){let r,i=t;const s={ok:!1,pos:0,str:""};if(60===e.charCodeAt(i)){for(i++;i<n;){if(r=e.charCodeAt(i),10===r)return s;if(60===r)return s;if(62===r)return s.pos=i+1,s.str=st(e.slice(t+1,i)),s.ok=!0,s;92===r&&i+1<n?i+=2:i++}return s}let a=0;for(;i<n&&(r=e.charCodeAt(i),32!==r)&&!(r<32||127===r);)if(92===r&&i+1<n){if(32===e.charCodeAt(i+1))break;i+=2}else{if(40===r&&(a++,a>32))return s;if(41===r){if(0===a)break;a--}i++}return t===i||0!==a||(s.str=st(e.slice(t,i)),s.pos=i,s.ok=!0),s},parseLinkLabel:function(e,t,n){let r,i,s,a;const o=e.posMax,l=e.pos;for(e.pos=t+1,r=1;e.pos<o;){if(s=e.src.charCodeAt(e.pos),93===s&&(r--,0===r)){i=!0;break}if(a=e.pos,e.md.inline.skipToken(e),91===s)if(a===e.pos-1)r++;else if(n)return e.pos=l,-1}let c=-1;return i&&(c=e.pos),e.pos=l,c},parseLinkTitle:function(e,t,n,r){let i,s=t;const a={ok:!1,can_continue:!1,pos:0,str:"",marker:0};if(r)a.str=r.str,a.marker=r.marker;else{if(s>=n)return a;let r=e.charCodeAt(s);if(34!==r&&39!==r&&40!==r)return a;t++,s++,40===r&&(r=41),a.marker=r}for(;s<n;){if(i=e.charCodeAt(s),i===a.marker)return a.pos=s+1,a.str+=st(e.slice(t,s)),a.ok=!0,a;if(40===i&&41===a.marker)return a;92===i&&s+1<n&&s++,s++}return a.can_continue=!0,a.str+=st(e.slice(t,s)),a}});const kt={};function xt(){this.rules=Je({},kt)}function At(){this.__rules__=[],this.__cache__=null}function Ct(e,t,n){this.type=e,this.tag=t,this.attrs=null,this.map=null,this.nesting=n,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}function Dt(e,t,n){this.src=e,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=t}kt.code_inline=function(e,t,n,r,i){const s=e[t];return"<code"+i.renderAttrs(s)+">"+ut(s.content)+"</code>"},kt.code_block=function(e,t,n,r,i){const s=e[t];return"<pre"+i.renderAttrs(s)+"><code>"+ut(e[t].content)+"</code></pre>\n"},kt.fence=function(e,t,n,r,i){const s=e[t],a=s.info?st(s.info).trim():"";let o,l="",c="";if(a){const e=a.split(/(\s+)/g);l=e[0],c=e.slice(2).join("")}if(o=n.highlight&&n.highlight(s.content,l,c)||ut(s.content),0===o.indexOf("<pre"))return o+"\n";if(a){const e=s.attrIndex("class"),t=s.attrs?s.attrs.slice():[];e<0?t.push(["class",n.langPrefix+l]):(t[e]=t[e].slice(),t[e][1]+=" "+n.langPrefix+l);const r={attrs:t};return`<pre><code${i.renderAttrs(r)}>${o}</code></pre>\n`}return`<pre><code${i.renderAttrs(s)}>${o}</code></pre>\n`},kt.image=function(e,t,n,r,i){const s=e[t];return s.attrs[s.attrIndex("alt")][1]=i.renderInlineAsText(s.children,n,r),i.renderToken(e,t,n)},kt.hardbreak=function(e,t,n){return n.xhtmlOut?"<br />\n":"<br>\n"},kt.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?"<br />\n":"<br>\n":"\n"},kt.text=function(e,t){return ut(e[t].content)},kt.html_block=function(e,t){return e[t].content},kt.html_inline=function(e,t){return e[t].content},xt.prototype.renderAttrs=function(e){let t,n,r;if(!e.attrs)return"";for(r="",t=0,n=e.attrs.length;t<n;t++)r+=" "+ut(e.attrs[t][0])+'="'+ut(e.attrs[t][1])+'"';return r},xt.prototype.renderToken=function(e,t,n){const r=e[t];let i="";if(r.hidden)return"";r.block&&-1!==r.nesting&&t&&e[t-1].hidden&&(i+="\n"),i+=(-1===r.nesting?"</":"<")+r.tag,i+=this.renderAttrs(r),0===r.nesting&&n.xhtmlOut&&(i+=" /");let s=!1;if(r.block&&(s=!0,1===r.nesting&&t+1<e.length)){const n=e[t+1];("inline"===n.type||n.hidden||-1===n.nesting&&n.tag===r.tag)&&(s=!1)}return i+=s?">\n":">",i},xt.prototype.renderInline=function(e,t,n){let r="";const i=this.rules;for(let s=0,a=e.length;s<a;s++){const a=e[s].type;void 0!==i[a]?r+=i[a](e,s,t,n,this):r+=this.renderToken(e,s,t)}return r},xt.prototype.renderInlineAsText=function(e,t,n){let r="";for(let i=0,s=e.length;i<s;i++)switch(e[i].type){case"text":case"html_inline":case"html_block":r+=e[i].content;break;case"image":r+=this.renderInlineAsText(e[i].children,t,n);break;case"softbreak":case"hardbreak":r+="\n"}return r},xt.prototype.render=function(e,t,n){let r="";const i=this.rules;for(let s=0,a=e.length;s<a;s++){const a=e[s].type;"inline"===a?r+=this.renderInline(e[s].children,t,n):void 0!==i[a]?r+=i[a](e,s,t,n,this):r+=this.renderToken(e,s,t,n)}return r},At.prototype.__find__=function(e){for(let t=0;t<this.__rules__.length;t++)if(this.__rules__[t].name===e)return t;return-1},At.prototype.__compile__=function(){const e=this,t=[""];e.__rules__.forEach(function(e){e.enabled&&e.alt.forEach(function(e){t.indexOf(e)<0&&t.push(e)})}),e.__cache__={},t.forEach(function(t){e.__cache__[t]=[],e.__rules__.forEach(function(n){n.enabled&&(t&&n.alt.indexOf(t)<0||e.__cache__[t].push(n.fn))})})},At.prototype.at=function(e,t,n){const r=this.__find__(e),i=n||{};if(-1===r)throw new Error("Parser rule not found: "+e);this.__rules__[r].fn=t,this.__rules__[r].alt=i.alt||[],this.__cache__=null},At.prototype.before=function(e,t,n,r){const i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},At.prototype.after=function(e,t,n,r){const i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i+1,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},At.prototype.push=function(e,t,n){const r=n||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:r.alt||[]}),this.__cache__=null},At.prototype.enable=function(e,t){Array.isArray(e)||(e=[e]);const n=[];return e.forEach(function(e){const r=this.__find__(e);if(r<0){if(t)return;throw new Error("Rules manager: invalid rule name "+e)}this.__rules__[r].enabled=!0,n.push(e)},this),this.__cache__=null,n},At.prototype.enableOnly=function(e,t){Array.isArray(e)||(e=[e]),this.__rules__.forEach(function(e){e.enabled=!1}),this.enable(e,t)},At.prototype.disable=function(e,t){Array.isArray(e)||(e=[e]);const n=[];return e.forEach(function(e){const r=this.__find__(e);if(r<0){if(t)return;throw new Error("Rules manager: invalid rule name "+e)}this.__rules__[r].enabled=!1,n.push(e)},this),this.__cache__=null,n},At.prototype.getRules=function(e){return null===this.__cache__&&this.__compile__(),this.__cache__[e]||[]},Ct.prototype.attrIndex=function(e){if(!this.attrs)return-1;const t=this.attrs;for(let n=0,r=t.length;n<r;n++)if(t[n][0]===e)return n;return-1},Ct.prototype.attrPush=function(e){this.attrs?this.attrs.push(e):this.attrs=[e]},Ct.prototype.attrSet=function(e,t){const n=this.attrIndex(e),r=[e,t];n<0?this.attrPush(r):this.attrs[n]=r},Ct.prototype.attrGet=function(e){const t=this.attrIndex(e);let n=null;return t>=0&&(n=this.attrs[t][1]),n},Ct.prototype.attrJoin=function(e,t){const n=this.attrIndex(e);n<0?this.attrPush([e,t]):this.attrs[n][1]=this.attrs[n][1]+" "+t},Dt.prototype.Token=Ct;const St=/\r\n?|\n/g,Nt=/\0/g;function Tt(e){return/^<a[>\s]/i.test(e)}function Lt(e){return/^<\/a\s*>/i.test(e)}const It=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,Ft=/\((c|tm|r)\)/i,zt=/\((c|tm|r)\)/gi,Mt={c:"©",r:"®",tm:"™"};function Ot(e,t){return Mt[t.toLowerCase()]}function Bt(e){let t=0;for(let n=e.length-1;n>=0;n--){const r=e[n];"text"!==r.type||t||(r.content=r.content.replace(zt,Ot)),"link_open"===r.type&&"auto"===r.info&&t--,"link_close"===r.type&&"auto"===r.info&&t++}}function Rt(e){let t=0;for(let n=e.length-1;n>=0;n--){const r=e[n];"text"!==r.type||t||It.test(r.content)&&(r.content=r.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/gm,"$1—").replace(/(^|\s)--(?=\s|$)/gm,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,"$1–")),"link_open"===r.type&&"auto"===r.info&&t--,"link_close"===r.type&&"auto"===r.info&&t++}}const $t=/['"]/,jt=/['"]/g;function Pt(e,t,n,r){e[t]||(e[t]=[]),e[t].push({pos:n,ch:r})}function Ht(e,t){let n;const r=[],i={};for(let s=0;s<e.length;s++){const a=e[s],o=e[s].level;for(n=r.length-1;n>=0&&!(r[n].level<=o);n--);if(r.length=n+1,"text"!==a.type)continue;const l=a.content;let c=0;const u=l.length;e:for(;c<u;){jt.lastIndex=c;const a=jt.exec(l);if(!a)break;let d=!0,h=!0;c=a.index+1;const p="'"===a[0];let m=32;if(a.index-1>=0)m=l.charCodeAt(a.index-1);else for(n=s-1;n>=0&&("softbreak"!==e[n].type&&"hardbreak"!==e[n].type);n--)if(e[n].content){m=e[n].content.charCodeAt(e[n].content.length-1);break}let f=32;if(c<u)f=l.charCodeAt(c);else for(n=s+1;n<e.length&&("softbreak"!==e[n].type&&"hardbreak"!==e[n].type);n++)if(e[n].content){f=e[n].content.charCodeAt(0);break}const g=gt(m)||ft(m),b=gt(f)||ft(f),y=pt(m),v=pt(f);if(v?d=!1:b&&(y||g||(d=!1)),y?h=!1:g&&(v||b||(h=!1)),34===f&&'"'===a[0]&&m>=48&&m<=57&&(h=d=!1),d&&h&&(d=g,h=b),d||h){if(h)for(n=r.length-1;n>=0;n--){let e=r[n];if(r[n].level<o)break;if(e.single===p&&r[n].level===o){let o,l;e=r[n],p?(o=t.md.options.quotes[2],l=t.md.options.quotes[3]):(o=t.md.options.quotes[0],l=t.md.options.quotes[1]),Pt(i,s,a.index,l),Pt(i,e.token,e.pos,o),r.length=n;continue e}}d?r.push({token:s,pos:a.index,single:p,level:o}):h&&p&&Pt(i,s,a.index,"’")}else p&&Pt(i,s,a.index,"’")}}Object.keys(i).forEach(function(t){e[t].content=function(e,t){let n="",r=0;t.sort((e,t)=>e.pos-t.pos);for(let i=0;i<t.length;i++){const s=t[i];n+=e.slice(r,s.pos)+s.ch,r=s.pos+1}return n+e.slice(r)}(e[t].content,i[t])})}const qt=[["normalize",function(e){let t;t=e.src.replace(St,"\n"),t=t.replace(Nt,"�"),e.src=t}],["block",function(e){let t;e.inlineMode?(t=new e.Token("inline","",0),t.content=e.src,t.map=[0,1],t.children=[],e.tokens.push(t)):e.md.block.parse(e.src,e.md,e.env,e.tokens)}],["inline",function(e){const t=e.tokens;for(let n=0,r=t.length;n<r;n++){const r=t[n];"inline"===r.type&&e.md.inline.parse(r.content,e.md,e.env,r.children)}}],["linkify",function(e){const t=e.tokens;if(e.md.options.linkify)for(let n=0,r=t.length;n<r;n++){if("inline"!==t[n].type||!e.md.linkify.pretest(t[n].content))continue;let r=t[n].children,i=0;for(let s=r.length-1;s>=0;s--){const a=r[s];if("link_close"!==a.type){if("html_inline"===a.type&&(Tt(a.content)&&i>0&&i--,Lt(a.content)&&i++),!(i>0)&&"text"===a.type&&e.md.linkify.test(a.content)){const i=a.content;let o=e.md.linkify.match(i);const l=[];let c=a.level,u=0;o.length>0&&0===o[0].index&&s>0&&"text_special"===r[s-1].type&&(o=o.slice(1));for(let t=0;t<o.length;t++){const n=o[t].url,r=e.md.normalizeLink(n);if(!e.md.validateLink(r))continue;let s=o[t].text;s=o[t].schema?"mailto:"!==o[t].schema||/^mailto:/i.test(s)?e.md.normalizeLinkText(s):e.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,""):e.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"");const a=o[t].index;if(a>u){const t=new e.Token("text","",0);t.content=i.slice(u,a),t.level=c,l.push(t)}const d=new e.Token("link_open","a",1);d.attrs=[["href",r]],d.level=c++,d.markup="linkify",d.info="auto",l.push(d);const h=new e.Token("text","",0);h.content=s,h.level=c,l.push(h);const p=new e.Token("link_close","a",-1);p.level=--c,p.markup="linkify",p.info="auto",l.push(p),u=o[t].lastIndex}if(u<i.length){const t=new e.Token("text","",0);t.content=i.slice(u),t.level=c,l.push(t)}t[n].children=r=Qe(r,s,l)}}else for(s--;r[s].level!==a.level&&"link_open"!==r[s].type;)s--}}}],["replacements",function(e){let t;if(e.md.options.typographer)for(t=e.tokens.length-1;t>=0;t--)"inline"===e.tokens[t].type&&(Ft.test(e.tokens[t].content)&&Bt(e.tokens[t].children),It.test(e.tokens[t].content)&&Rt(e.tokens[t].children))}],["smartquotes",function(e){if(e.md.options.typographer)for(let t=e.tokens.length-1;t>=0;t--)"inline"===e.tokens[t].type&&$t.test(e.tokens[t].content)&&Ht(e.tokens[t].children,e)}],["text_join",function(e){let t,n;const r=e.tokens,i=r.length;for(let e=0;e<i;e++){if("inline"!==r[e].type)continue;const i=r[e].children,s=i.length;for(t=0;t<s;t++)"text_special"===i[t].type&&(i[t].type="text");for(t=n=0;t<s;t++)"text"===i[t].type&&t+1<s&&"text"===i[t+1].type?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}}]];function Vt(){this.ruler=new At;for(let e=0;e<qt.length;e++)this.ruler.push(qt[e][0],qt[e][1])}function Ut(e,t,n,r){this.src=e,this.md=t,this.env=n,this.tokens=r,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType="root",this.level=0;const i=this.src;for(let e=0,t=0,n=0,r=0,s=i.length,a=!1;t<s;t++){const o=i.charCodeAt(t);if(!a){if(ht(o)){n++,9===o?r+=4-r%4:r++;continue}a=!0}10!==o&&t!==s-1||(10!==o&&t++,this.bMarks.push(e),this.eMarks.push(t),this.tShift.push(n),this.sCount.push(r),this.bsCount.push(0),a=!1,n=0,r=0,e=t+1)}this.bMarks.push(i.length),this.eMarks.push(i.length),this.tShift.push(0),this.sCount.push(0),this.bsCount.push(0),this.lineMax=this.bMarks.length-1}Vt.prototype.process=function(e){const t=this.ruler.getRules("");for(let n=0,r=t.length;n<r;n++)t[n](e)},Vt.prototype.State=Dt,Ut.prototype.push=function(e,t,n){const r=new Ct(e,t,n);return r.block=!0,n<0&&this.level--,r.level=this.level,n>0&&this.level++,this.tokens.push(r),r},Ut.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},Ut.prototype.skipEmptyLines=function(e){for(let t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},Ut.prototype.skipSpaces=function(e){for(let t=this.src.length;e<t;e++){if(!ht(this.src.charCodeAt(e)))break}return e},Ut.prototype.skipSpacesBack=function(e,t){if(e<=t)return e;for(;e>t;)if(!ht(this.src.charCodeAt(--e)))return e+1;return e},Ut.prototype.skipChars=function(e,t){for(let n=this.src.length;e<n&&this.src.charCodeAt(e)===t;e++);return e},Ut.prototype.skipCharsBack=function(e,t,n){if(e<=n)return e;for(;e>n;)if(t!==this.src.charCodeAt(--e))return e+1;return e},Ut.prototype.getLines=function(e,t,n,r){if(e>=t)return"";const i=new Array(t-e);for(let s=0,a=e;a<t;a++,s++){let e=0;const o=this.bMarks[a];let l,c=o;for(l=a+1<t||r?this.eMarks[a]+1:this.eMarks[a];c<l&&e<n;){const t=this.src.charCodeAt(c);if(ht(t))9===t?e+=4-(e+this.bsCount[a])%4:e++;else{if(!(c-o<this.tShift[a]))break;e++}c++}i[s]=e>n?new Array(e-n+1).join(" ")+this.src.slice(c,l):this.src.slice(c,l)}return i.join("")},Ut.prototype.Token=Ct;function Zt(e,t){const n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];return e.src.slice(n,r)}function Kt(e){const t=[],n=e.length;let r=0,i=e.charCodeAt(r),s=!1,a=0,o="";for(;r<n;)124===i&&(s?(o+=e.substring(a,r-1),a=r):(t.push(o+e.substring(a,r)),o="",a=r+1)),s=92===i,r++,i=e.charCodeAt(r);return t.push(o+e.substring(a)),t}function Wt(e,t){const n=e.eMarks[t];let r=e.bMarks[t]+e.tShift[t];const i=e.src.charCodeAt(r++);if(42!==i&&45!==i&&43!==i)return-1;if(r<n){if(!ht(e.src.charCodeAt(r)))return-1}return r}function Gt(e,t){const n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];let i=n;if(i+1>=r)return-1;let s=e.src.charCodeAt(i++);if(s<48||s>57)return-1;for(;;){if(i>=r)return-1;if(s=e.src.charCodeAt(i++),!(s>=48&&s<=57)){if(41===s||46===s)break;return-1}if(i-n>=10)return-1}return i<r&&(s=e.src.charCodeAt(i),!ht(s))?-1:i}const Xt="<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^\"'=<>`\\x00-\\x20]+|'[^']*'|\"[^\"]*\"))?)*\\s*\\/?>",Jt="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",Qt=new RegExp("^(?:"+Xt+"|"+Jt+"|\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e|<[?][\\s\\S]*?[?]>|<![A-Za-z][^>]*>|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>)"),Yt=new RegExp("^(?:"+Xt+"|"+Jt+")"),en=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[new RegExp("^</?("+["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"].join("|")+")(?=(\\s|/?>|$))","i"),/^$/,!0],[new RegExp(Yt.source+"\\s*$"),/^$/,!1]];const tn=[["table",function(e,t,n,r){if(t+2>n)return!1;let i=t+1;if(e.sCount[i]<e.blkIndent)return!1;if(e.sCount[i]-e.blkIndent>=4)return!1;let s=e.bMarks[i]+e.tShift[i];if(s>=e.eMarks[i])return!1;const a=e.src.charCodeAt(s++);if(124!==a&&45!==a&&58!==a)return!1;if(s>=e.eMarks[i])return!1;const o=e.src.charCodeAt(s++);if(124!==o&&45!==o&&58!==o&&!ht(o))return!1;if(45===a&&ht(o))return!1;for(;s<e.eMarks[i];){const t=e.src.charCodeAt(s);if(124!==t&&45!==t&&58!==t&&!ht(t))return!1;s++}let l=Zt(e,t+1),c=l.split("|");const u=[];for(let e=0;e<c.length;e++){const t=c[e].trim();if(!t){if(0===e||e===c.length-1)continue;return!1}if(!/^:?-+:?$/.test(t))return!1;58===t.charCodeAt(t.length-1)?u.push(58===t.charCodeAt(0)?"center":"right"):58===t.charCodeAt(0)?u.push("left"):u.push("")}if(l=Zt(e,t).trim(),-1===l.indexOf("|"))return!1;if(e.sCount[t]-e.blkIndent>=4)return!1;c=Kt(l),c.length&&""===c[0]&&c.shift(),c.length&&""===c[c.length-1]&&c.pop();const d=c.length;if(0===d||d!==u.length)return!1;if(r)return!0;const h=e.parentType;e.parentType="table";const p=e.md.block.ruler.getRules("blockquote"),m=[t,0];e.push("table_open","table",1).map=m,e.push("thead_open","thead",1).map=[t,t+1],e.push("tr_open","tr",1).map=[t,t+1];for(let t=0;t<c.length;t++){const n=e.push("th_open","th",1);u[t]&&(n.attrs=[["style","text-align:"+u[t]]]);const r=e.push("inline","",0);r.content=c[t].trim(),r.children=[],e.push("th_close","th",-1)}let f;e.push("tr_close","tr",-1),e.push("thead_close","thead",-1);let g=0;for(i=t+2;i<n&&!(e.sCount[i]<e.blkIndent);i++){let r=!1;for(let t=0,s=p.length;t<s;t++)if(p[t](e,i,n,!0)){r=!0;break}if(r)break;if(l=Zt(e,i).trim(),!l)break;if(e.sCount[i]-e.blkIndent>=4)break;if(c=Kt(l),c.length&&""===c[0]&&c.shift(),c.length&&""===c[c.length-1]&&c.pop(),g+=d-c.length,g>65536)break;if(i===t+2){e.push("tbody_open","tbody",1).map=f=[t+2,0]}e.push("tr_open","tr",1).map=[i,i+1];for(let t=0;t<d;t++){const n=e.push("td_open","td",1);u[t]&&(n.attrs=[["style","text-align:"+u[t]]]);const r=e.push("inline","",0);r.content=c[t]?c[t].trim():"",r.children=[],e.push("td_close","td",-1)}e.push("tr_close","tr",-1)}return f&&(e.push("tbody_close","tbody",-1),f[1]=i),e.push("table_close","table",-1),m[1]=i,e.parentType=h,e.line=i,!0},["paragraph","reference"]],["code",function(e,t,n){if(e.sCount[t]-e.blkIndent<4)return!1;let r=t+1,i=r;for(;r<n;)if(e.isEmpty(r))r++;else{if(!(e.sCount[r]-e.blkIndent>=4))break;r++,i=r}e.line=i;const s=e.push("code_block","code",0);return s.content=e.getLines(t,i,4+e.blkIndent,!1)+"\n",s.map=[t,e.line],!0}],["fence",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;if(i+3>s)return!1;const a=e.src.charCodeAt(i);if(126!==a&&96!==a)return!1;let o=i;i=e.skipChars(i,a);let l=i-o;if(l<3)return!1;const c=e.src.slice(o,i),u=e.src.slice(i,s);if(96===a&&u.indexOf(String.fromCharCode(a))>=0)return!1;if(r)return!0;let d=t,h=!1;for(;(d++,!(d>=n))&&(i=o=e.bMarks[d]+e.tShift[d],s=e.eMarks[d],!(i<s&&e.sCount[d]<e.blkIndent));)if(e.src.charCodeAt(i)===a&&!(e.sCount[d]-e.blkIndent>=4||(i=e.skipChars(i,a),i-o<l||(i=e.skipSpaces(i),i<s)))){h=!0;break}l=e.sCount[t],e.line=d+(h?1:0);const p=e.push("fence","code",0);return p.info=u,p.content=e.getLines(t+1,d,l,!0),p.markup=c,p.map=[t,e.line],!0},["paragraph","reference","blockquote","list"]],["blockquote",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];const a=e.lineMax;if(e.sCount[t]-e.blkIndent>=4)return!1;if(62!==e.src.charCodeAt(i))return!1;if(r)return!0;const o=[],l=[],c=[],u=[],d=e.md.block.ruler.getRules("blockquote"),h=e.parentType;e.parentType="blockquote";let p,m=!1;for(p=t;p<n;p++){const t=e.sCount[p]<e.blkIndent;if(i=e.bMarks[p]+e.tShift[p],s=e.eMarks[p],i>=s)break;if(62===e.src.charCodeAt(i++)&&!t){let t,n,r=e.sCount[p]+1;32===e.src.charCodeAt(i)?(i++,r++,n=!1,t=!0):9===e.src.charCodeAt(i)?(t=!0,(e.bsCount[p]+r)%4==3?(i++,r++,n=!1):n=!0):t=!1;let a=r;for(o.push(e.bMarks[p]),e.bMarks[p]=i;i<s;){const t=e.src.charCodeAt(i);if(!ht(t))break;9===t?a+=4-(a+e.bsCount[p]+(n?1:0))%4:a++,i++}m=i>=s,l.push(e.bsCount[p]),e.bsCount[p]=e.sCount[p]+1+(t?1:0),c.push(e.sCount[p]),e.sCount[p]=a-r,u.push(e.tShift[p]),e.tShift[p]=i-e.bMarks[p];continue}if(m)break;let r=!1;for(let t=0,i=d.length;t<i;t++)if(d[t](e,p,n,!0)){r=!0;break}if(r){e.lineMax=p,0!==e.blkIndent&&(o.push(e.bMarks[p]),l.push(e.bsCount[p]),u.push(e.tShift[p]),c.push(e.sCount[p]),e.sCount[p]-=e.blkIndent);break}o.push(e.bMarks[p]),l.push(e.bsCount[p]),u.push(e.tShift[p]),c.push(e.sCount[p]),e.sCount[p]=-1}const f=e.blkIndent;e.blkIndent=0;const g=e.push("blockquote_open","blockquote",1);g.markup=">";const b=[t,0];g.map=b,e.md.block.tokenize(e,t,p),e.push("blockquote_close","blockquote",-1).markup=">",e.lineMax=a,e.parentType=h,b[1]=e.line;for(let n=0;n<u.length;n++)e.bMarks[n+t]=o[n],e.tShift[n+t]=u[n],e.sCount[n+t]=c[n],e.bsCount[n+t]=l[n];return e.blkIndent=f,!0},["paragraph","reference","blockquote","list"]],["hr",function(e,t,n,r){const i=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let s=e.bMarks[t]+e.tShift[t];const a=e.src.charCodeAt(s++);if(42!==a&&45!==a&&95!==a)return!1;let o=1;for(;s<i;){const t=e.src.charCodeAt(s++);if(t!==a&&!ht(t))return!1;t===a&&o++}if(o<3)return!1;if(r)return!0;e.line=t+1;const l=e.push("hr","hr",0);return l.map=[t,e.line],l.markup=Array(o+1).join(String.fromCharCode(a)),!0},["paragraph","reference","blockquote","list"]],["list",function(e,t,n,r){let i,s,a,o,l=t,c=!0;if(e.sCount[l]-e.blkIndent>=4)return!1;if(e.listIndent>=0&&e.sCount[l]-e.listIndent>=4&&e.sCount[l]<e.blkIndent)return!1;let u,d,h,p=!1;if(r&&"paragraph"===e.parentType&&e.sCount[l]>=e.blkIndent&&(p=!0),(h=Gt(e,l))>=0){if(u=!0,a=e.bMarks[l]+e.tShift[l],d=Number(e.src.slice(a,h-1)),p&&1!==d)return!1}else{if(!((h=Wt(e,l))>=0))return!1;u=!1}if(p&&e.skipSpaces(h)>=e.eMarks[l])return!1;if(r)return!0;const m=e.src.charCodeAt(h-1),f=e.tokens.length;u?(o=e.push("ordered_list_open","ol",1),1!==d&&(o.attrs=[["start",d]])):o=e.push("bullet_list_open","ul",1);const g=[l,0];o.map=g,o.markup=String.fromCharCode(m);let b=!1;const y=e.md.block.ruler.getRules("list"),v=e.parentType;for(e.parentType="list";l<n;){s=h,i=e.eMarks[l];const t=e.sCount[l]+h-(e.bMarks[l]+e.tShift[l]);let r=t;for(;s<i;){const t=e.src.charCodeAt(s);if(9===t)r+=4-(r+e.bsCount[l])%4;else{if(32!==t)break;r++}s++}const d=s;let p;p=d>=i?1:r-t,p>4&&(p=1);const f=t+p;o=e.push("list_item_open","li",1),o.markup=String.fromCharCode(m);const g=[l,0];o.map=g,u&&(o.info=e.src.slice(a,h-1));const v=e.tight,w=e.tShift[l],E=e.sCount[l],_=e.listIndent;if(e.listIndent=e.blkIndent,e.blkIndent=f,e.tight=!0,e.tShift[l]=d-e.bMarks[l],e.sCount[l]=r,d>=i&&e.isEmpty(l+1)?e.line=Math.min(e.line+2,n):e.md.block.tokenize(e,l,n,!0),e.tight&&!b||(c=!1),b=e.line-l>1&&e.isEmpty(e.line-1),e.blkIndent=e.listIndent,e.listIndent=_,e.tShift[l]=w,e.sCount[l]=E,e.tight=v,o=e.push("list_item_close","li",-1),o.markup=String.fromCharCode(m),l=e.line,g[1]=l,l>=n)break;if(e.sCount[l]<e.blkIndent)break;if(e.sCount[l]-e.blkIndent>=4)break;let k=!1;for(let t=0,r=y.length;t<r;t++)if(y[t](e,l,n,!0)){k=!0;break}if(k)break;if(u){if(h=Gt(e,l),h<0)break;a=e.bMarks[l]+e.tShift[l]}else if(h=Wt(e,l),h<0)break;if(m!==e.src.charCodeAt(h-1))break}return o=u?e.push("ordered_list_close","ol",-1):e.push("bullet_list_close","ul",-1),o.markup=String.fromCharCode(m),g[1]=l,e.line=l,e.parentType=v,c&&function(e,t){const n=e.level+2;for(let r=t+2,i=e.tokens.length-2;r<i;r++)e.tokens[r].level===n&&"paragraph_open"===e.tokens[r].type&&(e.tokens[r+2].hidden=!0,e.tokens[r].hidden=!0,r+=2)}(e,f),!0},["paragraph","reference","blockquote"]],["reference",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t],a=t+1;if(e.sCount[t]-e.blkIndent>=4)return!1;if(91!==e.src.charCodeAt(i))return!1;function o(t){const n=e.lineMax;if(t>=n||e.isEmpty(t))return null;let r=!1;if(e.sCount[t]-e.blkIndent>3&&(r=!0),e.sCount[t]<0&&(r=!0),!r){const r=e.md.block.ruler.getRules("reference"),i=e.parentType;e.parentType="reference";let s=!1;for(let i=0,a=r.length;i<a;i++)if(r[i](e,t,n,!0)){s=!0;break}if(e.parentType=i,s)return null}const i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];return e.src.slice(i,s+1)}let l=e.src.slice(i,s+1);s=l.length;let c=-1;for(i=1;i<s;i++){const e=l.charCodeAt(i);if(91===e)return!1;if(93===e){c=i;break}if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(92===e&&(i++,i<s&&10===l.charCodeAt(i))){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}}if(c<0||58!==l.charCodeAt(c+1))return!1;for(i=c+2;i<s;i++){const e=l.charCodeAt(i);if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(!ht(e))break}const u=e.md.helpers.parseLinkDestination(l,i,s);if(!u.ok)return!1;const d=e.md.normalizeLink(u.str);if(!e.md.validateLink(d))return!1;i=u.pos;const h=i,p=a,m=i;for(;i<s;i++){const e=l.charCodeAt(i);if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(!ht(e))break}let f,g=e.md.helpers.parseLinkTitle(l,i,s);for(;g.can_continue;){const t=o(a);if(null===t)break;l+=t,i=s,s=l.length,a++,g=e.md.helpers.parseLinkTitle(l,i,s,g)}for(i<s&&m!==i&&g.ok?(f=g.str,i=g.pos):(f="",i=h,a=p);i<s;){if(!ht(l.charCodeAt(i)))break;i++}if(i<s&&10!==l.charCodeAt(i)&&f)for(f="",i=h,a=p;i<s;){if(!ht(l.charCodeAt(i)))break;i++}if(i<s&&10!==l.charCodeAt(i))return!1;const b=bt(l.slice(1,c));return!!b&&(r||(void 0===e.env.references&&(e.env.references={}),void 0===e.env.references[b]&&(e.env.references[b]={title:f,href:d}),e.line=a),!0)}],["html_block",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;if(!e.md.options.html)return!1;if(60!==e.src.charCodeAt(i))return!1;let a=e.src.slice(i,s),o=0;for(;o<en.length&&!en[o][0].test(a);o++);if(o===en.length)return!1;if(r)return en[o][2];let l=t+1;const c=en[o][1].test("");if(!en[o][1].test(a))for(;l<n&&(!(e.sCount[l]<e.blkIndent)||!c&&e.isEmpty(l));l++)if(i=e.bMarks[l]+e.tShift[l],s=e.eMarks[l],a=e.src.slice(i,s),en[o][1].test(a)){0!==a.length&&l++;break}e.line=l;const u=e.push("html_block","",0);return u.map=[t,l],u.content=e.getLines(t,l,e.blkIndent,!0),!0},["paragraph","reference","blockquote"]],["heading",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let a=e.src.charCodeAt(i);if(35!==a||i>=s)return!1;let o=1;for(a=e.src.charCodeAt(++i);35===a&&i<s&&o<=6;)o++,a=e.src.charCodeAt(++i);if(o>6||i<s&&!ht(a))return!1;if(r)return!0;s=e.skipSpacesBack(s,i);const l=e.skipCharsBack(s,35,i);l>i&&ht(e.src.charCodeAt(l-1))&&(s=l),e.line=t+1;const c=e.push("heading_open","h"+String(o),1);c.markup="########".slice(0,o),c.map=[t,e.line];const u=e.push("inline","",0);return u.content=vt(e.src.slice(i,s)),u.map=[t,e.line],u.children=[],e.push("heading_close","h"+String(o),-1).markup="########".slice(0,o),!0},["paragraph","reference","blockquote"]],["lheading",function(e,t,n){const r=e.md.block.ruler.getRules("paragraph");if(e.sCount[t]-e.blkIndent>=4)return!1;const i=e.parentType;e.parentType="paragraph";let s,a=0,o=t+1;for(;o<n&&!e.isEmpty(o);o++){if(e.sCount[o]-e.blkIndent>3)continue;if(e.sCount[o]>=e.blkIndent){let t=e.bMarks[o]+e.tShift[o];const n=e.eMarks[o];if(t<n&&(s=e.src.charCodeAt(t),(45===s||61===s)&&(t=e.skipChars(t,s),t=e.skipSpaces(t),t>=n))){a=61===s?1:2;break}}if(e.sCount[o]<0)continue;let t=!1;for(let i=0,s=r.length;i<s;i++)if(r[i](e,o,n,!0)){t=!0;break}if(t)break}if(!a)return e.parentType=i,!1;const l=vt(e.getLines(t,o,e.blkIndent,!1));e.line=o+1;const c=e.push("heading_open","h"+String(a),1);c.markup=String.fromCharCode(s),c.map=[t,e.line];const u=e.push("inline","",0);return u.content=l,u.map=[t,e.line-1],u.children=[],e.push("heading_close","h"+String(a),-1).markup=String.fromCharCode(s),e.parentType=i,!0}],["paragraph",function(e,t,n){const r=e.md.block.ruler.getRules("paragraph"),i=e.parentType;let s=t+1;for(e.parentType="paragraph";s<n&&!e.isEmpty(s);s++){if(e.sCount[s]-e.blkIndent>3)continue;if(e.sCount[s]<0)continue;let t=!1;for(let i=0,a=r.length;i<a;i++)if(r[i](e,s,n,!0)){t=!0;break}if(t)break}const a=vt(e.getLines(t,s,e.blkIndent,!1));e.line=s,e.push("paragraph_open","p",1).map=[t,e.line];const o=e.push("inline","",0);return o.content=a,o.map=[t,e.line],o.children=[],e.push("paragraph_close","p",-1),e.parentType=i,!0}]];function nn(){this.ruler=new At;for(let e=0;e<tn.length;e++)this.ruler.push(tn[e][0],tn[e][1],{alt:(tn[e][2]||[]).slice()})}function rn(e,t,n,r){this.src=e,this.env=n,this.md=t,this.tokens=r,this.tokens_meta=Array(r.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}function sn(e){switch(e){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}nn.prototype.tokenize=function(e,t,n){const r=this.ruler.getRules(""),i=r.length,s=e.md.options.maxNesting;let a=t,o=!1;for(;a<n&&(e.line=a=e.skipEmptyLines(a),!(a>=n))&&!(e.sCount[a]<e.blkIndent);){if(e.level>=s){e.line=n;break}const t=e.line;let l=!1;for(let s=0;s<i;s++)if(l=r[s](e,a,n,!1),l){if(t>=e.line)throw new Error("block rule didn't increment state.line");break}if(!l)throw new Error("none of the block rules matched");e.tight=!o,e.isEmpty(e.line-1)&&(o=!0),a=e.line,a<n&&e.isEmpty(a)&&(o=!0,a++,e.line=a)}},nn.prototype.parse=function(e,t,n,r){if(!e)return;const i=new this.State(e,t,n,r);this.tokenize(i,i.line,i.lineMax)},nn.prototype.State=Ut,rn.prototype.pushPending=function(){const e=new Ct("text","",0);return e.content=this.pending,e.level=this.pendingLevel,this.tokens.push(e),this.pending="",e},rn.prototype.push=function(e,t,n){this.pending&&this.pushPending();const r=new Ct(e,t,n);let i=null;return n<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),r.level=this.level,n>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],i={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(r),this.tokens_meta.push(i),r},rn.prototype.scanDelims=function(e,t){const n=this.posMax,r=this.src.charCodeAt(e);let i;if(0===e)i=32;else if(1===e)i=this.src.charCodeAt(0),55296==(63488&i)&&(i=65533);else if(i=this.src.charCodeAt(e-1),56320==(64512&i)){const t=this.src.charCodeAt(e-2);i=55296==(64512&t)?65536+(t-55296<<10)+(i-56320):65533}else 55296==(64512&i)&&(i=65533);let s=e;for(;s<n&&this.src.charCodeAt(s)===r;)s++;const a=s-e;let o=s<n?this.src.charCodeAt(s):32;if(55296==(64512&o)){const e=this.src.charCodeAt(s+1);o=56320==(64512&e)?65536+(o-55296<<10)+(e-56320):65533}else 56320==(64512&o)&&(o=65533);const l=gt(i)||ft(i),c=gt(o)||ft(o),u=pt(i),d=pt(o),h=!d&&(!c||u||l),p=!u&&(!l||d||c);return{can_open:h&&(t||!p||l),can_close:p&&(t||!h||c),length:a}},rn.prototype.Token=Ct;const an=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;const on=[];for(let e=0;e<256;e++)on.push(0);function ln(e,t){let n;const r=[],i=t.length;for(let s=0;s<i;s++){const i=t[s];if(126!==i.marker)continue;if(-1===i.end)continue;const a=t[i.end];n=e.tokens[i.token],n.type="s_open",n.tag="s",n.nesting=1,n.markup="~~",n.content="",n=e.tokens[a.token],n.type="s_close",n.tag="s",n.nesting=-1,n.markup="~~",n.content="","text"===e.tokens[a.token-1].type&&"~"===e.tokens[a.token-1].content&&r.push(a.token-1)}for(;r.length;){const t=r.pop();let i=t+1;for(;i<e.tokens.length&&"s_close"===e.tokens[i].type;)i++;i--,t!==i&&(n=e.tokens[i],e.tokens[i]=e.tokens[t],e.tokens[t]=n)}}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(e){on[e.charCodeAt(0)]=1});var cn={tokenize:function(e,t){const n=e.pos,r=e.src.charCodeAt(n);if(t)return!1;if(126!==r)return!1;const i=e.scanDelims(e.pos,!0);let s=i.length;const a=String.fromCharCode(r);if(s<2)return!1;let o;s%2&&(o=e.push("text","",0),o.content=a,s--);for(let t=0;t<s;t+=2)o=e.push("text","",0),o.content=a+a,e.delimiters.push({marker:r,length:0,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close});return e.pos+=i.length,!0},postProcess:function(e){const t=e.tokens_meta,n=e.tokens_meta.length;ln(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&ln(e,t[r].delimiters)}};function un(e,t){for(let n=t.length-1;n>=0;n--){const r=t[n];if(95!==r.marker&&42!==r.marker)continue;if(-1===r.end)continue;const i=t[r.end],s=n>0&&t[n-1].end===r.end+1&&t[n-1].marker===r.marker&&t[n-1].token===r.token-1&&t[r.end+1].token===i.token+1,a=String.fromCharCode(r.marker),o=e.tokens[r.token];o.type=s?"strong_open":"em_open",o.tag=s?"strong":"em",o.nesting=1,o.markup=s?a+a:a,o.content="";const l=e.tokens[i.token];l.type=s?"strong_close":"em_close",l.tag=s?"strong":"em",l.nesting=-1,l.markup=s?a+a:a,l.content="",s&&(e.tokens[t[n-1].token].content="",e.tokens[t[r.end+1].token].content="",n--)}}var dn={tokenize:function(e,t){const n=e.pos,r=e.src.charCodeAt(n);if(t)return!1;if(95!==r&&42!==r)return!1;const i=e.scanDelims(e.pos,42===r);for(let t=0;t<i.length;t++){e.push("text","",0).content=String.fromCharCode(r),e.delimiters.push({marker:r,length:i.length,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close})}return e.pos+=i.length,!0},postProcess:function(e){const t=e.tokens_meta,n=e.tokens_meta.length;un(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&un(e,t[r].delimiters)}};const hn=/^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,pn=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;const mn=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,fn=/^&([a-z][a-z0-9]{1,31});/i;function gn(e){const t={},n=e.length;if(!n)return;let r=0,i=-2;const s=[];for(let a=0;a<n;a++){const n=e[a];if(s.push(0),e[r].marker===n.marker&&i===n.token-1||(r=a),i=n.token,n.length=n.length||0,!n.close)continue;t.hasOwnProperty(n.marker)||(t[n.marker]=[-1,-1,-1,-1,-1,-1]);const o=t[n.marker][(n.open?3:0)+n.length%3];let l=r-s[r]-1,c=l;for(;l>o;l-=s[l]+1){const t=e[l];if(t.marker===n.marker&&(t.open&&t.end<0)){let r=!1;if((t.close||n.open)&&(t.length+n.length)%3==0&&(t.length%3==0&&n.length%3==0||(r=!0)),!r){const r=l>0&&!e[l-1].open?s[l-1]+1:0;s[a]=a-l+r,s[l]=r,n.open=!1,t.end=a,t.close=!1,c=-1,i=-2;break}}}-1!==c&&(t[n.marker][(n.open?3:0)+(n.length||0)%3]=c)}}const bn=[["text",function(e,t){let n=e.pos;for(;n<e.posMax&&!sn(e.src.charCodeAt(n));)n++;return n!==e.pos&&(t||(e.pending+=e.src.slice(e.pos,n)),e.pos=n,!0)}],["linkify",function(e,t){if(!e.md.options.linkify)return!1;if(e.linkLevel>0)return!1;const n=e.pos;if(n+3>e.posMax)return!1;if(58!==e.src.charCodeAt(n))return!1;if(47!==e.src.charCodeAt(n+1))return!1;if(47!==e.src.charCodeAt(n+2))return!1;const r=e.pending.match(an);if(!r)return!1;const i=r[1],s=e.md.linkify.matchAtStart(e.src.slice(n-i.length));if(!s)return!1;let a=s.url;if(a.length<=i.length)return!1;let o=a.length;for(;o>0&&42===a.charCodeAt(o-1);)o--;o!==a.length&&(a=a.slice(0,o));const l=e.md.normalizeLink(a);if(!e.md.validateLink(l))return!1;if(!t){e.pending=e.pending.slice(0,-i.length);const t=e.push("link_open","a",1);t.attrs=[["href",l]],t.markup="linkify",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(a);const n=e.push("link_close","a",-1);n.markup="linkify",n.info="auto"}return e.pos+=a.length-i.length,!0}],["newline",function(e,t){let n=e.pos;if(10!==e.src.charCodeAt(n))return!1;const r=e.pending.length-1,i=e.posMax;if(!t)if(r>=0&&32===e.pending.charCodeAt(r))if(r>=1&&32===e.pending.charCodeAt(r-1)){let t=r-1;for(;t>=1&&32===e.pending.charCodeAt(t-1);)t--;e.pending=e.pending.slice(0,t),e.push("hardbreak","br",0)}else e.pending=e.pending.slice(0,-1),e.push("softbreak","br",0);else e.push("softbreak","br",0);for(n++;n<i&&ht(e.src.charCodeAt(n));)n++;return e.pos=n,!0}],["escape",function(e,t){let n=e.pos;const r=e.posMax;if(92!==e.src.charCodeAt(n))return!1;if(n++,n>=r)return!1;let i=e.src.charCodeAt(n);if(10===i){for(t||e.push("hardbreak","br",0),n++;n<r&&(i=e.src.charCodeAt(n),ht(i));)n++;return e.pos=n,!0}if(32===i){if(!t){const t=e.push("text_special","",0);t.content="\\",t.markup="\\",t.info="escape"}return e.pos=n,!0}let s=e.src[n];if(i>=55296&&i<=56319&&n+1<r){const t=e.src.charCodeAt(n+1);t>=56320&&t<=57343&&(s+=e.src[n+1],n++)}const a="\\"+s;if(!t){const t=e.push("text_special","",0);i<256&&0!==on[i]?t.content=s:t.content=a,t.markup=a,t.info="escape"}return e.pos=n+1,!0}],["backticks",function(e,t){let n=e.pos;if(96!==e.src.charCodeAt(n))return!1;const r=n;n++;const i=e.posMax;for(;n<i&&96===e.src.charCodeAt(n);)n++;const s=e.src.slice(r,n),a=s.length;if(e.backticksScanned&&(e.backticks[a]||0)<=r)return t||(e.pending+=s),e.pos+=a,!0;let o,l=n;for(;-1!==(o=e.src.indexOf("`",l));){for(l=o+1;l<i&&96===e.src.charCodeAt(l);)l++;const r=l-o;if(r===a){if(!t){const t=e.push("code_inline","code",0);t.markup=s,t.content=e.src.slice(n,o).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}return e.pos=l,!0}e.backticks[r]=o}return e.backticksScanned=!0,t||(e.pending+=s),e.pos+=a,!0}],["strikethrough",cn.tokenize],["emphasis",dn.tokenize],["link",function(e,t){let n,r,i,s,a="",o="",l=e.pos,c=!0;if(91!==e.src.charCodeAt(e.pos))return!1;const u=e.pos,d=e.posMax,h=e.pos+1,p=e.md.helpers.parseLinkLabel(e,e.pos,!0);if(p<0)return!1;let m=p+1;if(m<d&&40===e.src.charCodeAt(m)){for(c=!1,m++;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);if(m>=d)return!1;if(l=m,i=e.md.helpers.parseLinkDestination(e.src,m,e.posMax),i.ok){for(a=e.md.normalizeLink(i.str),e.md.validateLink(a)?m=i.pos:a="",l=m;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);if(i=e.md.helpers.parseLinkTitle(e.src,m,e.posMax),m<d&&l!==m&&i.ok)for(o=i.str,m=i.pos;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);}(m>=d||41!==e.src.charCodeAt(m))&&(c=!0),m++}if(c){if(void 0===e.env.references)return!1;if(m<d&&91===e.src.charCodeAt(m)?(l=m+1,m=e.md.helpers.parseLinkLabel(e,m),m>=0?r=e.src.slice(l,m++):m=p+1):m=p+1,r||(r=e.src.slice(h,p)),s=e.env.references[bt(r)],!s)return e.pos=u,!1;a=s.href,o=s.title}if(!t){e.pos=h,e.posMax=p;const t=[["href",a]];e.push("link_open","a",1).attrs=t,o&&t.push(["title",o]),e.linkLevel++,e.md.inline.tokenize(e),e.linkLevel--,e.push("link_close","a",-1)}return e.pos=m,e.posMax=d,!0}],["image",function(e,t){let n,r,i,s,a,o,l,c,u="";const d=e.pos,h=e.posMax;if(33!==e.src.charCodeAt(e.pos))return!1;if(91!==e.src.charCodeAt(e.pos+1))return!1;const p=e.pos+2,m=e.md.helpers.parseLinkLabel(e,e.pos+1,!1);if(m<0)return!1;if(s=m+1,s<h&&40===e.src.charCodeAt(s)){for(s++;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);if(s>=h)return!1;for(c=s,o=e.md.helpers.parseLinkDestination(e.src,s,e.posMax),o.ok&&(u=e.md.normalizeLink(o.str),e.md.validateLink(u)?s=o.pos:u=""),c=s;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);if(o=e.md.helpers.parseLinkTitle(e.src,s,e.posMax),s<h&&c!==s&&o.ok)for(l=o.str,s=o.pos;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);else l="";if(s>=h||41!==e.src.charCodeAt(s))return e.pos=d,!1;s++}else{if(void 0===e.env.references)return!1;if(s<h&&91===e.src.charCodeAt(s)?(c=s+1,s=e.md.helpers.parseLinkLabel(e,s),s>=0?i=e.src.slice(c,s++):s=m+1):s=m+1,i||(i=e.src.slice(p,m)),a=e.env.references[bt(i)],!a)return e.pos=d,!1;u=a.href,l=a.title}if(!t){r=e.src.slice(p,m);const t=[];e.md.inline.parse(r,e.md,e.env,t);const n=e.push("image","img",0),i=[["src",u],["alt",""]];n.attrs=i,n.children=t,n.content=r,l&&i.push(["title",l])}return e.pos=s,e.posMax=h,!0}],["autolink",function(e,t){let n=e.pos;if(60!==e.src.charCodeAt(n))return!1;const r=e.pos,i=e.posMax;for(;;){if(++n>=i)return!1;const t=e.src.charCodeAt(n);if(60===t)return!1;if(62===t)break}const s=e.src.slice(r+1,n);if(pn.test(s)){const n=e.md.normalizeLink(s);if(!e.md.validateLink(n))return!1;if(!t){const t=e.push("link_open","a",1);t.attrs=[["href",n]],t.markup="autolink",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(s);const r=e.push("link_close","a",-1);r.markup="autolink",r.info="auto"}return e.pos+=s.length+2,!0}if(hn.test(s)){const n=e.md.normalizeLink("mailto:"+s);if(!e.md.validateLink(n))return!1;if(!t){const t=e.push("link_open","a",1);t.attrs=[["href",n]],t.markup="autolink",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(s);const r=e.push("link_close","a",-1);r.markup="autolink",r.info="auto"}return e.pos+=s.length+2,!0}return!1}],["html_inline",function(e,t){if(!e.md.options.html)return!1;const n=e.posMax,r=e.pos;if(60!==e.src.charCodeAt(r)||r+2>=n)return!1;const i=e.src.charCodeAt(r+1);if(33!==i&&63!==i&&47!==i&&!function(e){const t=32|e;return t>=97&&t<=122}(i))return!1;const s=e.src.slice(r).match(Qt);if(!s)return!1;if(!t){const t=e.push("html_inline","",0);t.content=s[0],a=t.content,/^<a[>\s]/i.test(a)&&e.linkLevel++,function(e){return/^<\/a\s*>/i.test(e)}(t.content)&&e.linkLevel--}var a;return e.pos+=s[0].length,!0}],["entity",function(e,t){const n=e.pos,r=e.posMax;if(38!==e.src.charCodeAt(n))return!1;if(n+1>=r)return!1;if(35===e.src.charCodeAt(n+1)){const r=e.src.slice(n).match(mn);if(r){if(!t){const t="x"===r[1][0].toLowerCase()?parseInt(r[1].slice(1),16):parseInt(r[1],10),n=e.push("text_special","",0);n.content=Ye(t)?et(t):et(65533),n.markup=r[0],n.info="entity"}return e.pos+=r[0].length,!0}}else{const r=e.src.slice(n).match(fn);if(r){const n=(i=r[0],We(i,Pe.Strict));if(n!==r[0]){if(!t){const t=e.push("text_special","",0);t.content=n,t.markup=r[0],t.info="entity"}return e.pos+=r[0].length,!0}}}var i;return!1}]],yn=[["balance_pairs",function(e){const t=e.tokens_meta,n=e.tokens_meta.length;gn(e.delimiters);for(let e=0;e<n;e++)t[e]&&t[e].delimiters&&gn(t[e].delimiters)}],["strikethrough",cn.postProcess],["emphasis",dn.postProcess],["fragments_join",function(e){let t,n,r=0;const i=e.tokens,s=e.tokens.length;for(t=n=0;t<s;t++)i[t].nesting<0&&r--,i[t].level=r,i[t].nesting>0&&r++,"text"===i[t].type&&t+1<s&&"text"===i[t+1].type?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}]];function vn(){this.ruler=new At;for(let e=0;e<bn.length;e++)this.ruler.push(bn[e][0],bn[e][1]);this.ruler2=new At;for(let e=0;e<yn.length;e++)this.ruler2.push(yn[e][0],yn[e][1])}function wn(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){t&&Object.keys(t).forEach(function(n){e[n]=t[n]})}),e}function En(e){return Object.prototype.toString.call(e)}function _n(e){return"[object Function]"===En(e)}function kn(e){return e.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}vn.prototype.skipToken=function(e){const t=e.pos,n=this.ruler.getRules(""),r=n.length,i=e.md.options.maxNesting,s=e.cache;if(void 0!==s[t])return void(e.pos=s[t]);let a=!1;if(e.level<i){for(let i=0;i<r;i++)if(e.level++,a=n[i](e,!0),e.level--,a){if(t>=e.pos)throw new Error("inline rule didn't increment state.pos");break}}else e.pos=e.posMax;a||e.pos++,s[t]=e.pos},vn.prototype.tokenize=function(e){const t=this.ruler.getRules(""),n=t.length,r=e.posMax,i=e.md.options.maxNesting;for(;e.pos<r;){const s=e.pos;let a=!1;if(e.level<i)for(let r=0;r<n;r++)if(a=t[r](e,!1),a){if(s>=e.pos)throw new Error("inline rule didn't increment state.pos");break}if(a){if(e.pos>=r)break}else e.pending+=e.src[e.pos++]}e.pending&&e.pushPending()},vn.prototype.parse=function(e,t,n,r){const i=new this.State(e,t,n,r);this.tokenize(i);const s=this.ruler2.getRules(""),a=s.length;for(let e=0;e<a;e++)s[e](i)},vn.prototype.State=rn;const xn={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};const An={"http:":{validate:function(e,t,n){const r=e.slice(t);return n.re.http||(n.re.http=new RegExp(`^\\/\\/${n.re.src_auth}${n.re.src_host_port_strict}${n.re.src_path}`,"i")),n.re.http.test(r)?r.match(n.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(e,t,n){const r=e.slice(t);return n.re.no_http||(n.re.no_http=new RegExp("^"+n.re.src_auth+`(?:localhost|(?:(?:${n.re.src_domain})\\.)+${n.re.src_domain_root})`+n.re.src_port+n.re.src_host_terminator+n.re.src_path,"i")),n.re.no_http.test(r)?t>=3&&":"===e[t-3]||t>=3&&"/"===e[t-3]?0:r.match(n.re.no_http)[0].length:0}},"mailto:":{validate:function(e,t,n){const r=e.slice(t);return n.re.mailto||(n.re.mailto=new RegExp(`^${n.re.src_email_name}@${n.re.src_host_strict}`,"i")),n.re.mailto.test(r)?r.match(n.re.mailto)[0].length:0}}},Cn="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Dn(e){const t=e.re=function(e){const t={};e=e||{},t.src_Any=Se.source,t.src_Cc=Ne.source,t.src_Z=Ie.source,t.src_P=Te.source,t.src_ZPCc=[t.src_Z,t.src_P,t.src_Cc].join("|"),t.src_ZCc=[t.src_Z,t.src_Cc].join("|");const n="[><|]";return t.src_pseudo_letter=`(?:(?!${n}|${t.src_ZPCc})${t.src_Any})`,t.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",t.src_auth=`(?:(?:(?!${t.src_ZCc}|[@/\\[\\]()]).){1,50}@)?`,t.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",t.src_host_terminator=`(?=$|${n}|${t.src_ZPCc})(?!${e["---"]?"-(?!--)|":"-|"}_|:\\d|\\.-|\\.(?!$|${t.src_ZPCc}))`,t.src_path=`(?:[/?#](?:(?!${t.src_ZCc}|${n}|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!${t.src_ZCc}|\\]).)*\\]|\\((?:(?!${t.src_ZCc}|[)]).)*\\)|\\{(?:(?!${t.src_ZCc}|[}]).)*\\}|\\"(?:(?!${t.src_ZCc}|["]).)+\\"|\\'(?:(?!${t.src_ZCc}|[']).)+\\'|\\'(?=${t.src_pseudo_letter}|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!${t.src_ZCc}|[.]|$)|`+(e["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+`,(?!${t.src_ZCc}|$)|`+`;(?!${t.src_ZCc}|$)|`+`\\!+(?!${t.src_ZCc}|[!]|$)|`+`\\?(?!${t.src_ZCc}|[?]|$))+|\\/)?`,t.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]{0,63}',t.src_xn="xn--[a-z0-9\\-]{1,59}",t.src_domain_root="(?:"+t.src_xn+"|"+`${t.src_pseudo_letter}{1,63})`,t.src_domain="(?:"+t.src_xn+"|"+`(?:${t.src_pseudo_letter})|`+`(?:${t.src_pseudo_letter}(?:-|${t.src_pseudo_letter}){0,61}${t.src_pseudo_letter}))`,t.src_host=`(?:(?:(?:(?:${t.src_domain})\\.)*${t.src_domain}))`,t.tpl_host_fuzzy="(?:"+t.src_ip4+"|"+`(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%)))`,t.tpl_host_no_ip_fuzzy=`(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%))`,t.src_host_strict=t.src_host+t.src_host_terminator,t.tpl_host_fuzzy_strict=t.tpl_host_fuzzy+t.src_host_terminator,t.src_host_port_strict=t.src_host+t.src_port+t.src_host_terminator,t.tpl_host_port_fuzzy_strict=t.tpl_host_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_port_no_ip_fuzzy_strict=t.tpl_host_no_ip_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_fuzzy_test=`localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:${t.src_ZPCc}|>|$))`,t.tpl_email_fuzzy=`(^|${n}|"|\\(|${t.src_ZCc})(${t.src_email_name}@${t.tpl_host_fuzzy_strict})`,t.tpl_link_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`||]|${t.src_ZPCc}))((?![$+<=>^\`||])${t.tpl_host_port_fuzzy_strict}${t.src_path})`,t.tpl_link_no_ip_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`||]|${t.src_ZPCc}))((?![$+<=>^\`||])${t.tpl_host_port_no_ip_fuzzy_strict}${t.src_path})`,t}(e.__opts__),n=e.__tlds__.slice();function r(e){return e.replace("%TLDS%",t.src_tlds)}e.onCompile(),e.__tlds_replaced__||n.push("a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]"),n.push(t.src_xn),t.src_tlds=n.join("|"),t.email_fuzzy=RegExp(r(t.tpl_email_fuzzy),"i"),t.email_fuzzy_global=RegExp(r(t.tpl_email_fuzzy),"ig"),t.link_fuzzy=RegExp(r(t.tpl_link_fuzzy),"i"),t.link_fuzzy_global=RegExp(r(t.tpl_link_fuzzy),"ig"),t.link_no_ip_fuzzy=RegExp(r(t.tpl_link_no_ip_fuzzy),"i"),t.link_no_ip_fuzzy_global=RegExp(r(t.tpl_link_no_ip_fuzzy),"ig"),t.host_fuzzy_test=RegExp(r(t.tpl_host_fuzzy_test),"i");const i=[];function s(e,t){throw new Error(`(LinkifyIt) Invalid schema "${e}": ${t}`)}e.__compiled__={},Object.keys(e.__schemas__).forEach(function(t){const n=e.__schemas__[t];if(null===n)return;const r={validate:null,link:null};if(e.__compiled__[t]=r,"[object Object]"===En(n))return!function(e){return"[object RegExp]"===En(e)}(n.validate)?_n(n.validate)?r.validate=n.validate:s(t,n):r.validate=function(e){return function(t,n){const r=t.slice(n);return e.test(r)?r.match(e)[0].length:0}}(n.validate),void(_n(n.normalize)?r.normalize=n.normalize:n.normalize?s(t,n):r.normalize=function(e,t){t.normalize(e)});!function(e){return"[object String]"===En(e)}(n)?s(t,n):i.push(t)}),i.forEach(function(t){e.__compiled__[e.__schemas__[t]]&&(e.__compiled__[t].validate=e.__compiled__[e.__schemas__[t]].validate,e.__compiled__[t].normalize=e.__compiled__[e.__schemas__[t]].normalize)}),e.__compiled__[""]={validate:null,normalize:function(e,t){t.normalize(e)}};const a=Object.keys(e.__compiled__).filter(function(t){return t.length>0&&e.__compiled__[t]}).map(kn).join("|");e.re.schema_test=RegExp(`(^|(?!_)(?:[><|]|${t.src_ZPCc}))(${a})`,"i"),e.re.schema_search=RegExp(`(^|(?!_)(?:[><|]|${t.src_ZPCc}))(${a})`,"ig"),e.re.schema_at_start=RegExp(`^${e.re.schema_search.source}`,"i"),e.re.pretest=RegExp(`(${e.re.schema_test.source})|(${e.re.host_fuzzy_test.source})|@`,"i")}function Sn(e,t,n,r){const i=e.slice(n,r);this.schema=t.toLowerCase(),this.index=n,this.lastIndex=r,this.raw=i,this.text=i,this.url=i}function Nn(e,t){if(!(this instanceof Nn))return new Nn(e,t);var n;t||(n=e,Object.keys(n||{}).reduce(function(e,t){return e||xn.hasOwnProperty(t)},!1)&&(t=e,e={})),this.__opts__=wn({},xn,t),this.__schemas__=wn({},An,e),this.__compiled__={},this.__tlds__=Cn,this.__tlds_replaced__=!1,this.re={},Dn(this)}Nn.prototype.add=function(e,t){return this.__schemas__[e]=t,Dn(this),this},Nn.prototype.set=function(e){return this.__opts__=wn(this.__opts__,e),this},Nn.prototype.test=function(e){if(!e.length)return!1;let t,n;if(this.re.schema_test.test(e))for(n=this.re.schema_search,n.lastIndex=0;null!==(t=n.exec(e));)if(this.testSchemaAt(e,t[2],n.lastIndex))return!0;return!!(this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&e.search(this.re.host_fuzzy_test)>=0&&null!==e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))||!!(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]&&e.indexOf("@")>=0&&null!==e.match(this.re.email_fuzzy))},Nn.prototype.pretest=function(e){return this.re.pretest.test(e)},Nn.prototype.testSchemaAt=function(e,t,n){return this.__compiled__[t.toLowerCase()]?this.__compiled__[t.toLowerCase()].validate(e,n,this):0},Nn.prototype.match=function(e){const t=[],n=[],r=[],i=[];let s,a,o;function l(e,t){return e?t?e.index!==t.index?e.index<t.index?e:t:e.lastIndex>=t.lastIndex?e:t:e:t}if(!e.length)return null;if(this.re.schema_test.test(e))for(o=this.re.schema_search,o.lastIndex=0;null!==(s=o.exec(e));)a=this.testSchemaAt(e,s[2],o.lastIndex),a&&n.push({schema:s[2],index:s.index+s[1].length,lastIndex:s.index+s[0].length+a});if(this.__opts__.fuzzyLink&&this.__compiled__["http:"])for(o=this.__opts__.fuzzyIP?this.re.link_fuzzy_global:this.re.link_no_ip_fuzzy_global,o.lastIndex=0;null!==(s=o.exec(e));)r.push({schema:"",index:s.index+s[1].length,lastIndex:s.index+s[0].length});if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"])for(o=this.re.email_fuzzy_global,o.lastIndex=0;null!==(s=o.exec(e));)i.push({schema:"mailto:",index:s.index+s[1].length,lastIndex:s.index+s[0].length});const c=[0,0,0];let u=0;for(;;){const s=[n[c[0]],i[c[1]],r[c[2]]],a=l(l(s[0],s[1]),s[2]);if(!a)break;if(a===s[0]?c[0]++:a===s[1]?c[1]++:c[2]++,a.index<u)continue;const o=new Sn(e,a.schema,a.index,a.lastIndex);this.__compiled__[o.schema].normalize(o,this),t.push(o),u=a.lastIndex}return t.length?t:null},Nn.prototype.matchAtStart=function(e){if(!e.length)return null;const t=this.re.schema_at_start.exec(e);if(!t)return null;const n=this.testSchemaAt(e,t[2],t[0].length);if(!n)return null;const r=new Sn(e,t[2],t.index+t[1].length,t.index+t[0].length+n);return this.__compiled__[r.schema].normalize(r,this),r},Nn.prototype.tlds=function(e,t){return e=Array.isArray(e)?e:[e],t?(this.__tlds__=this.__tlds__.concat(e).sort().filter(function(e,t,n){return e!==n[t-1]}).reverse(),Dn(this),this):(this.__tlds__=e.slice(),this.__tlds_replaced__=!0,Dn(this),this)},Nn.prototype.normalize=function(e){e.schema||(e.url=`http://${e.url}`),"mailto:"!==e.schema||/^mailto:/i.test(e.url)||(e.url=`mailto:${e.url}`)},Nn.prototype.onCompile=function(){};const Tn=2147483647,Ln=36,In=/^xn--/,Fn=/[^\0-\x7F]/,zn=/[\x2E\u3002\uFF0E\uFF61]/g,Mn={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},On=Math.floor,Bn=String.fromCharCode;function Rn(e){throw new RangeError(Mn[e])}function $n(e,t){const n=e.split("@");let r="";n.length>1&&(r=n[0]+"@",e=n[1]);const i=function(e,t){const n=[];let r=e.length;for(;r--;)n[r]=t(e[r]);return n}((e=e.replace(zn,".")).split("."),t).join(".");return r+i}function jn(e){const t=[];let n=0;const r=e.length;for(;n<r;){const i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){const r=e.charCodeAt(n++);56320==(64512&r)?t.push(((1023&i)<<10)+(1023&r)+65536):(t.push(i),n--)}else t.push(i)}return t}const Pn=function(e){return e>=48&&e<58?e-48+26:e>=65&&e<91?e-65:e>=97&&e<123?e-97:Ln},Hn=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},qn=function(e,t,n){let r=0;for(e=n?On(e/700):e>>1,e+=On(e/t);e>455;r+=Ln)e=On(e/35);return On(r+36*e/(e+38))},Vn=function(e){const t=[],n=e.length;let r=0,i=128,s=72,a=e.lastIndexOf("-");a<0&&(a=0);for(let n=0;n<a;++n)e.charCodeAt(n)>=128&&Rn("not-basic"),t.push(e.charCodeAt(n));for(let o=a>0?a+1:0;o<n;){const a=r;for(let t=1,i=Ln;;i+=Ln){o>=n&&Rn("invalid-input");const a=Pn(e.charCodeAt(o++));a>=Ln&&Rn("invalid-input"),a>On((Tn-r)/t)&&Rn("overflow"),r+=a*t;const l=i<=s?1:i>=s+26?26:i-s;if(a<l)break;const c=Ln-l;t>On(Tn/c)&&Rn("overflow"),t*=c}const l=t.length+1;s=qn(r-a,l,0==a),On(r/l)>Tn-i&&Rn("overflow"),i+=On(r/l),r%=l,t.splice(r++,0,i)}return String.fromCodePoint(...t)},Un=function(e){const t=[],n=(e=jn(e)).length;let r=128,i=0,s=72;for(const n of e)n<128&&t.push(Bn(n));const a=t.length;let o=a;for(a&&t.push("-");o<n;){let n=Tn;for(const t of e)t>=r&&t<n&&(n=t);const l=o+1;n-r>On((Tn-i)/l)&&Rn("overflow"),i+=(n-r)*l,r=n;for(const n of e)if(n<r&&++i>Tn&&Rn("overflow"),n===r){let e=i;for(let n=Ln;;n+=Ln){const r=n<=s?1:n>=s+26?26:n-s;if(e<r)break;const i=e-r,a=Ln-r;t.push(Bn(Hn(r+i%a,0))),e=On(i/a)}t.push(Bn(Hn(e,0))),s=qn(i,l,o===a),i=0,++o}++i,++r}return t.join("")},Zn=function(e){return $n(e,function(e){return Fn.test(e)?"xn--"+Un(e):e})},Kn=function(e){return $n(e,function(e){return In.test(e)?Vn(e.slice(4).toLowerCase()):e})};const Wn={default:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}},zero:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}},commonmark:{options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}}},Gn=/^(vbscript|javascript|file|data):/,Xn=/^data:image\/(gif|png|jpeg|webp);/;function Jn(e){const t=e.trim().toLowerCase();return!Gn.test(t)||Xn.test(t)}const Qn=["http:","https:","mailto:"];function Yn(e){const t=Ae(e,!0);if(t.hostname&&(!t.protocol||Qn.indexOf(t.protocol)>=0))try{t.hostname=Zn(t.hostname)}catch(e){}return de(he(t))}function er(e){const t=Ae(e,!0);if(t.hostname&&(!t.protocol||Qn.indexOf(t.protocol)>=0))try{t.hostname=Kn(t.hostname)}catch(e){}return ce(he(t),ce.defaultChars+"%")}function tr(e,t){if(!(this instanceof tr))return new tr(e,t);t||Ge(e)||(t=e||{},e="default"),this.inline=new vn,this.block=new nn,this.core=new Vt,this.renderer=new xt,this.linkify=new Nn,this.validateLink=Jn,this.normalizeLink=Yn,this.normalizeLinkText=er,this.utils=Et,this.helpers=Je({},_t),this.options={},this.configure(e),t&&this.set(t)}function nr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var rr,ir;function sr(){if(ir)return rr;function e(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach(n=>{const r=t[n],i=typeof r;"object"!==i&&"function"!==i||Object.isFrozen(r)||e(r)}),t}ir=1;class t{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function r(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t];return t.forEach(function(e){for(const t in e)n[t]=e[t]}),n}const i=e=>!!e.scope;class s{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=n(e)}openNode(e){if(!i(e))return;const t=((e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${"_".repeat(t+1)}`)].join(" ")}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){i(e)&&(this.buffer+="</span>")}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}}const a=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class o{constructor(){this.rootNode=a(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=a({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{o._collapse(e)}))}}class l extends o{constructor(e){super(),this.options=e}addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new s(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function c(e){return e?"string"==typeof e?e:e.source:null}function u(e){return p("(?=",e,")")}function d(e){return p("(?:",e,")*")}function h(e){return p("(?:",e,")?")}function p(...e){return e.map(e=>c(e)).join("")}function m(...e){const t=function(e){const t=e[e.length-1];return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(e);return"("+(t.capture?"":"?:")+e.map(e=>c(e)).join("|")+")"}function f(e){return new RegExp(e.toString()+"|").exec("").length-1}const g=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function b(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;const t=n;let r=c(e),i="";for(;r.length>0;){const e=g.exec(r);if(!e){i+=r;break}i+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+String(Number(e[1])+t):(i+=e[0],"("===e[0]&&n++)}return i}).map(e=>`(${e})`).join(t)}const y="[a-zA-Z]\\w*",v="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",E="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_="\\b(0b[01]+)",k={begin:"\\\\[\\s\\S]",relevance:0},x={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[k]},A={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[k]},C=function(e,t,n={}){const i=r({scope:"comment",begin:e,end:t,contains:[]},n);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const s=m("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:p(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},D=C("//","$"),S=C("/\\*","\\*/"),N=C("#","$"),T={scope:"number",begin:w,relevance:0},L={scope:"number",begin:E,relevance:0},I={scope:"number",begin:_,relevance:0},F={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[k,{begin:/\[/,end:/\]/,relevance:0,contains:[k]}]},z={scope:"title",begin:y,relevance:0},M={scope:"title",begin:v,relevance:0},O={begin:"\\.\\s*"+v,relevance:0};var B=Object.freeze({__proto__:null,APOS_STRING_MODE:x,BACKSLASH_ESCAPE:k,BINARY_NUMBER_MODE:I,BINARY_NUMBER_RE:_,COMMENT:C,C_BLOCK_COMMENT_MODE:S,C_LINE_COMMENT_MODE:D,C_NUMBER_MODE:L,C_NUMBER_RE:E,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:N,IDENT_RE:y,MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:O,NUMBER_MODE:T,NUMBER_RE:w,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},QUOTE_STRING_MODE:A,REGEXP_MODE:F,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=p(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},TITLE_MODE:z,UNDERSCORE_IDENT_RE:v,UNDERSCORE_TITLE_MODE:M});function R(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function $(e,t){void 0!==e.className&&(e.scope=e.className,delete e.className)}function j(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=R,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function P(e,t){Array.isArray(e.illegal)&&(e.illegal=m(...e.illegal))}function H(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function q(e,t){void 0===e.relevance&&(e.relevance=1)}const V=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=p(n.beforeMatch,u(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},U=["of","and","for","in","not","or","if","then","parent","list","value"];function Z(e,t,n="keyword"){const r=Object.create(null);return"string"==typeof e?i(n,e.split(" ")):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(n){Object.assign(r,Z(e[n],t,n))}),r;function i(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){const n=t.split("|");r[n[0]]=[e,K(n[0],n[1])]})}}function K(e,t){return t?Number(t):function(e){return U.includes(e.toLowerCase())}(e)?0:1}const W={},G=e=>{console.error(e)},X=(e,...t)=>{console.log(`WARN: ${e}`,...t)},J=(e,t)=>{W[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),W[`${e}/${t}`]=!0)},Q=new Error;function Y(e,t,{key:n}){let r=0;const i=e[n],s={},a={};for(let e=1;e<=t.length;e++)a[e+r]=i[e],s[e+r]=!0,r+=f(t[e-1]);e[n]=a,e[n]._emit=s,e[n]._multi=!0}function ee(e){!function(e){e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,delete e.scope)}(e),"string"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope}),function(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw G("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Q;if("object"!=typeof e.beginScope||null===e.beginScope)throw G("beginScope must be object"),Q;Y(e,e.begin,{key:"beginScope"}),e.begin=b(e.begin,{joinWith:""})}}(e),function(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw G("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Q;if("object"!=typeof e.endScope||null===e.endScope)throw G("endScope must be object"),Q;Y(e,e.end,{key:"endScope"}),e.end=b(e.end,{joinWith:""})}}(e)}function te(e){function t(t,n){return new RegExp(c(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=f(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=t(b(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex((e,t)=>t>0&&void 0!==e),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=r(e.classNameAliases||{}),function n(s,a){const o=s;if(s.isCompiled)return o;[$,H,ee,V].forEach(e=>e(s,a)),e.compilerExtensions.forEach(e=>e(s,a)),s.__beforeBegin=null,[j,P,q].forEach(e=>e(s,a)),s.isCompiled=!0;let l=null;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),l=s.keywords.$pattern,delete s.keywords.$pattern),l=l||/\w+/,s.keywords&&(s.keywords=Z(s.keywords,e.case_insensitive)),o.keywordPatternRe=t(l,!0),a&&(s.begin||(s.begin=/\B|\b/),o.beginRe=t(o.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),s.end&&(o.endRe=t(o.end)),o.terminatorEnd=c(o.end)||"",s.endsWithParent&&a.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(o.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return r(e,{variants:null},t)}));if(e.cachedVariants)return e.cachedVariants;if(ne(e))return r(e,{starts:e.starts?r(e.starts):null});if(Object.isFrozen(e))return r(e);return e}("self"===e?s:e)})),s.contains.forEach(function(e){n(e,o)}),s.starts&&n(s.starts,a),o.matcher=function(e){const t=new i;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:"begin"})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(o),o}(e)}function ne(e){return!!e&&(e.endsWithParent||ne(e.starts))}class re extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const ie=n,se=r,ae=Symbol("nomatch"),oe=function(n){const r=Object.create(null),i=Object.create(null),s=[];let a=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let f={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:l};function g(e){return f.noHighlightRe.test(e)}function b(e,t,n){let r="",i="";"object"==typeof t?(r=e,n=t.ignoreIllegals,i=t.language):(J("10.7.0","highlight(lang, code, ...args) has been deprecated."),J("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),i=e,r=t),void 0===n&&(n=!0);const s={code:r,language:i};C("before:highlight",s);const a=s.result?s.result:y(s.language,s.code,n);return a.code=s.code,C("after:highlight",a),a}function y(e,n,i,s){const l=Object.create(null);function c(e,t){return e.keywords[t]}function u(){if(!D.keywords)return void N.addText(T);let e=0;D.keywordPatternRe.lastIndex=0;let t=D.keywordPatternRe.exec(T),n="";for(;t;){n+=T.substring(e,t.index);const r=x.case_insensitive?t[0].toLowerCase():t[0],i=c(D,r);if(i){const[e,s]=i;if(N.addText(n),n="",l[r]=(l[r]||0)+1,l[r]<=7&&(L+=s),e.startsWith("_"))n+=t[0];else{const n=x.classNameAliases[e]||e;h(t[0],n)}}else n+=t[0];e=D.keywordPatternRe.lastIndex,t=D.keywordPatternRe.exec(T)}n+=T.substring(e),N.addText(n)}function d(){null!=D.subLanguage?function(){if(""===T)return;let e=null;if("string"==typeof D.subLanguage){if(!r[D.subLanguage])return void N.addText(T);e=y(D.subLanguage,T,!0,S[D.subLanguage]),S[D.subLanguage]=e._top}else e=v(T,D.subLanguage.length?D.subLanguage:null);D.relevance>0&&(L+=e.relevance),N.__addSublanguage(e._emitter,e.language)}():u(),T=""}function h(e,t){""!==e&&(N.startScope(t),N.addText(e),N.endScope())}function p(e,t){let n=1;const r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}const r=x.classNameAliases[e[n]]||e[n],i=t[n];r?h(i,r):(T=i,u(),T=""),n++}}function m(e,t){return e.scope&&"string"==typeof e.scope&&N.openNode(x.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(h(T,x.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),T=""):e.beginScope._multi&&(p(e.beginScope,t),T="")),D=Object.create(e,{parent:{value:D}}),D}function g(e,n,r){let i=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(e.endRe,r);if(i){if(e["on:end"]){const r=new t(e);e["on:end"](n,r),r.isMatchIgnored&&(i=!1)}if(i){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return g(e.parent,n,r)}function b(e){return 0===D.matcher.regexIndex?(T+=e[0],1):(z=!0,0)}function w(e){const t=e[0],r=n.substring(e.index),i=g(D,e,r);if(!i)return ae;const s=D;D.endScope&&D.endScope._wrap?(d(),h(t,D.endScope._wrap)):D.endScope&&D.endScope._multi?(d(),p(D.endScope,e)):s.skip?T+=t:(s.returnEnd||s.excludeEnd||(T+=t),d(),s.excludeEnd&&(T=t));do{D.scope&&N.closeNode(),D.skip||D.subLanguage||(L+=D.relevance),D=D.parent}while(D!==i.parent);return i.starts&&m(i.starts,e),s.returnEnd?0:t.length}let E={};function _(r,s){const o=s&&s[0];if(T+=r,null==o)return d(),0;if("begin"===E.type&&"end"===s.type&&E.index===s.index&&""===o){if(T+=n.slice(s.index,s.index+1),!a){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=E.rule,t}return 1}if(E=s,"begin"===s.type)return function(e){const n=e[0],r=e.rule,i=new t(r),s=[r.__beforeBegin,r["on:begin"]];for(const t of s)if(t&&(t(e,i),i.isMatchIgnored))return b(n);return r.skip?T+=n:(r.excludeBegin&&(T+=n),d(),r.returnBegin||r.excludeBegin||(T=n)),m(r,e),r.returnBegin?0:n.length}(s);if("illegal"===s.type&&!i){const e=new Error('Illegal lexeme "'+o+'" for mode "'+(D.scope||"<unnamed>")+'"');throw e.mode=D,e}if("end"===s.type){const e=w(s);if(e!==ae)return e}if("illegal"===s.type&&""===o)return T+="\n",1;if(F>1e5&&F>3*s.index){throw new Error("potential infinite loop, way more iterations than matches")}return T+=o,o.length}const x=k(e);if(!x)throw G(o.replace("{}",e)),new Error('Unknown language: "'+e+'"');const A=te(x);let C="",D=s||A;const S={},N=new f.__emitter(f);!function(){const e=[];for(let t=D;t!==x;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>N.openNode(e))}();let T="",L=0,I=0,F=0,z=!1;try{if(x.__emitTokens)x.__emitTokens(n,N);else{for(D.matcher.considerAll();;){F++,z?z=!1:D.matcher.considerAll(),D.matcher.lastIndex=I;const e=D.matcher.exec(n);if(!e)break;const t=_(n.substring(I,e.index),e);I=e.index+t}_(n.substring(I))}return N.finalize(),C=N.toHTML(),{language:e,value:C,relevance:L,illegal:!1,_emitter:N,_top:D}}catch(t){if(t.message&&t.message.includes("Illegal"))return{language:e,value:ie(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:I,context:n.slice(I-100,I+100),mode:t.mode,resultSoFar:C},_emitter:N};if(a)return{language:e,value:ie(n),illegal:!1,relevance:0,errorRaised:t,_emitter:N,_top:D};throw t}}function v(e,t){t=t||f.languages||Object.keys(r);const n=function(e){const t={value:ie(e),illegal:!1,relevance:0,_top:c,_emitter:new f.__emitter(f)};return t._emitter.addText(e),t}(e),i=t.filter(k).filter(A).map(t=>y(t,e,!1));i.unshift(n);const s=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(k(e.language).supersetOf===t.language)return 1;if(k(t.language).supersetOf===e.language)return-1}return 0}),[a,o]=s,l=a;return l.secondBest=o,l}function w(e){let t=null;const n=function(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=f.languageDetectRe.exec(t);if(n){const t=k(n[1]);return t||(X(o.replace("{}",n[1])),X("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}return t.split(/\s+/).find(e=>g(e)||k(e))}(e);if(g(n))return;if(C("before:highlightElement",{el:e,language:n}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);if(e.children.length>0&&(f.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(e)),f.throwUnescapedHTML)){throw new re("One of your code blocks includes unescaped HTML.",e.innerHTML)}t=e;const r=t.textContent,s=n?b(r,{language:n,ignoreIllegals:!0}):v(r);e.innerHTML=s.value,e.dataset.highlighted="yes",function(e,t,n){const r=t&&i[t]||n;e.classList.add("hljs"),e.classList.add(`language-${r}`)}(e,n,s.language),e.result={language:s.language,re:s.relevance,relevance:s.relevance},s.secondBest&&(e.secondBest={language:s.secondBest.language,relevance:s.secondBest.relevance}),C("after:highlightElement",{el:e,result:s,text:r})}let E=!1;function _(){if("loading"===document.readyState)return E||window.addEventListener("DOMContentLoaded",function(){_()},!1),void(E=!0);document.querySelectorAll(f.cssSelector).forEach(w)}function k(e){return e=(e||"").toLowerCase(),r[e]||r[i[e]]}function x(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach(e=>{i[e.toLowerCase()]=t})}function A(e){const t=k(e);return t&&!t.disableAutodetect}function C(e,t){const n=e;s.forEach(function(e){e[n]&&e[n](t)})}Object.assign(n,{highlight:b,highlightAuto:v,highlightAll:_,highlightElement:w,highlightBlock:function(e){return J("10.7.0","highlightBlock will be removed entirely in v12.0"),J("10.7.0","Please use highlightElement now."),w(e)},configure:function(e){f=se(f,e)},initHighlighting:()=>{_(),J("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function(){_(),J("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function(e,t){let i=null;try{i=t(n)}catch(t){if(G("Language definition for '{}' could not be registered.".replace("{}",e)),!a)throw t;G(t),i=c}i.name||(i.name=e),r[e]=i,i.rawDefinition=t.bind(null,n),i.aliases&&x(i.aliases,{languageName:e})},unregisterLanguage:function(e){delete r[e];for(const t of Object.keys(i))i[t]===e&&delete i[t]},listLanguages:function(){return Object.keys(r)},getLanguage:k,registerAliases:x,autoDetection:A,inherit:se,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),s.push(e)},removePlugin:function(e){const t=s.indexOf(e);-1!==t&&s.splice(t,1)}}),n.debugMode=function(){a=!1},n.safeMode=function(){a=!0},n.versionString="11.11.1",n.regex={concat:p,lookahead:u,either:m,optional:h,anyNumberOfTimes:d};for(const t in B)"object"==typeof B[t]&&e(B[t]);return Object.assign(n,B),n},le=oe({});return le.newInstance=()=>oe({}),rr=le,le.HighlightJS=le,le.default=le,rr}tr.prototype.set=function(e){return Je(this.options,e),this},tr.prototype.configure=function(e){const t=this;if(Ge(e)){const t=e;if(!(e=Wn[t]))throw new Error('Wrong `markdown-it` preset "'+t+'", check name')}if(!e)throw new Error("Wrong `markdown-it` preset, can't be empty");return e.options&&t.set(e.options),e.components&&Object.keys(e.components).forEach(function(n){e.components[n].rules&&t[n].ruler.enableOnly(e.components[n].rules),e.components[n].rules2&&t[n].ruler2.enableOnly(e.components[n].rules2)}),this},tr.prototype.enable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),["core","block","inline"].forEach(function(t){n=n.concat(this[t].ruler.enable(e,!0))},this),n=n.concat(this.inline.ruler2.enable(e,!0));const r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r);return this},tr.prototype.disable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),["core","block","inline"].forEach(function(t){n=n.concat(this[t].ruler.disable(e,!0))},this),n=n.concat(this.inline.ruler2.disable(e,!0));const r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r);return this},tr.prototype.use=function(e){const t=[this].concat(Array.prototype.slice.call(arguments,1));return e.apply(e,t),this},tr.prototype.parse=function(e,t){if("string"!=typeof e)throw new Error("Input data should be a String");const n=new this.core.State(e,this,t);return this.core.process(n),n.tokens},tr.prototype.render=function(e,t){return t=t||{},this.renderer.render(this.parse(e,t),this.options,t)},tr.prototype.parseInline=function(e,t){const n=new this.core.State(e,this,t);return n.inlineMode=!0,this.core.process(n),n.tokens},tr.prototype.renderInline=function(e,t){return t=t||{},this.renderer.render(this.parseInline(e,t),this.options,t)};var ar=nr(sr());const or="[A-Za-z$_][0-9A-Za-z$_]*",lr=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],cr=["true","false","null","undefined","NaN","Infinity"],ur=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],dr=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],hr=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],pr=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],mr=[].concat(hr,ur,dr);const fr="[A-Za-z$_][0-9A-Za-z$_]*",gr=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],br=["true","false","null","undefined","NaN","Infinity"],yr=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],vr=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],wr=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Er=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],_r=[].concat(wr,yr,vr);function kr(e){const t=e.regex,n=fr,r="<>",i="</>",s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let i;">"===r&&(((e,{after:t})=>{const n="</"+e[0].slice(1);return-1!==e.input.indexOf(n,t)})(e,{after:n})||t.ignoreMatch());const s=e.input.substring(n);((i=s.match(/^\s*=/))||(i=s.match(/^\s+extends\s+/))&&0===i.index)&&t.ignoreMatch()}},a={$pattern:fr,keyword:gr,literal:br,built_in:_r,"variable.language":Er},o="[0-9](_?[0-9])*",l=`\\.(${o})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",u={className:"number",variants:[{begin:`(\\b(${c})((${l})|\\.)?|(${l}))[eE][+-]?(${o})\\b`},{begin:`\\b(${c})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},p={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},f={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},g={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},b=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(b)});const y=[].concat(g,d.contains),v=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(y)}]),w={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v},E={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,t.concat(n,"(",t.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...yr,...vr]}},k={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[w],illegal:/%/};const x={match:t.concat(/\b/,function(e){return t.concat("(?!",e.join("|"),")")}([...wr,"super","import"].map(e=>`${e}\\s*\\(`)),n,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},A={begin:t.concat(/\./,t.lookahead(t.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},C={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},w]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[w]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:v,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,g,{match:/\$\d+/},u,_,{scope:"attr",match:n+t.lookahead(":"),relevance:0},S,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r,end:i},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},k,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[w,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},A,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[w]},x,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},E,C,{match:/\$[(.]/}]}}const xr=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video","defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Ar=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Cr=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Dr=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Sr=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();ar.registerLanguage("javascript",function(e){const t=e.regex,n=or,r="<>",i="</>",s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let i;">"===r&&(((e,{after:t})=>{const n="</"+e[0].slice(1);return-1!==e.input.indexOf(n,t)})(e,{after:n})||t.ignoreMatch());const s=e.input.substring(n);((i=s.match(/^\s*=/))||(i=s.match(/^\s+extends\s+/))&&0===i.index)&&t.ignoreMatch()}},a={$pattern:or,keyword:lr,literal:cr,built_in:mr,"variable.language":pr},o="[0-9](_?[0-9])*",l=`\\.(${o})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",u={className:"number",variants:[{begin:`(\\b(${c})((${l})|\\.)?|(${l}))[eE][+-]?(${o})\\b`},{begin:`\\b(${c})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},p={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},f={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},g={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},b=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(b)});const y=[].concat(g,d.contains),v=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(y)}]),w={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v},E={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,t.concat(n,"(",t.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...ur,...dr]}},k={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[w],illegal:/%/},x={match:t.concat(/\b/,function(e){return t.concat("(?!",e.join("|"),")")}([...hr,"super","import"].map(e=>`${e}\\s*\\(`)),n,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},A={begin:t.concat(/\./,t.lookahead(t.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},C={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},w]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[w]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:v,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,g,{match:/\$\d+/},u,_,{scope:"attr",match:n+t.lookahead(":"),relevance:0},S,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r,end:i},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},k,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[w,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},A,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[w]},x,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},E,C,{match:/\$[(.]/}]}}),ar.registerLanguage("typescript",function(e){const t=e.regex,n=kr(e),r=fr,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},a={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[n.exports.CLASS_REFERENCE]},o={$pattern:fr,keyword:gr.concat(["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"]),literal:br,built_in:_r.concat(i),"variable.language":Er},l={className:"meta",begin:"@"+r},c=(e,t,n)=>{const r=e.contains.findIndex(e=>e.label===t);if(-1===r)throw new Error("can not find mode to replace");e.contains.splice(r,1,n)};Object.assign(n.keywords,o),n.exports.PARAMS_CONTAINS.push(l);const u=n.contains.find(e=>"attr"===e.scope),d=Object.assign({},u,{match:t.concat(r,t.lookahead(/\s*\?:/))});return n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,u,d]),n.contains=n.contains.concat([l,s,a,d]),c(n,"shebang",e.SHEBANG()),c(n,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),n.contains.find(e=>"func.def"===e.label).relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}),ar.registerLanguage("python",function(e){const t=e.regex,n=/[\p{XID_Start}_]\p{XID_Continue}*/u,r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},s={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},o={begin:/\{\{/,relevance:0},l={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s,o,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s,o,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,o,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},c="[0-9](_?[0-9])*",u=`(\\b(${c}))?\\.(${c})|\\b(${c})\\.`,d=`\\b|${r.join("|")}`,h={className:"number",relevance:0,variants:[{begin:`(\\b(${c})|(${u}))[eE][+-]?(${c})[jJ]?(?=${d})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${c})[jJ](?=${d})`}]},p={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",s,h,l,e.HASH_COMMENT_MODE]}]};return a.contains=[l,h,s],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[s,h,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},l,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[h,m,l]}]}}),ar.registerLanguage("json",function(e){const t=["true","false","null"],n={scope:"literal",beginKeywords:t.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:t},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,n,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}),ar.registerLanguage("yaml",function(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(r,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},a={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},o={begin:/\{/,end:/\}/,contains:[a],illegal:"\\n",relevance:0},l={begin:"\\[",end:"\\]",contains:[a],illegal:"\\n",relevance:0},c=[{className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},s,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},o,l,{className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},r],u=[...c];return u.pop(),u.push(i),a.contains=u,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:c}}),ar.registerLanguage("bash",function(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const i={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),a={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},o={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(o);const l={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},c=e.SHEBANG({binary:`(${["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|")})`,relevance:10}),u={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],literal:["true","false"],built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"]},contains:[c,e.SHEBANG(),u,l,s,a,{match:/(\/[a-z._-]+)+/},o,{match:/\\"/},{className:"string",begin:/'/,end:/'/},{match:/\\'/},n]}}),ar.registerLanguage("xml",function(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},i={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=e.inherit(i,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:/[\p{L}0-9._:-]+/u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[r]},{begin:/'/,end:/'/,contains:[r]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[i,o,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[i,s,o,a]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[o]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:l}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}),ar.registerLanguage("css",function(e){const t=e.regex,n=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}))(e),r=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/},n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Cr.join("|")+")"},{begin:":(:)?("+Dr.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Sr.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...r,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...r,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Ar.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...r,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+xr.join("|")+")\\b"}]}}),ar.registerLanguage("sql",function(e){const t=e.regex,n=e.COMMENT("--","$"),r=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],i=r,s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter(e=>!r.includes(e)),a={match:t.concat(/\b/,t.either(...i),/\s*\(/),relevance:0,keywords:{built_in:i}};function o(e){return t.concat(/\b/,t.either(...e.map(e=>e.replace(/\s+/,"\\s+"))),/\b/)}const l={scope:"keyword",match:o(["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"]),relevance:0};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e,{exceptions:t,when:n}={}){const r=n;return t=t||[],e.map(e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e)}(s,{when:e=>e.length<3}),literal:["true","false","unknown"],type:["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{scope:"type",match:o(["double precision","large object","with timezone","without timezone"])},l,a,{scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},{scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},{begin:/"/,end:/"/,contains:[{match:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}}),ar.registerLanguage("markdown",function(e){const t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},r={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},i={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},s=e.inherit(r,{contains:[]}),a=e.inherit(i,{contains:[]});r.contains.push(a),i.contains.push(s);let o=[t,n];return[r,i,s,a].forEach(e=>{e.contains=e.contains.concat(o)}),o=o.concat(r,i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:o},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:o}]}]},t,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},r,i,{className:"quote",begin:"^>\\s+",contains:o,end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},n,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}),ar.registerLanguage("diff",function(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}});const Nr={js:"javascript",jsx:"javascript",mjs:"javascript",ts:"typescript",tsx:"typescript",py:"python",yml:"yaml",sh:"bash",shell:"bash",zsh:"bash",html:"xml",htm:"xml",md:"markdown"};function Tr(e){const t=new tr({html:!1,linkify:!0,breaks:!0,highlight:e?(e,t)=>{const n=function(e){const t=(e||"").trim().toLowerCase();if(!t)return;const n=Nr[t]??t;return ar.getLanguage(n)?n:void 0}(t);if(n)try{return ar.highlight(e,{language:n,ignoreIllegals:!0}).value}catch{}return""}:void 0});return t}const Lr=Tr(!0),Ir=Tr(!1);const Fr={ActivityBar:b,Statusbar:y,View:M,Views:$,KeyboardShortcuts:j,Layout:V,ContentTabs:U,PanelTabs:J,PanelContainers:Y,PanelLayout:{manager:oe},Profile:n,Markdown:{render:function(e,t){return(!1===t?.highlight?Ir:Lr).render(String(e??""))},css:"\n.pnc-md { font-size: 14px; line-height: 1.65; word-break: break-word; }\n.pnc-md p { margin: 0 0 8px; }\n.pnc-md p:last-child { margin-bottom: 0; }\n.pnc-md h1, .pnc-md h2, .pnc-md h3,\n.pnc-md h4, .pnc-md h5, .pnc-md h6 {\n margin: 14px 0 6px;\n line-height: 1.3;\n font-weight: 600;\n}\n.pnc-md h1 { font-size: 1.4em; }\n.pnc-md h2 { font-size: 1.25em; }\n.pnc-md h3 { font-size: 1.12em; }\n.pnc-md h4 { font-size: 1em; }\n.pnc-md h5, .pnc-md h6 { font-size: 0.92em; color: var(--text-secondary, #9aa0a6); }\n.pnc-md ul, .pnc-md ol { margin: 0 0 8px; padding-left: 22px; }\n.pnc-md li { margin: 2px 0; }\n.pnc-md li:last-child { margin-bottom: 0; }\n.pnc-md a { color: var(--primary-main, #6ea8fe); text-decoration: underline; }\n.pnc-md blockquote {\n margin: 6px 0;\n padding: 2px 0 2px 12px;\n border-left: 3px solid var(--neutral-main, rgba(127, 127, 127, 0.35));\n color: var(--text-secondary, #9aa0a6);\n}\n.pnc-md table {\n border-collapse: collapse;\n margin: 8px 0;\n font-size: 13px;\n display: block;\n overflow-x: auto;\n}\n.pnc-md th, .pnc-md td {\n border: 1px solid var(--neutral-main, rgba(127, 127, 127, 0.3));\n padding: 4px 8px;\n text-align: left;\n}\n.pnc-md th { background: rgba(127, 127, 127, 0.12); font-weight: 600; }\n\n/* Inline code */\n.pnc-md code {\n font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);\n font-size: 0.92em;\n padding: 1px 5px;\n border-radius: 5px;\n background: rgba(127, 127, 127, 0.16);\n}\n\n/* Fenced code block — fixed dark surface (One Dark), independent of app theme */\n.pnc-md pre {\n margin: 6px 0 10px;\n border-radius: 8px;\n overflow: hidden;\n background: #282c34;\n border: 1px solid rgba(127, 127, 127, 0.28);\n}\n.pnc-md pre code {\n display: block;\n padding: 12px 14px;\n overflow-x: auto;\n background: none;\n border-radius: 0;\n font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);\n font-size: 12.5px;\n line-height: 1.55;\n color: #abb2bf;\n white-space: pre;\n}\n\n/* Code-block chrome (extension-added): top bar with language + copy button */\n.pnc-md-code { position: relative; }\n.pnc-md-code__bar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 4px 10px;\n background: #21252b;\n border-bottom: 1px solid rgba(127, 127, 127, 0.28);\n font-size: 11px;\n}\n.pnc-md-code__lang {\n color: #7f848e;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n.pnc-md-code__copy {\n border: none;\n background: transparent;\n color: #abb2bf;\n cursor: pointer;\n font-size: 11px;\n padding: 2px 6px;\n border-radius: 4px;\n}\n.pnc-md-code__copy:hover { background: rgba(127, 127, 127, 0.2); }\n.pnc-md-code__copy--done { color: #98c379; }\n\n/* highlight.js — One Dark palette (matches the editor's code coloring) */\n.hljs-comment, .hljs-quote { color: #5c6370; font-style: italic; }\n.hljs-keyword, .hljs-selector-tag, .hljs-literal,\n.hljs-doctag, .hljs-name { color: #c678dd; }\n.hljs-built_in, .hljs-class .hljs-title, .hljs-title.class_,\n.hljs-attr, .hljs-attribute { color: #e5c07b; }\n.hljs-string, .hljs-symbol, .hljs-bullet,\n.hljs-addition, .hljs-regexp { color: #98c379; }\n.hljs-number, .hljs-meta .hljs-number { color: #d19a66; }\n.hljs-title, .hljs-title.function_, .hljs-section { color: #61afef; }\n.hljs-variable, .hljs-template-variable, .hljs-tag,\n.hljs-selector-id, .hljs-selector-class { color: #e06c75; }\n.hljs-meta, .hljs-comment .hljs-doctag { color: #56b6c2; }\n.hljs-deletion { color: #e06c75; }\n.hljs-emphasis { font-style: italic; }\n.hljs-strong { font-weight: 600; }\n"}};class zr{name=r.SHELL.ACTIVITY_BAR;version="1.0.0";dependencies=[r.KERNEL.COMMANDS,r.RUNTIME.WORKSPACE];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e,s=n.getState(r.KERNEL.COMMANDS),a=n.getState(r.RUNTIME.WORKSPACE);if(s!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.activityBar");if(a!==i.BOOTSTRAPPED)throw new Error("runtime.workspace must be bootstrapped before shell.activityBar");if(!t.shell?.ActivityBar?.manager)throw new Error("ActivityBar manager not available")}async start(e){g.init()}}class Mr{name=r.SHELL.STATUSBAR;version="1.0.0";dependencies=[r.KERNEL.EVENTS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.EVENTS)!==i.BOOTSTRAPPED)throw new Error("kernel.events must be bootstrapped before shell.statusbar");if(!t.shell?.Statusbar?.manager)throw new Error("Statusbar manager not available")}async start(e){}}class Or{name=r.SHELL.VIEW;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.view");if(!t.shell?.View)throw new Error("View API not available")}async start(e){const{punica:t}=e;if(t.shell?.View?.Theme?.manager)try{await t.shell.View.Theme.manager.initialize(),console.log("[ViewModule] Theme manager initialized")}catch(e){console.error("[ViewModule] Failed to initialize theme manager:",e)}}}class Br{name=r.SHELL.VIEWS;version="1.0.0";dependencies=[r.SHELL.LAYOUT,r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.SHELL.LAYOUT)!==i.BOOTSTRAPPED)throw new Error("shell.layout must be bootstrapped before shell.views");if(!t.shell?.Views?.manager)throw new Error("Views API not available")}async start(e){}}class Rr{name=r.SHELL.KEYBOARD_SHORTCUTS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.keyboardShortcuts");if(!t.shell?.KeyboardShortcuts?.manager)throw new Error("KeyboardShortcuts manager not available")}async start(e){!function(){const e=globalThis.punica?.shell?.KeyboardShortcuts?.manager;if(!e)return;const t=(t,n,r)=>{e.registerShortcut({command:n,keys:[a(t)],when:r})};t("mod+j",s.SHELL.TOGGLE_PANEL),t("mod+b",s.SHELL.TOGGLE_PRIMARY_SIDEBAR),t("mod+l",s.SHELL.TOGGLE_SECONDARY_SIDEBAR)}()}}class $r{name=r.SHELL.LAYOUT;version="1.0.0";dependencies=[r.KERNEL.COMMANDS,r.RUNTIME.WORKSPACE];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e,s=n.getState(r.KERNEL.COMMANDS),a=n.getState(r.RUNTIME.WORKSPACE);if(s!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.layout");if(a!==i.BOOTSTRAPPED)throw new Error("runtime.workspace must be bootstrapped before shell.layout");if(!t.shell?.Layout?.manager)throw new Error("Layout manager not available")}async start(e){}}class jr{name=r.SHELL.CONTENT_TABS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.contentTabs");if(!t.shell?.ContentTabs)throw new Error("ContentTabs API not available")}async start(e){}}class Pr{name=r.SHELL.PANEL_TABS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.panelTabs");if(!t.shell?.PanelTabs)throw new Error("PanelTabs API not available")}async start(e){}}class Hr{name=r.SHELL.PANEL_LAYOUT;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t}=e;if(!t.shell?.PanelLayout?.manager)throw new Error("PanelLayout API not available")}async start(e){try{await e.punica.shell.PanelLayout.manager.load()}catch(e){console.warn("[PanelLayout] load during start failed",e)}}}const qr={schemaVersion:"1",identity:{id:"ivyx-classic",name:"ivyx",version:"1.0.0",audience:"ml-engineer",branding:{productName:"ivyx"}},shell:{activeModules:["shell.activityBar","shell.statusbar","shell.view","shell.keyboardShortcuts","shell.layout","shell.views","shell.contentTabs","shell.panelTabs","shell.panelLayout","flow.shell"],layout:{id:"classic-editor",root:{type:"row",sizes:[70,30],children:[{type:"column",sizes:[80,20],children:[{type:"slot",id:"content",role:"content"},{type:"slot",id:"panel",role:"panel"}]},{type:"slot",id:"secondarySidebar",role:"secondarySidebar"}]}}},theme:{mode:"auto",density:"comfortable",branding:{productName:"ivyx"}},capabilities:{allowedIds:"*"}},Vr={schemaVersion:"1",identity:{id:"agent-ops-console",name:"Agent Ops Console",version:"1.0.0",audience:"compliance-officer",branding:{productName:"Agent Ops Console"}},shell:{activeModules:["shell.statusbar","shell.view","shell.layout","shell.views","shell.contentTabs"],layout:{id:"agent-ops-dashboard",root:{type:"column",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]}}},theme:{mode:"dark",density:"compact",branding:{productName:"Agent Ops Console"}},capabilities:{allowedIds:["capability.catalog","capability.schemaExport","event.query","event.replay","llm.listProviders","workspace.get","fs.read","fs.stat","fs.exists","fs.list","fs.snapshot","approval.grant","approval.revoke","delegation.create","flow.validate","cost.report"],deniedIds:["fs.write","fs.delete","fs.copy","fs.migrate","fs.restore","workspace.create","workspace.delete","secrets.set","secrets.delete","vcs.commit","vcs.push"],allowedOrigins:["core","extension","instruction-class"]}};function Ur(){o({facade:Fr,moduleFactories:{"shell.statusbar":()=>new Mr,"shell.view":()=>new Or,"shell.views":()=>new Br,"shell.keyboardShortcuts":()=>new Rr,"shell.contentTabs":()=>new jr,"shell.panelTabs":()=>new Pr,"shell.panelLayout":()=>new Hr,"shell.layout":()=>new $r,"shell.activityBar":()=>new zr},profiles:[qr,Vr],defaultProfileId:"ivyx-classic"})}export{Ur as registerClassicShell};
|
|
1
|
+
import{emitShellEvent as e,isHeadlessScope as t,Profile as n,MODULE_NAMES as r,ModuleLifecycleState as i,COMMAND_IDS as s,parseKeyChord as a,registerShell as o}from"@punica/editor";const l="shell-classic-sidebar-dock-style",c="primarySidebar-resizer",u="punica-editor",d="--primary-sidebar-width",h="sidebar.width",p=300,m=`\n/* \`:not(.layout-welcome)\` keeps the welcome profile's full-bleed single-column\n grid intact: it is defined with the same specificity in the host stylesheet,\n so this injected rule would otherwise win on order alone and re-introduce a\n sidebar track the welcome layout has no element for. */\n#${u}[data-sidebar-mode='docked']:not(.layout-welcome) {\n grid-template-columns: 48px var(${d}, 300px) 1fr;\n grid-template-areas:\n 'activityBar primarySidebar mainContent'\n 'statusBar statusBar statusBar';\n}\n#${u}[data-sidebar-mode='docked'][data-sidebar-collapsed='true']:not(.layout-welcome) {\n grid-template-columns: 48px 0 1fr;\n}\n#${u}[data-sidebar-mode='docked'] #primarySidebar {\n grid-area: primarySidebar;\n /* Containing block for the resize handle. */\n position: relative;\n top: auto;\n bottom: auto;\n left: auto;\n width: auto;\n min-width: 0;\n height: 100%;\n transform: none;\n transition: none;\n /* The resize handle draws the separator (a split gutter line), so the host's\n border would stack a second line next to it. */\n border-right: 0;\n /* In flow now, but it must still outrank the contextual drawer: that drawer\n slides in from off-screen left and has to look like it comes out from\n UNDER the sidebar, not sweep across the top of it. Same rank the host\n gives the sidebar in drawer mode; menus and popovers live at\n --zindex-popover, far above this. */\n z-index: calc(var(--zindex-drawer, 1200) + 1);\n}\n/* \`:not(:empty)\` is required: \`#contentSidebar:empty\` in the host stylesheet is\n the only thing that closes the contextual drawer, and this two-id selector\n would otherwise outrank it and pin the drawer open forever. */\n#${u}[data-sidebar-mode='docked'] #contentSidebar:not(:empty) {\n transform: translateX(calc(48px + var(${d}, 300px)));\n}\n#${u}[data-sidebar-mode='docked'][data-sidebar-collapsed='true'] #contentSidebar:not(:empty) {\n transform: translateX(48px);\n}\n/* The contextual drawer's offset follows the sidebar width, and the host gives\n it a 225ms transform transition — which would make it trail behind the\n pointer during a drag. Pin it to the sidebar while resizing. */\n#${u}[data-sidebar-resizing='true'] #contentSidebar {\n transition: none;\n}\n/* The handle is a \`punica-split\` gutter, restated in plain CSS: the sidebar is\n not a split pane (it is an overlay in drawer mode), but it must not look\n different from the right sidebar's separator. Same anatomy as the component's\n shadow style — a gutter-sized invisible lane carrying a 2px line, neutral at\n rest and highlighted while hovered, focused or dragged. The component's\n \`--split-*\` tokens live on its own \`:host\`, so they cannot be inherited out\n here; the fallbacks repeat its values and a host that defines them globally\n still wins. */\n#${c} {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n width: var(--split-gutter-size, 8px);\n cursor: col-resize;\n background: transparent;\n z-index: 1;\n outline: none;\n}\n#${c}::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n /* Flush with the sidebar edge, over the host's 1px border, so the separator\n reads as one 2px line instead of a line plus a border. */\n right: 0;\n width: 2px;\n background: var(--split-gutter-color, var(--neutral-main));\n transition: background\n var(--split-transition, 120ms cubic-bezier(0.4, 0, 0.2, 1));\n}\n#${c}:hover::before,\n#${c}:focus-visible::before,\n#${u}[data-sidebar-resizing='true'] #${c}::before {\n background: var(--split-gutter-hover, var(--highlight));\n}\n`;function f(){return globalThis.punica?.extensions?.settings?.manager??null}const g=new class{#e=!1;#t="drawer";#n=!1;#r=p;#i=null;#s=null;#a=null;#o=!1;init(){this.#e||(this.#e=!0,this.#l(),this.#c(),this.#u(),this.#d())}getMode(){return this.#t}isVisible(){return this.#n}setVisible(e){this.#n=e,this.#e?this.#d():this.init()}setDismissHandler(e){this.#a=e}getWidth(){return this.#h(this.#r)}#l(){if(document.getElementById(l))return;const e=document.createElement("style");e.id=l,e.textContent=m,document.head.appendChild(e)}#p(){try{const e=globalThis.punica?.shell?.Layout?.manager?.getSlot?.("primarySidebar");return e?.content??null}catch{return null}}#m(){const e=this.#p();return e?.parentElement??document.getElementById(u)}#f(){try{const e=globalThis.punica?.shell?.Layout?.manager?.getSlot?.("activityBar"),t=e?.content?.getBoundingClientRect?.().width;if("number"==typeof t&&t>0)return t}catch{}return 48}#d(){const e=this.#p(),t=this.#m();e&&t&&(t.dataset.sidebarMode=this.#t,t.dataset.sidebarCollapsed=this.#n?"false":"true",e.classList.toggle("primarySidebar-hidden",!this.#n),this.#g(t),"docked"===this.#t?(this.#b(),this.#y(e)):(this.#v(),this.#n?this.#w(t):this.#b()))}#g(e){const t=e??this.#m();t&&t.style.setProperty(d,`${this.#h(this.#r)}px`)}#h(e){const t="undefined"!=typeof window?window.innerWidth:0,n=t>0?Math.min(720,Math.max(180,.6*t)):720,r=Math.min(Math.max(e,180),n);return Math.round(r)}#c(){try{const e=f()?.get?.("system",h),t="string"==typeof e?Number(e):e;"number"==typeof t&&Number.isFinite(t)&&t>0&&(this.#r=t)}catch{}}#E(){const e=f();e?.set&&Promise.resolve(e.set("system",h,this.#h(this.#r),"global")).catch(e=>{console.warn("[SidebarDock] failed to persist sidebar width",e)})}#_(e,t){this.#r=this.#h(e),this.#g(null),t&&this.#E()}#u(){const e="undefined"!=typeof window&&"function"==typeof window.matchMedia?window.matchMedia("(min-width: 1024px)"):null;if(this.#t=e?.matches?"docked":"drawer","undefined"==typeof window)return;const t=e=>{const t=e.matches?"docked":"drawer";t!==this.#t&&(this.#t=t,this.#d())};e?.addEventListener?e.addEventListener("change",e=>t(e)):"function"==typeof e?.addListener&&e.addListener(t),window.addEventListener("resize",()=>this.#g(null))}#w(e){if(!this.#i){const e=document.createElement("div");e.id="primarySidebar-scrim",e.setAttribute("style","position:absolute;inset:0;background:transparent;z-index:calc(var(--zindex-drawer, 1200) - 1);"),e.addEventListener("pointerdown",()=>this.#a?.()),this.#i=e}this.#i.parentElement!==e&&e.appendChild(this.#i),this.#i.style.display="block"}#b(){this.#i&&(this.#i.style.display="none")}#y(e){if(!this.#s){const e=document.createElement("div");e.id=c,e.setAttribute("role","separator"),e.setAttribute("aria-orientation","vertical"),e.setAttribute("aria-label","Resize primary side bar"),e.tabIndex=0,e.addEventListener("pointerdown",e=>this.#k(e)),e.addEventListener("keydown",e=>this.#x(e)),e.addEventListener("dblclick",()=>this.#_(p,!0)),this.#s=e}this.#s.parentElement!==e&&e.appendChild(this.#s),this.#s.style.display=this.#n?"block":"none"}#v(){const e=this.#s?.parentElement;e&&this.#s&&e.removeChild(this.#s)}#k(e){if("docked"!==this.#t||!this.#n||this.#o)return;e.preventDefault(),this.#o=!0;const t=this.#f(),n=this.#m();n&&(n.dataset.sidebarResizing="true");try{this.#s?.setPointerCapture?.(e.pointerId)}catch{}const r=e=>{this.#_(e.clientX-t,!1)},i=()=>{window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",i),window.removeEventListener("pointercancel",i),document.documentElement.style.removeProperty("user-select"),n&&delete n.dataset.sidebarResizing,this.#o=!1,this.#E()};window.addEventListener("pointermove",r),window.addEventListener("pointerup",i),window.addEventListener("pointercancel",i),document.documentElement.style.setProperty("user-select","none")}#x(e){if("ArrowLeft"!==e.key&&"ArrowRight"!==e.key)return;e.preventDefault();const t=e.shiftKey?64:16,n="ArrowLeft"===e.key?-t:t;this.#_(this.#h(this.#r)+n,!0)}};const b={manager:new class{#A=new Map;#C=new Map;#D=null;#S=null;#N;#T;#L;#I=new Map;#F=0;#z(e,t,n){this.#I.has(n)||this.#I.set(n,this.#F++);const r=this.#I.get(n),i=e.querySelector("#"+n);i&&e.removeChild(i);let s=null;for(const t of Array.from(e.children)){const e=this.#I.get(t.id);if(void 0!==e&&e>r){s=t;break}}e.insertBefore(t,s)}#M(){const e=punica.shell.Layout.manager,t=e.getSlot("activityBar")??e.getSlot("primarySidebar"),n=t?.content;if(this.#N=document.createElement("div"),this.#T=document.createElement("div"),this.#L=document.createElement("div"),this.#N.setAttribute("style","display: flex; flex-direction: column; height: 100%;"),this.#T.classList.add("activityBar-primary-scroll"),this.#T.setAttribute("style","display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden;"),this.#L.setAttribute("style","display: flex; flex-direction: column; flex: 0 0 auto;"),!document.getElementById("activityBar-scroll-style")){const e=document.createElement("style");e.id="activityBar-scroll-style",e.textContent=".activityBar-primary-scroll::-webkit-scrollbar { width: 0; height: 0; }.activityBar-primary-scroll { scrollbar-width: none; }",document.head.appendChild(e)}this.#N.appendChild(this.#T),this.#N.appendChild(this.#L),n?.appendChild(this.#N)}constructor(){g.setDismissHandler(()=>this.#O())}#O(){const e=globalThis.punica?.shell?.Views?.manager,t=e?.getVisibleView?.("primarySidebar");t?e.hide(t,{kind:"user-gesture",id:"outside-click"}):this.#B(null)}setActiveByViewId(e){if(e){for(const t of this.#A.values())if(t.viewId===e)return void this.#B(t.id);for(const t of this.#C.values())if(t.viewId===e)return void this.#B(t.id)}else this.#B(null)}#R(e,t){const n=globalThis,r=()=>{const r=n.punica?.shell?.Views?.manager;return r?.reveal?.(e,{kind:"user-gesture",id:`activity-bar:${t}`})},i=n.punica?.runtime?.capabilities?.gateway;if(!i?.call)return void Promise.resolve(r()).catch(t=>{console.error("[ActivityBar] Failed to reveal view",e,t)});const s=n.punica?.kernel?.Events?.manager,a=s?.createCorrelationId?.()??`activity-bar-${Date.now()}`;i.call("shell.revealView",{viewId:e},{sessionId:"default",actor:{type:"user"},origin:{kind:"command",id:`activity-bar:${t}`},trace:{traceId:a},policy:{mode:"execute"}}).catch(e=>(console.warn("[ActivityBar] shell.revealView failed, falling back to direct reveal:",e),Promise.resolve(r()))).catch(t=>{console.error("[ActivityBar] Failed to reveal view",e,t)})}#B(e){this.#D=e;const t=punica.shell.Layout.manager;e?(this.#S=null,g.setVisible(!0)):(g.setVisible(!1),t.resetContentSidebar?.()),this.#$()}syncContentTool(e){const t=e?this.#j(e):void 0;this.#S=t?.id??null,this.#$()}#j(e){for(const t of this.#C.values())if(t.contentViewType===e)return t;for(const t of this.#A.values())if(t.contentViewType===e)return t}#$(){if(!this.#N)return;const e="extension-is-active",t=this.#S??this.#D;if(this.#N.querySelectorAll(".extension").forEach(t=>t.classList.remove(e)),!t)return;const n=this.#N.querySelector("#"+t);n&&n.classList.add(e)}addItem(e){this.#N||this.#M();const t=punica.shell.Layout.manager,n=document.createElement("punica-button");n.setAttribute("id",e.id),n.setAttribute("rounded",""),n.setAttribute("color","primary"),n.setAttribute("variant","text"),n.setAttribute("size","medium"),n.setAttribute("style","margin-bottom: 4px;"),n.setAttribute("title",e.title),n.onclick=()=>{const n=globalThis.punica?.shell?.Views?.manager,r=!!e.viewId&&!!n?.getPlacement?.(e.viewId),i=()=>{if(e.command)try{punica.kernel.Commands.manager.executeCommand(e.command)}catch(t){console.error("[ActivityBar] Failed to execute command for item",e.id,e.command,t)}};if(!(r||!!e.viewId)){return e.contentViewType&&(this.#S=e.id,"drawer"===g.getMode()&&(this.#D=null,g.setVisible(!1)),punica.shell.Layout.manager.resetContentSidebar?.(),this.#$()),void i()}if(this.#D===e.id)return r&&n.hide(e.viewId,{kind:"user-gesture",id:`activity-bar:${e.id}`}),void this.#B(null);if(this.#B(e.id),r)this.#R(e.viewId,e.id);else{try{t.ensureViewHost("primarySidebar",e.viewId)}catch(t){console.error("[ActivityBar] Failed to show primary view for item",e.id,e.viewId,t)}i()}},n.innerHTML=`<punica-icon size="xlarge">${e.icon}</punica-icon>`,n.className="extension";const r="primary"===e.alignment,i=r?this.#T:this.#L;(r?this.#A:this.#C).set(e.id,e),this.#z(i,n,e.id);(this.#S??this.#D)===e.id&&n.classList.add("extension-is-active")}removeItem(e){if(this.#A.has(e)){const t=this.#T.querySelector("#"+e);t&&(this.#T.removeChild(t),this.#A.delete(e))}else if(this.#C.has(e)){const t=this.#L.querySelector("#"+e);t&&(this.#L.removeChild(t),this.#C.delete(e))}}}};const y={manager:new class{#A=new Map;#C=new Map;#N;#T;#L;#I=new Map;#F=0;#z(e,t,n){this.#I.has(n)||this.#I.set(n,this.#F++);const r=this.#I.get(n),i=e.querySelector("#"+n);i&&e.removeChild(i);let s=null;for(const t of Array.from(e.children)){const e=this.#I.get(t.id);if(void 0!==e&&e>r){s=t;break}}e.insertBefore(t,s)}#M(){const e=window.punica?.shell?.Layout.manager,t=e.getSlot("statusbar"),n=t?.content;this.#N=document.createElement("div"),this.#N.className="status-bar-inner",this.#T=document.createElement("div"),this.#T.className="status-bar-group status-bar-group-primary",this.#L=document.createElement("div"),this.#L.className="status-bar-group status-bar-group-secondary",this.#N.appendChild(this.#T),this.#N.appendChild(this.#L),n?.appendChild(this.#N)}constructor(){}addItem(e){this.#N||this.#M();const t=document.createElement("button");t.type="button",t.id=e.id,t.title=e.title,t.className="status-bar-action";const n=e.command??e.capability;t.onclick=()=>{if(n)try{punica.kernel.Commands.manager.executeCommand(n)}catch(t){console.error("[Statusbar] Failed to execute command for item",e.id,n,t)}};const r=[];e.icon&&r.push(`<punica-icon size="small">${e.icon}</punica-icon>`),e.label&&r.push(`<span class="status-bar-label">${e.label}</span>`),t.innerHTML=r.join("");const i="primary"===e.alignment,s=i?this.#T:this.#L;(i?this.#A:this.#C).set(e.id,e),this.#z(s,t,e.id)}removeItem(e){if(this.#A.has(e)){const t=this.#T.querySelector("#"+e);t&&(this.#T.removeChild(t),this.#A.delete(e))}else if(this.#C.has(e)){const t=this.#L.querySelector("#"+e);t&&(this.#L.removeChild(t),this.#C.delete(e))}}}};function v(e,t){const n=document.createElement("punica-typography");if(n.textContent=e,t?.variant&&n.setAttribute("variant",t.variant),t?.color&&n.setAttribute("color",t.color),"bold"===t?.fontWeight&&n.setAttribute("fontweight","bold"),t?.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t?.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t?.className&&(n.className=t.className),n}const w="punica-card-styles";function E(){if("undefined"==typeof document)return;if(document.getElementById(w))return;const e=document.createElement("style");e.id=w,e.textContent='\n.punica-card { position: relative; overflow: hidden; display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 6px; background: var(--background-paper, rgba(255,255,255,0.03)); cursor: pointer; user-select: none; }\n.punica-card:hover { background: var(--neutral-main, rgba(127,127,127,0.14)); }\n.punica-card--selected { background: var(--neutral-main, rgba(127,127,127,0.2)); }\n.punica-card--inactive .punica-card-name { opacity: 0.7; }\n.punica-card-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; overflow: hidden; }\n.punica-card-name { font-size: 13px; font-weight: 600; color: var(--text-primary, inherit); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.punica-card-sub { font-size: 12px; color: var(--text-secondary, #8a8a8a); opacity: 0.75; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.punica-card-meta { font-size: 11px; font-family: var(--font-mono, ui-monospace, monospace); font-variant-numeric: tabular-nums; color: var(--text-secondary, #8a8a8a); flex-shrink: 0; margin-left: auto; }\n.punica-card-icon { flex-shrink: 0; width: 16px; text-align: center; color: var(--text-secondary, #8a8a8a); font-size: 13px; }\n.punica-card-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; background: var(--text-disabled, #6d6d6d); }\n.punica-card-dot--running, .punica-card-dot--success { background: var(--success-main, #4caf50); box-shadow: 0 0 5px rgba(76,175,80,0.7); }\n.punica-card-dot--paused, .punica-card-dot--warning { background: var(--warning-main, #ff9800); }\n.punica-card-dot--stopped, .punica-card-dot--idle { background: var(--text-disabled, #6d6d6d); }\n.punica-card-dot--error { background: var(--error-main, #e5534b); }\n.punica-group-header { display: flex; align-items: center; gap: 6px; font-size: 9.5px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--text-secondary, #8a8a8a); opacity: 0.8; padding: 6px 4px 2px 6px; }\n.punica-group-header::after { content: ""; flex: 1; height: 1px; background: var(--divider, rgba(128,128,128,0.25)); opacity: 0.4; }\n',document.head.appendChild(e)}const _="punica-capability-styles";function k(e,t,n){const r=document.createElement("span");r.className=`json-view-${n}`,r.textContent=t,e.appendChild(r)}function x(e,t,n){const r=" ".repeat(n);if(null===t)return k(e,"null","null");if("boolean"==typeof t)return k(e,String(t),"boolean");if("number"==typeof t)return k(e,String(t),"number");if("string"==typeof t)return k(e,JSON.stringify(t),"string");if(Array.isArray(t))return e.appendChild(document.createTextNode("[\n")),t.forEach((i,s)=>{e.appendChild(document.createTextNode(`${r} `)),x(e,i,n+1),s<t.length-1&&e.appendChild(document.createTextNode(",")),e.appendChild(document.createTextNode("\n"))}),void e.appendChild(document.createTextNode(`${r}]`));if("object"==typeof t){const i=Object.keys(t);e.appendChild(document.createTextNode("{\n")),i.forEach((s,a)=>{e.appendChild(document.createTextNode(`${r} `)),k(e,JSON.stringify(s),"key"),e.appendChild(document.createTextNode(": ")),x(e,t[s],n+1),a<i.length-1&&e.appendChild(document.createTextNode(",")),e.appendChild(document.createTextNode("\n"))}),e.appendChild(document.createTextNode(`${r}}`))}}function A(e){const t=document.createElement("pre");return t.className="json-view cap-schema-code",x(t,e,0),t}function C(e){const t=document.createElement("div");return t.className="cap-detail-section",t.textContent=e,t}function D(e){const t=document.createElement("div");return t.className="cap-detail-meta cap-detail-note",t.textContent=e,t}function S(e,t){const n=document.createElement("span");return n.className=`cap-pill cap-pill-${t}`,n.textContent=e,n}function N(e,t,n){const r=[`source: ${n.source||"unknown"}`];t.id&&r.push(`id: ${t.id}`),t.version&&r.push(`version: ${t.version}`);const i=t.policy?.approval;i&&r.push(`approval: ${i}`),t.sideEffects&&t.sideEffects.length>0&&r.push(`sideEffects: ${t.sideEffects.join(", ")}`);const s=document.createElement("div");if(s.className="cap-detail-meta",s.textContent=r.join(" · "),e.appendChild(s),e.appendChild(C("Inputs")),t.inputs?.schema?e.appendChild(A(t.inputs.schema)):e.appendChild(D("This capability takes no input parameters.")),e.appendChild(C("Outputs")),t.outputs){const n=t.outputs;if("event"===n.kind){const t=[];n.resultEvent&&t.push(`success → ${n.resultEvent}`),n.errorEvent&&t.push(`error → ${n.errorEvent}`);const r=document.createElement("div");r.className="cap-detail-meta",r.textContent=t.length?`Emits an event on completion (${t.join(" · ")}).`:"Emits an event on completion.",e.appendChild(r)}else if("direct"===n.kind)e.appendChild(D("Returns a value directly to the caller."));else if(n.kind){const t=document.createElement("div");t.className="cap-detail-meta",t.textContent=`kind: ${n.kind}`,e.appendChild(t)}n.schema?(e.appendChild(C("Result payload")),e.appendChild(A(n.schema))):e.appendChild(D("Result payload shape is not documented."))}else e.appendChild(D("No outputs declared."));if(t.tags&&t.tags.length>0){e.appendChild(C("Tags"));const n=document.createElement("div");n.className="cap-detail-tags";for(const e of t.tags){const t=document.createElement("span");t.className="cap-tag",t.textContent=e,n.appendChild(t)}e.appendChild(n)}if(n.extraSections)for(const t of n.extraSections)e.appendChild(t);const a=document.createElement("button");a.type="button",a.className="cap-detail-raw-toggle",a.textContent="Show raw definition";const o=A(t);o.style.display="none",a.addEventListener("click",()=>{const e="none"===o.style.display;o.style.display=e?"block":"none",a.textContent=e?"Hide raw definition":"Show raw definition"}),e.appendChild(C("Raw")),e.appendChild(a),e.appendChild(o)}const T={createElement:function(e,t){const n=document.createElement(e);if(t?.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t?.text&&(n.textContent=t.text),t?.children&&t.children.forEach(e=>n.appendChild(e)),t?.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t?.className&&(n.className=t.className),n},createSidebarCard:function(e){E();const t=document.createElement("div");let n="punica-card";if(e.inactive&&(n+=" punica-card--inactive"),e.selected&&(n+=" punica-card--selected"),t.className=n,t.dataset.nodeId=e.id,e.data)for(const[n,r]of Object.entries(e.data))t.dataset[n]=r;if(e.title&&(t.title=e.title),e.dot){const n=document.createElement("span");n.className=`punica-card-dot punica-card-dot--${e.dot}`,t.appendChild(n)}else if(e.icon){const n=document.createElement("span");n.className="punica-card-icon";const r=document.createElement("i");r.className=e.icon,n.appendChild(r),t.appendChild(n)}const r=document.createElement("div");r.className="punica-card-main";const i=document.createElement("div");if(i.className="punica-card-name",i.textContent=e.name,r.appendChild(i),e.sub){const t=document.createElement("div");t.className="punica-card-sub",t.textContent=e.sub,r.appendChild(t)}if(t.appendChild(r),e.meta){const n=document.createElement("span");n.className="punica-card-meta",n.textContent=e.meta,t.appendChild(n)}return t},createGroupHeader:function(e){E();const t="string"==typeof e?e:e.label,n="string"==typeof e?void 0:e.count,r=document.createElement("div");return r.className="punica-group-header",r.textContent=n?`${t} · ${n}`:t,r},attachContextMenu:function(e){if("undefined"==typeof document)return()=>{};const t=document.createElement("punica-context-menu");t.setAttribute("id",e.menuId),e.listEl.id&&t.setAttribute("target",`#${e.listEl.id}`);let n=null;const r=r=>{const i=r.target.closest("[data-node-id]");if(n=i,t.innerHTML="",i)for(const n of e.buildItems(i)){n.separatorBefore&&t.appendChild(document.createElement("punica-context-menu-separator"));const e=document.createElement("punica-context-menu-item");e.setAttribute("label",n.label),e.setAttribute("value",n.value),n.icon&&e.setAttribute("icon",n.icon),t.appendChild(e)}},i=t=>{const r=t?.detail?.value;r&&n&&e.onSelect(r,n)};return e.listEl.addEventListener("contextmenu",r),t.addEventListener("punica-context-menu-select",i),e.listEl.insertAdjacentElement("afterend",t),()=>{e.listEl.removeEventListener("contextmenu",r),t.removeEventListener("punica-context-menu-select",i),t.remove()}},createCapabilityDetail:function(e,t){!function(){if("undefined"==typeof document)return;if(document.getElementById(_))return;const e=document.createElement("style");e.id=_,e.textContent='\n.cap-row { border: 1px solid var(--divider-color, rgba(127,127,127,0.16)); border-radius: 8px; background: var(--background-paper, rgba(127,127,127,0.04)); margin-bottom: 6px; overflow: hidden; }\n.cap-row.expanded { border-color: var(--primary-main, #6ea8fe); }\n.cap-row--static { border: none; background: transparent; }\n.cap-row-head { display: flex; align-items: center; gap: 10px; padding: 10px 12px; cursor: pointer; }\n.cap-row-head:hover { background: var(--action-hover, rgba(127,127,127,0.08)); }\n.cap-row--static .cap-row-head { cursor: default; padding: 0 0 4px; }\n.cap-row--static .cap-row-head:hover { background: transparent; }\n.cap-row-chevron { flex: 0 0 auto; font-size: 11px; color: var(--text-secondary); transition: transform 0.15s ease; }\n.cap-row.expanded .cap-row-chevron { transform: rotate(90deg); }\n.cap-row-main { flex: 1 1 auto; min-width: 0; }\n.cap-row-title-line { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }\n.cap-row-title { font-size: 13.5px; font-weight: 600; color: var(--text-primary); }\n.cap-row-id { font-size: 11px; font-family: "SF Mono", "Courier New", monospace; color: var(--text-secondary); opacity: 0.8; }\n.cap-row-desc { margin-top: 2px; font-size: 12px; color: var(--text-secondary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.cap-row.expanded .cap-row-desc, .cap-row--static .cap-row-desc { white-space: normal; }\n.cap-row-badges { flex: 0 0 auto; display: flex; gap: 6px; align-items: center; }\n.cap-pill { font-size: 10.5px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; padding: 2px 8px; border-radius: 10px; border: 1px solid transparent; white-space: nowrap; }\n.cap-pill-risk-low { color: #5bbf7b; background: rgba(91,191,123,0.12); border-color: rgba(91,191,123,0.3); }\n.cap-pill-risk-medium { color: #e0a13a; background: rgba(224,161,58,0.12); border-color: rgba(224,161,58,0.3); }\n.cap-pill-risk-high { color: #e06c6c; background: rgba(224,108,108,0.14); border-color: rgba(224,108,108,0.35); }\n.cap-pill-approval { color: var(--text-secondary); background: var(--action-hover, rgba(127,127,127,0.14)); }\n.cap-row-detail { padding: 4px 14px 14px 34px; border-top: 1px solid var(--divider-color, rgba(127,127,127,0.12)); }\n.cap-row--static .cap-row-detail { padding: 0; border-top: none; }\n.cap-detail-section { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text-secondary); margin: 12px 0 6px; }\n.cap-detail-meta { font-size: 12px; color: var(--text-secondary); font-family: "SF Mono", "Courier New", monospace; margin-bottom: 6px; }\n.cap-schema-code { background: var(--background-main, rgba(0,0,0,0.18)); border: 1px solid var(--neutral-light, rgba(127,127,127,0.2)); border-radius: 6px; padding: 10px 12px; overflow-x: auto; font-family: "SF Mono", "Courier New", monospace; font-size: 11.5px; line-height: 1.5; color: var(--text-primary); }\n.cap-detail-note { font-style: italic; opacity: 0.85; }\n.cap-detail-raw-toggle { margin: 0 0 6px; padding: 0; background: none; border: none; cursor: pointer; font-size: 12px; color: var(--text-link, var(--accent-color, #6ea8fe)); opacity: 0.85; }\n.cap-detail-raw-toggle:hover { opacity: 1; text-decoration: underline; }\n.cap-detail-tags { display: flex; flex-wrap: wrap; gap: 6px; }\n.cap-tag { font-size: 11px; padding: 2px 8px; border-radius: 10px; border: 1px solid var(--neutral-light, rgba(127,127,127,0.24)); color: var(--text-secondary); }\n.json-view-key { color: var(--primary-main, #7ec8e3); }\n.json-view-string { color: var(--success-main, #98c379); }\n.json-view-number { color: var(--warning-main, #d19a66); }\n.json-view-boolean { color: var(--error-main, #c678dd); }\n.json-view-null { color: var(--text-placeholder, #9aa0a6); font-style: italic; }\n',document.head.appendChild(e)}();const n=t??{},r=!0===n.collapsible,i=document.createElement("div");i.className=r?"cap-row":"cap-row cap-row--static";const s=document.createElement("div");if(s.className="cap-row-head",r){s.setAttribute("role","button"),s.setAttribute("tabindex","0");const e=document.createElement("i");e.className="cap-row-chevron fa-solid fa-chevron-right",s.appendChild(e)}const a=document.createElement("div");a.className="cap-row-main";const o=document.createElement("div");o.className="cap-row-title-line";const l=document.createElement("span");if(l.className="cap-row-title",l.textContent=e.title||e.id||"(untitled)",o.appendChild(l),e.id){const t=document.createElement("span");t.className="cap-row-id",t.textContent=e.id,o.appendChild(t)}if(a.appendChild(o),e.description){const t=document.createElement("div");t.className="cap-row-desc",t.textContent=e.description,a.appendChild(t)}s.appendChild(a);const c=document.createElement("div");c.className="cap-row-badges";const u=e.policy?.risk;u&&c.appendChild(S(u,`risk-${u}`));const d=e.policy?.approval;d&&"none"!==d&&c.appendChild(S(d,"approval")),s.appendChild(c),i.appendChild(s);const h=document.createElement("div");if(h.className="cap-row-detail",i.appendChild(h),r){h.style.display=n.open?"block":"none";let t=!1;const r=()=>{t||(t=!0,N(h,e,n))};n.open&&(r(),i.classList.add("expanded"));const a=()=>{const e="none"===h.style.display;e&&r(),h.style.display=e?"block":"none",i.classList.toggle("expanded",e)};s.addEventListener("click",a),s.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),a())})}else N(h,e,n);return i},createButton:function(e,t,n){const r=document.createElement("punica-button");if(e.includes("<")||e.includes("<")?r.innerHTML=e:r.textContent=e,!1!==n?.rounded&&r.setAttribute("rounded",""),r.setAttribute("size",n?.size??"small"),r.setAttribute("variant",n?.variant??"outlined"),n?.color&&r.setAttribute("color",n.color),n?.disabled&&r.setAttribute("disabled",""),n?.fullwidth&&r.setAttribute("fullwidth",""),n?.icon){const e=document.createElement("punica-icon");e.setAttribute("slot","startIcon");const t=document.createElement("i");t.className=n.icon,e.appendChild(t),r.appendChild(e)}return n?.disabled||r.addEventListener("click",t),r},createIconButton:function(e,t,n){const r=document.createElement("punica-icon-button");if(r.setAttribute("size",n?.size??"x-small"),n?.variant&&r.setAttribute("variant",n.variant),n?.title&&r.setAttribute("title",n.title),n?.disabled&&r.setAttribute("disabled",""),n?.attrs)for(const[e,t]of Object.entries(n.attrs))r.setAttribute(e,t);return r.innerHTML=`<i class="${e}"></i>`,n?.disabled||r.addEventListener("click",t),r},createTypography:v,createChip:function(e,t){const n=document.createElement("punica-chip");return n.textContent=e,n.setAttribute("size",t?.size??"small"),n.setAttribute("variant",t?.variant??"filled"),t?.color&&n.setAttribute("color",t.color),n},createBox:function(e){const t=document.createElement("punica-box");if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createRow:function(e){const t=document.createElement("punica-row");if(e?.spacing&&t.setAttribute("spacing",e.spacing),e?.alignItems&&t.setAttribute("alignitems",e.alignItems),e?.wrap&&t.setAttribute("wrap",e.wrap),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createCol:function(e){const t=document.createElement("punica-col");if(void 0!==e?.xs&&t.setAttribute("xs",String(e.xs)),void 0!==e?.sm&&t.setAttribute("sm",String(e.sm)),void 0!==e?.md&&t.setAttribute("md",String(e.md)),void 0!==e?.lg&&t.setAttribute("lg",String(e.lg)),void 0!==e?.xl&&t.setAttribute("xl",String(e.xl)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createInput:function(e){const t=document.createElement("punica-input");if(void 0!==e?.value&&(t.value=e.value),e?.placeholder&&t.setAttribute("placeholder",e.placeholder),e?.type&&t.setAttribute("type",e.type),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),void 0!==e?.min&&t.setAttribute("min",String(e.min)),void 0!==e?.max&&t.setAttribute("max",String(e.max)),void 0!==e?.step&&t.setAttribute("step",String(e.step)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onInput&&t.addEventListener("input",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onInput(n)}),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createSelect:function(e){const t=document.createElement("punica-select");if(void 0!==e?.value&&(t.value=e.value),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.minimumTargetWidth&&t.setAttribute("minimumtargetwidth",""),e?.id&&t.setAttribute("id",e.id),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createSelectItem:function(e){const t=document.createElement("punica-select-item");if(t.setAttribute("value",e.value),e.text&&(t.textContent=e.text),e.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createCheckbox:function(e){const t=document.createElement("punica-checkbox");if(void 0!==e?.checked&&(t.checked=e.checked),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),e?.label&&t.setAttribute("label",e.label),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.checked??t?.target?.checked??!1;e.onChange(n)}),t},createIcon:function(e){const t=document.createElement("punica-icon");if(e?.iconClass){const n=document.createElement("i");n.className=e.iconClass,t.appendChild(n)}else e?.innerHTML&&(t.innerHTML=e.innerHTML);if(e?.slot&&t.setAttribute("slot",e.slot),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createTextarea:function(e){const t=document.createElement("punica-textarea");if(void 0!==e?.value&&(t.value=e.value),e?.placeholder&&t.setAttribute("placeholder",e.placeholder),e?.rows&&t.setAttribute("rows",String(e.rows)),e?.cols&&t.setAttribute("cols",String(e.cols)),e?.size&&t.setAttribute("size",e.size),e?.fullwidth&&t.setAttribute("fullwidth",""),e?.rounded&&t.setAttribute("rounded",""),e?.disabled&&t.setAttribute("disabled",""),e?.id&&t.setAttribute("id",e.id),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.onInput&&t.addEventListener("input",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onInput(n)}),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.value??"";e.onChange(n)}),t},createDivider:function(e){const t=document.createElement("punica-divider");if(e?.orientation&&t.setAttribute("orientation",e.orientation),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createListView:function(e){const t=document.createElement("punica-list-view");if(e?.enableDivider&&t.setAttribute("enabledivider",""),e?.spacing&&t.setAttribute("spacing",e.spacing),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createListViewItem:function(e){const t=document.createElement("punica-list-view-item");if(e?.label)if("string"==typeof e.label){const n=document.createElement("punica-typography");n.setAttribute("slot","label"),n.textContent=e.label,t.appendChild(n)}else e.label.getAttribute("slot")||e.label.setAttribute("slot","label"),t.appendChild(e.label);if(e?.content)if("string"==typeof e.content){const n=document.createElement("div");n.setAttribute("slot","content"),n.textContent=e.content,t.appendChild(n)}else e.content.getAttribute("slot")||e.content.setAttribute("slot","content"),t.appendChild(e.content);if(e?.endAdornment&&(e.endAdornment.getAttribute("slot")||e.endAdornment.setAttribute("slot","endAdornment"),t.appendChild(e.endAdornment)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),t},createPaper:function(e){const t=document.createElement("punica-paper");if(void 0!==e?.elevation&&t.setAttribute("elevation",String(e.elevation)),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createTab:function(e){const t=document.createElement("punica-tab");if(e?.value&&t.setAttribute("value",e.value),e?.orientation&&t.setAttribute("orientation",e.orientation),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.onChange&&t.addEventListener("change",t=>{const n=t?.detail?.value??t?.target?.getAttribute("value")??"";e.onChange(n)}),t},createTabItem:function(e){const t=document.createElement("punica-tab-item");if(t.setAttribute("value",e.value),e.text&&(t.textContent=e.text),e.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createTabPanel:function(e){const t=document.createElement("punica-tab-panel");if(t.setAttribute("value",e.value),e.selectedValue&&t.setAttribute("selectedvalue",e.selectedValue),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createBadge:function(e){const t=document.createElement("punica-badge");if(e?.text&&(t.textContent=e.text),e?.variant&&t.setAttribute("variant",e.variant),e?.color&&t.setAttribute("color",e.color),e?.size&&t.setAttribute("size",e.size),e?.title&&t.setAttribute("title",e.title),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return t},createMenu:function(e){const t=document.createElement("punica-menu");if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t},createMenuItem:function(e){const t=document.createElement("punica-menu-item");if(e?.text){const n=v(e.text);t.appendChild(n)}if(e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.onClick&&t.addEventListener("click",e.onClick),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),e?.children&&e.children.forEach(e=>t.appendChild(e)),t},createLink:function(e,t){const n=document.createElement("a");if(n.href=t.href,n.textContent=e,t.target&&(n.target=t.target),t.rel&&(n.rel=t.rel),t.download&&(n.download=t.download),t.attrs)for(const[e,r]of Object.entries(t.attrs))n.setAttribute(e,r);return t.children&&t.children.forEach(e=>n.appendChild(e)),t.style&&("string"==typeof t.style?n.setAttribute("style",t.style):Object.assign(n.style,t.style)),t.className&&(n.className=t.className),n},createToolbar:function(e){const t=document.createElement("punica-toolbar");if(e?.variant&&t.setAttribute("variant",e.variant),e?.disableGutters&&t.setAttribute("disablegutters",""),e?.attrs)for(const[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);return e?.children&&e.children.forEach(e=>t.appendChild(e)),e?.style&&("string"==typeof e.style?t.setAttribute("style",e.style):Object.assign(t.style,e.style)),e?.className&&(t.className=e.className),t}};const L={light:{id:"light",name:"Light",variables:{"--background-main":"#ffffff","--background-paper":"#f0f0f0","--background-navbar":"#0969da","--background-tabbar":"#e1e4e8","--background-backdrop":"rgba(0, 0, 0, 0.25)","--text-primary":"#24292f","--text-secondary":"#57606a","--text-placeholder":"#8c959f","--text-navbar":"#ffffff","--text-tabbar":"#0969da","--icon-navbar":"#ffffff","--icon-tabbar-active":"#0969da","--icon-tabbar-inactive":"#656d76","--primary-light":"#58a6ff","--primary-main":"#0969da","--primary-dark":"#0550ae","--error-light":"#ffebe9","--error-main":"#cf222e","--error-dark":"#a40e26","--warning-light":"#fff8c5","--warning-main":"#9a6700","--warning-dark":"#7d4e00","--success-light":"#dafbe1","--success-main":"#1a7f37","--success-dark":"#116329","--info-light":"#ddf4ff","--info-main":"#0969da","--info-dark":"#0550ae","--neutral-light":"#d1d9e0","--neutral-main":"#e9e9e9","--neutral-dark":"#8c959f","--disabled":"#33353a","--highlight":"#ddf4ff","--white":"#ffffff","--black":"#000000","--divider":"#d1d9e0","--focus-ring":"#0969da","--root-border-radius":"8px","--root-padding":"16px"}},dark:{id:"dark",name:"Dark",variables:{"--background-main":"#131416","--background-paper":"#2a2d33","--background-navbar":"#0969da","--background-tabbar":"#232529","--background-backdrop":"rgba(0, 0, 0, 0.5)","--text-primary":"#f5f7fa","--text-secondary":"#c0c4cc","--text-placeholder":"#9aa0a6","--text-navbar":"#ffffff","--text-tabbar":"#0a84ff","--icon-navbar":"#ffffff","--icon-tabbar-active":"#0a84ff","--icon-tabbar-inactive":"#6b6e76","--primary-light":"#66b3ff","--primary-main":"#0a84ff","--primary-dark":"#0056b3","--error-light":"#f8d7da","--error-main":"#ff453a","--error-dark":"#c41c12","--warning-light":"#ffe28a","--warning-main":"#ffd60a","--warning-dark":"#c9a400","--success-light":"#48e09e","--success-main":"#30d158","--success-dark":"#228c3f","--info-light":"#4ac8ff","--info-main":"#64d2ff","--info-dark":"#0a84ff","--neutral-light":"#45484e","--neutral-main":"#35383f","--neutral-dark":"#25272b","--disabled":"#33353a","--highlight":"#52a8ff","--white":"#ffffff","--black":"#000000","--divider":"#3a3d44","--focus-ring":"#52a8ff","--root-border-radius":"8px","--root-padding":"16px"}}};const I=new class{currentProfileId=null;listeners=new Set;async loadProfile(e){const t=L[e];if(!t)return void console.warn(`[Theme] Profile not found: ${e}`);const n=document.documentElement;if(Object.entries(t.variables).forEach(([e,t])=>{n.style.setProperty(e,t)}),this.currentProfileId=e,this.listeners.forEach(t=>t(e)),"undefined"!=typeof punica&&punica.extensions?.settings?.manager)try{await punica.extensions.settings.manager.set("system","theme.profile",e,"global")}catch(e){console.error("[Theme] Failed to save profile to settings:",e)}}getCurrentProfile(){return this.currentProfileId}getProfiles(){return{...L}}getProfile(e){return L[e]}registerProfile(e){L[e.id]=e}onDidChangeProfile(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}loadDefaultImmediate(){const e=L.dark;if(!e)return void console.warn("[Theme] Default dark profile not found");const t=document.documentElement;Object.entries(e.variables).forEach(([e,n])=>{t.style.setProperty(e,n)}),this.currentProfileId="dark"}async initialize(){if("undefined"!=typeof punica&&punica.extensions?.settings?.manager)try{await punica.extensions.settings.manager.load();const e=punica.extensions.settings.manager.get("system","theme.profile");e&&"string"==typeof e&&L[e]?await this.loadProfile(e):await this.loadProfile("dark")}catch(e){console.error("[Theme] Failed to initialize from settings:",e),await this.loadProfile("dark")}else await this.loadProfile("dark")}};async function F(e){return new Promise(t=>{const{title:n,message:r,html:i,buttons:s=[{label:"OK",variant:"filled",action:"ok"}],footerHtml:a,modal:o=!0,width:l,height:c,icon:u,tone:d,onMount:h}=e,p=`punica-dialog-${Date.now()}`,m=document.querySelector(`#${p}`);m?.remove();const f=document.createElement("punica-dialog");f.id=p,f.setAttribute("rounded",""),o&&f.setAttribute("modal","");const g=[`width: ${l||"440px"}`];c&&g.push(`height: ${c}`);const b=` style="${g.join("; ")}"`,y=d?`var(--${d}-main)`:"",v=u||(d?{info:"fa-circle-info",warning:"fa-triangle-exclamation",error:"fa-circle-exclamation",success:"fa-circle-check"}[d]:""),w=v&&y?`<span style="flex:0 0 auto; width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background: color-mix(in srgb, ${y} 16%, transparent); color:${y}; font-size:16px;"><i class="fa-duotone fa-solid ${v}"></i></span>`:"",E=i||(r?`<punica-typography style="color: var(--text-secondary); line-height: 1.6;">${r}</punica-typography>`:"");f.innerHTML=`\n <punica-dialog-header>\n <punica-box style="display:flex; align-items:center; gap:12px;">\n ${w}\n <punica-typography fontweight="bold" style="color: var(--text-primary); font-size: 16px;">${n}</punica-typography>\n </punica-box>\n </punica-dialog-header>\n <punica-dialog-content${b}>\n <punica-box style="display:flex; flex-direction: column; gap: 10px; padding: 4px 2px 8px;">\n ${E}\n </punica-box>\n </punica-dialog-content>\n <punica-dialog-footer>\n ${a||`\n <punica-box style="display:flex; width:100%; box-sizing:border-box; gap: 8px; justify-content: flex-end; padding-top: 14px; border-top: 1px solid var(--divider);">\n ${s.map((e,t)=>`<punica-button id="${`${p}-btn-${t}`}" variant="${e.variant||"outlined"}" color="${e.color||"primary"}" size="small" rounded>${e.label}</punica-button>`).join("")}\n </punica-box>\n `}\n </punica-dialog-footer>\n `,document.body.appendChild(f),queueMicrotask(()=>{try{f.setAttribute("open","true"),f.open=!0,h?.(f)}catch{}});const _=e=>{try{f.remove()}catch{}t(e)};s.forEach((e,t)=>{const n=`${p}-btn-${t}`,r=f.querySelector(`#${n}`);r?.addEventListener("click",()=>{_(e.action||e.label.toLowerCase())})}),f.addEventListener?.("close",()=>{_(void 0)})})}async function z(e){const{title:t,message:n,variant:r="info",buttonLabel:i="OK"}=e,s=t||("success"===r?"Success":"warning"===r?"Warning":"error"===r?"Error":"Information");await F({title:s,message:n,tone:r,buttons:[{label:i,variant:"filled",color:"error"===r?"error":"primary",action:"ok"}]})}const M={showInformationMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"info",title:"Information"}):await F({title:"Information",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showWarningMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"warning",title:"Warning"}):await F({title:"Warning",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showErrorMessage:async function(e,...t){return 0===t.length?void await z({message:e,variant:"error",title:"Error"}):await F({title:"Error",message:e,buttons:t.map(e=>({label:e,variant:"outlined",action:e}))})},showDialog:F,showConfirm:async function(e){const{title:t="Confirm",message:n,confirmLabel:r="OK",cancelLabel:i="Cancel",variant:s="info"}=e;return"confirm"===await F({title:t,message:n,tone:s,buttons:[{label:i,variant:"text",action:"cancel"},{label:r,variant:"filled",color:"error"===s?"error":"primary",action:"confirm"}]})},showAlert:z,showPrompt:async function(e){return new Promise(t=>{const{title:n="Prompt",message:r,placeholder:i="",defaultValue:s="",confirmLabel:a="OK",cancelLabel:o="Cancel",type:l="text"}=e,c=`punica-prompt-${Date.now()}`,u=`${c}-input`;let d=s;F({title:n,html:`\n <punica-box style="display:flex; flex-direction: column; gap: 10px;">\n <punica-typography>${r}</punica-typography>\n <punica-input\n id="${u}"\n type="${l}"\n placeholder="${i}"\n value="${s}"\n rounded>\n </punica-input>\n </punica-box>\n `,buttons:[{label:o,variant:"outlined",action:"cancel"},{label:a,variant:"filled",action:"confirm"}],onMount:e=>{const t=e.querySelector(`#${u}`);if(!t)return;const n=()=>{const e=t.value??t.getAttribute?.("value");"string"==typeof e&&(d=e)};t.addEventListener("input",n),t.addEventListener("change",n),t.addEventListener("keydown",t=>{if("Enter"===t.key){n();const t=e.querySelector(`#${c}-btn-1`);t?.click()}}),setTimeout(()=>t.focus?.(),0)}}).then(e=>{if("confirm"===e){const e=(d??"").trim();t(e?d:void 0)}else t(void 0)})})},showToast:function(e){const{title:t="",message:n="",variant:r="neutral",duration:i=1e3,dismissible:s=!0,placement:a="top-right"}=e,o=function(){let e=document.querySelector("punica-toaster");return e||(e=document.createElement("punica-toaster"),document.body.appendChild(e)),e}().shadowRoot;if(!o){if(window.Toast?.show)return window.Toast.show(e);throw new Error("punica-toaster shadow root not available")}const l=o.querySelector(`.region.${a}`)||o.querySelector(".region.top-right");if(!l)throw new Error(`Toast region not found: ${a}`);const c=document.createElement("punica-toast");return c.setAttribute("variant",r),t&&c.setAttribute("title",t),n&&c.setAttribute("message",n),i>0&&c.setAttribute("duration",String(i)),c.setAttribute("dismissible",String(s)),c.setAttribute("enter-from",a.startsWith("top")?"top":"bottom"),l.prepend(c),c},showChangesPreview:async function(e){const{title:t,summary:n,files:r,onConfirm:i,onCancel:s}=e,a=`changes-preview-files-${Date.now()}`,o=`changes-preview-content-${Date.now()}`,l=`changes-preview-selected-${Date.now()}`;let c=0;const u=()=>{const e=document.querySelector(`#${l}`);e&&r[c]&&(e.textContent=r[c].path)},d=e=>{e.innerHTML="",r.forEach((t,n)=>{const r=T.createBadge({text:t.action,variant:"filled",color:"delete"===t.action?"error":"create"===t.action?"success":"primary",size:"small"}),i=T.createListViewItem({label:t.path,content:t.action,endAdornment:r});n===c&&(i.style.backgroundColor="rgba(255, 255, 255, 0.1)"),i.style.cursor="pointer",i.addEventListener("click",()=>{c=n,d(e),h(document.getElementById(o)),u()}),e.appendChild(i)})},h=e=>{const t=r[c];if(e.innerHTML="","delete"===t.action){const n=T.createTypography(`This file will be deleted: ${t.path}`,{variant:"body"});return void e.appendChild(n)}if(!t.content){const t=T.createTypography("No content preview available",{variant:"body"});return void e.appendChild(t)}const n=T.createBox({style:{width:"100%",height:"400px",border:"1px solid rgba(255, 255, 255, 0.1)",borderRadius:"4px",overflow:"hidden"}});e.appendChild(n);const i=window.monaco||globalThis.monaco;if(i?.editor)try{const r=m(t.path),s=i.editor.create(n,{value:t.content||"",language:r,theme:"vs-dark",readOnly:!0,minimap:{enabled:!1},fontSize:13,fontLigatures:!0,automaticLayout:!0,scrollBeyondLastLine:!1});e.__monacoEditor=s}catch(e){p(n,t.content||"")}else p(n,t.content||"")},p=(e,t)=>{const n=document.createElement("pre");n.style.cssText="margin: 0; padding: 10px; overflow: auto; font-family: monospace; font-size: 12px; white-space: pre-wrap; word-wrap: break-word;",n.textContent=t,e.innerHTML="",e.appendChild(n)},m=e=>{const t=e.split(".").pop()?.toLowerCase();return{ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",py:"python",json:"json",md:"markdown",html:"html",css:"css",yaml:"yaml",yml:"yaml"}[t||""]||"plaintext"},f=`\n <punica-box style="display: flex; flex-direction: column; gap: 12px; min-width: 800px; max-width: 1200px; max-height: 80vh;">\n ${n?`<punica-typography>${n}</punica-typography>`:""}\n <punica-box style="display: flex; gap: 12px; flex: 1; min-height: 0;">\n <punica-box style="flex: 0 0 300px; display: flex; flex-direction: column; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; overflow: hidden;">\n <punica-box style="padding: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);">\n <punica-typography fontweight="bold">Files (${r.length})</punica-typography>\n </punica-box>\n <punica-box id="${a}" style="flex: 1; overflow-y: auto; padding: 4px;"></punica-box>\n </punica-box>\n <punica-box style="flex: 1; display: flex; flex-direction: column; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; overflow: hidden; min-width: 0;">\n <punica-box style="padding: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);">\n <punica-typography fontweight="bold" id="${l}">${r[0]?.path||""}</punica-typography>\n </punica-box>\n <punica-box id="${o}" style="flex: 1; overflow: auto; padding: 0;"></punica-box>\n </punica-box>\n </punica-box>\n </punica-box>\n `;return new Promise(e=>{punica.shell.View.showDialog({title:t,html:f,buttons:[{label:"Cancel",variant:"outlined",action:"cancel"},{label:"Apply Changes",variant:"filled",color:"primary",action:"confirm"}],width:"90vw",onMount:e=>{const t=e.querySelector(`#${a}`),n=e.querySelector(`#${o}`);e.querySelector(`#${l}`),t&&d(t),n&&h(n),u()}}).then(async t=>{const n=document.querySelector('[id^="punica-dialog-"]');if(n){const e=n.querySelector(`#${o}`);if(e&&e.__monacoEditor)try{e.__monacoEditor.dispose()}catch{}}if("confirm"===t)try{await i(),e("confirm")}catch(t){await punica.shell.View.showAlert({title:"Error",message:`Failed to apply changes: ${t instanceof Error?t.message:String(t)}`,variant:"error"}),e(void 0)}else s?.(),e("cancel"===t?"cancel":void 0)})})},Helpers:T,Theme:{manager:I,profiles:L}};function O(){return globalThis.punica?.shell?.Layout?.manager}function B(e){const t=(globalThis.punica?.shell?.PanelContainers)?.forSlot?.(e);return t||("panel"===e?globalThis.punica?.shell?.PanelTabs:null)}function R(){return globalThis.punica?.shell?.ActivityBar?.manager}const $={manager:new class{#P=new Map;#H=new Map;#q=new Map;#V=new Map;registerPlacement(t){if(!t?.viewId||!t.slot)return;const n=this.#P.get(t.viewId);n&&n.extensionName!==t.extensionName&&console.warn(`[Views] Placement collision for view "${t.viewId}" between "${n.extensionName}" and "${t.extensionName}". Keeping the last registered.`),this.#P.set(t.viewId,t),e({name:"shell.view.registered",source:"shell:views",payload:{viewId:t.viewId,slot:t.slot,extensionName:t.extensionName}})}registerProvider(e,t,n){return this.#P.has(e)||console.warn(`[Views] Provider registered for "${e}" but no placement is declared in any manifest.`+(n?` (extension: ${n})`:"")),this.#H.set(e,t),{dispose:()=>{this.#H.get(e)===t&&this.#H.delete(e)}}}getPlacement(e){return this.#P.get(e)}hasProvider(e){return this.#H.has(e)}getState(e){if(!this.#P.has(e)&&!this.#H.has(e))return;const t=this.#P.get(e);return t&&this.#V.get(t.slot)===e?"visible":this.#q.has(e)?"materialized":"registered"}getVisibleView(e){return this.#V.get(e)}listViews(){return Array.from(this.#P.values()).map(e=>({viewId:e.viewId,slot:e.slot,extensionName:e.extensionName,title:e.title,state:this.getState(e.viewId)??"registered"}))}async reveal(t,n,r){const i=this.#P.get(t);if(!i)throw new Error(`[Views] Cannot reveal "${t}": no placement is registered for this view.`);if(!this.#H.has(t)){const e=globalThis.punica?.extensions?.manager;e?.activate&&await e.activate(i.extensionName,{reason:"view",trigger:t,presentation:"interactive"})}const s=O();if(!s)throw new Error("[Views] Layout manager unavailable — cannot reveal.");const a=s.materializeViewHost(i.slot,t),o=this.#H.get(t),l="contentSidebar"===i.slot;if(o&&(l||!this.#q.has(t))){if(l){const e=this.#q.get(t);try{e?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${t}":`,e)}}const e=await o.render(a);this.#q.set(t,e&&"function"==typeof e.dispose?e:null)}s.showView(i.slot,t),s.setSlotCollapsed?.(i.slot,!1),this.#V.set(i.slot,t);const c=B(i.slot);if(c&&(c.open?.({id:t,title:i.title??t,commandId:i.fallbackCommand??"",iconClass:i.icon,order:i.order,autoActivate:!1,toolbar:i.panelToolbar}),c.activateTabVisual?.(t)),"primarySidebar"===i.slot)try{R()?.setActiveByViewId?.(t)}catch{}if(!o&&i.fallbackCommand)try{(globalThis.punica?.kernel?.Commands?.manager)?.executeCommand?.(i.fallbackCommand)}catch(e){console.warn(`[Views] fallback command "${i.fallbackCommand}" for view "${t}" failed:`,e)}e({name:"shell.view.revealed",source:"shell:views",payload:{viewId:t,slot:i.slot,extensionName:i.extensionName,source:n?.kind??"host",sourceId:n?.id,focus:r?.focus??!1}})}hide(t,n){const r=this.#P.get(t);if(!r)return;if(this.#V.get(r.slot)!==t)return;const i=O();if("contentSidebar"===r.slot?this.#U(r.slot):(i?.hideSlotViews(r.slot),i?.setSlotCollapsed?.(r.slot,!0),r.onDemand&&B(r.slot)?.close?.(t,{silent:!0})),this.#V.delete(r.slot),"primarySidebar"===r.slot)try{R()?.setActiveByViewId?.(null)}catch{}e({name:"shell.view.hidden",source:"shell:views",payload:{viewId:t,slot:r.slot,source:n?.kind??"host",sourceId:n?.id}})}async moveView(t,n,r){const i=this.#P.get(t);if(!i)throw new Error(`[Views] Cannot move "${t}": no placement is registered.`);const s=i.allowedSlots??[i.slot];if(!s.includes(n))throw new Error(`[Views] "${t}" cannot be moved to "${n}". Allowed slots: ${s.join(", ")}.`);const a=i.slot;if(a===n)return;const o=this.#V.get(a)===t,l=O(),c=B(a);c?.close?.(t,{silent:!0});const u=this.#q.get(t);try{u?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${t}":`,e)}this.#q.delete(t),l?.removeViewHost?.(a,t);let d=null;if(o){this.#V.delete(a);const e=(c?.listTabs?.()??[]).filter(e=>!e.userHidden&&e.id!==t);e.length>0?d=e[0].id:l?.setSlotCollapsed?.(a,!0)}i.slot=n;try{await((globalThis.punica?.shell?.PanelLayout?.manager)?.setSlotOverride?.(t,n,i.homeSlot??a))}catch(e){console.warn(`[Views] failed to persist slot override for "${t}":`,e)}if(o?await this.reveal(t,r):i.onDemand||B(n)?.open?.({id:t,title:i.title??t,commandId:i.fallbackCommand??"",iconClass:i.icon,order:i.order,autoActivate:!1,toolbar:i.panelToolbar}),d)try{await this.reveal(d,r)}catch(e){console.warn(`[Views] failed to promote sibling "${d}" in "${a}":`,e)}e({name:"shell.view.moved",source:"shell:views",payload:{viewId:t,fromSlot:a,toSlot:n,source:r?.kind??"host",sourceId:r?.id}})}notifySlotReset(t){this.#U(t);const n=this.#V.get(t);void 0!==n&&(this.#V.delete(t),e({name:"shell.view.hidden",source:"shell:views",payload:{viewId:n,slot:t,source:"host",sourceId:"slot-reset"}}))}#U(e){const t=O();for(const n of this.#P.values()){if(n.slot!==e)continue;const r=this.#q.get(n.viewId);try{r?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${n.viewId}":`,e)}this.#q.delete(n.viewId),t?.removeViewHost?.(e,n.viewId)}}unmountByExtension(e){for(const t of this.#P.values()){if(t.extensionName!==e)continue;const n=t.viewId;this.#V.get(t.slot)===n&&this.hide(n,{kind:"host",id:"deactivate"});const r=this.#q.get(n);try{r?.dispose()}catch(e){console.warn(`[Views] provider dispose failed for "${n}":`,e)}this.#q.delete(n),this.#H.delete(n);const i=O();i?.removeViewHost?.(t.slot,n)}}}};const j={manager:new class{#Z=[];#K(e,t){return e.length===t.length&&e.every((e,n)=>e.key.toLowerCase()===t[n].key.toLowerCase()&&!!e.ctrlKey==!!t[n].ctrlKey&&!!e.shiftKey==!!t[n].shiftKey&&!!e.altKey==!!t[n].altKey&&!!e.metaKey==!!t[n].metaKey)}#W(e,t){return t.every(t=>!!t.ctrlKey===e.ctrlKey&&!!t.shiftKey===e.shiftKey&&!!t.altKey===e.altKey&&!!t.metaKey===e.metaKey&&e.key.toLowerCase()===t.key.toLowerCase())}constructor(){document.addEventListener("keydown",this.handleKeyEvent.bind(this))}#G(e){switch(e){case"editorTextFocus":return this.#X();case"fileExplorerFocus":return this.#J("primarySidebar","file-explorer-sidebar");default:return}}#X(){const e="undefined"!=typeof document?document.activeElement:null;if(!e)return!1;const t=e.tagName;return"INPUT"===t||"TEXTAREA"===t||(!!e.isContentEditable||!!e.closest?.(".monaco-editor, .cm-editor"))}#J(e,t){if("undefined"==typeof document)return!1;if((punica.shell.Views?.manager?.getVisibleView?.(e)??null)!==t)return!1;const n=document.getElementById(e),r=document.activeElement;return!!(n&&r&&n.contains(r))}#Q(e){const t=e.when;return!t||t.split("&&").map(e=>e.trim()).filter(e=>e.length>0).every(e=>this.#Y(e))}#Y(e){const t=e.indexOf("==");if(-1!==t){const n=e.slice(0,t).trim(),r=e.slice(t+2).trim().replace(/^['"]|['"]$/g,"");if("view"===n){return(punica.shell.ContentTabs?.getActiveViewType?.()??null)===r}return!1}if(e.startsWith("!")){const t=this.#G(e.slice(1).trim());return void 0!==t&&!t}return!0===this.#G(e)}registerShortcut(e){const t=this.#Z.find(t=>this.#K(t.keys,e.keys)&&(t.when??"")===(e.when??""));t?console.warn(`[KeyboardShortcuts] Ignoring duplicate binding for command "${e.command}"; "${t.command}" already owns this chord${e.when?` (when: ${e.when})`:""}.`):this.#Z.push(e)}unregisterShortcut(e){this.#Z=this.#Z.filter(t=>!this.#K(t.keys,e))}handleKeyEvent(e){if(e.repeat)return;const t=this.#Z.find(t=>this.#W(e,t.keys)&&this.#Q(t));t&&(e.preventDefault(),punica.kernel.Commands.manager.executeCommand(t.command))}}},P={id:"classic-editor",title:"Classic Editor",root:{type:"row",sizes:[70,30],children:[{type:"column",sizes:[80,20],children:[{type:"slot",id:"content",role:"content"},{type:"slot",id:"panel",role:"panel"}]},{type:"slot",id:"secondarySidebar",role:"secondarySidebar"}]}},H={id:"welcome",title:"Welcome",root:{type:"row",sizes:[100],children:[{type:"column",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]}]}},q={type:"row",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]};const V={manager:new class{#ee;#te=new Map;#ne=new Map;#re;#ie=new Map;constructor(){this.#ee=document.createElement("div"),this.#ee.id="punica-editor",this.#re=P}applyProfile(e){if(this.#re=e,this.#te.clear(),this.#ne.clear(),this.#ie.clear(),this.#ee.innerHTML="",this.#ee.classList.remove("layout-welcome","layout-classic"),this.#ee.classList.add("welcome"===e.id?"layout-welcome":"layout-classic"),"welcome"!==e.id){const e=document.createElement("div");e.id="activityBar",this.#ee.appendChild(e),this.#te.set("activityBar",{id:"activityBar",role:"activityBar",content:e})}const t=document.createElement("div");if(t.id="mainContent",t.style.height="100%",t.style.width="100%",t.style.display="flex",this.#ee.appendChild(t),"welcome"!==e.id){const e=document.createElement("div");e.id="primarySidebar",this.#ee.appendChild(e),this.#te.set("primarySidebar",{id:"primarySidebar",role:"primarySidebar",content:e});const t=document.createElement("div");t.id="contentSidebar",this.#ee.appendChild(t),this.#te.set("contentSidebar",{id:"contentSidebar",role:"overlay",content:t})}const n=document.createElement("div");n.id="statusbar",this.#ee.appendChild(n),this.#te.set("statusbar",{id:"statusbar",role:"statusbar",content:n}),this.#se(e.root,t,!0)}getActiveProfile(){return this.#re}getSlot(e){return this.#te.get(e)}materializeViewHost(e,t){const n=this.#te.get(e);if(!n)throw new Error(`Layout slot "${e}" not found in active profile`);let r=this.#ne.get(e);r||(r=new Map,this.#ne.set(e,r));let i=n.content;if("panel"===e||"secondarySidebar"===e){const e=n.content.querySelector("[data-views-root]");e&&(i=e)}let s=r.get(t);return s?s.parentElement||i.appendChild(s):(s=document.createElement("div"),s.dataset.viewId=t,s.style.height="100%",s.style.width="100%",s.style.display="none",i.appendChild(s),r.set(t,s)),s}showView(e,t){"primarySidebar"===e&&this.resetContentSidebar();const n=this.#te.get(e);if(!n)throw new Error(`Layout slot "${e}" not found in active profile`);const r=this.#ne.get(e);if(r?.forEach((e,n)=>{e.style.display=n===t?"block":"none"}),n.content.style.display="block","primarySidebar"===e)try{punica.shell.ActivityBar.manager.setActiveByViewId?.(t)}catch(e){console.warn("[Layout] Failed to sync ActivityBar selection:",e)}}resetContentSidebar(){const e=this.#te.get("contentSidebar");if(!e)return;const t=this.#ne.get("contentSidebar");t&&(t.forEach(e=>{e.parentElement&&e.parentElement.removeChild(e)}),t.clear()),e.content.innerHTML="";try{punica.shell?.Views?.manager?.notifySlotReset?.("contentSidebar")}catch{}}hideSlotViews(e){const t=this.#ne.get(e);t?.forEach(e=>{e.style.display="none"})}#ae(e){const t=this.#te.get(e);if(!t)return;const n=t.content.closest("punica-split");if(!n)return;let r=t.content;for(;r&&r.parentElement!==n;)r=r.parentElement;if(!r)return;const i=Array.from(n.children).filter(e=>1===e.nodeType),s=i.indexOf(r);return s<0?void 0:{split:n,index:s,count:i.length}}isSlotCollapsed(e){return this.#ie.has(e)}setSlotCollapsed(e,t){const n=this.#ae(e);if(!n)return;const{split:r,index:i,count:s}=n;if("function"==typeof r.setSizes)if(t){if(this.#ie.has(e))return;const t=(r.getSizes?.()??[]).slice();if(t.length!==s||s<2)return;this.#ie.set(e,t);const n=t.reduce((e,t,n)=>n===i?e:e+t,0),a=t.map((e,t)=>t===i?0:n>0?e/n*100:100/(s-1));r.setSizes(a)}else{const t=this.#ie.get(e);this.#ie.delete(e),t&&t.length===s&&r.setSizes(t)}}removeViewHost(e,t){const n=this.#ne.get(e),r=n?.get(t);r&&(r.parentElement&&r.parentElement.removeChild(r),n?.delete(t))}ensureViewHost(n,r){const i=this.materializeViewHost(n,r);return t()?(e({name:"shell.view.revealBlocked",source:"shell:views",kind:"warn",payload:{viewId:r,slot:n,api:"Layout.ensureViewHost"}}),console.warn(`[Shell] UI mutation during headless activation blocked: ensureViewHost("${n}", "${r}"). Register a ViewProvider (context.ui.registerViewProvider) and reveal via the shell.revealView capability instead.`),i):(this.showView(n,r),i)}#se(e,t,n){if("slot"===e.type){const n=document.createElement("div");n.style.height="100%",n.style.width="100%",n.style.overflow="hidden",t.appendChild(n);const r={id:e.id,role:e.role,content:n};return void this.#te.set(e.id,r)}const r="row"===e.type,i=document.createElement("punica-split");i.style.height="100%",i.style.width="100%",i.setAttribute("orientation",r?"horizontal":"vertical"),e.sizes&&e.sizes.length&&i.setAttribute("sizes",e.sizes.join(",")),t.appendChild(i);const s=e.children.length;for(let t=0;t<s;t++){const n=document.createElement("div");n.style.height="100%",n.style.width="100%",i.appendChild(n),this.#se(e.children[t],n,!1)}}applyApplicationProfile(e){const t=new Set(e.shell.activeModules),n=t.has("shell.activityBar"),r=t.has("shell.view"),i=t.has("shell.statusbar"),s=e.shell.layout,a=s?.id??e.identity.id,o=s?.root??q;if(this.#re={id:a,title:e.identity.name,root:o},this.#te.clear(),this.#ne.clear(),this.#ie.clear(),this.#ee.innerHTML="",this.#ee.classList.remove("layout-welcome","layout-classic"),this.#ee.classList.add(n?"layout-classic":"layout-welcome"),this.#ee.dataset.profileId=e.identity.id,n){const e=document.createElement("div");e.id="activityBar",this.#ee.appendChild(e),this.#te.set("activityBar",{id:"activityBar",role:"activityBar",content:e})}const l=document.createElement("div");if(l.id="mainContent",l.style.height="100%",l.style.width="100%",l.style.display="flex",this.#ee.appendChild(l),r){const e=document.createElement("div");e.id="primarySidebar",this.#ee.appendChild(e),this.#te.set("primarySidebar",{id:"primarySidebar",role:"primarySidebar",content:e});const t=document.createElement("div");t.id="contentSidebar",this.#ee.appendChild(t),this.#te.set("contentSidebar",{id:"contentSidebar",role:"overlay",content:t})}if(i){const e=document.createElement("div");e.id="statusbar",this.#ee.appendChild(e),this.#te.set("statusbar",{id:"statusbar",role:"statusbar",content:e})}this.#se(o,l,!0)}render(e){try{const e=window,t=e.punica?.Runtime?.runtime??e.punica?.runtime,n=t?.lifecyclePhase,r="noWorkspace"===n?H:P,i=this.#re.id===P.id||this.#re.id===H.id;this.#ee.childElementCount?i&&this.#re.id!==r.id&&this.applyProfile(r):this.applyProfile(r)}catch{this.#ee.childElementCount||this.applyProfile(this.#re)}e.appendChild(this.#ee)}}};const U=new class{#e=!1;#oe=null;#le=null;#ce=new Map;#ue=null;#de(){if(this.#e)return;const e=punica.shell.Layout.manager.getSlot("content"),t=e?.content;if(!t)return void console.warn("[ContentTabs] content host not found");t.innerHTML="";const n=document.createElement("punica-box");n.id="content-tabs-root",n.style.height="100%",n.style.display="flex",n.style.flexDirection="column";const r=document.createElement("punica-box");r.id="content-tabs-bar",r.style.height="40px",r.style.flex="0 0 auto",r.style.display="flex",r.style.alignItems="center",r.style.overflowX="auto",r.style.overflowY="hidden",r.style.backgroundColor="var(--background-paper)",r.addEventListener("wheel",e=>{r.scrollWidth<=r.clientWidth||0!==e.deltaY&&(r.scrollLeft+=e.deltaY,e.preventDefault())},{passive:!1});const i=document.createElement("punica-tab");i.setAttribute("orientation","horizontal"),i.style.width="max-content",i.style.minWidth="100%",i.style.flex="0 0 auto",i.style.height="100%",i.addEventListener("change",e=>{const t=e?.detail?.value;t&&this.#he(t)}),r.appendChild(i);const s=document.createElement("style");s.textContent="\n #content-tabs-bar::-webkit-scrollbar { height: 6px; }\n #content-tabs-bar::-webkit-scrollbar-thumb {\n background: var(--divider, rgba(255, 255, 255, 0.15));\n border-radius: 3px;\n }\n #content-tabs-bar::-webkit-scrollbar-track { background: transparent; }\n ",r.appendChild(s);const a=document.createElement("punica-box");a.id="content-tabs-panels",a.style.flex="1",a.style.height="calc(100% - 40px)",n.appendChild(r),n.appendChild(a);const o=document.createElement("punica-context-menu");o.id="content-tabs-menu",o.setAttribute("target","#content-tabs-root");const l=document.createElement("punica-context-menu-item");l.setAttribute("label","Close"),l.setAttribute("value","close"),o.appendChild(l);const c=document.createElement("punica-context-menu-item");c.setAttribute("label","Close Others"),c.setAttribute("value","closeOthers"),o.appendChild(c);const u=document.createElement("punica-context-menu-item");u.setAttribute("label","Close All"),u.setAttribute("value","closeAll"),o.appendChild(u),o.addEventListener("punica-context-menu-select",e=>{const t=e?.detail?.value;if(!t)return;const n=this.#ue||this.#oe&&this.#oe.getAttribute("value")||"";switch(t){case"close":n&&this.closeById(n);break;case"closeOthers":n&&this.closeOthersById(n);break;case"closeAll":this.closeAll()}this.#ue=null}),n.appendChild(o),t.appendChild(n),this.#oe=i,this.#le=a,this.#e=!0}#he(e){if(!this.#oe||!this.#le)return;this.#oe.setAttribute("value",e);this.#oe.querySelectorAll("punica-tab-item").forEach(t=>{t.getAttribute("value")===e?(t.style.backgroundColor="var(--background-main)",t.scrollIntoView({block:"nearest",inline:"nearest"})):t.style.backgroundColor=""});this.#le.querySelectorAll("punica-tab-panel").forEach(t=>{t.setAttribute("selectedvalue",e)});try{const t=window,n=t?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand("file-explorer.revealFile",e)}catch(e){console.warn("[ContentTabs] Failed to notify file-explorer",e)}this.#pe(e)}#pe(e){try{const t=e?Array.from(this.#ce.values()).find(t=>t.id===e):void 0;punica.shell.ActivityBar.manager.syncContentTool?.(t?.viewType??null)}catch{}}open(e){if(this.#de(),!this.#oe||!this.#le)return null;const t=this.#ce.get(e.path);if(t)return this.#he(t.id),t.container;const n=e.path,r=e.title??e.path.split("/").pop()??e.path,i=document.createElement("punica-tab-item");i.setAttribute("value",n),i.className="content-file-type",i.style.maxWidth="200px",i.style.flex="0 0 auto",i.style.padding="var(--spacing-8) var(--spacing-4) var(--spacing-8) var(--spacing-12)";const s=document.createElement("punica-row");s.setAttribute("alignitems","center"),s.setAttribute("wrap","nowrap"),s.setAttribute("spacing","0.5"),s.style.maxWidth="200px";const a=document.createElement("punica-col"),o=document.createElement("punica-typography");o.setAttribute("truncate","1"),o.style.maxWidth="150px",o.setAttribute("title",e.path),o.textContent=r,a.appendChild(o);const l=document.createElement("punica-col"),c=document.createElement("punica-icon-button");c.setAttribute("size","small"),c.setAttribute("title","Close"),c.innerHTML="<i class='fa-duotone fa-solid fa-xmark'></i>",c.addEventListener("click",t=>{t.stopPropagation(),this.close(e.path)}),l.appendChild(c),s.appendChild(a),s.appendChild(l),i.appendChild(s),i.addEventListener("contextmenu",()=>{this.#ue=n,this.#he(n)}),this.#oe.appendChild(i);const u=document.createElement("punica-tab-panel");u.setAttribute("value",n),u.setAttribute("selectedvalue",n),u.style.height="100%",u.style.width="100%",u.style.boxSizing="border-box";const d=document.createElement("div");d.style.height="100%",d.style.width="100%",d.style.boxSizing="border-box",u.appendChild(d),this.#le.appendChild(u);const h={id:n,path:e.path,title:r,viewType:e.viewType,tabElement:i,labelElement:o,container:d,panel:u,dirty:!1};return this.#ce.set(e.path,h),this.#he(n),d}async close(e){const t=this.#ce.get(e);t&&await this.#me(t)&&this.#fe(t)}async closeById(e){const t=Array.from(this.#ce.values()).find(t=>t.id===e);t&&await this.#me(t)&&this.#fe(t)}async closeOthers(e){const t=this.#ce.get(e);t&&await this.closeOthersById(t.id)}async closeOthersById(e){const t=Array.from(this.#ce.values()).filter(t=>t.id!==e);for(const e of t){if(!await this.#me(e))return;this.#fe(e)}this.#he(e)}async closeAll(){const e=Array.from(this.#ce.values());for(const t of e){if(!await this.#me(t))return;this.#fe(t)}}#fe(e){if(!this.#oe||!this.#le)return;e.tabElement.parentElement===this.#oe&&this.#oe.removeChild(e.tabElement),e.panel.parentElement===this.#le&&this.#le.removeChild(e.panel),this.#ce.delete(e.path);const t=Array.from(this.#ce.values());if(t.length>0){const e=t[t.length-1];this.#he(e.id)}else this.#oe.removeAttribute("value"),this.#pe(null)}async#me(e){if(!e.dirty)return!0;this.#he(e.id);const t=e.title||e.path.split("/").pop()||e.path,n=await punica.shell.View.showDialog({title:"Unsaved changes",message:`"${t}" has unsaved changes. Do you want to save before closing?`,tone:"warning",buttons:[{label:"Cancel",variant:"text",action:"cancel"},{label:"Don't Save",variant:"outlined",action:"discard"},{label:"Save",variant:"filled",color:"primary",action:"save"}]});if("save"===n)try{const e=punica?.kernel?.Commands?.manager;return e&&"function"==typeof e.executeCommand&&await e.executeCommand("editor.saveActiveFile"),!0}catch(e){return await punica.shell.View.showAlert({title:"Save failed",message:`Could not save "${t}". The tab was left open.`,variant:"error"}),console.warn("[ContentTabs] save before close failed",e),!1}return"discard"===n}setDirty(e,t){const n=this.#ce.get(e);if(!n)return;n.dirty=t;const r=n.title||n.path.split("/").pop()||n.path;n.labelElement.textContent=t?`${r} •`:r}getActivePath(){if(!this.#oe)return null;const e=this.#oe.getAttribute("value");if(!e)return null;const t=Array.from(this.#ce.values()).find(t=>t.id===e);return t?.path??null}getActiveViewType(){if(!this.#oe)return null;const e=this.#oe.getAttribute("value");if(!e)return null;const t=Array.from(this.#ce.values()).find(t=>t.id===e);return t?.viewType??null}},Z="punica-tabbed-container-style",K={panel:"bottom panel",secondarySidebar:"right sidebar"};let W=null;const G=[];class X{slotId;orientation;#e=!1;#m=null;#oe=null;#ge=null;#be=null;#ye=null;#ve=null;#we=null;#Ee=null;#_e=!1;#ke=new Set;#xe=new Map;#D=null;#Ae="both";#Ce=null;#De=!1;#Se=!1;constructor(e,t){this.slotId=e,this.orientation=t,G.push(this)}#Ne(e){return`${this.slotId}-${e}`}get#Te(){return"horizontal"===this.orientation}#Le(){return globalThis.punica?.shell?.PanelLayout?.manager??null}#de(){if(this.#e)return;const e=punica.shell.Layout.manager.getSlot(this.slotId),t=e?.content;if(!t)return void console.warn(`[TabbedContainer] host not found for slot "${this.slotId}"`);t.innerHTML="";const n="vertical"===this.orientation?"icon":"both";this.#Ae=this.#Le()?.getDisplayMode?.(this.slotId)??n,this.#l();const r=document.createElement("punica-box");r.id=this.#Ne("tabs-root"),r.setAttribute("data-tabbed-container",""),r.setAttribute("data-orientation",this.orientation),r.style.height="100%",r.style.width="100%",r.style.display="flex",r.style.flexDirection=this.#Te?"column":"row";const i=document.createElement("punica-box");i.style.display="flex",i.style.alignItems="center",i.style.backgroundColor="var(--background-paper)",this.#Te?(i.style.height="32px",i.style.flexDirection="row"):(i.style.width="44px",i.style.height="100%",i.style.flexDirection="column");const s=document.createElement("punica-tab");s.setAttribute("orientation",this.orientation),s.style.flex="1 1 auto",s.style.overflow="hidden",s.style.backgroundColor="var(--background-paper)",this.#Te?(s.style.minWidth="0",s.style.height="100%"):(s.style.minHeight="0",s.style.width="100%",s.style.display="flex",s.style.flexDirection="column"),s.addEventListener("change",e=>{const t=e?.detail?.value;t&&this.#Ie(t,this.#Ne("tab"))}),i.addEventListener("contextmenu",e=>{this.#Fe(e)});const a=document.createElement("punica-icon-button");a.id=this.#Ne("tab-overflow-btn"),a.setAttribute("size","x-small"),a.setAttribute("title","More tabs"),a.setAttribute("aria-label","More tabs"),a.style.flex="0 0 auto",a.style.display="none",a.innerHTML='<i class="fa-solid fa-ellipsis"></i>',a.addEventListener("click",()=>{this.#ze()});const o=document.createElement("punica-icon-button");o.id=this.#Ne("tab-show-hidden-btn"),o.setAttribute("size","x-small"),o.setAttribute("title","Show hidden tabs"),o.setAttribute("aria-label","Show hidden tabs"),o.style.flex="0 0 auto",o.style.display="none",o.innerHTML='<i class="fa-solid fa-plus"></i>',o.addEventListener("click",()=>{this.#Me()});const l=document.createElement("punica-box");l.id=this.#Ne("toolbar-area"),l.style.flex="0 0 auto",l.style.display="flex",l.style.alignItems="center",l.style.padding="0 var(--spacing-8)",i.appendChild(s),i.appendChild(o),i.appendChild(a),i.appendChild(l);const c=document.createElement("punica-menu");c.id=this.#Ne("tab-overflow-menu"),c.addEventListener("close",()=>{c.removeAttribute("open")}),c.addEventListener("menu-item-click",e=>{const t=e?.detail?.data;t&&(e.stopPropagation?.(),c.removeAttribute("open"),this.#Ie(t,this.#Ne("tab-overflow")))});const u=document.createElement("punica-menu");u.id=this.#Ne("tab-context-menu"),u.addEventListener("close",()=>{u.removeAttribute("open")}),u.addEventListener("menu-item-click",e=>{const t=e?.detail?.data;u.removeAttribute("open"),t&&this.#Oe(t)});const d=document.createElement("div");if(d.id=this.#Ne("views-root"),d.setAttribute("data-views-root",""),d.style.flex="1",this.#Te?(d.style.height="calc(100% - 32px)",d.style.width="100%"):(d.style.height="100%",d.style.width="calc(100% - 44px)"),r.appendChild(i),r.appendChild(d),r.appendChild(c),r.appendChild(u),t.appendChild(r),this.#Be(r),"undefined"!=typeof ResizeObserver){new ResizeObserver(()=>{this.#Re()}).observe(i)}this.#m=r,this.#oe=s,this.#ge=l,this.#be=a,this.#ye=c,this.#ve=o,this.#we=u,this.#e=!0}#l(){if("undefined"==typeof document)return;if(document.getElementById(Z))return;const e=document.createElement("style");e.id=Z,e.textContent="\n [data-tabbed-container] punica-tab-item {\n cursor: pointer;\n transition: background-color 0.08s ease;\n }\n [data-tabbed-container] punica-tab-item:hover {\n background-color: var(--background-main);\n }\n [data-tabbed-container] punica-tab-item[data-user-hidden] {\n display: none !important;\n }\n /* The active tab uses OUR accent only; we strip the component's selected\n attribute (its border indicator), so restore its full opacity here. */\n [data-tabbed-container] punica-tab-item[active] {\n opacity: 1;\n }\n [data-orientation='horizontal'] punica-tab-item {\n border-top: 2px solid transparent;\n }\n [data-orientation='horizontal'] punica-tab-item[active] {\n background-color: var(--background-main);\n border-top: 2px solid var(--primary-main);\n }\n [data-orientation='vertical'] punica-tab-item {\n border-left: 2px solid transparent;\n justify-content: center;\n }\n [data-orientation='vertical'] punica-tab-item[active] {\n background-color: var(--background-main);\n border-left: 2px solid var(--primary-main);\n }\n [data-tabbed-container][data-drop-target] {\n outline: 2px dashed var(--primary-main);\n outline-offset: -2px;\n }\n",document.head.appendChild(e)}#Ie(e,t){const n=globalThis.punica?.shell?.Views?.manager;if(n?.getPlacement?.(e))return n.reveal(e,{kind:"user-gesture",id:`${t}:${e}`}).catch(t=>{console.warn("[TabbedContainer] reveal failed for tab",e,t)}),void this.activateTabVisual(e);this.setActive(e)}open(e){if(this.#de(),!this.#oe)return;if(this.#xe.get(e.id))return void(!1===e.autoActivate||this.#D===e.id||this.#$e(e.id,"PanelTabs.open")||this.setActive(e.id));const t=document.createElement("punica-tab-item");t.setAttribute("value",e.id),t.setAttribute("title",e.title),t.style.flex="0 0 auto",this.#Te?(t.style.maxWidth="160px",t.style.padding="var(--spacing-6) var(--spacing-8)"):(t.style.width="100%",t.style.padding="var(--spacing-8) var(--spacing-6)",t.style.height="auto",t.style.flexGrow="0"),t.draggable=!0;const n=document.createElement("punica-row");n.setAttribute("alignitems","center"),n.setAttribute("wrap","nowrap"),n.setAttribute("spacing","0.5");let r=null;if(e.iconClass){r=document.createElement("punica-col"),r.dataset.col="icon";const t=document.createElement("punica-icon"),i=e.iconClass.trim();if(i.startsWith("<"))t.innerHTML=i;else{const e=document.createElement("i");e.className=i,t.appendChild(e)}r.appendChild(t),n.appendChild(r)}const i=document.createElement("punica-col");i.dataset.col="label";const s=document.createElement("punica-typography");s.setAttribute("truncate","1"),s.textContent=e.title,i.appendChild(s),n.appendChild(i),t.appendChild(n);const a=!0===this.#Le()?.isTabHidden?.(e.id,this.slotId);a&&t.setAttribute("data-user-hidden","");const o=this.#je(e.id,e.order),l=Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).find(e=>e.order>o);l?this.#oe.insertBefore(t,l.tabElement):this.#oe.appendChild(t);const c={id:e.id,title:e.title,commandId:e.commandId,iconClass:e.iconClass,order:o,tabElement:t,iconColEl:r,labelColEl:i,userHidden:a,toolbar:e.toolbar,toolbarEl:null};e.toolbar?.length&&this.#ge&&(c.toolbarEl=this.#Pe(e.id,e.toolbar),this.#ge.appendChild(c.toolbarEl)),this.#xe.set(e.id,c),this.#He(c),this.#qe(c),this.#Ve(),this.#Re();const u=e.autoActivate;this.#D||a||!1===u||this.#$e(e.id,"PanelTabs.open")||this.setActive(e.id)}#je(e,t){const n=this.#Le()?.getTabOrder?.(this.slotId);if(n&&n.length){const r=n.indexOf(e);return r>=0?r:1e3*n.length+(t??1e3)}return t??1e3}#He(e){const t=this.#Ae,n=!!e.iconColEl,r=n&&("icon"===t||"both"===t),i="label"===t||"both"===t||!n;e.iconColEl&&(e.iconColEl.style.display=r?"":"none"),e.labelColEl&&(e.labelColEl.style.display=i?"":"none")}#Pe(e,t){const n=document.createElement("div");n.dataset.viewId=e,n.style.display="none",n.style.alignItems="center",n.style.gap="var(--spacing-4)";for(const e of t){if(!e?.command)continue;const t=document.createElement("punica-icon-button");t.setAttribute("size","x-small"),t.setAttribute("title",e.title??e.command),t.setAttribute("aria-label",e.title??e.command),t.dataset.actionId=e.id,t.style.flex="0 0 auto",t.innerHTML=e.icon??"",t.addEventListener("click",()=>{try{const t=window,n=t?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand(e.command)}catch(t){console.warn("[TabbedContainer] Failed to execute toolbar command",e.command,t)}}),n.appendChild(t)}return n}#$e(n,r){return!!t()&&(e({name:"shell.view.revealBlocked",source:"shell:views",kind:"warn",payload:{viewId:n,slot:this.slotId,api:r}}),console.warn(`[Shell] UI mutation during headless activation blocked: ${r}("${n}"). Declare the tab without autoActivate and reveal via the shell.revealView capability instead.`),!0)}activateTabVisual(e){if(!this.#oe)return;if(!this.#xe.get(e))return;this.#D=e,this.#oe.setAttribute("value",e);this.#oe.querySelectorAll("punica-tab-item").forEach(t=>{const n=t.getAttribute("value");t.removeAttribute("selected"),n===e?(t.setAttribute("active",""),t.setAttribute("aria-selected","true")):(t.removeAttribute("active"),t.setAttribute("aria-selected","false"))}),this.#xe.forEach(t=>{t.toolbarEl&&(t.toolbarEl.style.display=t.id===e?"flex":"none")}),this.recomputeOverflow()}close(e,t){if(!this.#oe)return;const n=this.#xe.get(e);if(n&&(n.tabElement.parentElement===this.#oe&&this.#oe.removeChild(n.tabElement),n.toolbarEl&&(n.toolbarEl.remove(),n.toolbarEl=null),this.#ke.delete(e),this.#xe.delete(e),this.#Re(),this.#D===e)){const e=Array.from(this.#xe.values()).filter(e=>!e.userHidden).sort((e,t)=>e.order-t.order);this.#D=null,!t?.silent&&e.length>0?this.setActive(e[0].id):this.#oe.removeAttribute("value")}}closeAll(){this.#oe&&Array.from(this.#xe.keys()).forEach(e=>this.close(e))}setActive(e){if(!this.#oe)return;const t=this.#xe.get(e);if(t&&!this.#$e(e,"PanelTabs.setActive")&&(this.activateTabVisual(e),t.commandId))try{const e=window,n=e?.punica?.kernel?.Commands?.manager;n&&"function"==typeof n.executeCommand&&n.executeCommand(t.commandId)}catch(e){console.warn("[TabbedContainer] Failed to execute command",t.commandId,e)}}getActiveId(){return this.#D}getDisplayMode(){return this.#Ae}setDisplayMode(e){this.#Ae=e,this.#xe.forEach(e=>this.#He(e)),this.#Le()?.setDisplayMode?.(e,{slot:this.slotId}),this.#Re()}hideTab(e){const t=this.#xe.get(e);if(t&&!t.userHidden){if(t.userHidden=!0,t.tabElement.setAttribute("data-user-hidden",""),this.#Le()?.setTabHidden?.(e,!0,{slot:this.slotId}),this.#Ve(),this.#D===e){this.#D=null,this.#oe?.removeAttribute("value"),t.tabElement.removeAttribute("active");const e=Array.from(this.#xe.values()).filter(e=>!e.userHidden).sort((e,t)=>e.order-t.order)[0];e&&this.#Ie(e.id,this.#Ne("tab-hide"))}this.#Re()}}showTab(e){const t=this.#xe.get(e);t&&t.userHidden&&(t.userHidden=!1,t.tabElement.removeAttribute("data-user-hidden"),this.#Le()?.setTabHidden?.(e,!1,{slot:this.slotId}),this.#Ve(),this.#Re(),this.#Ie(e,this.#Ne("tab-show")))}setUserOrder(e){this.#oe&&(e.forEach((e,t)=>{const n=this.#xe.get(e);n&&(n.order=t,this.#oe.appendChild(n.tabElement))}),Array.from(this.#xe.values()).filter(t=>!e.includes(t.id)).sort((e,t)=>e.order-t.order).forEach((t,n)=>{t.order=e.length+n,this.#oe.appendChild(t.tabElement)}),this.#Le()?.setTabOrder?.(this.#Ue(),{slot:this.slotId}),this.#Re())}listTabs(){return Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).map(e=>({id:e.id,title:e.title,userHidden:e.userHidden}))}#Ue(){return Array.from(this.#xe.values()).sort((e,t)=>e.order-t.order).map(e=>e.id)}#qe(e){const t=e.tabElement;t.addEventListener("dragstart",t=>{this.#Ce=e.id,W={viewId:e.id,sourceSlot:this.slotId},t.dataTransfer?.setData("application/x-punica-view",e.id),t.dataTransfer&&(t.dataTransfer.effectAllowed="move"),function(){for(const e of G)e.armDropZone()}()}),t.addEventListener("dragend",()=>{this.#Ce=null,W=null,function(){for(const e of G)e.disarmDropZone()}()}),t.addEventListener("dragover",t=>{this.#Ce&&this.#Ce!==e.id&&t.preventDefault()}),t.addEventListener("drop",t=>{t.preventDefault();const n=this.#Ce;if(this.#Ce=null,!n||n===e.id)return;const r=this.#Te?t.clientX:t.clientY;this.#Ze(n,e.id,r)})}#Ze(e,t,n){const r=this.#xe.get(t);if(!r)return;const i=r.tabElement.getBoundingClientRect(),s=this.#Te?n>i.left+i.width/2:n>i.top+i.height/2,a=this.#Ue().filter(t=>t!==e),o=a.indexOf(t),l=s?o+1:o;a.splice(l,0,e),this.setUserOrder(a)}#Be(e){e.addEventListener("dragover",e=>{this.#Ke()&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="move"),this.#m?.setAttribute("data-drop-target",""))}),e.addEventListener("dragleave",t=>{e.contains(t.relatedTarget)||this.#m?.removeAttribute("data-drop-target")}),e.addEventListener("drop",e=>{this.#m?.removeAttribute("data-drop-target");const t=W;t&&this.#Ke()&&(e.preventDefault(),e.stopPropagation(),this.#Se=!0,W=null,this.#We(t.viewId,this.slotId))})}armDropZone(){if(this.#Se=!1,!this.#Ke())return;this.#de();const e=punica.shell.Layout.manager;e.isSlotCollapsed?.(this.slotId)&&(e.setSlotCollapsed(this.slotId,!1),this.#De=!0)}disarmDropZone(){this.#m?.removeAttribute("data-drop-target"),this.#De&&!this.#Se&&punica.shell.Layout.manager.setSlotCollapsed(this.slotId,!0),this.#De=!1,this.#Se=!1}#Ke(){const e=W;if(!e||e.sourceSlot===this.slotId)return!1;const t=globalThis.punica?.shell?.Views?.manager?.getPlacement?.(e.viewId),n=t?.allowedSlots;return Array.isArray(n)&&n.includes(this.slotId)}#We(e,t){const n=globalThis.punica?.shell?.Views?.manager;"function"==typeof n?.moveView&&n.moveView(e,t,{kind:"user-gesture",id:`view-dnd:${e}`}).catch(t=>{console.warn("[TabbedContainer] moveView failed",e,t)})}#Fe(e){const t=this.#we;if(!t)return;e.preventDefault();const n=e.target?.closest?.("punica-tab-item");if(t.innerHTML="",n){const e=n.getAttribute("value");if(e){this.#Ge(t,`hide:${e}`,"Hide tab");const n=globalThis.punica?.shell?.Views?.manager?.getPlacement?.(e);(n?.allowedSlots??[]).filter(e=>e!==this.slotId).forEach(n=>{this.#Ge(t,`move:${e}:${n}`,`Move to ${K[n]??n}`)})}}this.#Ge(t,"display:both",("both"===this.#Ae?"● ":"")+"Show icons and labels"),this.#Ge(t,"display:icon",("icon"===this.#Ae?"● ":"")+"Show icons only"),this.#Ge(t,"display:label",("label"===this.#Ae?"● ":"")+"Show labels only"),this.#Xe(t,e.clientX,e.clientY)}#Oe(e){const t=e.split(":"),n=t[0];"hide"===n&&t[1]?this.hideTab(t[1]):"display"===n&&t[1]?this.setDisplayMode(t[1]):"show"===n&&t[1]?this.showTab(t[1]):"move"===n&&t[1]&&t[2]&&this.#We(t[1],t[2])}#Ge(e,t,n){const r=document.createElement("punica-menu-item");r.setAttribute("data-item",t),r.setAttribute("aria-label",n);const i=document.createElement("punica-typography");i.textContent=n,r.appendChild(i),e.appendChild(r)}#Xe(e,t,n){e.setAttribute("top",String(n)),e.setAttribute("left",String(t)),e.setAttribute("bottom",String(n)),e.setAttribute("placement","bottom"),e.setAttribute("open","true")}#Me(){const e=this.#we,t=this.#ve;if(!e||!t)return;e.innerHTML="",Array.from(this.#xe.values()).filter(e=>e.userHidden).sort((e,t)=>e.order-t.order).forEach(t=>this.#Ge(e,`show:${t.id}`,t.title));const n=t.getBoundingClientRect();this.#Xe(e,n.left,n.bottom)}#Ve(){const e=this.#ve;if(!e)return;const t=Array.from(this.#xe.values()).some(e=>e.userHidden);e.style.display=t?"inline-flex":"none"}#Re(){if(this.#_e)return;this.#_e=!0;const e=()=>{this.#_e=!1,this.recomputeOverflow()};"function"==typeof requestAnimationFrame?requestAnimationFrame(e):setTimeout(e,0)}#Je(){const e=this.#oe;return e?this.#Te?e.clientWidth:e.clientHeight:0}#Qe(e){return this.#Te?e.offsetWidth:e.offsetHeight}recomputeOverflow(){const e=this.#oe;if(!e)return;const t=Array.from(e.querySelectorAll("punica-tab-item")).filter(e=>!e.hasAttribute("data-user-hidden"));if(t.forEach(e=>{e.style.display=""}),0===t.length)return this.#ke.clear(),void this.#Ye(!1);const n=this.#Je();if(n<=0)return this.#ke.clear(),void this.#Ye(!1);const r=t.map(e=>this.#Qe(e));if(r.reduce((e,t)=>e+t,0)<=n)return this.#ke.clear(),void this.#Ye(!1);const i=n-this.#et(),s=t.findIndex(e=>e.getAttribute("value")===this.#D);let a=s>=0?r[s]:0;const o=new Set;let l=!0;t.forEach((e,t)=>{if(t===s)return;if(l&&a+r[t]<=i)return void(a+=r[t]);l=!1,e.style.display="none";const n=e.getAttribute("value");n&&o.add(n)}),this.#ke=o,this.#Ye(o.size>0)}#Ye(e){const t=this.#be;t&&(t.style.display=e?"inline-flex":"none",e||this.#ye?.removeAttribute("open"))}#et(){if(null!=this.#Ee)return this.#Ee;const e=this.#be;if(!e)return 28;const t=e.style.display;e.style.display="inline-flex";const n=this.#Qe(e)||28;return e.style.display=t,this.#Ee=n,n}#ze(){const e=this.#ye,t=this.#be,n=this.#oe;if(!e||!t||!n||0===this.#ke.size)return;e.innerHTML="",n.querySelectorAll("punica-tab-item").forEach(t=>{const n=t.getAttribute("value");if(!n||!this.#ke.has(n))return;const r=this.#xe.get(n);if(!r)return;const i=document.createElement("punica-menu-item");i.setAttribute("data-item",n),i.setAttribute("aria-label",r.title);const s=document.createElement("punica-typography");s.textContent=r.title,i.appendChild(s),e.appendChild(i)});const r=t.getBoundingClientRect();e.setAttribute("top",String(r.top)),e.setAttribute("left",String(r.left)),e.setAttribute("width",String(r.width)),e.setAttribute("height",String(r.height)),e.setAttribute("bottom",String(r.bottom)),e.setAttribute("placement","bottom"),e.setAttribute("open","true")}}const J=new class extends X{constructor(){super("panel","horizontal")}},Q=new X("secondarySidebar","vertical"),Y={bottom:J,right:Q,forSlot:e=>"panel"===e?J:"secondarySidebar"===e?Q:null},ee="panel.tabDisplay",te="panel.hiddenTabs",ne="panel.tabOrder",re="view.slotOverrides",ie="panel";function se(){return globalThis.punica?.extensions?.settings?.manager??null}function ae(){try{const e=globalThis.punica?.shell?.Profile?.manager?.registry?.getActive?.();return e?.shell??null}catch{return null}}const oe=new class{#tt=!1;#nt=null;#rt=new Map;#it={};async load(){const e=se();if(this.#nt=e,e){try{await e.load()}catch(e){console.warn("[PanelLayout] settings.load() failed",e)}this.#it=this.#st(e.get("system",re))??{}}this.#tt=!0}getDisplayMode(e=ie){const t=this.#at(this.#ot(ee,e));if(t)return t;if(e===ie){const e=this.#at(ae()?.panel?.tabDisplay);if(e)return e}return e===ie?"both":"icon"}getHiddenTabs(e=ie){const t=this.#lt(this.#ot(te,e));if(t)return t;if(e===ie){const e=this.#lt(ae()?.panel?.hiddenTabs);if(e)return e}return[]}isTabHidden(e,t=ie){return this.getHiddenTabs(t).includes(e)}getTabOrder(e=ie){const t=this.#lt(this.#ot(ne,e));return t||(e===ie?this.#lt(ae()?.panel?.tabOrder):void 0)}getSlotOverride(e){const t=this.#it[e];if(void 0!==t)return t;const n=this.#st(ae()?.viewDefaults?.slotOverrides);return n?.[e]}async setDisplayMode(e,t){await this.#ct(ee,e,t)}async setTabHidden(e,t,n){const r=n?.slot??ie,i=new Set(this.getHiddenTabs(r));t?i.add(e):i.delete(e),await this.#ct(te,Array.from(i),n)}async setTabOrder(e,t){await this.#ct(ne,[...e],t)}async setSlotOverride(e,t,n,r){const i={...this.#it};t===n?delete i[e]:i[e]=t,this.#it=i,await this.#ut(re,i,r)}#dt(e,t){return t===ie?e:`${e}.${t}`}#ot(e,t){const n=this.#dt(e,t);if(this.#rt.has(n))return this.#rt.get(n);const r=this.#nt?.get?.("system",n);return this.#rt.set(n,r),r}async#ct(e,t,n){const r=n?.slot??ie,i=this.#dt(e,r);this.#rt.set(i,t),await this.#ut(i,t,n)}async#ut(e,t,n){const r=se();if(!r)return;const i=n?.workspace?"project":"global";try{await r.set("system",e,t,i)}catch(t){console.warn("[PanelLayout] failed to persist",e,t)}}#at(e){return"icon"===e||"label"===e||"both"===e?e:void 0}#lt(e){return Array.isArray(e)&&e.every(e=>"string"==typeof e)?e:void 0}#st(e){if(!e||"object"!=typeof e||Array.isArray(e))return;const t={};for(const[n,r]of Object.entries(e))"string"==typeof r&&(t[n]=r);return t}},le={};function ce(e,t){"string"!=typeof t&&(t=ce.defaultChars);const n=function(e){let t=le[e];if(t)return t;t=le[e]=[];for(let e=0;e<128;e++){const n=String.fromCharCode(e);t.push(n)}for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);t[r]="%"+("0"+r.toString(16).toUpperCase()).slice(-2)}return t}(t);return e.replace(/(%[a-f0-9]{2})+/gi,function(e){let t="";for(let r=0,i=e.length;r<i;r+=3){const s=parseInt(e.slice(r+1,r+3),16);if(s<128)t+=n[s];else{if(192==(224&s)&&r+3<i){const n=parseInt(e.slice(r+4,r+6),16);if(128==(192&n)){const e=s<<6&1984|63&n;t+=e<128?"��":String.fromCharCode(e),r+=3;continue}}if(224==(240&s)&&r+6<i){const n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16);if(128==(192&n)&&128==(192&i)){const e=s<<12&61440|n<<6&4032|63&i;t+=e<2048||e>=55296&&e<=57343?"���":String.fromCharCode(e),r+=6;continue}}if(240==(248&s)&&r+9<i){const n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16),a=parseInt(e.slice(r+10,r+12),16);if(128==(192&n)&&128==(192&i)&&128==(192&a)){let e=s<<18&1835008|n<<12&258048|i<<6&4032|63&a;e<65536||e>1114111?t+="����":(e-=65536,t+=String.fromCharCode(55296+(e>>10),56320+(1023&e))),r+=9;continue}}t+="�"}}return t})}ce.defaultChars=";/?:@&=+$,#",ce.componentChars="";const ue={};function de(e,t,n){"string"!=typeof t&&(n=t,t=de.defaultChars),void 0===n&&(n=!0);const r=function(e){let t=ue[e];if(t)return t;t=ue[e]=[];for(let e=0;e<128;e++){const n=String.fromCharCode(e);/^[0-9a-z]$/i.test(n)?t.push(n):t.push("%"+("0"+e.toString(16).toUpperCase()).slice(-2))}for(let n=0;n<e.length;n++)t[e.charCodeAt(n)]=e[n];return t}(t);let i="";for(let t=0,s=e.length;t<s;t++){const a=e.charCodeAt(t);if(n&&37===a&&t+2<s&&/^[0-9a-f]{2}$/i.test(e.slice(t+1,t+3)))i+=e.slice(t,t+3),t+=2;else if(a<128)i+=r[a];else if(a>=55296&&a<=57343){if(a>=55296&&a<=56319&&t+1<s){const n=e.charCodeAt(t+1);if(n>=56320&&n<=57343){i+=encodeURIComponent(e[t]+e[t+1]),t++;continue}}i+="%EF%BF%BD"}else i+=encodeURIComponent(e[t])}return i}function he(e){let t="";return t+=e.protocol||"",t+=e.slashes?"//":"",t+=e.auth?e.auth+"@":"",e.hostname&&-1!==e.hostname.indexOf(":")?t+="["+e.hostname+"]":t+=e.hostname||"",t+=e.port?":"+e.port:"",t+=e.pathname||"",t+=e.search||"",t+=e.hash||"",t}function pe(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}de.defaultChars=";/?:@&=+$,-_.!~*'()#",de.componentChars="-_.!~*'()";const me=/^([a-z0-9.+-]+:)/i,fe=/:[0-9]*$/,ge=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,be=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),ye=["'"].concat(be),ve=["%","/","?",";","#"].concat(ye),we=["/","?","#"],Ee=/^[+a-z0-9A-Z_-]{0,63}$/,_e=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,ke={javascript:!0,"javascript:":!0},xe={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function Ae(e,t){if(e&&e instanceof pe)return e;const n=new pe;return n.parse(e,t),n}pe.prototype.parse=function(e,t){let n,r,i,s=e;if(s=s.trim(),!t&&1===e.split("#").length){const e=ge.exec(s);if(e)return this.pathname=e[1],e[2]&&(this.search=e[2]),this}let a=me.exec(s);if(a&&(a=a[0],n=a.toLowerCase(),this.protocol=a,s=s.substr(a.length)),(t||a||s.match(/^\/\/[^@\/]+@[^@\/]+/))&&(i="//"===s.substr(0,2),!i||a&&ke[a]||(s=s.substr(2),this.slashes=!0)),!ke[a]&&(i||a&&!xe[a])){let e,t,n=-1;for(let e=0;e<we.length;e++)r=s.indexOf(we[e]),-1!==r&&(-1===n||r<n)&&(n=r);t=-1===n?s.lastIndexOf("@"):s.lastIndexOf("@",n),-1!==t&&(e=s.slice(0,t),s=s.slice(t+1),this.auth=e),n=-1;for(let e=0;e<ve.length;e++)r=s.indexOf(ve[e]),-1!==r&&(-1===n||r<n)&&(n=r);-1===n&&(n=s.length),":"===s[n-1]&&n--;const i=s.slice(0,n);s=s.slice(n),this.parseHost(i),this.hostname=this.hostname||"";const a="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!a){const e=this.hostname.split(/\./);for(let t=0,n=e.length;t<n;t++){const n=e[t];if(n&&!n.match(Ee)){let r="";for(let e=0,t=n.length;e<t;e++)n.charCodeAt(e)>127?r+="x":r+=n[e];if(!r.match(Ee)){const r=e.slice(0,t),i=e.slice(t+1),a=n.match(_e);a&&(r.push(a[1]),i.unshift(a[2])),i.length&&(s=i.join(".")+s),this.hostname=r.join(".");break}}}}this.hostname.length>255&&(this.hostname=""),a&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}const o=s.indexOf("#");-1!==o&&(this.hash=s.substr(o),s=s.slice(0,o));const l=s.indexOf("?");return-1!==l&&(this.search=s.substr(l),s=s.slice(0,l)),s&&(this.pathname=s),xe[n]&&this.hostname&&!this.pathname&&(this.pathname=""),this},pe.prototype.parseHost=function(e){let t=fe.exec(e);t&&(t=t[0],":"!==t&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)};var Ce,De=Object.freeze({__proto__:null,decode:ce,encode:de,format:he,parse:Ae}),Se=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Ne=/[\0-\x1F\x7F-\x9F]/,Te=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/,Le=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/,Ie=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,Fe=Object.freeze({__proto__:null,Any:Se,Cc:Ne,Cf:/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/,P:Te,S:Le,Z:Ie}),ze=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲϏϢϸontourIntegraìȹoɴ\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲy;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱còJTabcdfgorstרׯؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ߂ߐĀiyޱrc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣসে্ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४ĀnrࢃgleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpwਖਛgȀLRlr৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼અઋp;椅y;䐜Ādl੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑඞcy;䐊cute;䅃ƀaeyહાron;䅇dil;䅅;䐝ƀgswે૰ativeƀMTV૨ediumSpace;怋hiĀcn૦ëeryThiîtedĀGLଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷreak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater;EFGLSTஶஷ扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨setĀ;Eೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂෛ෧ขภยา฿ไlig;䅒cute耻Ó䃓Āiyීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲcr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬืde耻Õ䃕es;樷ml耻Ö䃖erĀBP๋Āar๐๓r;怾acĀek๚;揞et;掴arenthesis;揜ҀacfhilorsງຊຏຒດຝະrtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ檻cedesȀ;EST່້扺qual;檯lantEqual;扼ilde;找me;怳Ādpuct;戏ortionĀ;aȥl;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL憒ar;懥eftArrow;懄eiling;按oǵ\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄቕቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHcቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗ĀeiቻDzኀ\0ኇefore;戴a;䎘ĀcnኘkSpace;쀀 Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtèa;䎖r;愨pf;愤cr;쀀𝒵ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒;Eaeiopᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;eᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;eᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰᝃᝈ០៦ᠹᡐᜍ᥈ᥰot;櫭ĀcrᛶkȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀakoᠦᠵĀcn៲ᠣkƀlst֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ;敛;敘;攘;攔;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģbar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;elƀ;bhᥨᥩᥫ䁜;槅sub;柈ŬᥴlĀ;e怢t»pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭒\0᯽\0ᰌƀcprᦲute;䄇̀;abcdsᦿᧀᧄ᧕᧙戩nd;橄rcup;橉Āau᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r;Ecefms᩠ᩢᩫ᪤᪪旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ\0\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»eóɍǧ\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯delprvw᭠᭬᭷ᮂᮬᯔarrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;pᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰻᰿ᱝᱩᱵᲞᲬᲷᴍᵻᶑᶫᶻ᷆᷍ròar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂᳖᳜᳠mƀ;oș᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄĀDoḆᴴoôĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»ṺƀaeiἒἚls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧\0耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₥₰₴⃰℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽ƀ;qsؾٌlanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqrⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0proør;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼ròòΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonóquigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roøurĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨íistĀ;sடr;쀀𝔫ȀEest⩦⩹⩼ƀ;qs⩭ƀ;qs⩴lanôií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast⭕⭚⭟lleìl;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖchimpqu⮽⯍⯙⬄⯤⯯Ȁ;cerല⯆ഷ⯉uå;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭ååഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñĀ;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;cⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācrir;榿;쀀𝔬ͯ\0\0\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕⶥⶨrò᪀Āirⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔǒr;榷rp;榹;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ\0\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ脀¶;l䂶leìЃɩ\0\0m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳ᤈ⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t⾴ïrel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⋢⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔ABHabcdefhilmnoprstuxけさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstwガクシスゼゾダッデナp;極Ā;fゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ìâヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘rrowĀ;tㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowóarpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓ròaòՑ;怏oustĀ;a㈞掱che»mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì耻䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;qኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫwar;椪lig耻ß䃟㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rëƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproøim»ኬsðኞĀas㚺㚮ðrn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈadempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xôheadĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roðtré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜtré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map(e=>e.charCodeAt(0))),Me=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map(e=>e.charCodeAt(0)));const Oe=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),Be=null!==(Ce=String.fromCodePoint)&&void 0!==Ce?Ce:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+=String.fromCharCode(e),t};var Re;!function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(Re||(Re={}));var $e,je,Pe;function He(e){return e>=Re.ZERO&&e<=Re.NINE}function qe(e){return e>=Re.UPPER_A&&e<=Re.UPPER_F||e>=Re.LOWER_A&&e<=Re.LOWER_F}function Ve(e){return e===Re.EQUALS||function(e){return e>=Re.UPPER_A&&e<=Re.UPPER_Z||e>=Re.LOWER_A&&e<=Re.LOWER_Z||He(e)}(e)}!function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}($e||($e={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(je||(je={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(Pe||(Pe={}));class Ue{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=je.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Pe.Strict}startEntity(e){this.decodeMode=e,this.state=je.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case je.EntityStart:return e.charCodeAt(t)===Re.NUM?(this.state=je.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=je.NamedEntity,this.stateNamedEntity(e,t));case je.NumericStart:return this.stateNumericStart(e,t);case je.NumericDecimal:return this.stateNumericDecimal(e,t);case je.NumericHex:return this.stateNumericHex(e,t);case je.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===Re.LOWER_X?(this.state=je.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=je.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){const i=n-t;this.result=this.result*Math.pow(r,i)+parseInt(e.substr(t,i),r),this.consumed+=i}}stateNumericHex(e,t){const n=t;for(;t<e.length;){const r=e.charCodeAt(t);if(!He(r)&&!qe(r))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(r,3);t+=1}return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){const n=t;for(;t<e.length;){const r=e.charCodeAt(t);if(!He(r))return this.addToNumericResult(e,n,t,10),this.emitNumericEntity(r,2);t+=1}return this.addToNumericResult(e,n,t,10),-1}emitNumericEntity(e,t){var n;if(this.consumed<=t)return null===(n=this.errors)||void 0===n||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===Re.SEMI)this.consumed+=1;else if(this.decodeMode===Pe.Strict)return 0;return this.emitCodePoint(function(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=Oe.get(e))&&void 0!==t?t:e}(this.result),this.consumed),this.errors&&(e!==Re.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){const{decodeTree:n}=this;let r=n[this.treeIndex],i=(r&$e.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){const s=e.charCodeAt(t);if(this.treeIndex=Ke(n,r,this.treeIndex+Math.max(1,i),s),this.treeIndex<0)return 0===this.result||this.decodeMode===Pe.Attribute&&(0===i||Ve(s))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&$e.VALUE_LENGTH)>>14,0!==i){if(s===Re.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Pe.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;const{result:t,decodeTree:n}=this,r=(n[t]&$e.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){const{decodeTree:r}=this;return this.emitCodePoint(1===t?r[e]&~$e.VALUE_LENGTH:r[e+1],n),3===t&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case je.NamedEntity:return 0===this.result||this.decodeMode===Pe.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case je.NumericDecimal:return this.emitNumericEntity(0,2);case je.NumericHex:return this.emitNumericEntity(0,3);case je.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case je.EntityStart:return 0}}}function Ze(e){let t="";const n=new Ue(e,e=>t+=Be(e));return function(e,r){let i=0,s=0;for(;(s=e.indexOf("&",s))>=0;){t+=e.slice(i,s),n.startEntity(r);const a=n.write(e,s+1);if(a<0){i=s+n.end();break}i=s+a,s=0===a?i+1:i}const a=t+e.slice(i);return t="",a}}function Ke(e,t,n,r){const i=(t&$e.BRANCH_LENGTH)>>7,s=t&$e.JUMP_TABLE;if(0===i)return 0!==s&&r===s?n:-1;if(s){const t=r-s;return t<0||t>=i?-1:e[n+t]-1}let a=n,o=a+i-1;for(;a<=o;){const t=a+o>>>1,n=e[t];if(n<r)a=t+1;else{if(!(n>r))return e[t+i];o=t-1}}return-1}const We=Ze(ze);function Ge(e){return"[object String]"===function(e){return Object.prototype.toString.call(e)}(e)}Ze(Me);const Xe=Object.prototype.hasOwnProperty;function Je(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){if(t){if("object"!=typeof t)throw new TypeError(t+"must be object");Object.keys(t).forEach(function(n){e[n]=t[n]})}}),e}function Qe(e,t,n){return[].concat(e.slice(0,t),n,e.slice(t+1))}function Ye(e){return!(e>=55296&&e<=57343)&&(!(e>=64976&&e<=65007)&&(!!(65535&~e&&65534!=(65535&e))&&(!(e>=0&&e<=8)&&(11!==e&&(!(e>=14&&e<=31)&&(!(e>=127&&e<=159)&&!(e>1114111)))))))}function et(e){if(e>65535){const t=55296+((e-=65536)>>10),n=56320+(1023&e);return String.fromCharCode(t,n)}return String.fromCharCode(e)}const tt=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,nt=new RegExp(tt.source+"|"+/&([a-z#][a-z0-9]{1,31});/gi.source,"gi"),rt=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function it(e,t){if(35===t.charCodeAt(0)&&rt.test(t)){const n="x"===t[1].toLowerCase()?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Ye(n)?et(n):e}const n=function(e,t=Pe.Legacy){return We(e,t)}(e);return n!==e?n:e}function st(e){return e.indexOf("\\")<0&&e.indexOf("&")<0?e:e.replace(nt,function(e,t,n){return t||it(e,n)})}const at=/[&<>"]/,ot=/[&<>"]/g,lt={"&":"&","<":"<",">":">",'"':"""};function ct(e){return lt[e]}function ut(e){return at.test(e)?e.replace(ot,ct):e}const dt=/[.?*+^$[\]\\(){}|-]/g;function ht(e){switch(e){case 9:case 32:return!0}return!1}function pt(e){if(e>=8192&&e<=8202)return!0;switch(e){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function mt(e){return Te.test(e)||Le.test(e)}function ft(e){return mt(et(e))}function gt(e){switch(e){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function bt(e){return e=e.trim().replace(/\s+/g," "),"Ṿ"==="ẞ".toLowerCase()&&(e=e.replace(/ẞ/g,"ß")),e.toLowerCase().toUpperCase()}function yt(e){return 32===e||9===e||10===e||13===e}function vt(e){let t=0;for(;t<e.length&&yt(e.charCodeAt(t));t++);let n=e.length-1;for(;n>=t&&yt(e.charCodeAt(n));n--);return e.slice(t,n+1)}const wt={mdurl:De,ucmicro:Fe};var Et=Object.freeze({__proto__:null,arrayReplaceAt:Qe,asciiTrim:vt,assign:Je,escapeHtml:ut,escapeRE:function(e){return e.replace(dt,"\\$&")},fromCodePoint:et,has:function(e,t){return Xe.call(e,t)},isMdAsciiPunct:gt,isPunctChar:mt,isPunctCharCode:ft,isSpace:ht,isString:Ge,isValidEntityCode:Ye,isWhiteSpace:pt,lib:wt,normalizeReference:bt,unescapeAll:st,unescapeMd:function(e){return e.indexOf("\\")<0?e:e.replace(tt,"$1")}});var _t=Object.freeze({__proto__:null,parseLinkDestination:function(e,t,n){let r,i=t;const s={ok:!1,pos:0,str:""};if(60===e.charCodeAt(i)){for(i++;i<n;){if(r=e.charCodeAt(i),10===r)return s;if(60===r)return s;if(62===r)return s.pos=i+1,s.str=st(e.slice(t+1,i)),s.ok=!0,s;92===r&&i+1<n?i+=2:i++}return s}let a=0;for(;i<n&&(r=e.charCodeAt(i),32!==r)&&!(r<32||127===r);)if(92===r&&i+1<n){if(32===e.charCodeAt(i+1))break;i+=2}else{if(40===r&&(a++,a>32))return s;if(41===r){if(0===a)break;a--}i++}return t===i||0!==a||(s.str=st(e.slice(t,i)),s.pos=i,s.ok=!0),s},parseLinkLabel:function(e,t,n){let r,i,s,a;const o=e.posMax,l=e.pos;for(e.pos=t+1,r=1;e.pos<o;){if(s=e.src.charCodeAt(e.pos),93===s&&(r--,0===r)){i=!0;break}if(a=e.pos,e.md.inline.skipToken(e),91===s)if(a===e.pos-1)r++;else if(n)return e.pos=l,-1}let c=-1;return i&&(c=e.pos),e.pos=l,c},parseLinkTitle:function(e,t,n,r){let i,s=t;const a={ok:!1,can_continue:!1,pos:0,str:"",marker:0};if(r)a.str=r.str,a.marker=r.marker;else{if(s>=n)return a;let r=e.charCodeAt(s);if(34!==r&&39!==r&&40!==r)return a;t++,s++,40===r&&(r=41),a.marker=r}for(;s<n;){if(i=e.charCodeAt(s),i===a.marker)return a.pos=s+1,a.str+=st(e.slice(t,s)),a.ok=!0,a;if(40===i&&41===a.marker)return a;92===i&&s+1<n&&s++,s++}return a.can_continue=!0,a.str+=st(e.slice(t,s)),a}});const kt={};function xt(){this.rules=Je({},kt)}function At(){this.__rules__=[],this.__cache__=null}function Ct(e,t,n){this.type=e,this.tag=t,this.attrs=null,this.map=null,this.nesting=n,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}function Dt(e,t,n){this.src=e,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=t}kt.code_inline=function(e,t,n,r,i){const s=e[t];return"<code"+i.renderAttrs(s)+">"+ut(s.content)+"</code>"},kt.code_block=function(e,t,n,r,i){const s=e[t];return"<pre"+i.renderAttrs(s)+"><code>"+ut(e[t].content)+"</code></pre>\n"},kt.fence=function(e,t,n,r,i){const s=e[t],a=s.info?st(s.info).trim():"";let o,l="",c="";if(a){const e=a.split(/(\s+)/g);l=e[0],c=e.slice(2).join("")}if(o=n.highlight&&n.highlight(s.content,l,c)||ut(s.content),0===o.indexOf("<pre"))return o+"\n";if(a){const e=s.attrIndex("class"),t=s.attrs?s.attrs.slice():[];e<0?t.push(["class",n.langPrefix+l]):(t[e]=t[e].slice(),t[e][1]+=" "+n.langPrefix+l);const r={attrs:t};return`<pre><code${i.renderAttrs(r)}>${o}</code></pre>\n`}return`<pre><code${i.renderAttrs(s)}>${o}</code></pre>\n`},kt.image=function(e,t,n,r,i){const s=e[t];return s.attrs[s.attrIndex("alt")][1]=i.renderInlineAsText(s.children,n,r),i.renderToken(e,t,n)},kt.hardbreak=function(e,t,n){return n.xhtmlOut?"<br />\n":"<br>\n"},kt.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?"<br />\n":"<br>\n":"\n"},kt.text=function(e,t){return ut(e[t].content)},kt.html_block=function(e,t){return e[t].content},kt.html_inline=function(e,t){return e[t].content},xt.prototype.renderAttrs=function(e){let t,n,r;if(!e.attrs)return"";for(r="",t=0,n=e.attrs.length;t<n;t++)r+=" "+ut(e.attrs[t][0])+'="'+ut(e.attrs[t][1])+'"';return r},xt.prototype.renderToken=function(e,t,n){const r=e[t];let i="";if(r.hidden)return"";r.block&&-1!==r.nesting&&t&&e[t-1].hidden&&(i+="\n"),i+=(-1===r.nesting?"</":"<")+r.tag,i+=this.renderAttrs(r),0===r.nesting&&n.xhtmlOut&&(i+=" /");let s=!1;if(r.block&&(s=!0,1===r.nesting&&t+1<e.length)){const n=e[t+1];("inline"===n.type||n.hidden||-1===n.nesting&&n.tag===r.tag)&&(s=!1)}return i+=s?">\n":">",i},xt.prototype.renderInline=function(e,t,n){let r="";const i=this.rules;for(let s=0,a=e.length;s<a;s++){const a=e[s].type;void 0!==i[a]?r+=i[a](e,s,t,n,this):r+=this.renderToken(e,s,t)}return r},xt.prototype.renderInlineAsText=function(e,t,n){let r="";for(let i=0,s=e.length;i<s;i++)switch(e[i].type){case"text":case"html_inline":case"html_block":r+=e[i].content;break;case"image":r+=this.renderInlineAsText(e[i].children,t,n);break;case"softbreak":case"hardbreak":r+="\n"}return r},xt.prototype.render=function(e,t,n){let r="";const i=this.rules;for(let s=0,a=e.length;s<a;s++){const a=e[s].type;"inline"===a?r+=this.renderInline(e[s].children,t,n):void 0!==i[a]?r+=i[a](e,s,t,n,this):r+=this.renderToken(e,s,t,n)}return r},At.prototype.__find__=function(e){for(let t=0;t<this.__rules__.length;t++)if(this.__rules__[t].name===e)return t;return-1},At.prototype.__compile__=function(){const e=this,t=[""];e.__rules__.forEach(function(e){e.enabled&&e.alt.forEach(function(e){t.indexOf(e)<0&&t.push(e)})}),e.__cache__={},t.forEach(function(t){e.__cache__[t]=[],e.__rules__.forEach(function(n){n.enabled&&(t&&n.alt.indexOf(t)<0||e.__cache__[t].push(n.fn))})})},At.prototype.at=function(e,t,n){const r=this.__find__(e),i=n||{};if(-1===r)throw new Error("Parser rule not found: "+e);this.__rules__[r].fn=t,this.__rules__[r].alt=i.alt||[],this.__cache__=null},At.prototype.before=function(e,t,n,r){const i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},At.prototype.after=function(e,t,n,r){const i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i+1,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},At.prototype.push=function(e,t,n){const r=n||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:r.alt||[]}),this.__cache__=null},At.prototype.enable=function(e,t){Array.isArray(e)||(e=[e]);const n=[];return e.forEach(function(e){const r=this.__find__(e);if(r<0){if(t)return;throw new Error("Rules manager: invalid rule name "+e)}this.__rules__[r].enabled=!0,n.push(e)},this),this.__cache__=null,n},At.prototype.enableOnly=function(e,t){Array.isArray(e)||(e=[e]),this.__rules__.forEach(function(e){e.enabled=!1}),this.enable(e,t)},At.prototype.disable=function(e,t){Array.isArray(e)||(e=[e]);const n=[];return e.forEach(function(e){const r=this.__find__(e);if(r<0){if(t)return;throw new Error("Rules manager: invalid rule name "+e)}this.__rules__[r].enabled=!1,n.push(e)},this),this.__cache__=null,n},At.prototype.getRules=function(e){return null===this.__cache__&&this.__compile__(),this.__cache__[e]||[]},Ct.prototype.attrIndex=function(e){if(!this.attrs)return-1;const t=this.attrs;for(let n=0,r=t.length;n<r;n++)if(t[n][0]===e)return n;return-1},Ct.prototype.attrPush=function(e){this.attrs?this.attrs.push(e):this.attrs=[e]},Ct.prototype.attrSet=function(e,t){const n=this.attrIndex(e),r=[e,t];n<0?this.attrPush(r):this.attrs[n]=r},Ct.prototype.attrGet=function(e){const t=this.attrIndex(e);let n=null;return t>=0&&(n=this.attrs[t][1]),n},Ct.prototype.attrJoin=function(e,t){const n=this.attrIndex(e);n<0?this.attrPush([e,t]):this.attrs[n][1]=this.attrs[n][1]+" "+t},Dt.prototype.Token=Ct;const St=/\r\n?|\n/g,Nt=/\0/g;function Tt(e){return/^<a[>\s]/i.test(e)}function Lt(e){return/^<\/a\s*>/i.test(e)}const It=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,Ft=/\((c|tm|r)\)/i,zt=/\((c|tm|r)\)/gi,Mt={c:"©",r:"®",tm:"™"};function Ot(e,t){return Mt[t.toLowerCase()]}function Bt(e){let t=0;for(let n=e.length-1;n>=0;n--){const r=e[n];"text"!==r.type||t||(r.content=r.content.replace(zt,Ot)),"link_open"===r.type&&"auto"===r.info&&t--,"link_close"===r.type&&"auto"===r.info&&t++}}function Rt(e){let t=0;for(let n=e.length-1;n>=0;n--){const r=e[n];"text"!==r.type||t||It.test(r.content)&&(r.content=r.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/gm,"$1—").replace(/(^|\s)--(?=\s|$)/gm,"$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,"$1–")),"link_open"===r.type&&"auto"===r.info&&t--,"link_close"===r.type&&"auto"===r.info&&t++}}const $t=/['"]/,jt=/['"]/g;function Pt(e,t,n,r){e[t]||(e[t]=[]),e[t].push({pos:n,ch:r})}function Ht(e,t){let n;const r=[],i={};for(let s=0;s<e.length;s++){const a=e[s],o=e[s].level;for(n=r.length-1;n>=0&&!(r[n].level<=o);n--);if(r.length=n+1,"text"!==a.type)continue;const l=a.content;let c=0;const u=l.length;e:for(;c<u;){jt.lastIndex=c;const a=jt.exec(l);if(!a)break;let d=!0,h=!0;c=a.index+1;const p="'"===a[0];let m=32;if(a.index-1>=0)m=l.charCodeAt(a.index-1);else for(n=s-1;n>=0&&("softbreak"!==e[n].type&&"hardbreak"!==e[n].type);n--)if(e[n].content){m=e[n].content.charCodeAt(e[n].content.length-1);break}let f=32;if(c<u)f=l.charCodeAt(c);else for(n=s+1;n<e.length&&("softbreak"!==e[n].type&&"hardbreak"!==e[n].type);n++)if(e[n].content){f=e[n].content.charCodeAt(0);break}const g=gt(m)||ft(m),b=gt(f)||ft(f),y=pt(m),v=pt(f);if(v?d=!1:b&&(y||g||(d=!1)),y?h=!1:g&&(v||b||(h=!1)),34===f&&'"'===a[0]&&m>=48&&m<=57&&(h=d=!1),d&&h&&(d=g,h=b),d||h){if(h)for(n=r.length-1;n>=0;n--){let e=r[n];if(r[n].level<o)break;if(e.single===p&&r[n].level===o){let o,l;e=r[n],p?(o=t.md.options.quotes[2],l=t.md.options.quotes[3]):(o=t.md.options.quotes[0],l=t.md.options.quotes[1]),Pt(i,s,a.index,l),Pt(i,e.token,e.pos,o),r.length=n;continue e}}d?r.push({token:s,pos:a.index,single:p,level:o}):h&&p&&Pt(i,s,a.index,"’")}else p&&Pt(i,s,a.index,"’")}}Object.keys(i).forEach(function(t){e[t].content=function(e,t){let n="",r=0;t.sort((e,t)=>e.pos-t.pos);for(let i=0;i<t.length;i++){const s=t[i];n+=e.slice(r,s.pos)+s.ch,r=s.pos+1}return n+e.slice(r)}(e[t].content,i[t])})}const qt=[["normalize",function(e){let t;t=e.src.replace(St,"\n"),t=t.replace(Nt,"�"),e.src=t}],["block",function(e){let t;e.inlineMode?(t=new e.Token("inline","",0),t.content=e.src,t.map=[0,1],t.children=[],e.tokens.push(t)):e.md.block.parse(e.src,e.md,e.env,e.tokens)}],["inline",function(e){const t=e.tokens;for(let n=0,r=t.length;n<r;n++){const r=t[n];"inline"===r.type&&e.md.inline.parse(r.content,e.md,e.env,r.children)}}],["linkify",function(e){const t=e.tokens;if(e.md.options.linkify)for(let n=0,r=t.length;n<r;n++){if("inline"!==t[n].type||!e.md.linkify.pretest(t[n].content))continue;let r=t[n].children,i=0;for(let s=r.length-1;s>=0;s--){const a=r[s];if("link_close"!==a.type){if("html_inline"===a.type&&(Tt(a.content)&&i>0&&i--,Lt(a.content)&&i++),!(i>0)&&"text"===a.type&&e.md.linkify.test(a.content)){const i=a.content;let o=e.md.linkify.match(i);const l=[];let c=a.level,u=0;o.length>0&&0===o[0].index&&s>0&&"text_special"===r[s-1].type&&(o=o.slice(1));for(let t=0;t<o.length;t++){const n=o[t].url,r=e.md.normalizeLink(n);if(!e.md.validateLink(r))continue;let s=o[t].text;s=o[t].schema?"mailto:"!==o[t].schema||/^mailto:/i.test(s)?e.md.normalizeLinkText(s):e.md.normalizeLinkText("mailto:"+s).replace(/^mailto:/,""):e.md.normalizeLinkText("http://"+s).replace(/^http:\/\//,"");const a=o[t].index;if(a>u){const t=new e.Token("text","",0);t.content=i.slice(u,a),t.level=c,l.push(t)}const d=new e.Token("link_open","a",1);d.attrs=[["href",r]],d.level=c++,d.markup="linkify",d.info="auto",l.push(d);const h=new e.Token("text","",0);h.content=s,h.level=c,l.push(h);const p=new e.Token("link_close","a",-1);p.level=--c,p.markup="linkify",p.info="auto",l.push(p),u=o[t].lastIndex}if(u<i.length){const t=new e.Token("text","",0);t.content=i.slice(u),t.level=c,l.push(t)}t[n].children=r=Qe(r,s,l)}}else for(s--;r[s].level!==a.level&&"link_open"!==r[s].type;)s--}}}],["replacements",function(e){let t;if(e.md.options.typographer)for(t=e.tokens.length-1;t>=0;t--)"inline"===e.tokens[t].type&&(Ft.test(e.tokens[t].content)&&Bt(e.tokens[t].children),It.test(e.tokens[t].content)&&Rt(e.tokens[t].children))}],["smartquotes",function(e){if(e.md.options.typographer)for(let t=e.tokens.length-1;t>=0;t--)"inline"===e.tokens[t].type&&$t.test(e.tokens[t].content)&&Ht(e.tokens[t].children,e)}],["text_join",function(e){let t,n;const r=e.tokens,i=r.length;for(let e=0;e<i;e++){if("inline"!==r[e].type)continue;const i=r[e].children,s=i.length;for(t=0;t<s;t++)"text_special"===i[t].type&&(i[t].type="text");for(t=n=0;t<s;t++)"text"===i[t].type&&t+1<s&&"text"===i[t+1].type?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}}]];function Vt(){this.ruler=new At;for(let e=0;e<qt.length;e++)this.ruler.push(qt[e][0],qt[e][1])}function Ut(e,t,n,r){this.src=e,this.md=t,this.env=n,this.tokens=r,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType="root",this.level=0;const i=this.src;for(let e=0,t=0,n=0,r=0,s=i.length,a=!1;t<s;t++){const o=i.charCodeAt(t);if(!a){if(ht(o)){n++,9===o?r+=4-r%4:r++;continue}a=!0}10!==o&&t!==s-1||(10!==o&&t++,this.bMarks.push(e),this.eMarks.push(t),this.tShift.push(n),this.sCount.push(r),this.bsCount.push(0),a=!1,n=0,r=0,e=t+1)}this.bMarks.push(i.length),this.eMarks.push(i.length),this.tShift.push(0),this.sCount.push(0),this.bsCount.push(0),this.lineMax=this.bMarks.length-1}Vt.prototype.process=function(e){const t=this.ruler.getRules("");for(let n=0,r=t.length;n<r;n++)t[n](e)},Vt.prototype.State=Dt,Ut.prototype.push=function(e,t,n){const r=new Ct(e,t,n);return r.block=!0,n<0&&this.level--,r.level=this.level,n>0&&this.level++,this.tokens.push(r),r},Ut.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},Ut.prototype.skipEmptyLines=function(e){for(let t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},Ut.prototype.skipSpaces=function(e){for(let t=this.src.length;e<t;e++){if(!ht(this.src.charCodeAt(e)))break}return e},Ut.prototype.skipSpacesBack=function(e,t){if(e<=t)return e;for(;e>t;)if(!ht(this.src.charCodeAt(--e)))return e+1;return e},Ut.prototype.skipChars=function(e,t){for(let n=this.src.length;e<n&&this.src.charCodeAt(e)===t;e++);return e},Ut.prototype.skipCharsBack=function(e,t,n){if(e<=n)return e;for(;e>n;)if(t!==this.src.charCodeAt(--e))return e+1;return e},Ut.prototype.getLines=function(e,t,n,r){if(e>=t)return"";const i=new Array(t-e);for(let s=0,a=e;a<t;a++,s++){let e=0;const o=this.bMarks[a];let l,c=o;for(l=a+1<t||r?this.eMarks[a]+1:this.eMarks[a];c<l&&e<n;){const t=this.src.charCodeAt(c);if(ht(t))9===t?e+=4-(e+this.bsCount[a])%4:e++;else{if(!(c-o<this.tShift[a]))break;e++}c++}i[s]=e>n?new Array(e-n+1).join(" ")+this.src.slice(c,l):this.src.slice(c,l)}return i.join("")},Ut.prototype.Token=Ct;function Zt(e,t){const n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];return e.src.slice(n,r)}function Kt(e){const t=[],n=e.length;let r=0,i=e.charCodeAt(r),s=!1,a=0,o="";for(;r<n;)124===i&&(s?(o+=e.substring(a,r-1),a=r):(t.push(o+e.substring(a,r)),o="",a=r+1)),s=92===i,r++,i=e.charCodeAt(r);return t.push(o+e.substring(a)),t}function Wt(e,t){const n=e.eMarks[t];let r=e.bMarks[t]+e.tShift[t];const i=e.src.charCodeAt(r++);if(42!==i&&45!==i&&43!==i)return-1;if(r<n){if(!ht(e.src.charCodeAt(r)))return-1}return r}function Gt(e,t){const n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];let i=n;if(i+1>=r)return-1;let s=e.src.charCodeAt(i++);if(s<48||s>57)return-1;for(;;){if(i>=r)return-1;if(s=e.src.charCodeAt(i++),!(s>=48&&s<=57)){if(41===s||46===s)break;return-1}if(i-n>=10)return-1}return i<r&&(s=e.src.charCodeAt(i),!ht(s))?-1:i}const Xt="<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^\"'=<>`\\x00-\\x20]+|'[^']*'|\"[^\"]*\"))?)*\\s*\\/?>",Jt="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",Qt=new RegExp("^(?:"+Xt+"|"+Jt+"|\x3c!---?>|\x3c!--(?:[^-]|-[^-]|--[^>])*--\x3e|<[?][\\s\\S]*?[?]>|<![A-Za-z][^>]*>|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>)"),Yt=new RegExp("^(?:"+Xt+"|"+Jt+")"),en=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[new RegExp("^</?("+["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"].join("|")+")(?=(\\s|/?>|$))","i"),/^$/,!0],[new RegExp(Yt.source+"\\s*$"),/^$/,!1]];const tn=[["table",function(e,t,n,r){if(t+2>n)return!1;let i=t+1;if(e.sCount[i]<e.blkIndent)return!1;if(e.sCount[i]-e.blkIndent>=4)return!1;let s=e.bMarks[i]+e.tShift[i];if(s>=e.eMarks[i])return!1;const a=e.src.charCodeAt(s++);if(124!==a&&45!==a&&58!==a)return!1;if(s>=e.eMarks[i])return!1;const o=e.src.charCodeAt(s++);if(124!==o&&45!==o&&58!==o&&!ht(o))return!1;if(45===a&&ht(o))return!1;for(;s<e.eMarks[i];){const t=e.src.charCodeAt(s);if(124!==t&&45!==t&&58!==t&&!ht(t))return!1;s++}let l=Zt(e,t+1),c=l.split("|");const u=[];for(let e=0;e<c.length;e++){const t=c[e].trim();if(!t){if(0===e||e===c.length-1)continue;return!1}if(!/^:?-+:?$/.test(t))return!1;58===t.charCodeAt(t.length-1)?u.push(58===t.charCodeAt(0)?"center":"right"):58===t.charCodeAt(0)?u.push("left"):u.push("")}if(l=Zt(e,t).trim(),-1===l.indexOf("|"))return!1;if(e.sCount[t]-e.blkIndent>=4)return!1;c=Kt(l),c.length&&""===c[0]&&c.shift(),c.length&&""===c[c.length-1]&&c.pop();const d=c.length;if(0===d||d!==u.length)return!1;if(r)return!0;const h=e.parentType;e.parentType="table";const p=e.md.block.ruler.getRules("blockquote"),m=[t,0];e.push("table_open","table",1).map=m,e.push("thead_open","thead",1).map=[t,t+1],e.push("tr_open","tr",1).map=[t,t+1];for(let t=0;t<c.length;t++){const n=e.push("th_open","th",1);u[t]&&(n.attrs=[["style","text-align:"+u[t]]]);const r=e.push("inline","",0);r.content=c[t].trim(),r.children=[],e.push("th_close","th",-1)}let f;e.push("tr_close","tr",-1),e.push("thead_close","thead",-1);let g=0;for(i=t+2;i<n&&!(e.sCount[i]<e.blkIndent);i++){let r=!1;for(let t=0,s=p.length;t<s;t++)if(p[t](e,i,n,!0)){r=!0;break}if(r)break;if(l=Zt(e,i).trim(),!l)break;if(e.sCount[i]-e.blkIndent>=4)break;if(c=Kt(l),c.length&&""===c[0]&&c.shift(),c.length&&""===c[c.length-1]&&c.pop(),g+=d-c.length,g>65536)break;if(i===t+2){e.push("tbody_open","tbody",1).map=f=[t+2,0]}e.push("tr_open","tr",1).map=[i,i+1];for(let t=0;t<d;t++){const n=e.push("td_open","td",1);u[t]&&(n.attrs=[["style","text-align:"+u[t]]]);const r=e.push("inline","",0);r.content=c[t]?c[t].trim():"",r.children=[],e.push("td_close","td",-1)}e.push("tr_close","tr",-1)}return f&&(e.push("tbody_close","tbody",-1),f[1]=i),e.push("table_close","table",-1),m[1]=i,e.parentType=h,e.line=i,!0},["paragraph","reference"]],["code",function(e,t,n){if(e.sCount[t]-e.blkIndent<4)return!1;let r=t+1,i=r;for(;r<n;)if(e.isEmpty(r))r++;else{if(!(e.sCount[r]-e.blkIndent>=4))break;r++,i=r}e.line=i;const s=e.push("code_block","code",0);return s.content=e.getLines(t,i,4+e.blkIndent,!1)+"\n",s.map=[t,e.line],!0}],["fence",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;if(i+3>s)return!1;const a=e.src.charCodeAt(i);if(126!==a&&96!==a)return!1;let o=i;i=e.skipChars(i,a);let l=i-o;if(l<3)return!1;const c=e.src.slice(o,i),u=e.src.slice(i,s);if(96===a&&u.indexOf(String.fromCharCode(a))>=0)return!1;if(r)return!0;let d=t,h=!1;for(;(d++,!(d>=n))&&(i=o=e.bMarks[d]+e.tShift[d],s=e.eMarks[d],!(i<s&&e.sCount[d]<e.blkIndent));)if(e.src.charCodeAt(i)===a&&!(e.sCount[d]-e.blkIndent>=4||(i=e.skipChars(i,a),i-o<l||(i=e.skipSpaces(i),i<s)))){h=!0;break}l=e.sCount[t],e.line=d+(h?1:0);const p=e.push("fence","code",0);return p.info=u,p.content=e.getLines(t+1,d,l,!0),p.markup=c,p.map=[t,e.line],!0},["paragraph","reference","blockquote","list"]],["blockquote",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];const a=e.lineMax;if(e.sCount[t]-e.blkIndent>=4)return!1;if(62!==e.src.charCodeAt(i))return!1;if(r)return!0;const o=[],l=[],c=[],u=[],d=e.md.block.ruler.getRules("blockquote"),h=e.parentType;e.parentType="blockquote";let p,m=!1;for(p=t;p<n;p++){const t=e.sCount[p]<e.blkIndent;if(i=e.bMarks[p]+e.tShift[p],s=e.eMarks[p],i>=s)break;if(62===e.src.charCodeAt(i++)&&!t){let t,n,r=e.sCount[p]+1;32===e.src.charCodeAt(i)?(i++,r++,n=!1,t=!0):9===e.src.charCodeAt(i)?(t=!0,(e.bsCount[p]+r)%4==3?(i++,r++,n=!1):n=!0):t=!1;let a=r;for(o.push(e.bMarks[p]),e.bMarks[p]=i;i<s;){const t=e.src.charCodeAt(i);if(!ht(t))break;9===t?a+=4-(a+e.bsCount[p]+(n?1:0))%4:a++,i++}m=i>=s,l.push(e.bsCount[p]),e.bsCount[p]=e.sCount[p]+1+(t?1:0),c.push(e.sCount[p]),e.sCount[p]=a-r,u.push(e.tShift[p]),e.tShift[p]=i-e.bMarks[p];continue}if(m)break;let r=!1;for(let t=0,i=d.length;t<i;t++)if(d[t](e,p,n,!0)){r=!0;break}if(r){e.lineMax=p,0!==e.blkIndent&&(o.push(e.bMarks[p]),l.push(e.bsCount[p]),u.push(e.tShift[p]),c.push(e.sCount[p]),e.sCount[p]-=e.blkIndent);break}o.push(e.bMarks[p]),l.push(e.bsCount[p]),u.push(e.tShift[p]),c.push(e.sCount[p]),e.sCount[p]=-1}const f=e.blkIndent;e.blkIndent=0;const g=e.push("blockquote_open","blockquote",1);g.markup=">";const b=[t,0];g.map=b,e.md.block.tokenize(e,t,p),e.push("blockquote_close","blockquote",-1).markup=">",e.lineMax=a,e.parentType=h,b[1]=e.line;for(let n=0;n<u.length;n++)e.bMarks[n+t]=o[n],e.tShift[n+t]=u[n],e.sCount[n+t]=c[n],e.bsCount[n+t]=l[n];return e.blkIndent=f,!0},["paragraph","reference","blockquote","list"]],["hr",function(e,t,n,r){const i=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let s=e.bMarks[t]+e.tShift[t];const a=e.src.charCodeAt(s++);if(42!==a&&45!==a&&95!==a)return!1;let o=1;for(;s<i;){const t=e.src.charCodeAt(s++);if(t!==a&&!ht(t))return!1;t===a&&o++}if(o<3)return!1;if(r)return!0;e.line=t+1;const l=e.push("hr","hr",0);return l.map=[t,e.line],l.markup=Array(o+1).join(String.fromCharCode(a)),!0},["paragraph","reference","blockquote","list"]],["list",function(e,t,n,r){let i,s,a,o,l=t,c=!0;if(e.sCount[l]-e.blkIndent>=4)return!1;if(e.listIndent>=0&&e.sCount[l]-e.listIndent>=4&&e.sCount[l]<e.blkIndent)return!1;let u,d,h,p=!1;if(r&&"paragraph"===e.parentType&&e.sCount[l]>=e.blkIndent&&(p=!0),(h=Gt(e,l))>=0){if(u=!0,a=e.bMarks[l]+e.tShift[l],d=Number(e.src.slice(a,h-1)),p&&1!==d)return!1}else{if(!((h=Wt(e,l))>=0))return!1;u=!1}if(p&&e.skipSpaces(h)>=e.eMarks[l])return!1;if(r)return!0;const m=e.src.charCodeAt(h-1),f=e.tokens.length;u?(o=e.push("ordered_list_open","ol",1),1!==d&&(o.attrs=[["start",d]])):o=e.push("bullet_list_open","ul",1);const g=[l,0];o.map=g,o.markup=String.fromCharCode(m);let b=!1;const y=e.md.block.ruler.getRules("list"),v=e.parentType;for(e.parentType="list";l<n;){s=h,i=e.eMarks[l];const t=e.sCount[l]+h-(e.bMarks[l]+e.tShift[l]);let r=t;for(;s<i;){const t=e.src.charCodeAt(s);if(9===t)r+=4-(r+e.bsCount[l])%4;else{if(32!==t)break;r++}s++}const d=s;let p;p=d>=i?1:r-t,p>4&&(p=1);const f=t+p;o=e.push("list_item_open","li",1),o.markup=String.fromCharCode(m);const g=[l,0];o.map=g,u&&(o.info=e.src.slice(a,h-1));const v=e.tight,w=e.tShift[l],E=e.sCount[l],_=e.listIndent;if(e.listIndent=e.blkIndent,e.blkIndent=f,e.tight=!0,e.tShift[l]=d-e.bMarks[l],e.sCount[l]=r,d>=i&&e.isEmpty(l+1)?e.line=Math.min(e.line+2,n):e.md.block.tokenize(e,l,n,!0),e.tight&&!b||(c=!1),b=e.line-l>1&&e.isEmpty(e.line-1),e.blkIndent=e.listIndent,e.listIndent=_,e.tShift[l]=w,e.sCount[l]=E,e.tight=v,o=e.push("list_item_close","li",-1),o.markup=String.fromCharCode(m),l=e.line,g[1]=l,l>=n)break;if(e.sCount[l]<e.blkIndent)break;if(e.sCount[l]-e.blkIndent>=4)break;let k=!1;for(let t=0,r=y.length;t<r;t++)if(y[t](e,l,n,!0)){k=!0;break}if(k)break;if(u){if(h=Gt(e,l),h<0)break;a=e.bMarks[l]+e.tShift[l]}else if(h=Wt(e,l),h<0)break;if(m!==e.src.charCodeAt(h-1))break}return o=u?e.push("ordered_list_close","ol",-1):e.push("bullet_list_close","ul",-1),o.markup=String.fromCharCode(m),g[1]=l,e.line=l,e.parentType=v,c&&function(e,t){const n=e.level+2;for(let r=t+2,i=e.tokens.length-2;r<i;r++)e.tokens[r].level===n&&"paragraph_open"===e.tokens[r].type&&(e.tokens[r+2].hidden=!0,e.tokens[r].hidden=!0,r+=2)}(e,f),!0},["paragraph","reference","blockquote"]],["reference",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t],a=t+1;if(e.sCount[t]-e.blkIndent>=4)return!1;if(91!==e.src.charCodeAt(i))return!1;function o(t){const n=e.lineMax;if(t>=n||e.isEmpty(t))return null;let r=!1;if(e.sCount[t]-e.blkIndent>3&&(r=!0),e.sCount[t]<0&&(r=!0),!r){const r=e.md.block.ruler.getRules("reference"),i=e.parentType;e.parentType="reference";let s=!1;for(let i=0,a=r.length;i<a;i++)if(r[i](e,t,n,!0)){s=!0;break}if(e.parentType=i,s)return null}const i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];return e.src.slice(i,s+1)}let l=e.src.slice(i,s+1);s=l.length;let c=-1;for(i=1;i<s;i++){const e=l.charCodeAt(i);if(91===e)return!1;if(93===e){c=i;break}if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(92===e&&(i++,i<s&&10===l.charCodeAt(i))){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}}if(c<0||58!==l.charCodeAt(c+1))return!1;for(i=c+2;i<s;i++){const e=l.charCodeAt(i);if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(!ht(e))break}const u=e.md.helpers.parseLinkDestination(l,i,s);if(!u.ok)return!1;const d=e.md.normalizeLink(u.str);if(!e.md.validateLink(d))return!1;i=u.pos;const h=i,p=a,m=i;for(;i<s;i++){const e=l.charCodeAt(i);if(10===e){const e=o(a);null!==e&&(l+=e,s=l.length,a++)}else if(!ht(e))break}let f,g=e.md.helpers.parseLinkTitle(l,i,s);for(;g.can_continue;){const t=o(a);if(null===t)break;l+=t,i=s,s=l.length,a++,g=e.md.helpers.parseLinkTitle(l,i,s,g)}for(i<s&&m!==i&&g.ok?(f=g.str,i=g.pos):(f="",i=h,a=p);i<s;){if(!ht(l.charCodeAt(i)))break;i++}if(i<s&&10!==l.charCodeAt(i)&&f)for(f="",i=h,a=p;i<s;){if(!ht(l.charCodeAt(i)))break;i++}if(i<s&&10!==l.charCodeAt(i))return!1;const b=bt(l.slice(1,c));return!!b&&(r||(void 0===e.env.references&&(e.env.references={}),void 0===e.env.references[b]&&(e.env.references[b]={title:f,href:d}),e.line=a),!0)}],["html_block",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;if(!e.md.options.html)return!1;if(60!==e.src.charCodeAt(i))return!1;let a=e.src.slice(i,s),o=0;for(;o<en.length&&!en[o][0].test(a);o++);if(o===en.length)return!1;if(r)return en[o][2];let l=t+1;const c=en[o][1].test("");if(!en[o][1].test(a))for(;l<n&&(!(e.sCount[l]<e.blkIndent)||!c&&e.isEmpty(l));l++)if(i=e.bMarks[l]+e.tShift[l],s=e.eMarks[l],a=e.src.slice(i,s),en[o][1].test(a)){0!==a.length&&l++;break}e.line=l;const u=e.push("html_block","",0);return u.map=[t,l],u.content=e.getLines(t,l,e.blkIndent,!0),!0},["paragraph","reference","blockquote"]],["heading",function(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let a=e.src.charCodeAt(i);if(35!==a||i>=s)return!1;let o=1;for(a=e.src.charCodeAt(++i);35===a&&i<s&&o<=6;)o++,a=e.src.charCodeAt(++i);if(o>6||i<s&&!ht(a))return!1;if(r)return!0;s=e.skipSpacesBack(s,i);const l=e.skipCharsBack(s,35,i);l>i&&ht(e.src.charCodeAt(l-1))&&(s=l),e.line=t+1;const c=e.push("heading_open","h"+String(o),1);c.markup="########".slice(0,o),c.map=[t,e.line];const u=e.push("inline","",0);return u.content=vt(e.src.slice(i,s)),u.map=[t,e.line],u.children=[],e.push("heading_close","h"+String(o),-1).markup="########".slice(0,o),!0},["paragraph","reference","blockquote"]],["lheading",function(e,t,n){const r=e.md.block.ruler.getRules("paragraph");if(e.sCount[t]-e.blkIndent>=4)return!1;const i=e.parentType;e.parentType="paragraph";let s,a=0,o=t+1;for(;o<n&&!e.isEmpty(o);o++){if(e.sCount[o]-e.blkIndent>3)continue;if(e.sCount[o]>=e.blkIndent){let t=e.bMarks[o]+e.tShift[o];const n=e.eMarks[o];if(t<n&&(s=e.src.charCodeAt(t),(45===s||61===s)&&(t=e.skipChars(t,s),t=e.skipSpaces(t),t>=n))){a=61===s?1:2;break}}if(e.sCount[o]<0)continue;let t=!1;for(let i=0,s=r.length;i<s;i++)if(r[i](e,o,n,!0)){t=!0;break}if(t)break}if(!a)return e.parentType=i,!1;const l=vt(e.getLines(t,o,e.blkIndent,!1));e.line=o+1;const c=e.push("heading_open","h"+String(a),1);c.markup=String.fromCharCode(s),c.map=[t,e.line];const u=e.push("inline","",0);return u.content=l,u.map=[t,e.line-1],u.children=[],e.push("heading_close","h"+String(a),-1).markup=String.fromCharCode(s),e.parentType=i,!0}],["paragraph",function(e,t,n){const r=e.md.block.ruler.getRules("paragraph"),i=e.parentType;let s=t+1;for(e.parentType="paragraph";s<n&&!e.isEmpty(s);s++){if(e.sCount[s]-e.blkIndent>3)continue;if(e.sCount[s]<0)continue;let t=!1;for(let i=0,a=r.length;i<a;i++)if(r[i](e,s,n,!0)){t=!0;break}if(t)break}const a=vt(e.getLines(t,s,e.blkIndent,!1));e.line=s,e.push("paragraph_open","p",1).map=[t,e.line];const o=e.push("inline","",0);return o.content=a,o.map=[t,e.line],o.children=[],e.push("paragraph_close","p",-1),e.parentType=i,!0}]];function nn(){this.ruler=new At;for(let e=0;e<tn.length;e++)this.ruler.push(tn[e][0],tn[e][1],{alt:(tn[e][2]||[]).slice()})}function rn(e,t,n,r){this.src=e,this.env=n,this.md=t,this.tokens=r,this.tokens_meta=Array(r.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}function sn(e){switch(e){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}nn.prototype.tokenize=function(e,t,n){const r=this.ruler.getRules(""),i=r.length,s=e.md.options.maxNesting;let a=t,o=!1;for(;a<n&&(e.line=a=e.skipEmptyLines(a),!(a>=n))&&!(e.sCount[a]<e.blkIndent);){if(e.level>=s){e.line=n;break}const t=e.line;let l=!1;for(let s=0;s<i;s++)if(l=r[s](e,a,n,!1),l){if(t>=e.line)throw new Error("block rule didn't increment state.line");break}if(!l)throw new Error("none of the block rules matched");e.tight=!o,e.isEmpty(e.line-1)&&(o=!0),a=e.line,a<n&&e.isEmpty(a)&&(o=!0,a++,e.line=a)}},nn.prototype.parse=function(e,t,n,r){if(!e)return;const i=new this.State(e,t,n,r);this.tokenize(i,i.line,i.lineMax)},nn.prototype.State=Ut,rn.prototype.pushPending=function(){const e=new Ct("text","",0);return e.content=this.pending,e.level=this.pendingLevel,this.tokens.push(e),this.pending="",e},rn.prototype.push=function(e,t,n){this.pending&&this.pushPending();const r=new Ct(e,t,n);let i=null;return n<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),r.level=this.level,n>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],i={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(r),this.tokens_meta.push(i),r},rn.prototype.scanDelims=function(e,t){const n=this.posMax,r=this.src.charCodeAt(e);let i;if(0===e)i=32;else if(1===e)i=this.src.charCodeAt(0),55296==(63488&i)&&(i=65533);else if(i=this.src.charCodeAt(e-1),56320==(64512&i)){const t=this.src.charCodeAt(e-2);i=55296==(64512&t)?65536+(t-55296<<10)+(i-56320):65533}else 55296==(64512&i)&&(i=65533);let s=e;for(;s<n&&this.src.charCodeAt(s)===r;)s++;const a=s-e;let o=s<n?this.src.charCodeAt(s):32;if(55296==(64512&o)){const e=this.src.charCodeAt(s+1);o=56320==(64512&e)?65536+(o-55296<<10)+(e-56320):65533}else 56320==(64512&o)&&(o=65533);const l=gt(i)||ft(i),c=gt(o)||ft(o),u=pt(i),d=pt(o),h=!d&&(!c||u||l),p=!u&&(!l||d||c);return{can_open:h&&(t||!p||l),can_close:p&&(t||!h||c),length:a}},rn.prototype.Token=Ct;const an=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;const on=[];for(let e=0;e<256;e++)on.push(0);function ln(e,t){let n;const r=[],i=t.length;for(let s=0;s<i;s++){const i=t[s];if(126!==i.marker)continue;if(-1===i.end)continue;const a=t[i.end];n=e.tokens[i.token],n.type="s_open",n.tag="s",n.nesting=1,n.markup="~~",n.content="",n=e.tokens[a.token],n.type="s_close",n.tag="s",n.nesting=-1,n.markup="~~",n.content="","text"===e.tokens[a.token-1].type&&"~"===e.tokens[a.token-1].content&&r.push(a.token-1)}for(;r.length;){const t=r.pop();let i=t+1;for(;i<e.tokens.length&&"s_close"===e.tokens[i].type;)i++;i--,t!==i&&(n=e.tokens[i],e.tokens[i]=e.tokens[t],e.tokens[t]=n)}}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(e){on[e.charCodeAt(0)]=1});var cn={tokenize:function(e,t){const n=e.pos,r=e.src.charCodeAt(n);if(t)return!1;if(126!==r)return!1;const i=e.scanDelims(e.pos,!0);let s=i.length;const a=String.fromCharCode(r);if(s<2)return!1;let o;s%2&&(o=e.push("text","",0),o.content=a,s--);for(let t=0;t<s;t+=2)o=e.push("text","",0),o.content=a+a,e.delimiters.push({marker:r,length:0,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close});return e.pos+=i.length,!0},postProcess:function(e){const t=e.tokens_meta,n=e.tokens_meta.length;ln(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&ln(e,t[r].delimiters)}};function un(e,t){for(let n=t.length-1;n>=0;n--){const r=t[n];if(95!==r.marker&&42!==r.marker)continue;if(-1===r.end)continue;const i=t[r.end],s=n>0&&t[n-1].end===r.end+1&&t[n-1].marker===r.marker&&t[n-1].token===r.token-1&&t[r.end+1].token===i.token+1,a=String.fromCharCode(r.marker),o=e.tokens[r.token];o.type=s?"strong_open":"em_open",o.tag=s?"strong":"em",o.nesting=1,o.markup=s?a+a:a,o.content="";const l=e.tokens[i.token];l.type=s?"strong_close":"em_close",l.tag=s?"strong":"em",l.nesting=-1,l.markup=s?a+a:a,l.content="",s&&(e.tokens[t[n-1].token].content="",e.tokens[t[r.end+1].token].content="",n--)}}var dn={tokenize:function(e,t){const n=e.pos,r=e.src.charCodeAt(n);if(t)return!1;if(95!==r&&42!==r)return!1;const i=e.scanDelims(e.pos,42===r);for(let t=0;t<i.length;t++){e.push("text","",0).content=String.fromCharCode(r),e.delimiters.push({marker:r,length:i.length,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close})}return e.pos+=i.length,!0},postProcess:function(e){const t=e.tokens_meta,n=e.tokens_meta.length;un(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&un(e,t[r].delimiters)}};const hn=/^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,pn=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;const mn=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,fn=/^&([a-z][a-z0-9]{1,31});/i;function gn(e){const t={},n=e.length;if(!n)return;let r=0,i=-2;const s=[];for(let a=0;a<n;a++){const n=e[a];if(s.push(0),e[r].marker===n.marker&&i===n.token-1||(r=a),i=n.token,n.length=n.length||0,!n.close)continue;t.hasOwnProperty(n.marker)||(t[n.marker]=[-1,-1,-1,-1,-1,-1]);const o=t[n.marker][(n.open?3:0)+n.length%3];let l=r-s[r]-1,c=l;for(;l>o;l-=s[l]+1){const t=e[l];if(t.marker===n.marker&&(t.open&&t.end<0)){let r=!1;if((t.close||n.open)&&(t.length+n.length)%3==0&&(t.length%3==0&&n.length%3==0||(r=!0)),!r){const r=l>0&&!e[l-1].open?s[l-1]+1:0;s[a]=a-l+r,s[l]=r,n.open=!1,t.end=a,t.close=!1,c=-1,i=-2;break}}}-1!==c&&(t[n.marker][(n.open?3:0)+(n.length||0)%3]=c)}}const bn=[["text",function(e,t){let n=e.pos;for(;n<e.posMax&&!sn(e.src.charCodeAt(n));)n++;return n!==e.pos&&(t||(e.pending+=e.src.slice(e.pos,n)),e.pos=n,!0)}],["linkify",function(e,t){if(!e.md.options.linkify)return!1;if(e.linkLevel>0)return!1;const n=e.pos;if(n+3>e.posMax)return!1;if(58!==e.src.charCodeAt(n))return!1;if(47!==e.src.charCodeAt(n+1))return!1;if(47!==e.src.charCodeAt(n+2))return!1;const r=e.pending.match(an);if(!r)return!1;const i=r[1],s=e.md.linkify.matchAtStart(e.src.slice(n-i.length));if(!s)return!1;let a=s.url;if(a.length<=i.length)return!1;let o=a.length;for(;o>0&&42===a.charCodeAt(o-1);)o--;o!==a.length&&(a=a.slice(0,o));const l=e.md.normalizeLink(a);if(!e.md.validateLink(l))return!1;if(!t){e.pending=e.pending.slice(0,-i.length);const t=e.push("link_open","a",1);t.attrs=[["href",l]],t.markup="linkify",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(a);const n=e.push("link_close","a",-1);n.markup="linkify",n.info="auto"}return e.pos+=a.length-i.length,!0}],["newline",function(e,t){let n=e.pos;if(10!==e.src.charCodeAt(n))return!1;const r=e.pending.length-1,i=e.posMax;if(!t)if(r>=0&&32===e.pending.charCodeAt(r))if(r>=1&&32===e.pending.charCodeAt(r-1)){let t=r-1;for(;t>=1&&32===e.pending.charCodeAt(t-1);)t--;e.pending=e.pending.slice(0,t),e.push("hardbreak","br",0)}else e.pending=e.pending.slice(0,-1),e.push("softbreak","br",0);else e.push("softbreak","br",0);for(n++;n<i&&ht(e.src.charCodeAt(n));)n++;return e.pos=n,!0}],["escape",function(e,t){let n=e.pos;const r=e.posMax;if(92!==e.src.charCodeAt(n))return!1;if(n++,n>=r)return!1;let i=e.src.charCodeAt(n);if(10===i){for(t||e.push("hardbreak","br",0),n++;n<r&&(i=e.src.charCodeAt(n),ht(i));)n++;return e.pos=n,!0}if(32===i){if(!t){const t=e.push("text_special","",0);t.content="\\",t.markup="\\",t.info="escape"}return e.pos=n,!0}let s=e.src[n];if(i>=55296&&i<=56319&&n+1<r){const t=e.src.charCodeAt(n+1);t>=56320&&t<=57343&&(s+=e.src[n+1],n++)}const a="\\"+s;if(!t){const t=e.push("text_special","",0);i<256&&0!==on[i]?t.content=s:t.content=a,t.markup=a,t.info="escape"}return e.pos=n+1,!0}],["backticks",function(e,t){let n=e.pos;if(96!==e.src.charCodeAt(n))return!1;const r=n;n++;const i=e.posMax;for(;n<i&&96===e.src.charCodeAt(n);)n++;const s=e.src.slice(r,n),a=s.length;if(e.backticksScanned&&(e.backticks[a]||0)<=r)return t||(e.pending+=s),e.pos+=a,!0;let o,l=n;for(;-1!==(o=e.src.indexOf("`",l));){for(l=o+1;l<i&&96===e.src.charCodeAt(l);)l++;const r=l-o;if(r===a){if(!t){const t=e.push("code_inline","code",0);t.markup=s,t.content=e.src.slice(n,o).replace(/\n/g," ").replace(/^ (.+) $/,"$1")}return e.pos=l,!0}e.backticks[r]=o}return e.backticksScanned=!0,t||(e.pending+=s),e.pos+=a,!0}],["strikethrough",cn.tokenize],["emphasis",dn.tokenize],["link",function(e,t){let n,r,i,s,a="",o="",l=e.pos,c=!0;if(91!==e.src.charCodeAt(e.pos))return!1;const u=e.pos,d=e.posMax,h=e.pos+1,p=e.md.helpers.parseLinkLabel(e,e.pos,!0);if(p<0)return!1;let m=p+1;if(m<d&&40===e.src.charCodeAt(m)){for(c=!1,m++;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);if(m>=d)return!1;if(l=m,i=e.md.helpers.parseLinkDestination(e.src,m,e.posMax),i.ok){for(a=e.md.normalizeLink(i.str),e.md.validateLink(a)?m=i.pos:a="",l=m;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);if(i=e.md.helpers.parseLinkTitle(e.src,m,e.posMax),m<d&&l!==m&&i.ok)for(o=i.str,m=i.pos;m<d&&(n=e.src.charCodeAt(m),ht(n)||10===n);m++);}(m>=d||41!==e.src.charCodeAt(m))&&(c=!0),m++}if(c){if(void 0===e.env.references)return!1;if(m<d&&91===e.src.charCodeAt(m)?(l=m+1,m=e.md.helpers.parseLinkLabel(e,m),m>=0?r=e.src.slice(l,m++):m=p+1):m=p+1,r||(r=e.src.slice(h,p)),s=e.env.references[bt(r)],!s)return e.pos=u,!1;a=s.href,o=s.title}if(!t){e.pos=h,e.posMax=p;const t=[["href",a]];e.push("link_open","a",1).attrs=t,o&&t.push(["title",o]),e.linkLevel++,e.md.inline.tokenize(e),e.linkLevel--,e.push("link_close","a",-1)}return e.pos=m,e.posMax=d,!0}],["image",function(e,t){let n,r,i,s,a,o,l,c,u="";const d=e.pos,h=e.posMax;if(33!==e.src.charCodeAt(e.pos))return!1;if(91!==e.src.charCodeAt(e.pos+1))return!1;const p=e.pos+2,m=e.md.helpers.parseLinkLabel(e,e.pos+1,!1);if(m<0)return!1;if(s=m+1,s<h&&40===e.src.charCodeAt(s)){for(s++;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);if(s>=h)return!1;for(c=s,o=e.md.helpers.parseLinkDestination(e.src,s,e.posMax),o.ok&&(u=e.md.normalizeLink(o.str),e.md.validateLink(u)?s=o.pos:u=""),c=s;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);if(o=e.md.helpers.parseLinkTitle(e.src,s,e.posMax),s<h&&c!==s&&o.ok)for(l=o.str,s=o.pos;s<h&&(n=e.src.charCodeAt(s),ht(n)||10===n);s++);else l="";if(s>=h||41!==e.src.charCodeAt(s))return e.pos=d,!1;s++}else{if(void 0===e.env.references)return!1;if(s<h&&91===e.src.charCodeAt(s)?(c=s+1,s=e.md.helpers.parseLinkLabel(e,s),s>=0?i=e.src.slice(c,s++):s=m+1):s=m+1,i||(i=e.src.slice(p,m)),a=e.env.references[bt(i)],!a)return e.pos=d,!1;u=a.href,l=a.title}if(!t){r=e.src.slice(p,m);const t=[];e.md.inline.parse(r,e.md,e.env,t);const n=e.push("image","img",0),i=[["src",u],["alt",""]];n.attrs=i,n.children=t,n.content=r,l&&i.push(["title",l])}return e.pos=s,e.posMax=h,!0}],["autolink",function(e,t){let n=e.pos;if(60!==e.src.charCodeAt(n))return!1;const r=e.pos,i=e.posMax;for(;;){if(++n>=i)return!1;const t=e.src.charCodeAt(n);if(60===t)return!1;if(62===t)break}const s=e.src.slice(r+1,n);if(pn.test(s)){const n=e.md.normalizeLink(s);if(!e.md.validateLink(n))return!1;if(!t){const t=e.push("link_open","a",1);t.attrs=[["href",n]],t.markup="autolink",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(s);const r=e.push("link_close","a",-1);r.markup="autolink",r.info="auto"}return e.pos+=s.length+2,!0}if(hn.test(s)){const n=e.md.normalizeLink("mailto:"+s);if(!e.md.validateLink(n))return!1;if(!t){const t=e.push("link_open","a",1);t.attrs=[["href",n]],t.markup="autolink",t.info="auto";e.push("text","",0).content=e.md.normalizeLinkText(s);const r=e.push("link_close","a",-1);r.markup="autolink",r.info="auto"}return e.pos+=s.length+2,!0}return!1}],["html_inline",function(e,t){if(!e.md.options.html)return!1;const n=e.posMax,r=e.pos;if(60!==e.src.charCodeAt(r)||r+2>=n)return!1;const i=e.src.charCodeAt(r+1);if(33!==i&&63!==i&&47!==i&&!function(e){const t=32|e;return t>=97&&t<=122}(i))return!1;const s=e.src.slice(r).match(Qt);if(!s)return!1;if(!t){const t=e.push("html_inline","",0);t.content=s[0],a=t.content,/^<a[>\s]/i.test(a)&&e.linkLevel++,function(e){return/^<\/a\s*>/i.test(e)}(t.content)&&e.linkLevel--}var a;return e.pos+=s[0].length,!0}],["entity",function(e,t){const n=e.pos,r=e.posMax;if(38!==e.src.charCodeAt(n))return!1;if(n+1>=r)return!1;if(35===e.src.charCodeAt(n+1)){const r=e.src.slice(n).match(mn);if(r){if(!t){const t="x"===r[1][0].toLowerCase()?parseInt(r[1].slice(1),16):parseInt(r[1],10),n=e.push("text_special","",0);n.content=Ye(t)?et(t):et(65533),n.markup=r[0],n.info="entity"}return e.pos+=r[0].length,!0}}else{const r=e.src.slice(n).match(fn);if(r){const n=(i=r[0],We(i,Pe.Strict));if(n!==r[0]){if(!t){const t=e.push("text_special","",0);t.content=n,t.markup=r[0],t.info="entity"}return e.pos+=r[0].length,!0}}}var i;return!1}]],yn=[["balance_pairs",function(e){const t=e.tokens_meta,n=e.tokens_meta.length;gn(e.delimiters);for(let e=0;e<n;e++)t[e]&&t[e].delimiters&&gn(t[e].delimiters)}],["strikethrough",cn.postProcess],["emphasis",dn.postProcess],["fragments_join",function(e){let t,n,r=0;const i=e.tokens,s=e.tokens.length;for(t=n=0;t<s;t++)i[t].nesting<0&&r--,i[t].level=r,i[t].nesting>0&&r++,"text"===i[t].type&&t+1<s&&"text"===i[t+1].type?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}]];function vn(){this.ruler=new At;for(let e=0;e<bn.length;e++)this.ruler.push(bn[e][0],bn[e][1]);this.ruler2=new At;for(let e=0;e<yn.length;e++)this.ruler2.push(yn[e][0],yn[e][1])}function wn(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){t&&Object.keys(t).forEach(function(n){e[n]=t[n]})}),e}function En(e){return Object.prototype.toString.call(e)}function _n(e){return"[object Function]"===En(e)}function kn(e){return e.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}vn.prototype.skipToken=function(e){const t=e.pos,n=this.ruler.getRules(""),r=n.length,i=e.md.options.maxNesting,s=e.cache;if(void 0!==s[t])return void(e.pos=s[t]);let a=!1;if(e.level<i){for(let i=0;i<r;i++)if(e.level++,a=n[i](e,!0),e.level--,a){if(t>=e.pos)throw new Error("inline rule didn't increment state.pos");break}}else e.pos=e.posMax;a||e.pos++,s[t]=e.pos},vn.prototype.tokenize=function(e){const t=this.ruler.getRules(""),n=t.length,r=e.posMax,i=e.md.options.maxNesting;for(;e.pos<r;){const s=e.pos;let a=!1;if(e.level<i)for(let r=0;r<n;r++)if(a=t[r](e,!1),a){if(s>=e.pos)throw new Error("inline rule didn't increment state.pos");break}if(a){if(e.pos>=r)break}else e.pending+=e.src[e.pos++]}e.pending&&e.pushPending()},vn.prototype.parse=function(e,t,n,r){const i=new this.State(e,t,n,r);this.tokenize(i);const s=this.ruler2.getRules(""),a=s.length;for(let e=0;e<a;e++)s[e](i)},vn.prototype.State=rn;const xn={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};const An={"http:":{validate:function(e,t,n){const r=e.slice(t);return n.re.http||(n.re.http=new RegExp(`^\\/\\/${n.re.src_auth}${n.re.src_host_port_strict}${n.re.src_path}`,"i")),n.re.http.test(r)?r.match(n.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(e,t,n){const r=e.slice(t);return n.re.no_http||(n.re.no_http=new RegExp("^"+n.re.src_auth+`(?:localhost|(?:(?:${n.re.src_domain})\\.)+${n.re.src_domain_root})`+n.re.src_port+n.re.src_host_terminator+n.re.src_path,"i")),n.re.no_http.test(r)?t>=3&&":"===e[t-3]||t>=3&&"/"===e[t-3]?0:r.match(n.re.no_http)[0].length:0}},"mailto:":{validate:function(e,t,n){const r=e.slice(t);return n.re.mailto||(n.re.mailto=new RegExp(`^${n.re.src_email_name}@${n.re.src_host_strict}`,"i")),n.re.mailto.test(r)?r.match(n.re.mailto)[0].length:0}}},Cn="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function Dn(e){const t=e.re=function(e){const t={};e=e||{},t.src_Any=Se.source,t.src_Cc=Ne.source,t.src_Z=Ie.source,t.src_P=Te.source,t.src_ZPCc=[t.src_Z,t.src_P,t.src_Cc].join("|"),t.src_ZCc=[t.src_Z,t.src_Cc].join("|");const n="[><|]";return t.src_pseudo_letter=`(?:(?!${n}|${t.src_ZPCc})${t.src_Any})`,t.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",t.src_auth=`(?:(?:(?!${t.src_ZCc}|[@/\\[\\]()]).){1,50}@)?`,t.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",t.src_host_terminator=`(?=$|${n}|${t.src_ZPCc})(?!${e["---"]?"-(?!--)|":"-|"}_|:\\d|\\.-|\\.(?!$|${t.src_ZPCc}))`,t.src_path=`(?:[/?#](?:(?!${t.src_ZCc}|${n}|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!${t.src_ZCc}|\\]).)*\\]|\\((?:(?!${t.src_ZCc}|[)]).)*\\)|\\{(?:(?!${t.src_ZCc}|[}]).)*\\}|\\"(?:(?!${t.src_ZCc}|["]).)+\\"|\\'(?:(?!${t.src_ZCc}|[']).)+\\'|\\'(?=${t.src_pseudo_letter}|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!${t.src_ZCc}|[.]|$)|`+(e["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+`,(?!${t.src_ZCc}|$)|`+`;(?!${t.src_ZCc}|$)|`+`\\!+(?!${t.src_ZCc}|[!]|$)|`+`\\?(?!${t.src_ZCc}|[?]|$))+|\\/)?`,t.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]{0,63}',t.src_xn="xn--[a-z0-9\\-]{1,59}",t.src_domain_root="(?:"+t.src_xn+"|"+`${t.src_pseudo_letter}{1,63})`,t.src_domain="(?:"+t.src_xn+"|"+`(?:${t.src_pseudo_letter})|`+`(?:${t.src_pseudo_letter}(?:-|${t.src_pseudo_letter}){0,61}${t.src_pseudo_letter}))`,t.src_host=`(?:(?:(?:(?:${t.src_domain})\\.)*${t.src_domain}))`,t.tpl_host_fuzzy="(?:"+t.src_ip4+"|"+`(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%)))`,t.tpl_host_no_ip_fuzzy=`(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%))`,t.src_host_strict=t.src_host+t.src_host_terminator,t.tpl_host_fuzzy_strict=t.tpl_host_fuzzy+t.src_host_terminator,t.src_host_port_strict=t.src_host+t.src_port+t.src_host_terminator,t.tpl_host_port_fuzzy_strict=t.tpl_host_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_port_no_ip_fuzzy_strict=t.tpl_host_no_ip_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_fuzzy_test=`localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:${t.src_ZPCc}|>|$))`,t.tpl_email_fuzzy=`(^|${n}|"|\\(|${t.src_ZCc})(${t.src_email_name}@${t.tpl_host_fuzzy_strict})`,t.tpl_link_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`||]|${t.src_ZPCc}))((?![$+<=>^\`||])${t.tpl_host_port_fuzzy_strict}${t.src_path})`,t.tpl_link_no_ip_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`||]|${t.src_ZPCc}))((?![$+<=>^\`||])${t.tpl_host_port_no_ip_fuzzy_strict}${t.src_path})`,t}(e.__opts__),n=e.__tlds__.slice();function r(e){return e.replace("%TLDS%",t.src_tlds)}e.onCompile(),e.__tlds_replaced__||n.push("a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]"),n.push(t.src_xn),t.src_tlds=n.join("|"),t.email_fuzzy=RegExp(r(t.tpl_email_fuzzy),"i"),t.email_fuzzy_global=RegExp(r(t.tpl_email_fuzzy),"ig"),t.link_fuzzy=RegExp(r(t.tpl_link_fuzzy),"i"),t.link_fuzzy_global=RegExp(r(t.tpl_link_fuzzy),"ig"),t.link_no_ip_fuzzy=RegExp(r(t.tpl_link_no_ip_fuzzy),"i"),t.link_no_ip_fuzzy_global=RegExp(r(t.tpl_link_no_ip_fuzzy),"ig"),t.host_fuzzy_test=RegExp(r(t.tpl_host_fuzzy_test),"i");const i=[];function s(e,t){throw new Error(`(LinkifyIt) Invalid schema "${e}": ${t}`)}e.__compiled__={},Object.keys(e.__schemas__).forEach(function(t){const n=e.__schemas__[t];if(null===n)return;const r={validate:null,link:null};if(e.__compiled__[t]=r,"[object Object]"===En(n))return!function(e){return"[object RegExp]"===En(e)}(n.validate)?_n(n.validate)?r.validate=n.validate:s(t,n):r.validate=function(e){return function(t,n){const r=t.slice(n);return e.test(r)?r.match(e)[0].length:0}}(n.validate),void(_n(n.normalize)?r.normalize=n.normalize:n.normalize?s(t,n):r.normalize=function(e,t){t.normalize(e)});!function(e){return"[object String]"===En(e)}(n)?s(t,n):i.push(t)}),i.forEach(function(t){e.__compiled__[e.__schemas__[t]]&&(e.__compiled__[t].validate=e.__compiled__[e.__schemas__[t]].validate,e.__compiled__[t].normalize=e.__compiled__[e.__schemas__[t]].normalize)}),e.__compiled__[""]={validate:null,normalize:function(e,t){t.normalize(e)}};const a=Object.keys(e.__compiled__).filter(function(t){return t.length>0&&e.__compiled__[t]}).map(kn).join("|");e.re.schema_test=RegExp(`(^|(?!_)(?:[><|]|${t.src_ZPCc}))(${a})`,"i"),e.re.schema_search=RegExp(`(^|(?!_)(?:[><|]|${t.src_ZPCc}))(${a})`,"ig"),e.re.schema_at_start=RegExp(`^${e.re.schema_search.source}`,"i"),e.re.pretest=RegExp(`(${e.re.schema_test.source})|(${e.re.host_fuzzy_test.source})|@`,"i")}function Sn(e,t,n,r){const i=e.slice(n,r);this.schema=t.toLowerCase(),this.index=n,this.lastIndex=r,this.raw=i,this.text=i,this.url=i}function Nn(e,t){if(!(this instanceof Nn))return new Nn(e,t);var n;t||(n=e,Object.keys(n||{}).reduce(function(e,t){return e||xn.hasOwnProperty(t)},!1)&&(t=e,e={})),this.__opts__=wn({},xn,t),this.__schemas__=wn({},An,e),this.__compiled__={},this.__tlds__=Cn,this.__tlds_replaced__=!1,this.re={},Dn(this)}Nn.prototype.add=function(e,t){return this.__schemas__[e]=t,Dn(this),this},Nn.prototype.set=function(e){return this.__opts__=wn(this.__opts__,e),this},Nn.prototype.test=function(e){if(!e.length)return!1;let t,n;if(this.re.schema_test.test(e))for(n=this.re.schema_search,n.lastIndex=0;null!==(t=n.exec(e));)if(this.testSchemaAt(e,t[2],n.lastIndex))return!0;return!!(this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&e.search(this.re.host_fuzzy_test)>=0&&null!==e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))||!!(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]&&e.indexOf("@")>=0&&null!==e.match(this.re.email_fuzzy))},Nn.prototype.pretest=function(e){return this.re.pretest.test(e)},Nn.prototype.testSchemaAt=function(e,t,n){return this.__compiled__[t.toLowerCase()]?this.__compiled__[t.toLowerCase()].validate(e,n,this):0},Nn.prototype.match=function(e){const t=[],n=[],r=[],i=[];let s,a,o;function l(e,t){return e?t?e.index!==t.index?e.index<t.index?e:t:e.lastIndex>=t.lastIndex?e:t:e:t}if(!e.length)return null;if(this.re.schema_test.test(e))for(o=this.re.schema_search,o.lastIndex=0;null!==(s=o.exec(e));)a=this.testSchemaAt(e,s[2],o.lastIndex),a&&n.push({schema:s[2],index:s.index+s[1].length,lastIndex:s.index+s[0].length+a});if(this.__opts__.fuzzyLink&&this.__compiled__["http:"])for(o=this.__opts__.fuzzyIP?this.re.link_fuzzy_global:this.re.link_no_ip_fuzzy_global,o.lastIndex=0;null!==(s=o.exec(e));)r.push({schema:"",index:s.index+s[1].length,lastIndex:s.index+s[0].length});if(this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"])for(o=this.re.email_fuzzy_global,o.lastIndex=0;null!==(s=o.exec(e));)i.push({schema:"mailto:",index:s.index+s[1].length,lastIndex:s.index+s[0].length});const c=[0,0,0];let u=0;for(;;){const s=[n[c[0]],i[c[1]],r[c[2]]],a=l(l(s[0],s[1]),s[2]);if(!a)break;if(a===s[0]?c[0]++:a===s[1]?c[1]++:c[2]++,a.index<u)continue;const o=new Sn(e,a.schema,a.index,a.lastIndex);this.__compiled__[o.schema].normalize(o,this),t.push(o),u=a.lastIndex}return t.length?t:null},Nn.prototype.matchAtStart=function(e){if(!e.length)return null;const t=this.re.schema_at_start.exec(e);if(!t)return null;const n=this.testSchemaAt(e,t[2],t[0].length);if(!n)return null;const r=new Sn(e,t[2],t.index+t[1].length,t.index+t[0].length+n);return this.__compiled__[r.schema].normalize(r,this),r},Nn.prototype.tlds=function(e,t){return e=Array.isArray(e)?e:[e],t?(this.__tlds__=this.__tlds__.concat(e).sort().filter(function(e,t,n){return e!==n[t-1]}).reverse(),Dn(this),this):(this.__tlds__=e.slice(),this.__tlds_replaced__=!0,Dn(this),this)},Nn.prototype.normalize=function(e){e.schema||(e.url=`http://${e.url}`),"mailto:"!==e.schema||/^mailto:/i.test(e.url)||(e.url=`mailto:${e.url}`)},Nn.prototype.onCompile=function(){};const Tn=2147483647,Ln=36,In=/^xn--/,Fn=/[^\0-\x7F]/,zn=/[\x2E\u3002\uFF0E\uFF61]/g,Mn={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},On=Math.floor,Bn=String.fromCharCode;function Rn(e){throw new RangeError(Mn[e])}function $n(e,t){const n=e.split("@");let r="";n.length>1&&(r=n[0]+"@",e=n[1]);const i=function(e,t){const n=[];let r=e.length;for(;r--;)n[r]=t(e[r]);return n}((e=e.replace(zn,".")).split("."),t).join(".");return r+i}function jn(e){const t=[];let n=0;const r=e.length;for(;n<r;){const i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){const r=e.charCodeAt(n++);56320==(64512&r)?t.push(((1023&i)<<10)+(1023&r)+65536):(t.push(i),n--)}else t.push(i)}return t}const Pn=function(e){return e>=48&&e<58?e-48+26:e>=65&&e<91?e-65:e>=97&&e<123?e-97:Ln},Hn=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},qn=function(e,t,n){let r=0;for(e=n?On(e/700):e>>1,e+=On(e/t);e>455;r+=Ln)e=On(e/35);return On(r+36*e/(e+38))},Vn=function(e){const t=[],n=e.length;let r=0,i=128,s=72,a=e.lastIndexOf("-");a<0&&(a=0);for(let n=0;n<a;++n)e.charCodeAt(n)>=128&&Rn("not-basic"),t.push(e.charCodeAt(n));for(let o=a>0?a+1:0;o<n;){const a=r;for(let t=1,i=Ln;;i+=Ln){o>=n&&Rn("invalid-input");const a=Pn(e.charCodeAt(o++));a>=Ln&&Rn("invalid-input"),a>On((Tn-r)/t)&&Rn("overflow"),r+=a*t;const l=i<=s?1:i>=s+26?26:i-s;if(a<l)break;const c=Ln-l;t>On(Tn/c)&&Rn("overflow"),t*=c}const l=t.length+1;s=qn(r-a,l,0==a),On(r/l)>Tn-i&&Rn("overflow"),i+=On(r/l),r%=l,t.splice(r++,0,i)}return String.fromCodePoint(...t)},Un=function(e){const t=[],n=(e=jn(e)).length;let r=128,i=0,s=72;for(const n of e)n<128&&t.push(Bn(n));const a=t.length;let o=a;for(a&&t.push("-");o<n;){let n=Tn;for(const t of e)t>=r&&t<n&&(n=t);const l=o+1;n-r>On((Tn-i)/l)&&Rn("overflow"),i+=(n-r)*l,r=n;for(const n of e)if(n<r&&++i>Tn&&Rn("overflow"),n===r){let e=i;for(let n=Ln;;n+=Ln){const r=n<=s?1:n>=s+26?26:n-s;if(e<r)break;const i=e-r,a=Ln-r;t.push(Bn(Hn(r+i%a,0))),e=On(i/a)}t.push(Bn(Hn(e,0))),s=qn(i,l,o===a),i=0,++o}++i,++r}return t.join("")},Zn=function(e){return $n(e,function(e){return Fn.test(e)?"xn--"+Un(e):e})},Kn=function(e){return $n(e,function(e){return In.test(e)?Vn(e.slice(4).toLowerCase()):e})};const Wn={default:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}},zero:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}},commonmark:{options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}}},Gn=/^(vbscript|javascript|file|data):/,Xn=/^data:image\/(gif|png|jpeg|webp);/;function Jn(e){const t=e.trim().toLowerCase();return!Gn.test(t)||Xn.test(t)}const Qn=["http:","https:","mailto:"];function Yn(e){const t=Ae(e,!0);if(t.hostname&&(!t.protocol||Qn.indexOf(t.protocol)>=0))try{t.hostname=Zn(t.hostname)}catch(e){}return de(he(t))}function er(e){const t=Ae(e,!0);if(t.hostname&&(!t.protocol||Qn.indexOf(t.protocol)>=0))try{t.hostname=Kn(t.hostname)}catch(e){}return ce(he(t),ce.defaultChars+"%")}function tr(e,t){if(!(this instanceof tr))return new tr(e,t);t||Ge(e)||(t=e||{},e="default"),this.inline=new vn,this.block=new nn,this.core=new Vt,this.renderer=new xt,this.linkify=new Nn,this.validateLink=Jn,this.normalizeLink=Yn,this.normalizeLinkText=er,this.utils=Et,this.helpers=Je({},_t),this.options={},this.configure(e),t&&this.set(t)}function nr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var rr,ir;function sr(){if(ir)return rr;function e(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach(n=>{const r=t[n],i=typeof r;"object"!==i&&"function"!==i||Object.isFrozen(r)||e(r)}),t}ir=1;class t{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function r(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t];return t.forEach(function(e){for(const t in e)n[t]=e[t]}),n}const i=e=>!!e.scope;class s{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=n(e)}openNode(e){if(!i(e))return;const t=((e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((e,t)=>`${e}${"_".repeat(t+1)}`)].join(" ")}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){i(e)&&(this.buffer+="</span>")}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}}const a=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class o{constructor(){this.rootNode=a(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=a({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{o._collapse(e)}))}}class l extends o{constructor(e){super(),this.options=e}addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new s(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function c(e){return e?"string"==typeof e?e:e.source:null}function u(e){return p("(?=",e,")")}function d(e){return p("(?:",e,")*")}function h(e){return p("(?:",e,")?")}function p(...e){return e.map(e=>c(e)).join("")}function m(...e){const t=function(e){const t=e[e.length-1];return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(e);return"("+(t.capture?"":"?:")+e.map(e=>c(e)).join("|")+")"}function f(e){return new RegExp(e.toString()+"|").exec("").length-1}const g=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function b(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;const t=n;let r=c(e),i="";for(;r.length>0;){const e=g.exec(r);if(!e){i+=r;break}i+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+String(Number(e[1])+t):(i+=e[0],"("===e[0]&&n++)}return i}).map(e=>`(${e})`).join(t)}const y="[a-zA-Z]\\w*",v="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",E="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_="\\b(0b[01]+)",k={begin:"\\\\[\\s\\S]",relevance:0},x={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[k]},A={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[k]},C=function(e,t,n={}){const i=r({scope:"comment",begin:e,end:t,contains:[]},n);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const s=m("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:p(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},D=C("//","$"),S=C("/\\*","\\*/"),N=C("#","$"),T={scope:"number",begin:w,relevance:0},L={scope:"number",begin:E,relevance:0},I={scope:"number",begin:_,relevance:0},F={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[k,{begin:/\[/,end:/\]/,relevance:0,contains:[k]}]},z={scope:"title",begin:y,relevance:0},M={scope:"title",begin:v,relevance:0},O={begin:"\\.\\s*"+v,relevance:0};var B=Object.freeze({__proto__:null,APOS_STRING_MODE:x,BACKSLASH_ESCAPE:k,BINARY_NUMBER_MODE:I,BINARY_NUMBER_RE:_,COMMENT:C,C_BLOCK_COMMENT_MODE:S,C_LINE_COMMENT_MODE:D,C_NUMBER_MODE:L,C_NUMBER_RE:E,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:N,IDENT_RE:y,MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:O,NUMBER_MODE:T,NUMBER_RE:w,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},QUOTE_STRING_MODE:A,REGEXP_MODE:F,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=p(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},TITLE_MODE:z,UNDERSCORE_IDENT_RE:v,UNDERSCORE_TITLE_MODE:M});function R(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function $(e,t){void 0!==e.className&&(e.scope=e.className,delete e.className)}function j(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=R,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function P(e,t){Array.isArray(e.illegal)&&(e.illegal=m(...e.illegal))}function H(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function q(e,t){void 0===e.relevance&&(e.relevance=1)}const V=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(t=>{delete e[t]}),e.keywords=n.keywords,e.begin=p(n.beforeMatch,u(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},U=["of","and","for","in","not","or","if","then","parent","list","value"];function Z(e,t,n="keyword"){const r=Object.create(null);return"string"==typeof e?i(n,e.split(" ")):Array.isArray(e)?i(n,e):Object.keys(e).forEach(function(n){Object.assign(r,Z(e[n],t,n))}),r;function i(e,n){t&&(n=n.map(e=>e.toLowerCase())),n.forEach(function(t){const n=t.split("|");r[n[0]]=[e,K(n[0],n[1])]})}}function K(e,t){return t?Number(t):function(e){return U.includes(e.toLowerCase())}(e)?0:1}const W={},G=e=>{console.error(e)},X=(e,...t)=>{console.log(`WARN: ${e}`,...t)},J=(e,t)=>{W[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),W[`${e}/${t}`]=!0)},Q=new Error;function Y(e,t,{key:n}){let r=0;const i=e[n],s={},a={};for(let e=1;e<=t.length;e++)a[e+r]=i[e],s[e+r]=!0,r+=f(t[e-1]);e[n]=a,e[n]._emit=s,e[n]._multi=!0}function ee(e){!function(e){e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,delete e.scope)}(e),"string"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope}),function(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw G("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Q;if("object"!=typeof e.beginScope||null===e.beginScope)throw G("beginScope must be object"),Q;Y(e,e.begin,{key:"beginScope"}),e.begin=b(e.begin,{joinWith:""})}}(e),function(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw G("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Q;if("object"!=typeof e.endScope||null===e.endScope)throw G("endScope must be object"),Q;Y(e,e.end,{key:"endScope"}),e.end=b(e.end,{joinWith:""})}}(e)}function te(e){function t(t,n){return new RegExp(c(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=f(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=t(b(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex((e,t)=>t>0&&void 0!==e),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=r(e.classNameAliases||{}),function n(s,a){const o=s;if(s.isCompiled)return o;[$,H,ee,V].forEach(e=>e(s,a)),e.compilerExtensions.forEach(e=>e(s,a)),s.__beforeBegin=null,[j,P,q].forEach(e=>e(s,a)),s.isCompiled=!0;let l=null;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),l=s.keywords.$pattern,delete s.keywords.$pattern),l=l||/\w+/,s.keywords&&(s.keywords=Z(s.keywords,e.case_insensitive)),o.keywordPatternRe=t(l,!0),a&&(s.begin||(s.begin=/\B|\b/),o.beginRe=t(o.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),s.end&&(o.endRe=t(o.end)),o.terminatorEnd=c(o.end)||"",s.endsWithParent&&a.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(o.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return r(e,{variants:null},t)}));if(e.cachedVariants)return e.cachedVariants;if(ne(e))return r(e,{starts:e.starts?r(e.starts):null});if(Object.isFrozen(e))return r(e);return e}("self"===e?s:e)})),s.contains.forEach(function(e){n(e,o)}),s.starts&&n(s.starts,a),o.matcher=function(e){const t=new i;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:"begin"})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(o),o}(e)}function ne(e){return!!e&&(e.endsWithParent||ne(e.starts))}class re extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const ie=n,se=r,ae=Symbol("nomatch"),oe=function(n){const r=Object.create(null),i=Object.create(null),s=[];let a=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let f={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:l};function g(e){return f.noHighlightRe.test(e)}function b(e,t,n){let r="",i="";"object"==typeof t?(r=e,n=t.ignoreIllegals,i=t.language):(J("10.7.0","highlight(lang, code, ...args) has been deprecated."),J("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),i=e,r=t),void 0===n&&(n=!0);const s={code:r,language:i};C("before:highlight",s);const a=s.result?s.result:y(s.language,s.code,n);return a.code=s.code,C("after:highlight",a),a}function y(e,n,i,s){const l=Object.create(null);function c(e,t){return e.keywords[t]}function u(){if(!D.keywords)return void N.addText(T);let e=0;D.keywordPatternRe.lastIndex=0;let t=D.keywordPatternRe.exec(T),n="";for(;t;){n+=T.substring(e,t.index);const r=x.case_insensitive?t[0].toLowerCase():t[0],i=c(D,r);if(i){const[e,s]=i;if(N.addText(n),n="",l[r]=(l[r]||0)+1,l[r]<=7&&(L+=s),e.startsWith("_"))n+=t[0];else{const n=x.classNameAliases[e]||e;h(t[0],n)}}else n+=t[0];e=D.keywordPatternRe.lastIndex,t=D.keywordPatternRe.exec(T)}n+=T.substring(e),N.addText(n)}function d(){null!=D.subLanguage?function(){if(""===T)return;let e=null;if("string"==typeof D.subLanguage){if(!r[D.subLanguage])return void N.addText(T);e=y(D.subLanguage,T,!0,S[D.subLanguage]),S[D.subLanguage]=e._top}else e=v(T,D.subLanguage.length?D.subLanguage:null);D.relevance>0&&(L+=e.relevance),N.__addSublanguage(e._emitter,e.language)}():u(),T=""}function h(e,t){""!==e&&(N.startScope(t),N.addText(e),N.endScope())}function p(e,t){let n=1;const r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}const r=x.classNameAliases[e[n]]||e[n],i=t[n];r?h(i,r):(T=i,u(),T=""),n++}}function m(e,t){return e.scope&&"string"==typeof e.scope&&N.openNode(x.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(h(T,x.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),T=""):e.beginScope._multi&&(p(e.beginScope,t),T="")),D=Object.create(e,{parent:{value:D}}),D}function g(e,n,r){let i=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(e.endRe,r);if(i){if(e["on:end"]){const r=new t(e);e["on:end"](n,r),r.isMatchIgnored&&(i=!1)}if(i){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return g(e.parent,n,r)}function b(e){return 0===D.matcher.regexIndex?(T+=e[0],1):(z=!0,0)}function w(e){const t=e[0],r=n.substring(e.index),i=g(D,e,r);if(!i)return ae;const s=D;D.endScope&&D.endScope._wrap?(d(),h(t,D.endScope._wrap)):D.endScope&&D.endScope._multi?(d(),p(D.endScope,e)):s.skip?T+=t:(s.returnEnd||s.excludeEnd||(T+=t),d(),s.excludeEnd&&(T=t));do{D.scope&&N.closeNode(),D.skip||D.subLanguage||(L+=D.relevance),D=D.parent}while(D!==i.parent);return i.starts&&m(i.starts,e),s.returnEnd?0:t.length}let E={};function _(r,s){const o=s&&s[0];if(T+=r,null==o)return d(),0;if("begin"===E.type&&"end"===s.type&&E.index===s.index&&""===o){if(T+=n.slice(s.index,s.index+1),!a){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=E.rule,t}return 1}if(E=s,"begin"===s.type)return function(e){const n=e[0],r=e.rule,i=new t(r),s=[r.__beforeBegin,r["on:begin"]];for(const t of s)if(t&&(t(e,i),i.isMatchIgnored))return b(n);return r.skip?T+=n:(r.excludeBegin&&(T+=n),d(),r.returnBegin||r.excludeBegin||(T=n)),m(r,e),r.returnBegin?0:n.length}(s);if("illegal"===s.type&&!i){const e=new Error('Illegal lexeme "'+o+'" for mode "'+(D.scope||"<unnamed>")+'"');throw e.mode=D,e}if("end"===s.type){const e=w(s);if(e!==ae)return e}if("illegal"===s.type&&""===o)return T+="\n",1;if(F>1e5&&F>3*s.index){throw new Error("potential infinite loop, way more iterations than matches")}return T+=o,o.length}const x=k(e);if(!x)throw G(o.replace("{}",e)),new Error('Unknown language: "'+e+'"');const A=te(x);let C="",D=s||A;const S={},N=new f.__emitter(f);!function(){const e=[];for(let t=D;t!==x;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>N.openNode(e))}();let T="",L=0,I=0,F=0,z=!1;try{if(x.__emitTokens)x.__emitTokens(n,N);else{for(D.matcher.considerAll();;){F++,z?z=!1:D.matcher.considerAll(),D.matcher.lastIndex=I;const e=D.matcher.exec(n);if(!e)break;const t=_(n.substring(I,e.index),e);I=e.index+t}_(n.substring(I))}return N.finalize(),C=N.toHTML(),{language:e,value:C,relevance:L,illegal:!1,_emitter:N,_top:D}}catch(t){if(t.message&&t.message.includes("Illegal"))return{language:e,value:ie(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:I,context:n.slice(I-100,I+100),mode:t.mode,resultSoFar:C},_emitter:N};if(a)return{language:e,value:ie(n),illegal:!1,relevance:0,errorRaised:t,_emitter:N,_top:D};throw t}}function v(e,t){t=t||f.languages||Object.keys(r);const n=function(e){const t={value:ie(e),illegal:!1,relevance:0,_top:c,_emitter:new f.__emitter(f)};return t._emitter.addText(e),t}(e),i=t.filter(k).filter(A).map(t=>y(t,e,!1));i.unshift(n);const s=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(k(e.language).supersetOf===t.language)return 1;if(k(t.language).supersetOf===e.language)return-1}return 0}),[a,o]=s,l=a;return l.secondBest=o,l}function w(e){let t=null;const n=function(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=f.languageDetectRe.exec(t);if(n){const t=k(n[1]);return t||(X(o.replace("{}",n[1])),X("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}return t.split(/\s+/).find(e=>g(e)||k(e))}(e);if(g(n))return;if(C("before:highlightElement",{el:e,language:n}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);if(e.children.length>0&&(f.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(e)),f.throwUnescapedHTML)){throw new re("One of your code blocks includes unescaped HTML.",e.innerHTML)}t=e;const r=t.textContent,s=n?b(r,{language:n,ignoreIllegals:!0}):v(r);e.innerHTML=s.value,e.dataset.highlighted="yes",function(e,t,n){const r=t&&i[t]||n;e.classList.add("hljs"),e.classList.add(`language-${r}`)}(e,n,s.language),e.result={language:s.language,re:s.relevance,relevance:s.relevance},s.secondBest&&(e.secondBest={language:s.secondBest.language,relevance:s.secondBest.relevance}),C("after:highlightElement",{el:e,result:s,text:r})}let E=!1;function _(){if("loading"===document.readyState)return E||window.addEventListener("DOMContentLoaded",function(){_()},!1),void(E=!0);document.querySelectorAll(f.cssSelector).forEach(w)}function k(e){return e=(e||"").toLowerCase(),r[e]||r[i[e]]}function x(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach(e=>{i[e.toLowerCase()]=t})}function A(e){const t=k(e);return t&&!t.disableAutodetect}function C(e,t){const n=e;s.forEach(function(e){e[n]&&e[n](t)})}Object.assign(n,{highlight:b,highlightAuto:v,highlightAll:_,highlightElement:w,highlightBlock:function(e){return J("10.7.0","highlightBlock will be removed entirely in v12.0"),J("10.7.0","Please use highlightElement now."),w(e)},configure:function(e){f=se(f,e)},initHighlighting:()=>{_(),J("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function(){_(),J("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function(e,t){let i=null;try{i=t(n)}catch(t){if(G("Language definition for '{}' could not be registered.".replace("{}",e)),!a)throw t;G(t),i=c}i.name||(i.name=e),r[e]=i,i.rawDefinition=t.bind(null,n),i.aliases&&x(i.aliases,{languageName:e})},unregisterLanguage:function(e){delete r[e];for(const t of Object.keys(i))i[t]===e&&delete i[t]},listLanguages:function(){return Object.keys(r)},getLanguage:k,registerAliases:x,autoDetection:A,inherit:se,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),s.push(e)},removePlugin:function(e){const t=s.indexOf(e);-1!==t&&s.splice(t,1)}}),n.debugMode=function(){a=!1},n.safeMode=function(){a=!0},n.versionString="11.11.1",n.regex={concat:p,lookahead:u,either:m,optional:h,anyNumberOfTimes:d};for(const t in B)"object"==typeof B[t]&&e(B[t]);return Object.assign(n,B),n},le=oe({});return le.newInstance=()=>oe({}),rr=le,le.HighlightJS=le,le.default=le,rr}tr.prototype.set=function(e){return Je(this.options,e),this},tr.prototype.configure=function(e){const t=this;if(Ge(e)){const t=e;if(!(e=Wn[t]))throw new Error('Wrong `markdown-it` preset "'+t+'", check name')}if(!e)throw new Error("Wrong `markdown-it` preset, can't be empty");return e.options&&t.set(e.options),e.components&&Object.keys(e.components).forEach(function(n){e.components[n].rules&&t[n].ruler.enableOnly(e.components[n].rules),e.components[n].rules2&&t[n].ruler2.enableOnly(e.components[n].rules2)}),this},tr.prototype.enable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),["core","block","inline"].forEach(function(t){n=n.concat(this[t].ruler.enable(e,!0))},this),n=n.concat(this.inline.ruler2.enable(e,!0));const r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r);return this},tr.prototype.disable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),["core","block","inline"].forEach(function(t){n=n.concat(this[t].ruler.disable(e,!0))},this),n=n.concat(this.inline.ruler2.disable(e,!0));const r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r);return this},tr.prototype.use=function(e){const t=[this].concat(Array.prototype.slice.call(arguments,1));return e.apply(e,t),this},tr.prototype.parse=function(e,t){if("string"!=typeof e)throw new Error("Input data should be a String");const n=new this.core.State(e,this,t);return this.core.process(n),n.tokens},tr.prototype.render=function(e,t){return t=t||{},this.renderer.render(this.parse(e,t),this.options,t)},tr.prototype.parseInline=function(e,t){const n=new this.core.State(e,this,t);return n.inlineMode=!0,this.core.process(n),n.tokens},tr.prototype.renderInline=function(e,t){return t=t||{},this.renderer.render(this.parseInline(e,t),this.options,t)};var ar=nr(sr());const or="[A-Za-z$_][0-9A-Za-z$_]*",lr=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],cr=["true","false","null","undefined","NaN","Infinity"],ur=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],dr=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],hr=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],pr=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],mr=[].concat(hr,ur,dr);const fr="[A-Za-z$_][0-9A-Za-z$_]*",gr=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],br=["true","false","null","undefined","NaN","Infinity"],yr=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],vr=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],wr=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Er=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],_r=[].concat(wr,yr,vr);function kr(e){const t=e.regex,n=fr,r="<>",i="</>",s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let i;">"===r&&(((e,{after:t})=>{const n="</"+e[0].slice(1);return-1!==e.input.indexOf(n,t)})(e,{after:n})||t.ignoreMatch());const s=e.input.substring(n);((i=s.match(/^\s*=/))||(i=s.match(/^\s+extends\s+/))&&0===i.index)&&t.ignoreMatch()}},a={$pattern:fr,keyword:gr,literal:br,built_in:_r,"variable.language":Er},o="[0-9](_?[0-9])*",l=`\\.(${o})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",u={className:"number",variants:[{begin:`(\\b(${c})((${l})|\\.)?|(${l}))[eE][+-]?(${o})\\b`},{begin:`\\b(${c})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},p={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},f={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},g={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},b=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(b)});const y=[].concat(g,d.contains),v=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(y)}]),w={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v},E={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,t.concat(n,"(",t.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...yr,...vr]}},k={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[w],illegal:/%/};const x={match:t.concat(/\b/,function(e){return t.concat("(?!",e.join("|"),")")}([...wr,"super","import"].map(e=>`${e}\\s*\\(`)),n,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},A={begin:t.concat(/\./,t.lookahead(t.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},C={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},w]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[w]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:v,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,g,{match:/\$\d+/},u,_,{scope:"attr",match:n+t.lookahead(":"),relevance:0},S,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r,end:i},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},k,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[w,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},A,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[w]},x,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},E,C,{match:/\$[(.]/}]}}const xr=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video","defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Ar=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Cr=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Dr=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Sr=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();ar.registerLanguage("javascript",function(e){const t=e.regex,n=or,r="<>",i="</>",s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let i;">"===r&&(((e,{after:t})=>{const n="</"+e[0].slice(1);return-1!==e.input.indexOf(n,t)})(e,{after:n})||t.ignoreMatch());const s=e.input.substring(n);((i=s.match(/^\s*=/))||(i=s.match(/^\s+extends\s+/))&&0===i.index)&&t.ignoreMatch()}},a={$pattern:or,keyword:lr,literal:cr,built_in:mr,"variable.language":pr},o="[0-9](_?[0-9])*",l=`\\.(${o})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",u={className:"number",variants:[{begin:`(\\b(${c})((${l})|\\.)?|(${l}))[eE][+-]?(${o})\\b`},{begin:`\\b(${c})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"xml"}},p={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,d],subLanguage:"graphql"}},f={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,d]},g={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},b=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(b)});const y=[].concat(g,d.contains),v=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(y)}]),w={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v},E={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,t.concat(n,"(",t.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...ur,...dr]}},k={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[w],illegal:/%/},x={match:t.concat(/\b/,function(e){return t.concat("(?!",e.join("|"),")")}([...hr,"super","import"].map(e=>`${e}\\s*\\(`)),n,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},A={begin:t.concat(/\./,t.lookahead(t.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},C={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},w]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[w]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:v,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,p,m,f,g,{match:/\$\d+/},u,_,{scope:"attr",match:n+t.lookahead(":"),relevance:0},S,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r,end:i},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},k,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[w,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},A,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[w]},x,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},E,C,{match:/\$[(.]/}]}}),ar.registerLanguage("typescript",function(e){const t=e.regex,n=kr(e),r=fr,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},a={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[n.exports.CLASS_REFERENCE]},o={$pattern:fr,keyword:gr.concat(["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"]),literal:br,built_in:_r.concat(i),"variable.language":Er},l={className:"meta",begin:"@"+r},c=(e,t,n)=>{const r=e.contains.findIndex(e=>e.label===t);if(-1===r)throw new Error("can not find mode to replace");e.contains.splice(r,1,n)};Object.assign(n.keywords,o),n.exports.PARAMS_CONTAINS.push(l);const u=n.contains.find(e=>"attr"===e.scope),d=Object.assign({},u,{match:t.concat(r,t.lookahead(/\s*\?:/))});return n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,u,d]),n.contains=n.contains.concat([l,s,a,d]),c(n,"shebang",e.SHEBANG()),c(n,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),n.contains.find(e=>"func.def"===e.label).relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}),ar.registerLanguage("python",function(e){const t=e.regex,n=/[\p{XID_Start}_]\p{XID_Continue}*/u,r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},s={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},o={begin:/\{\{/,relevance:0},l={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,s,o,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,s,o,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,o,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},c="[0-9](_?[0-9])*",u=`(\\b(${c}))?\\.(${c})|\\b(${c})\\.`,d=`\\b|${r.join("|")}`,h={className:"number",relevance:0,variants:[{begin:`(\\b(${c})|(${u}))[eE][+-]?(${c})[jJ]?(?=${d})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${c})[jJ](?=${d})`}]},p={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",s,h,l,e.HASH_COMMENT_MODE]}]};return a.contains=[l,h,s],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[s,h,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},l,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[h,m,l]}]}}),ar.registerLanguage("json",function(e){const t=["true","false","null"],n={scope:"literal",beginKeywords:t.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:t},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,n,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}),ar.registerLanguage("yaml",function(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(r,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},a={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},o={begin:/\{/,end:/\}/,contains:[a],illegal:"\\n",relevance:0},l={begin:"\\[",end:"\\]",contains:[a],illegal:"\\n",relevance:0},c=[{className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},s,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},o,l,{className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},r],u=[...c];return u.pop(),u.push(i),a.contains=u,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:c}}),ar.registerLanguage("bash",function(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const i={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),a={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},o={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(o);const l={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},c=e.SHEBANG({binary:`(${["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|")})`,relevance:10}),u={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],literal:["true","false"],built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"]},contains:[c,e.SHEBANG(),u,l,s,a,{match:/(\/[a-z._-]+)+/},o,{match:/\\"/},{className:"string",begin:/'/,end:/'/},{match:/\\'/},n]}}),ar.registerLanguage("xml",function(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},i={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=e.inherit(i,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:/[\p{L}0-9._:-]+/u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[r]},{begin:/'/,end:/'/,contains:[r]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[i,o,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[i,s,o,a]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[o]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:l}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}),ar.registerLanguage("css",function(e){const t=e.regex,n=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}))(e),r=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/},n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Cr.join("|")+")"},{begin:":(:)?("+Dr.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Sr.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...r,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...r,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:Ar.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...r,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+xr.join("|")+")\\b"}]}}),ar.registerLanguage("sql",function(e){const t=e.regex,n=e.COMMENT("--","$"),r=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],i=r,s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter(e=>!r.includes(e)),a={match:t.concat(/\b/,t.either(...i),/\s*\(/),relevance:0,keywords:{built_in:i}};function o(e){return t.concat(/\b/,t.either(...e.map(e=>e.replace(/\s+/,"\\s+"))),/\b/)}const l={scope:"keyword",match:o(["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"]),relevance:0};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e,{exceptions:t,when:n}={}){const r=n;return t=t||[],e.map(e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e)}(s,{when:e=>e.length<3}),literal:["true","false","unknown"],type:["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{scope:"type",match:o(["double precision","large object","with timezone","without timezone"])},l,a,{scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},{scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},{begin:/"/,end:/"/,contains:[{match:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}}),ar.registerLanguage("markdown",function(e){const t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},r={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},i={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},s=e.inherit(r,{contains:[]}),a=e.inherit(i,{contains:[]});r.contains.push(a),i.contains.push(s);let o=[t,n];return[r,i,s,a].forEach(e=>{e.contains=e.contains.concat(o)}),o=o.concat(r,i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:o},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:o}]}]},t,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},r,i,{className:"quote",begin:"^>\\s+",contains:o,end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},n,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}),ar.registerLanguage("diff",function(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}});const Nr={js:"javascript",jsx:"javascript",mjs:"javascript",ts:"typescript",tsx:"typescript",py:"python",yml:"yaml",sh:"bash",shell:"bash",zsh:"bash",html:"xml",htm:"xml",md:"markdown"};function Tr(e){const t=new tr({html:!1,linkify:!0,breaks:!0,highlight:e?(e,t)=>{const n=function(e){const t=(e||"").trim().toLowerCase();if(!t)return;const n=Nr[t]??t;return ar.getLanguage(n)?n:void 0}(t);if(n)try{return ar.highlight(e,{language:n,ignoreIllegals:!0}).value}catch{}return""}:void 0});return t}const Lr=Tr(!0),Ir=Tr(!1);const Fr={ActivityBar:b,Statusbar:y,View:M,Views:$,KeyboardShortcuts:j,Layout:V,ContentTabs:U,PanelTabs:J,PanelContainers:Y,PanelLayout:{manager:oe},Profile:n,Markdown:{render:function(e,t){return(!1===t?.highlight?Ir:Lr).render(String(e??""))},css:"\n.pnc-md { font-size: 14px; line-height: 1.65; word-break: break-word; }\n.pnc-md p { margin: 0 0 8px; }\n.pnc-md p:last-child { margin-bottom: 0; }\n.pnc-md h1, .pnc-md h2, .pnc-md h3,\n.pnc-md h4, .pnc-md h5, .pnc-md h6 {\n margin: 14px 0 6px;\n line-height: 1.3;\n font-weight: 600;\n}\n.pnc-md h1 { font-size: 1.4em; }\n.pnc-md h2 { font-size: 1.25em; }\n.pnc-md h3 { font-size: 1.12em; }\n.pnc-md h4 { font-size: 1em; }\n.pnc-md h5, .pnc-md h6 { font-size: 0.92em; color: var(--text-secondary, #9aa0a6); }\n.pnc-md ul, .pnc-md ol { margin: 0 0 8px; padding-left: 22px; }\n.pnc-md li { margin: 2px 0; }\n.pnc-md li:last-child { margin-bottom: 0; }\n.pnc-md a { color: var(--primary-main, #6ea8fe); text-decoration: underline; }\n.pnc-md blockquote {\n margin: 6px 0;\n padding: 2px 0 2px 12px;\n border-left: 3px solid var(--neutral-main, rgba(127, 127, 127, 0.35));\n color: var(--text-secondary, #9aa0a6);\n}\n.pnc-md table {\n border-collapse: collapse;\n margin: 8px 0;\n font-size: 13px;\n display: block;\n overflow-x: auto;\n}\n.pnc-md th, .pnc-md td {\n border: 1px solid var(--neutral-main, rgba(127, 127, 127, 0.3));\n padding: 4px 8px;\n text-align: left;\n}\n.pnc-md th { background: rgba(127, 127, 127, 0.12); font-weight: 600; }\n\n/* Inline code */\n.pnc-md code {\n font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);\n font-size: 0.92em;\n padding: 1px 5px;\n border-radius: 5px;\n background: rgba(127, 127, 127, 0.16);\n}\n\n/* Fenced code block — fixed dark surface (One Dark), independent of app theme */\n.pnc-md pre {\n margin: 6px 0 10px;\n border-radius: 8px;\n overflow: hidden;\n background: #282c34;\n border: 1px solid rgba(127, 127, 127, 0.28);\n}\n.pnc-md pre code {\n display: block;\n padding: 12px 14px;\n overflow-x: auto;\n background: none;\n border-radius: 0;\n font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);\n font-size: 12.5px;\n line-height: 1.55;\n color: #abb2bf;\n white-space: pre;\n}\n\n/* Code-block chrome (extension-added): top bar with language + copy button */\n.pnc-md-code { position: relative; }\n.pnc-md-code__bar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 4px 10px;\n background: #21252b;\n border-bottom: 1px solid rgba(127, 127, 127, 0.28);\n font-size: 11px;\n}\n.pnc-md-code__lang {\n color: #7f848e;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n.pnc-md-code__copy {\n border: none;\n background: transparent;\n color: #abb2bf;\n cursor: pointer;\n font-size: 11px;\n padding: 2px 6px;\n border-radius: 4px;\n}\n.pnc-md-code__copy:hover { background: rgba(127, 127, 127, 0.2); }\n.pnc-md-code__copy--done { color: #98c379; }\n\n/* highlight.js — One Dark palette (matches the editor's code coloring) */\n.hljs-comment, .hljs-quote { color: #5c6370; font-style: italic; }\n.hljs-keyword, .hljs-selector-tag, .hljs-literal,\n.hljs-doctag, .hljs-name { color: #c678dd; }\n.hljs-built_in, .hljs-class .hljs-title, .hljs-title.class_,\n.hljs-attr, .hljs-attribute { color: #e5c07b; }\n.hljs-string, .hljs-symbol, .hljs-bullet,\n.hljs-addition, .hljs-regexp { color: #98c379; }\n.hljs-number, .hljs-meta .hljs-number { color: #d19a66; }\n.hljs-title, .hljs-title.function_, .hljs-section { color: #61afef; }\n.hljs-variable, .hljs-template-variable, .hljs-tag,\n.hljs-selector-id, .hljs-selector-class { color: #e06c75; }\n.hljs-meta, .hljs-comment .hljs-doctag { color: #56b6c2; }\n.hljs-deletion { color: #e06c75; }\n.hljs-emphasis { font-style: italic; }\n.hljs-strong { font-weight: 600; }\n"}};class zr{name=r.SHELL.ACTIVITY_BAR;version="1.0.0";dependencies=[r.KERNEL.COMMANDS,r.RUNTIME.WORKSPACE];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e,s=n.getState(r.KERNEL.COMMANDS),a=n.getState(r.RUNTIME.WORKSPACE);if(s!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.activityBar");if(a!==i.BOOTSTRAPPED)throw new Error("runtime.workspace must be bootstrapped before shell.activityBar");if(!t.shell?.ActivityBar?.manager)throw new Error("ActivityBar manager not available")}async start(e){g.init()}}class Mr{name=r.SHELL.STATUSBAR;version="1.0.0";dependencies=[r.KERNEL.EVENTS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.EVENTS)!==i.BOOTSTRAPPED)throw new Error("kernel.events must be bootstrapped before shell.statusbar");if(!t.shell?.Statusbar?.manager)throw new Error("Statusbar manager not available")}async start(e){}}class Or{name=r.SHELL.VIEW;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.view");if(!t.shell?.View)throw new Error("View API not available")}async start(e){const{punica:t}=e;if(t.shell?.View?.Theme?.manager)try{await t.shell.View.Theme.manager.initialize(),console.log("[ViewModule] Theme manager initialized")}catch(e){console.error("[ViewModule] Failed to initialize theme manager:",e)}}}class Br{name=r.SHELL.VIEWS;version="1.0.0";dependencies=[r.SHELL.LAYOUT,r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.SHELL.LAYOUT)!==i.BOOTSTRAPPED)throw new Error("shell.layout must be bootstrapped before shell.views");if(!t.shell?.Views?.manager)throw new Error("Views API not available")}async start(e){}}class Rr{name=r.SHELL.KEYBOARD_SHORTCUTS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.keyboardShortcuts");if(!t.shell?.KeyboardShortcuts?.manager)throw new Error("KeyboardShortcuts manager not available")}async start(e){!function(){const e=globalThis.punica?.shell?.KeyboardShortcuts?.manager;if(!e)return;const t=(t,n,r)=>{e.registerShortcut({command:n,keys:[a(t)],when:r})};t("mod+j",s.SHELL.TOGGLE_PANEL),t("mod+b",s.SHELL.TOGGLE_PRIMARY_SIDEBAR),t("mod+l",s.SHELL.TOGGLE_SECONDARY_SIDEBAR)}()}}class $r{name=r.SHELL.LAYOUT;version="1.0.0";dependencies=[r.KERNEL.COMMANDS,r.RUNTIME.WORKSPACE];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e,s=n.getState(r.KERNEL.COMMANDS),a=n.getState(r.RUNTIME.WORKSPACE);if(s!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.layout");if(a!==i.BOOTSTRAPPED)throw new Error("runtime.workspace must be bootstrapped before shell.layout");if(!t.shell?.Layout?.manager)throw new Error("Layout manager not available")}async start(e){}}class jr{name=r.SHELL.CONTENT_TABS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.contentTabs");if(!t.shell?.ContentTabs)throw new Error("ContentTabs API not available")}async start(e){}}class Pr{name=r.SHELL.PANEL_TABS;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t,registry:n}=e;if(n.getState(r.KERNEL.COMMANDS)!==i.BOOTSTRAPPED)throw new Error("kernel.commands must be bootstrapped before shell.panelTabs");if(!t.shell?.PanelTabs)throw new Error("PanelTabs API not available")}async start(e){}}class Hr{name=r.SHELL.PANEL_LAYOUT;version="1.0.0";dependencies=[r.KERNEL.COMMANDS];#ht=i.CREATED;get state(){return this.#ht}async bootstrap(e){const{punica:t}=e;if(!t.shell?.PanelLayout?.manager)throw new Error("PanelLayout API not available")}async start(e){try{await e.punica.shell.PanelLayout.manager.load()}catch(e){console.warn("[PanelLayout] load during start failed",e)}}}const qr={schemaVersion:"1",identity:{id:"ivyx-classic",name:"ivyx",version:"1.0.0",audience:"ml-engineer",branding:{productName:"ivyx"}},shell:{activeModules:["shell.activityBar","shell.statusbar","shell.view","shell.keyboardShortcuts","shell.layout","shell.views","shell.contentTabs","shell.panelTabs","shell.panelLayout","flow.shell"],layout:{id:"classic-editor",root:{type:"row",sizes:[70,30],children:[{type:"column",sizes:[80,20],children:[{type:"slot",id:"content",role:"content"},{type:"slot",id:"panel",role:"panel"}]},{type:"slot",id:"secondarySidebar",role:"secondarySidebar"}]}}},theme:{mode:"auto",density:"comfortable",branding:{productName:"ivyx"}},capabilities:{allowedIds:"*"}},Vr={schemaVersion:"1",identity:{id:"agent-ops-console",name:"Agent Ops Console",version:"1.0.0",audience:"compliance-officer",branding:{productName:"Agent Ops Console"}},shell:{activeModules:["shell.statusbar","shell.view","shell.layout","shell.views","shell.contentTabs"],layout:{id:"agent-ops-dashboard",root:{type:"column",sizes:[100],children:[{type:"slot",id:"content",role:"content"}]}}},theme:{mode:"dark",density:"compact",branding:{productName:"Agent Ops Console"}},capabilities:{allowedIds:["capability.catalog","capability.schemaExport","event.query","event.replay","llm.listProviders","workspace.get","fs.read","fs.stat","fs.exists","fs.list","fs.snapshot","approval.grant","approval.revoke","delegation.create","flow.validate","cost.report"],deniedIds:["fs.write","fs.delete","fs.copy","fs.migrate","fs.restore","workspace.create","workspace.delete","secrets.set","secrets.delete","vcs.commit","vcs.push"],allowedOrigins:["core","extension","instruction-class"]}};function Ur(){o({facade:Fr,moduleFactories:{"shell.statusbar":()=>new Mr,"shell.view":()=>new Or,"shell.views":()=>new Br,"shell.keyboardShortcuts":()=>new Rr,"shell.contentTabs":()=>new jr,"shell.panelTabs":()=>new Pr,"shell.panelLayout":()=>new Hr,"shell.layout":()=>new $r,"shell.activityBar":()=>new zr},profiles:[qr,Vr],defaultProfileId:"ivyx-classic"})}export{Ur as registerClassicShell};
|
|
2
2
|
//# sourceMappingURL=index.bundle.esm.js.map
|