diff --git a/server/src/index.ts b/server/src/index.ts index 38a5588..a864f00 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -92,21 +92,23 @@ app.get("/api/health", async () => ({ ok: true })); app.get("/api/tools", async () => ({ ok: true, tools: toolNames() })); -app.get("/api/model", async () => { +app.get("/api/model", async (req, reply) => { + const q = (req.query as { name?: string }).name; + const name = q && /^[\w.:-]{2,80}$/.test(q) ? q : MODEL; try { const res = await fetch(`${OLLAMA_URL}/api/show`, { method: "POST", headers: { "Content-Type": "application/json" }, - body: JSON.stringify({ name: MODEL }), + body: JSON.stringify({ name }), }); - if (!res.ok) return { ok: false, error: `Ollama HTTP ${res.status}` }; + if (!res.ok) return reply.code(404).send({ ok: false, error: `Ollama HTTP ${res.status}` }); const data = (await res.json()) as { details?: { parameter_size?: string; quantization_level?: string }; capabilities?: string[]; }; return { ok: true, - model: MODEL, + model: name, parameterSize: data.details?.parameter_size, quantization: data.details?.quantization_level, capabilities: data.capabilities ?? [], @@ -139,7 +141,7 @@ app.delete("/api/sessions/:id", async (req) => { app.get("/api/sessions/:id/memory", async (req, reply) => { const { id } = req.params as { id: string }; if (!dbmod.getSession(id)) return reply.code(404).send({ error: "not found" }); - return { state: mem.getMemoryState(id), anchors: mem.listAnchors(id) }; + return { state: mem.getMemoryState(id), anchors: mem.listAnchorsAll() }; }); app.post("/api/sessions/:id/dream", async (req, reply) => { @@ -235,6 +237,29 @@ app.get("/api/openrouter/models", async () => { } }); +// --- Ollama models --- +app.get("/api/ollama/models", async () => { + try { + const res = await fetch(`${OLLAMA_URL}/api/tags`); + if (!res.ok) return { ok: false, error: `Ollama HTTP ${res.status}` }; + const data = (await res.json()) as { + models?: { name: string; size?: number; details?: { parameter_size?: string; quantization_level?: string } }[]; + }; + return { + ok: true, + models: (data.models ?? []).map((m) => ({ + name: m.name, + sizeGB: m.size ? Math.round(m.size / 1e8) / 10 : undefined, + parameterSize: m.details?.parameter_size, + quantization: m.details?.quantization_level, + })), + }; + } catch (err) { + app.log.error({ err }, "Ollama-Modellliste fehlgeschlagen"); + return { ok: false, error: "Ollama nicht erreichbar" }; + } +}); + // --- WebSocket --- interface ChatOptionsPayload { think: boolean; @@ -243,6 +268,7 @@ interface ChatOptionsPayload { provider?: string; openrouterModel?: string; tools?: boolean; + model?: string; memorySteps?: number; memoryAnchors?: boolean; dreamAuto?: boolean; @@ -257,7 +283,10 @@ function parseOptions(raw: unknown): OllamaOptions & { } { const o = (raw ?? {}) as Partial; return { - model: MODEL, + model: + typeof o.model === "string" && /^[\w.:-]{2,80}$/.test(o.model) + ? o.model + : MODEL, think: o.think !== false, tools: o.tools !== false, temperature: clamp(Number(o.temperature ?? 0.7), 0, 2), diff --git a/server/src/memory.ts b/server/src/memory.ts index f36a92f..64948d0 100644 --- a/server/src/memory.ts +++ b/server/src/memory.ts @@ -139,6 +139,15 @@ export function listAnchors(sessionId: string): AnchorRow[] { .all(sessionId) as unknown as AnchorRow[]; } +/** Ankerpunkte über alle Sessions — das Gedächtnis ist bewusst global. */ +export function listAnchorsAll(): AnchorRow[] { + return db + .prepare( + "SELECT * FROM anchors ORDER BY pinned DESC, importance DESC, updated_at DESC LIMIT 100", + ) + .all() as unknown as AnchorRow[]; +} + function countAnchors(sessionId: string): number { return Number( ( @@ -354,25 +363,27 @@ export function anchorContextBlock( sessionId: string, maxChars = 1200, ): string | null { - const anchors = listAnchors(sessionId).slice(0, 20); + const all = [...listAnchorsAll()]; + const score = (a: AnchorRow) => + (a.pinned ? 2 : 0) + a.importance + (a.session_id === sessionId ? 0.5 : 0); + all.sort((x, y) => score(y) - score(x)); const lines: string[] = []; let chars = 0; - for (const a of anchors) { + for (const a of all) { const line = `- [${KIND_LABEL[a.kind] ?? a.kind}] ${a.text}`; if (chars + line.length > maxChars) break; lines.push(line); chars += line.length; } if (lines.length === 0) return null; - return `Bekannte Ankerpunkte aus diesem und früheren Gesprächen (Gedächtnis — als Kontext nutzen, nicht wörtlich zitieren):\n${lines.join("\n")}`; + return `Bekannte Ankerpunkte über den Nutzer aus früheren und aktuellen Gesprächen (Gedächtnis — als verlässliches Wissen behandeln, nicht wörtlich zitieren):\n${lines.join("\n")}`; } export function queryAnchors( - sessionId: string, query: string, limit = 12, ): AnchorRow[] { - const anchors = listAnchors(sessionId); + const anchors = listAnchorsAll(); const q = query.trim(); if (!q) return anchors.slice(0, limit); return anchors diff --git a/server/src/security.ts b/server/src/security.ts index e4cba24..183be27 100644 --- a/server/src/security.ts +++ b/server/src/security.ts @@ -8,6 +8,8 @@ */ const DEFAULT_ORIGINS = [ + "http://localhost:5173", + "http://127.0.0.1:5173", "http://localhost:5174", "http://127.0.0.1:5174", "http://localhost:8788", diff --git a/server/src/tools/recall.ts b/server/src/tools/recall.ts index ec6d4f8..0d9c655 100644 --- a/server/src/tools/recall.ts +++ b/server/src/tools/recall.ts @@ -17,7 +17,7 @@ export const recallTool: Tool = { }, async run(args, ctx) { if (!ctx.sessionId) throw new ToolError("Keine Sitzung für das Gedächtnis bekannt"); - const anchors = queryAnchors(ctx.sessionId, String(args.query ?? "")); + const anchors = queryAnchors(String(args.query ?? "")); return { count: anchors.length, anchors: anchors.map((a) => ({ diff --git a/web/dist/assets/index-BvIjR1bZ.js b/web/dist/assets/index-BvIjR1bZ.js deleted file mode 100644 index 5a583fb..0000000 --- a/web/dist/assets/index-BvIjR1bZ.js +++ /dev/null @@ -1,74 +0,0 @@ -var Th=Object.defineProperty;var Ah=(e,i,r)=>i in e?Th(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r;var Ci=(e,i,r)=>Ah(e,typeof i!="symbol"?i+"":i,r);(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))l(s);new MutationObserver(s=>{for(const c of s)if(c.type==="childList")for(const u of c.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&l(u)}).observe(document,{childList:!0,subtree:!0});function r(s){const c={};return s.integrity&&(c.integrity=s.integrity),s.referrerPolicy&&(c.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?c.credentials="include":s.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function l(s){if(s.ep)return;s.ep=!0;const c=r(s);fetch(s.href,c)}})();function Ao(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var js={exports:{}},yo={},Gs={exports:{}},Fe={};/** - * @license React - * react.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var ud;function Rh(){if(ud)return Fe;ud=1;var e=Symbol.for("react.element"),i=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),u=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),h=Symbol.iterator;function b(O){return O===null||typeof O!="object"?null:(O=h&&O[h]||O["@@iterator"],typeof O=="function"?O:null)}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,T={};function S(O,$,w){this.props=O,this.context=$,this.refs=T,this.updater=w||E}S.prototype.isReactComponent={},S.prototype.setState=function(O,$){if(typeof O!="object"&&typeof O!="function"&&O!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,O,$,"setState")},S.prototype.forceUpdate=function(O){this.updater.enqueueForceUpdate(this,O,"forceUpdate")};function N(){}N.prototype=S.prototype;function B(O,$,w){this.props=O,this.context=$,this.refs=T,this.updater=w||E}var P=B.prototype=new N;P.constructor=B,k(P,S.prototype),P.isPureReactComponent=!0;var j=Array.isArray,Z=Object.prototype.hasOwnProperty,A={current:null},X={key:!0,ref:!0,__self:!0,__source:!0};function ee(O,$,w){var we,Me={},ke=null,$e=null;if($!=null)for(we in $.ref!==void 0&&($e=$.ref),$.key!==void 0&&(ke=""+$.key),$)Z.call($,we)&&!X.hasOwnProperty(we)&&(Me[we]=$[we]);var De=arguments.length-2;if(De===1)Me.children=w;else if(1>>1,$=G[O];if(0>>1;Os(Me,v))ke<$&&0>s($e,Me)?(G[O]=$e,G[ke]=v,O=ke):(G[O]=Me,G[we]=v,O=we);else if(ke<$&&0>s($e,v))G[O]=$e,G[ke]=v,O=ke;else break e}}return ae}function s(G,ae){var v=G.sortIndex-ae.sortIndex;return v!==0?v:G.id-ae.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var u=Date,d=u.now();e.unstable_now=function(){return u.now()-d}}var p=[],g=[],y=1,h=null,b=3,E=!1,k=!1,T=!1,S=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,B=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function P(G){for(var ae=r(g);ae!==null;){if(ae.callback===null)l(g);else if(ae.startTime<=G)l(g),ae.sortIndex=ae.expirationTime,i(p,ae);else break;ae=r(g)}}function j(G){if(T=!1,P(G),!k)if(r(p)!==null)k=!0,ue(Z);else{var ae=r(g);ae!==null&&ce(j,ae.startTime-G)}}function Z(G,ae){k=!1,T&&(T=!1,N(ee),ee=-1),E=!0;var v=b;try{for(P(ae),h=r(p);h!==null&&(!(h.expirationTime>ae)||G&&!W());){var O=h.callback;if(typeof O=="function"){h.callback=null,b=h.priorityLevel;var $=O(h.expirationTime<=ae);ae=e.unstable_now(),typeof $=="function"?h.callback=$:h===r(p)&&l(p),P(ae)}else l(p);h=r(p)}if(h!==null)var w=!0;else{var we=r(g);we!==null&&ce(j,we.startTime-ae),w=!1}return w}finally{h=null,b=v,E=!1}}var A=!1,X=null,ee=-1,re=5,M=-1;function W(){return!(e.unstable_now()-MG||125O?(G.sortIndex=v,i(g,G),r(p)===null&&G===r(g)&&(T?(N(ee),ee=-1):T=!0,ce(j,v-O))):(G.sortIndex=$,i(p,G),k||E||(k=!0,ue(Z))),G},e.unstable_shouldYield=W,e.unstable_wrapCallback=function(G){var ae=b;return function(){var v=b;b=ae;try{return G.apply(this,arguments)}finally{b=v}}}})(Vs)),Vs}var gd;function Dh(){return gd||(gd=1,Ws.exports=Lh()),Ws.exports}/** - * @license React - * react-dom.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var md;function Ph(){if(md)return Yt;md=1;var e=Nu(),i=Dh();function r(t){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+t,o=1;o"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),p=Object.prototype.hasOwnProperty,g=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,y={},h={};function b(t){return p.call(h,t)?!0:p.call(y,t)?!1:g.test(t)?h[t]=!0:(y[t]=!0,!1)}function E(t,n,o,a){if(o!==null&&o.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return a?!1:o!==null?!o.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function k(t,n,o,a){if(n===null||typeof n>"u"||E(t,n,o,a))return!0;if(a)return!1;if(o!==null)switch(o.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function T(t,n,o,a,f,m,_){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=a,this.attributeNamespace=f,this.mustUseProperty=o,this.propertyName=t,this.type=n,this.sanitizeURL=m,this.removeEmptyString=_}var S={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){S[t]=new T(t,0,!1,t,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var n=t[0];S[n]=new T(n,1,!1,t[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(t){S[t]=new T(t,2,!1,t.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){S[t]=new T(t,2,!1,t,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){S[t]=new T(t,3,!1,t.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(t){S[t]=new T(t,3,!0,t,null,!1,!1)}),["capture","download"].forEach(function(t){S[t]=new T(t,4,!1,t,null,!1,!1)}),["cols","rows","size","span"].forEach(function(t){S[t]=new T(t,6,!1,t,null,!1,!1)}),["rowSpan","start"].forEach(function(t){S[t]=new T(t,5,!1,t.toLowerCase(),null,!1,!1)});var N=/[\-:]([a-z])/g;function B(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var n=t.replace(N,B);S[n]=new T(n,1,!1,t,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var n=t.replace(N,B);S[n]=new T(n,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(t){var n=t.replace(N,B);S[n]=new T(n,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(t){S[t]=new T(t,1,!1,t.toLowerCase(),null,!1,!1)}),S.xlinkHref=new T("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(t){S[t]=new T(t,1,!1,t.toLowerCase(),null,!0,!0)});function P(t,n,o,a){var f=S.hasOwnProperty(n)?S[n]:null;(f!==null?f.type!==0:a||!(2x||f[_]!==m[x]){var R=` -`+f[_].replace(" at new "," at ");return t.displayName&&R.includes("")&&(R=R.replace("",t.displayName)),R}while(1<=_&&0<=x);break}}}finally{w=!1,Error.prepareStackTrace=o}return(t=t?t.displayName||t.name:"")?$(t):""}function Me(t){switch(t.tag){case 5:return $(t.type);case 16:return $("Lazy");case 13:return $("Suspense");case 19:return $("SuspenseList");case 0:case 2:case 15:return t=we(t.type,!1),t;case 11:return t=we(t.type.render,!1),t;case 1:return t=we(t.type,!0),t;default:return""}}function ke(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case X:return"Fragment";case A:return"Portal";case re:return"Profiler";case ee:return"StrictMode";case te:return"Suspense";case L:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case W:return(t.displayName||"Context")+".Consumer";case M:return(t._context.displayName||"Context")+".Provider";case q:var n=t.render;return t=t.displayName,t||(t=n.displayName||n.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case U:return n=t.displayName||null,n!==null?n:ke(t.type)||"Memo";case ue:n=t._payload,t=t._init;try{return ke(t(n))}catch{}}return null}function $e(t){var n=t.type;switch(t.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=n.render,t=t.displayName||t.name||"",n.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ke(n);case 8:return n===ee?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function De(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function Ge(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Xe(t){var n=Ge(t)?"checked":"value",o=Object.getOwnPropertyDescriptor(t.constructor.prototype,n),a=""+t[n];if(!t.hasOwnProperty(n)&&typeof o<"u"&&typeof o.get=="function"&&typeof o.set=="function"){var f=o.get,m=o.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return f.call(this)},set:function(_){a=""+_,m.call(this,_)}}),Object.defineProperty(t,n,{enumerable:o.enumerable}),{getValue:function(){return a},setValue:function(_){a=""+_},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function Xt(t){t._valueTracker||(t._valueTracker=Xe(t))}function rr(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var o=n.getValue(),a="";return t&&(a=Ge(t)?t.checked?"true":"false":t.value),t=a,t!==o?(n.setValue(t),!0):!1}function An(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function Hn(t,n){var o=n.checked;return v({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:o??t._wrapperState.initialChecked})}function jn(t,n){var o=n.defaultValue==null?"":n.defaultValue,a=n.checked!=null?n.checked:n.defaultChecked;o=De(n.value!=null?n.value:o),t._wrapperState={initialChecked:a,initialValue:o,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Ke(t,n){n=n.checked,n!=null&&P(t,"checked",n,!1)}function Jt(t,n){Ke(t,n);var o=De(n.value),a=n.type;if(o!=null)a==="number"?(o===0&&t.value===""||t.value!=o)&&(t.value=""+o):t.value!==""+o&&(t.value=""+o);else if(a==="submit"||a==="reset"){t.removeAttribute("value");return}n.hasOwnProperty("value")?Rn(t,n.type,o):n.hasOwnProperty("defaultValue")&&Rn(t,n.type,De(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(t.defaultChecked=!!n.defaultChecked)}function an(t,n,o){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var a=n.type;if(!(a!=="submit"&&a!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+t._wrapperState.initialValue,o||n===t.value||(t.value=n),t.defaultValue=n}o=t.name,o!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,o!==""&&(t.name=o)}function Rn(t,n,o){(n!=="number"||An(t.ownerDocument)!==t)&&(o==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+o&&(t.defaultValue=""+o))}var bn=Array.isArray;function On(t,n,o,a){if(t=t.options,n){n={};for(var f=0;f"+n.valueOf().toString()+"",n=Te.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;n.firstChild;)t.appendChild(n.firstChild)}});function He(t,n){if(n){var o=t.firstChild;if(o&&o===t.lastChild&&o.nodeType===3){o.nodeValue=n;return}}t.textContent=n}var _t={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},En=["Webkit","ms","Moz","O"];Object.keys(_t).forEach(function(t){En.forEach(function(n){n=n+t.charAt(0).toUpperCase()+t.substring(1),_t[n]=_t[t]})});function jt(t,n,o){return n==null||typeof n=="boolean"||n===""?"":o||typeof n!="number"||n===0||_t.hasOwnProperty(t)&&_t[t]?(""+n).trim():n+"px"}function _n(t,n){t=t.style;for(var o in n)if(n.hasOwnProperty(o)){var a=o.indexOf("--")===0,f=jt(o,n[o],a);o==="float"&&(o="cssFloat"),a?t.setProperty(o,f):t[o]=f}}var Gn=v({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function vt(t,n){if(n){if(Gn[t]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(r(137,t));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(r(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(r(61))}if(n.style!=null&&typeof n.style!="object")throw Error(r(62))}}function un(t,n){if(t.indexOf("-")===-1)return typeof n.is=="string";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Tt=null;function ei(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var ti=null,ir=null,Kn=null;function Wn(t){if(t=to(t)){if(typeof ti!="function")throw Error(r(280));var n=t.stateNode;n&&(n=nl(n),ti(t.stateNode,t.type,n))}}function C(t){ir?Kn?Kn.push(t):Kn=[t]:ir=t}function V(){if(ir){var t=ir,n=Kn;if(Kn=ir=null,Wn(t),n)for(t=0;t>>=0,t===0?32:31-(Mn(t)/ii|0)|0}var Ft=64,Ir=4194304;function lr(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function Mr(t,n){var o=t.pendingLanes;if(o===0)return 0;var a=0,f=t.suspendedLanes,m=t.pingedLanes,_=o&268435455;if(_!==0){var x=_&~f;x!==0?a=lr(x):(m&=_,m!==0&&(a=lr(m)))}else _=o&~f,_!==0?a=lr(_):m!==0&&(a=lr(m));if(a===0)return 0;if(n!==0&&n!==a&&(n&f)===0&&(f=a&-a,m=n&-n,f>=m||f===16&&(m&4194240)!==0))return n;if((a&4)!==0&&(a|=o&16),n=t.entangledLanes,n!==0)for(t=t.entanglements,n&=a;0o;o++)n.push(t);return n}function sr(t,n,o){t.pendingLanes|=n,n!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,n=31-ut(n),t[n]=o}function cn(t,n){var o=t.pendingLanes&~n;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=n,t.mutableReadLanes&=n,t.entangledLanes&=n,n=t.entanglements;var a=t.eventTimes;for(t=t.expirationTimes;0=Wi),tc=" ",nc=!1;function rc(t,n){switch(t){case"keyup":return wm.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ic(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var ai=!1;function Sm(t,n){switch(t){case"compositionend":return ic(n);case"keypress":return n.which!==32?null:(nc=!0,tc);case"textInput":return t=n.data,t===tc&&nc?null:t;default:return null}}function Nm(t,n){if(ai)return t==="compositionend"||!wa&&rc(t,n)?(t=Yu(),Ko=ya=cr=null,ai=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1=n)return{node:o,offset:n-t};t=a}e:{for(;o;){if(o.nextSibling){o=o.nextSibling;break e}o=o.parentNode}o=void 0}o=fc(o)}}function pc(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?pc(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function gc(){for(var t=window,n=An();n instanceof t.HTMLIFrameElement;){try{var o=typeof n.contentWindow.location.href=="string"}catch{o=!1}if(o)t=n.contentWindow;else break;n=An(t.document)}return n}function Na(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}function Dm(t){var n=gc(),o=t.focusedElem,a=t.selectionRange;if(n!==o&&o&&o.ownerDocument&&pc(o.ownerDocument.documentElement,o)){if(a!==null&&Na(o)){if(n=a.start,t=a.end,t===void 0&&(t=n),"selectionStart"in o)o.selectionStart=n,o.selectionEnd=Math.min(t,o.value.length);else if(t=(n=o.ownerDocument||document)&&n.defaultView||window,t.getSelection){t=t.getSelection();var f=o.textContent.length,m=Math.min(a.start,f);a=a.end===void 0?m:Math.min(a.end,f),!t.extend&&m>a&&(f=a,a=m,m=f),f=dc(o,m);var _=dc(o,a);f&&_&&(t.rangeCount!==1||t.anchorNode!==f.node||t.anchorOffset!==f.offset||t.focusNode!==_.node||t.focusOffset!==_.offset)&&(n=n.createRange(),n.setStart(f.node,f.offset),t.removeAllRanges(),m>a?(t.addRange(n),t.extend(_.node,_.offset)):(n.setEnd(_.node,_.offset),t.addRange(n)))}}for(n=[],t=o;t=t.parentNode;)t.nodeType===1&&n.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;o=document.documentMode,si=null,Ca=null,Qi=null,Ta=!1;function mc(t,n,o){var a=o.window===o?o.document:o.nodeType===9?o:o.ownerDocument;Ta||si==null||si!==An(a)||(a=si,"selectionStart"in a&&Na(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Qi&&Yi(Qi,a)||(Qi=a,a=Jo(Ca,"onSelect"),0pi||(t.current=Ua[pi],Ua[pi]=null,pi--)}function nt(t,n){pi++,Ua[pi]=t.current,t.current=n}var gr={},Ot=pr(gr),Gt=pr(!1),zr=gr;function gi(t,n){var o=t.type.contextTypes;if(!o)return gr;var a=t.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===n)return a.__reactInternalMemoizedMaskedChildContext;var f={},m;for(m in o)f[m]=n[m];return a&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=n,t.__reactInternalMemoizedMaskedChildContext=f),f}function Kt(t){return t=t.childContextTypes,t!=null}function rl(){ot(Gt),ot(Ot)}function Rc(t,n,o){if(Ot.current!==gr)throw Error(r(168));nt(Ot,n),nt(Gt,o)}function Oc(t,n,o){var a=t.stateNode;if(n=n.childContextTypes,typeof a.getChildContext!="function")return o;a=a.getChildContext();for(var f in a)if(!(f in n))throw Error(r(108,$e(t)||"Unknown",f));return v({},o,a)}function il(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||gr,zr=Ot.current,nt(Ot,t),nt(Gt,Gt.current),!0}function Ic(t,n,o){var a=t.stateNode;if(!a)throw Error(r(169));o?(t=Oc(t,n,zr),a.__reactInternalMemoizedMergedChildContext=t,ot(Gt),ot(Ot),nt(Ot,t)):ot(Gt),nt(Gt,o)}var Yn=null,ol=!1,$a=!1;function Mc(t){Yn===null?Yn=[t]:Yn.push(t)}function Vm(t){ol=!0,Mc(t)}function mr(){if(!$a&&Yn!==null){$a=!0;var t=0,n=Ve;try{var o=Yn;for(Ve=1;t>=_,f-=_,Qn=1<<32-ut(n)+f|o<Oe?(Ct=Ne,Ne=null):Ct=Ne.sibling;var Ye=Y(D,Ne,z[Oe],oe);if(Ye===null){Ne===null&&(Ne=Ct);break}t&&Ne&&Ye.alternate===null&&n(D,Ne),I=m(Ye,I,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye,Ne=Ct}if(Oe===z.length)return o(D,Ne),at&&Br(D,Oe),_e;if(Ne===null){for(;OeOe?(Ct=Ne,Ne=null):Ct=Ne.sibling;var xr=Y(D,Ne,Ye.value,oe);if(xr===null){Ne===null&&(Ne=Ct);break}t&&Ne&&xr.alternate===null&&n(D,Ne),I=m(xr,I,Oe),Se===null?_e=xr:Se.sibling=xr,Se=xr,Ne=Ct}if(Ye.done)return o(D,Ne),at&&Br(D,Oe),_e;if(Ne===null){for(;!Ye.done;Oe++,Ye=z.next())Ye=J(D,Ye.value,oe),Ye!==null&&(I=m(Ye,I,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye);return at&&Br(D,Oe),_e}for(Ne=a(D,Ne);!Ye.done;Oe++,Ye=z.next())Ye=pe(Ne,D,Oe,Ye.value,oe),Ye!==null&&(t&&Ye.alternate!==null&&Ne.delete(Ye.key===null?Oe:Ye.key),I=m(Ye,I,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye);return t&&Ne.forEach(function(Ch){return n(D,Ch)}),at&&Br(D,Oe),_e}function ht(D,I,z,oe){if(typeof z=="object"&&z!==null&&z.type===X&&z.key===null&&(z=z.props.children),typeof z=="object"&&z!==null){switch(z.$$typeof){case Z:e:{for(var _e=z.key,Se=I;Se!==null;){if(Se.key===_e){if(_e=z.type,_e===X){if(Se.tag===7){o(D,Se.sibling),I=f(Se,z.props.children),I.return=D,D=I;break e}}else if(Se.elementType===_e||typeof _e=="object"&&_e!==null&&_e.$$typeof===ue&&Bc(_e)===Se.type){o(D,Se.sibling),I=f(Se,z.props),I.ref=no(D,Se,z),I.return=D,D=I;break e}o(D,Se);break}else n(D,Se);Se=Se.sibling}z.type===X?(I=Vr(z.props.children,D.mode,oe,z.key),I.return=D,D=I):(oe=Ml(z.type,z.key,z.props,null,D.mode,oe),oe.ref=no(D,I,z),oe.return=D,D=oe)}return _(D);case A:e:{for(Se=z.key;I!==null;){if(I.key===Se)if(I.tag===4&&I.stateNode.containerInfo===z.containerInfo&&I.stateNode.implementation===z.implementation){o(D,I.sibling),I=f(I,z.children||[]),I.return=D,D=I;break e}else{o(D,I);break}else n(D,I);I=I.sibling}I=Fs(z,D.mode,oe),I.return=D,D=I}return _(D);case ue:return Se=z._init,ht(D,I,Se(z._payload),oe)}if(bn(z))return be(D,I,z,oe);if(ae(z))return Ee(D,I,z,oe);ul(D,z)}return typeof z=="string"&&z!==""||typeof z=="number"?(z=""+z,I!==null&&I.tag===6?(o(D,I.sibling),I=f(I,z),I.return=D,D=I):(o(D,I),I=zs(z,D.mode,oe),I.return=D,D=I),_(D)):o(D,I)}return ht}var bi=Uc(!0),$c=Uc(!1),cl=pr(null),fl=null,Ei=null,Va=null;function qa(){Va=Ei=fl=null}function Ya(t){var n=cl.current;ot(cl),t._currentValue=n}function Qa(t,n,o){for(;t!==null;){var a=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,a!==null&&(a.childLanes|=n)):a!==null&&(a.childLanes&n)!==n&&(a.childLanes|=n),t===o)break;t=t.return}}function _i(t,n){fl=t,Va=Ei=null,t=t.dependencies,t!==null&&t.firstContext!==null&&((t.lanes&n)!==0&&(Wt=!0),t.firstContext=null)}function pn(t){var n=t._currentValue;if(Va!==t)if(t={context:t,memoizedValue:n,next:null},Ei===null){if(fl===null)throw Error(r(308));Ei=t,fl.dependencies={lanes:0,firstContext:t}}else Ei=Ei.next=t;return n}var Ur=null;function Za(t){Ur===null?Ur=[t]:Ur.push(t)}function Hc(t,n,o,a){var f=n.interleaved;return f===null?(o.next=o,Za(n)):(o.next=f.next,f.next=o),n.interleaved=o,Xn(t,a)}function Xn(t,n){t.lanes|=n;var o=t.alternate;for(o!==null&&(o.lanes|=n),o=t,t=t.return;t!==null;)t.childLanes|=n,o=t.alternate,o!==null&&(o.childLanes|=n),o=t,t=t.return;return o.tag===3?o.stateNode:null}var hr=!1;function Xa(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function jc(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function Jn(t,n){return{eventTime:t,lane:n,tag:0,payload:null,callback:null,next:null}}function yr(t,n,o){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(qe&2)!==0){var f=a.pending;return f===null?n.next=n:(n.next=f.next,f.next=n),a.pending=n,Xn(t,o)}return f=a.interleaved,f===null?(n.next=n,Za(a)):(n.next=f.next,f.next=n),a.interleaved=n,Xn(t,o)}function dl(t,n,o){if(n=n.updateQueue,n!==null&&(n=n.shared,(o&4194240)!==0)){var a=n.lanes;a&=t.pendingLanes,o|=a,n.lanes=o,Bi(t,o)}}function Gc(t,n){var o=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,o===a)){var f=null,m=null;if(o=o.firstBaseUpdate,o!==null){do{var _={eventTime:o.eventTime,lane:o.lane,tag:o.tag,payload:o.payload,callback:o.callback,next:null};m===null?f=m=_:m=m.next=_,o=o.next}while(o!==null);m===null?f=m=n:m=m.next=n}else f=m=n;o={baseState:a.baseState,firstBaseUpdate:f,lastBaseUpdate:m,shared:a.shared,effects:a.effects},t.updateQueue=o;return}t=o.lastBaseUpdate,t===null?o.firstBaseUpdate=n:t.next=n,o.lastBaseUpdate=n}function pl(t,n,o,a){var f=t.updateQueue;hr=!1;var m=f.firstBaseUpdate,_=f.lastBaseUpdate,x=f.shared.pending;if(x!==null){f.shared.pending=null;var R=x,F=R.next;R.next=null,_===null?m=F:_.next=F,_=R;var Q=t.alternate;Q!==null&&(Q=Q.updateQueue,x=Q.lastBaseUpdate,x!==_&&(x===null?Q.firstBaseUpdate=F:x.next=F,Q.lastBaseUpdate=R))}if(m!==null){var J=f.baseState;_=0,Q=F=R=null,x=m;do{var Y=x.lane,pe=x.eventTime;if((a&Y)===Y){Q!==null&&(Q=Q.next={eventTime:pe,lane:0,tag:x.tag,payload:x.payload,callback:x.callback,next:null});e:{var be=t,Ee=x;switch(Y=n,pe=o,Ee.tag){case 1:if(be=Ee.payload,typeof be=="function"){J=be.call(pe,J,Y);break e}J=be;break e;case 3:be.flags=be.flags&-65537|128;case 0:if(be=Ee.payload,Y=typeof be=="function"?be.call(pe,J,Y):be,Y==null)break e;J=v({},J,Y);break e;case 2:hr=!0}}x.callback!==null&&x.lane!==0&&(t.flags|=64,Y=f.effects,Y===null?f.effects=[x]:Y.push(x))}else pe={eventTime:pe,lane:Y,tag:x.tag,payload:x.payload,callback:x.callback,next:null},Q===null?(F=Q=pe,R=J):Q=Q.next=pe,_|=Y;if(x=x.next,x===null){if(x=f.shared.pending,x===null)break;Y=x,x=Y.next,Y.next=null,f.lastBaseUpdate=Y,f.shared.pending=null}}while(!0);if(Q===null&&(R=J),f.baseState=R,f.firstBaseUpdate=F,f.lastBaseUpdate=Q,n=f.shared.interleaved,n!==null){f=n;do _|=f.lane,f=f.next;while(f!==n)}else m===null&&(f.shared.lanes=0);jr|=_,t.lanes=_,t.memoizedState=J}}function Kc(t,n,o){if(t=n.effects,n.effects=null,t!==null)for(n=0;no?o:4,t(!0);var a=rs.transition;rs.transition={};try{t(!1),n()}finally{Ve=o,rs.transition=a}}function ff(){return gn().memoizedState}function Zm(t,n,o){var a=vr(t);if(o={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null},df(t))pf(n,o);else if(o=Hc(t,n,o,a),o!==null){var f=Ut();Cn(o,t,a,f),gf(o,n,a)}}function Xm(t,n,o){var a=vr(t),f={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null};if(df(t))pf(n,f);else{var m=t.alternate;if(t.lanes===0&&(m===null||m.lanes===0)&&(m=n.lastRenderedReducer,m!==null))try{var _=n.lastRenderedState,x=m(_,o);if(f.hasEagerState=!0,f.eagerState=x,kn(x,_)){var R=n.interleaved;R===null?(f.next=f,Za(n)):(f.next=R.next,R.next=f),n.interleaved=f;return}}catch{}finally{}o=Hc(t,n,f,a),o!==null&&(f=Ut(),Cn(o,t,a,f),gf(o,n,a))}}function df(t){var n=t.alternate;return t===ft||n!==null&&n===ft}function pf(t,n){lo=hl=!0;var o=t.pending;o===null?n.next=n:(n.next=o.next,o.next=n),t.pending=n}function gf(t,n,o){if((o&4194240)!==0){var a=n.lanes;a&=t.pendingLanes,o|=a,n.lanes=o,Bi(t,o)}}var El={readContext:pn,useCallback:It,useContext:It,useEffect:It,useImperativeHandle:It,useInsertionEffect:It,useLayoutEffect:It,useMemo:It,useReducer:It,useRef:It,useState:It,useDebugValue:It,useDeferredValue:It,useTransition:It,useMutableSource:It,useSyncExternalStore:It,useId:It,unstable_isNewReconciler:!1},Jm={readContext:pn,useCallback:function(t,n){return zn().memoizedState=[t,n===void 0?null:n],t},useContext:pn,useEffect:nf,useImperativeHandle:function(t,n,o){return o=o!=null?o.concat([t]):null,yl(4194308,4,lf.bind(null,n,t),o)},useLayoutEffect:function(t,n){return yl(4194308,4,t,n)},useInsertionEffect:function(t,n){return yl(4,2,t,n)},useMemo:function(t,n){var o=zn();return n=n===void 0?null:n,t=t(),o.memoizedState=[t,n],t},useReducer:function(t,n,o){var a=zn();return n=o!==void 0?o(n):n,a.memoizedState=a.baseState=n,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:n},a.queue=t,t=t.dispatch=Zm.bind(null,ft,t),[a.memoizedState,t]},useRef:function(t){var n=zn();return t={current:t},n.memoizedState=t},useState:ef,useDebugValue:cs,useDeferredValue:function(t){return zn().memoizedState=t},useTransition:function(){var t=ef(!1),n=t[0];return t=Qm.bind(null,t[1]),zn().memoizedState=t,[n,t]},useMutableSource:function(){},useSyncExternalStore:function(t,n,o){var a=ft,f=zn();if(at){if(o===void 0)throw Error(r(407));o=o()}else{if(o=n(),Nt===null)throw Error(r(349));(Hr&30)!==0||Yc(a,n,o)}f.memoizedState=o;var m={value:o,getSnapshot:n};return f.queue=m,nf(Zc.bind(null,a,m,t),[t]),a.flags|=2048,uo(9,Qc.bind(null,a,m,o,n),void 0,null),o},useId:function(){var t=zn(),n=Nt.identifierPrefix;if(at){var o=Zn,a=Qn;o=(a&~(1<<32-ut(a)-1)).toString(32)+o,n=":"+n+"R"+o,o=ao++,0<\/script>",t=t.removeChild(t.firstChild)):typeof a.is=="string"?t=_.createElement(o,{is:a.is}):(t=_.createElement(o),o==="select"&&(_=t,a.multiple?_.multiple=!0:a.size&&(_.size=a.size))):t=_.createElementNS(t,o),t[Dn]=n,t[eo]=a,Lf(t,n,!1,!1),n.stateNode=t;e:{switch(_=un(o,a),o){case"dialog":it("cancel",t),it("close",t),f=a;break;case"iframe":case"object":case"embed":it("load",t),f=a;break;case"video":case"audio":for(f=0;fSi&&(n.flags|=128,a=!0,co(m,!1),n.lanes=4194304)}else{if(!a)if(t=gl(_),t!==null){if(n.flags|=128,a=!0,o=t.updateQueue,o!==null&&(n.updateQueue=o,n.flags|=4),co(m,!0),m.tail===null&&m.tailMode==="hidden"&&!_.alternate&&!at)return Mt(n),null}else 2*st()-m.renderingStartTime>Si&&o!==1073741824&&(n.flags|=128,a=!0,co(m,!1),n.lanes=4194304);m.isBackwards?(_.sibling=n.child,n.child=_):(o=m.last,o!==null?o.sibling=_:n.child=_,m.last=_)}return m.tail!==null?(n=m.tail,m.rendering=n,m.tail=n.sibling,m.renderingStartTime=st(),n.sibling=null,o=ct.current,nt(ct,a?o&1|2:o&1),n):(Mt(n),null);case 22:case 23:return Ls(),a=n.memoizedState!==null,t!==null&&t.memoizedState!==null!==a&&(n.flags|=8192),a&&(n.mode&1)!==0?(rn&1073741824)!==0&&(Mt(n),n.subtreeFlags&6&&(n.flags|=8192)):Mt(n),null;case 24:return null;case 25:return null}throw Error(r(156,n.tag))}function ah(t,n){switch(ja(n),n.tag){case 1:return Kt(n.type)&&rl(),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return vi(),ot(Gt),ot(Ot),ns(),t=n.flags,(t&65536)!==0&&(t&128)===0?(n.flags=t&-65537|128,n):null;case 5:return es(n),null;case 13:if(ot(ct),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(r(340));yi()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return ot(ct),null;case 4:return vi(),null;case 10:return Ya(n.type._context),null;case 22:case 23:return Ls(),null;case 24:return null;default:return null}}var wl=!1,Lt=!1,sh=typeof WeakSet=="function"?WeakSet:Set,ye=null;function wi(t,n){var o=t.ref;if(o!==null)if(typeof o=="function")try{o(null)}catch(a){pt(t,n,a)}else o.current=null}function ks(t,n,o){try{o()}catch(a){pt(t,n,a)}}var zf=!1;function uh(t,n){if(La=jo,t=gc(),Na(t)){if("selectionStart"in t)var o={start:t.selectionStart,end:t.selectionEnd};else e:{o=(o=t.ownerDocument)&&o.defaultView||window;var a=o.getSelection&&o.getSelection();if(a&&a.rangeCount!==0){o=a.anchorNode;var f=a.anchorOffset,m=a.focusNode;a=a.focusOffset;try{o.nodeType,m.nodeType}catch{o=null;break e}var _=0,x=-1,R=-1,F=0,Q=0,J=t,Y=null;t:for(;;){for(var pe;J!==o||f!==0&&J.nodeType!==3||(x=_+f),J!==m||a!==0&&J.nodeType!==3||(R=_+a),J.nodeType===3&&(_+=J.nodeValue.length),(pe=J.firstChild)!==null;)Y=J,J=pe;for(;;){if(J===t)break t;if(Y===o&&++F===f&&(x=_),Y===m&&++Q===a&&(R=_),(pe=J.nextSibling)!==null)break;J=Y,Y=J.parentNode}J=pe}o=x===-1||R===-1?null:{start:x,end:R}}else o=null}o=o||{start:0,end:0}}else o=null;for(Da={focusedElem:t,selectionRange:o},jo=!1,ye=n;ye!==null;)if(n=ye,t=n.child,(n.subtreeFlags&1028)!==0&&t!==null)t.return=n,ye=t;else for(;ye!==null;){n=ye;try{var be=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(be!==null){var Ee=be.memoizedProps,ht=be.memoizedState,D=n.stateNode,I=D.getSnapshotBeforeUpdate(n.elementType===n.type?Ee:xn(n.type,Ee),ht);D.__reactInternalSnapshotBeforeUpdate=I}break;case 3:var z=n.stateNode.containerInfo;z.nodeType===1?z.textContent="":z.nodeType===9&&z.documentElement&&z.removeChild(z.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(r(163))}}catch(oe){pt(n,n.return,oe)}if(t=n.sibling,t!==null){t.return=n.return,ye=t;break}ye=n.return}return be=zf,zf=!1,be}function fo(t,n,o){var a=n.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var f=a=a.next;do{if((f.tag&t)===t){var m=f.destroy;f.destroy=void 0,m!==void 0&&ks(n,o,m)}f=f.next}while(f!==a)}}function xl(t,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var o=n=n.next;do{if((o.tag&t)===t){var a=o.create;o.destroy=a()}o=o.next}while(o!==n)}}function ws(t){var n=t.ref;if(n!==null){var o=t.stateNode;switch(t.tag){case 5:t=o;break;default:t=o}typeof n=="function"?n(t):n.current=t}}function Ff(t){var n=t.alternate;n!==null&&(t.alternate=null,Ff(n)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(n=t.stateNode,n!==null&&(delete n[Dn],delete n[eo],delete n[Ba],delete n[Km],delete n[Wm])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Bf(t){return t.tag===5||t.tag===3||t.tag===4}function Uf(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Bf(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function xs(t,n,o){var a=t.tag;if(a===5||a===6)t=t.stateNode,n?o.nodeType===8?o.parentNode.insertBefore(t,n):o.insertBefore(t,n):(o.nodeType===8?(n=o.parentNode,n.insertBefore(t,o)):(n=o,n.appendChild(t)),o=o._reactRootContainer,o!=null||n.onclick!==null||(n.onclick=tl));else if(a!==4&&(t=t.child,t!==null))for(xs(t,n,o),t=t.sibling;t!==null;)xs(t,n,o),t=t.sibling}function Ss(t,n,o){var a=t.tag;if(a===5||a===6)t=t.stateNode,n?o.insertBefore(t,n):o.appendChild(t);else if(a!==4&&(t=t.child,t!==null))for(Ss(t,n,o),t=t.sibling;t!==null;)Ss(t,n,o),t=t.sibling}var At=null,Sn=!1;function br(t,n,o){for(o=o.child;o!==null;)$f(t,n,o),o=o.sibling}function $f(t,n,o){if(Be&&typeof Be.onCommitFiberUnmount=="function")try{Be.onCommitFiberUnmount(ze,o)}catch{}switch(o.tag){case 5:Lt||wi(o,n);case 6:var a=At,f=Sn;At=null,br(t,n,o),At=a,Sn=f,At!==null&&(Sn?(t=At,o=o.stateNode,t.nodeType===8?t.parentNode.removeChild(o):t.removeChild(o)):At.removeChild(o.stateNode));break;case 18:At!==null&&(Sn?(t=At,o=o.stateNode,t.nodeType===8?Fa(t.parentNode,o):t.nodeType===1&&Fa(t,o),ji(t)):Fa(At,o.stateNode));break;case 4:a=At,f=Sn,At=o.stateNode.containerInfo,Sn=!0,br(t,n,o),At=a,Sn=f;break;case 0:case 11:case 14:case 15:if(!Lt&&(a=o.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){f=a=a.next;do{var m=f,_=m.destroy;m=m.tag,_!==void 0&&((m&2)!==0||(m&4)!==0)&&ks(o,n,_),f=f.next}while(f!==a)}br(t,n,o);break;case 1:if(!Lt&&(wi(o,n),a=o.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=o.memoizedProps,a.state=o.memoizedState,a.componentWillUnmount()}catch(x){pt(o,n,x)}br(t,n,o);break;case 21:br(t,n,o);break;case 22:o.mode&1?(Lt=(a=Lt)||o.memoizedState!==null,br(t,n,o),Lt=a):br(t,n,o);break;default:br(t,n,o)}}function Hf(t){var n=t.updateQueue;if(n!==null){t.updateQueue=null;var o=t.stateNode;o===null&&(o=t.stateNode=new sh),n.forEach(function(a){var f=bh.bind(null,t,a);o.has(a)||(o.add(a),a.then(f,f))})}}function Nn(t,n){var o=n.deletions;if(o!==null)for(var a=0;af&&(f=_),a&=~m}if(a=f,a=st()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*fh(a/1960))-a,10t?16:t,_r===null)var a=!1;else{if(t=_r,_r=null,Al=0,(qe&6)!==0)throw Error(r(331));var f=qe;for(qe|=4,ye=t.current;ye!==null;){var m=ye,_=m.child;if((ye.flags&16)!==0){var x=m.deletions;if(x!==null){for(var R=0;Rst()-Ts?Kr(t,0):Cs|=o),qt(t,n)}function td(t,n){n===0&&((t.mode&1)===0?n=1:(n=Ir,Ir<<=1,(Ir&130023424)===0&&(Ir=4194304)));var o=Ut();t=Xn(t,n),t!==null&&(sr(t,n,o),qt(t,o))}function yh(t){var n=t.memoizedState,o=0;n!==null&&(o=n.retryLane),td(t,o)}function bh(t,n){var o=0;switch(t.tag){case 13:var a=t.stateNode,f=t.memoizedState;f!==null&&(o=f.retryLane);break;case 19:a=t.stateNode;break;default:throw Error(r(314))}a!==null&&a.delete(n),td(t,o)}var nd;nd=function(t,n,o){if(t!==null)if(t.memoizedProps!==n.pendingProps||Gt.current)Wt=!0;else{if((t.lanes&o)===0&&(n.flags&128)===0)return Wt=!1,oh(t,n,o);Wt=(t.flags&131072)!==0}else Wt=!1,at&&(n.flags&1048576)!==0&&Lc(n,al,n.index);switch(n.lanes=0,n.tag){case 2:var a=n.type;kl(t,n),t=n.pendingProps;var f=gi(n,Ot.current);_i(n,o),f=os(null,n,a,t,f,o);var m=ls();return n.flags|=1,typeof f=="object"&&f!==null&&typeof f.render=="function"&&f.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,Kt(a)?(m=!0,il(n)):m=!1,n.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,Xa(n),f.updater=_l,n.stateNode=f,f._reactInternals=n,ds(n,a,t,o),n=hs(null,n,a,!0,m,o)):(n.tag=0,at&&m&&Ha(n),Bt(null,n,f,o),n=n.child),n;case 16:a=n.elementType;e:{switch(kl(t,n),t=n.pendingProps,f=a._init,a=f(a._payload),n.type=a,f=n.tag=_h(a),t=xn(a,t),f){case 0:n=ms(null,n,a,t,o);break e;case 1:n=Tf(null,n,a,t,o);break e;case 11:n=wf(null,n,a,t,o);break e;case 14:n=xf(null,n,a,xn(a.type,t),o);break e}throw Error(r(306,a,""))}return n;case 0:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),ms(t,n,a,f,o);case 1:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),Tf(t,n,a,f,o);case 3:e:{if(Af(n),t===null)throw Error(r(387));a=n.pendingProps,m=n.memoizedState,f=m.element,jc(t,n),pl(n,a,null,o);var _=n.memoizedState;if(a=_.element,m.isDehydrated)if(m={element:a,isDehydrated:!1,cache:_.cache,pendingSuspenseBoundaries:_.pendingSuspenseBoundaries,transitions:_.transitions},n.updateQueue.baseState=m,n.memoizedState=m,n.flags&256){f=ki(Error(r(423)),n),n=Rf(t,n,a,o,f);break e}else if(a!==f){f=ki(Error(r(424)),n),n=Rf(t,n,a,o,f);break e}else for(nn=dr(n.stateNode.containerInfo.firstChild),tn=n,at=!0,wn=null,o=$c(n,null,a,o),n.child=o;o;)o.flags=o.flags&-3|4096,o=o.sibling;else{if(yi(),a===f){n=er(t,n,o);break e}Bt(t,n,a,o)}n=n.child}return n;case 5:return Wc(n),t===null&&Ka(n),a=n.type,f=n.pendingProps,m=t!==null?t.memoizedProps:null,_=f.children,Pa(a,f)?_=null:m!==null&&Pa(a,m)&&(n.flags|=32),Cf(t,n),Bt(t,n,_,o),n.child;case 6:return t===null&&Ka(n),null;case 13:return Of(t,n,o);case 4:return Ja(n,n.stateNode.containerInfo),a=n.pendingProps,t===null?n.child=bi(n,null,a,o):Bt(t,n,a,o),n.child;case 11:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),wf(t,n,a,f,o);case 7:return Bt(t,n,n.pendingProps,o),n.child;case 8:return Bt(t,n,n.pendingProps.children,o),n.child;case 12:return Bt(t,n,n.pendingProps.children,o),n.child;case 10:e:{if(a=n.type._context,f=n.pendingProps,m=n.memoizedProps,_=f.value,nt(cl,a._currentValue),a._currentValue=_,m!==null)if(kn(m.value,_)){if(m.children===f.children&&!Gt.current){n=er(t,n,o);break e}}else for(m=n.child,m!==null&&(m.return=n);m!==null;){var x=m.dependencies;if(x!==null){_=m.child;for(var R=x.firstContext;R!==null;){if(R.context===a){if(m.tag===1){R=Jn(-1,o&-o),R.tag=2;var F=m.updateQueue;if(F!==null){F=F.shared;var Q=F.pending;Q===null?R.next=R:(R.next=Q.next,Q.next=R),F.pending=R}}m.lanes|=o,R=m.alternate,R!==null&&(R.lanes|=o),Qa(m.return,o,n),x.lanes|=o;break}R=R.next}}else if(m.tag===10)_=m.type===n.type?null:m.child;else if(m.tag===18){if(_=m.return,_===null)throw Error(r(341));_.lanes|=o,x=_.alternate,x!==null&&(x.lanes|=o),Qa(_,o,n),_=m.sibling}else _=m.child;if(_!==null)_.return=m;else for(_=m;_!==null;){if(_===n){_=null;break}if(m=_.sibling,m!==null){m.return=_.return,_=m;break}_=_.return}m=_}Bt(t,n,f.children,o),n=n.child}return n;case 9:return f=n.type,a=n.pendingProps.children,_i(n,o),f=pn(f),a=a(f),n.flags|=1,Bt(t,n,a,o),n.child;case 14:return a=n.type,f=xn(a,n.pendingProps),f=xn(a.type,f),xf(t,n,a,f,o);case 15:return Sf(t,n,n.type,n.pendingProps,o);case 17:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),kl(t,n),n.tag=1,Kt(a)?(t=!0,il(n)):t=!1,_i(n,o),hf(n,a,f),ds(n,a,f,o),hs(null,n,a,!0,t,o);case 19:return Mf(t,n,o);case 22:return Nf(t,n,o)}throw Error(r(156,n.tag))};function rd(t,n){return zo(t,n)}function Eh(t,n,o,a){this.tag=t,this.key=o,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function hn(t,n,o,a){return new Eh(t,n,o,a)}function Ps(t){return t=t.prototype,!(!t||!t.isReactComponent)}function _h(t){if(typeof t=="function")return Ps(t)?1:0;if(t!=null){if(t=t.$$typeof,t===q)return 11;if(t===U)return 14}return 2}function wr(t,n){var o=t.alternate;return o===null?(o=hn(t.tag,n,t.key,t.mode),o.elementType=t.elementType,o.type=t.type,o.stateNode=t.stateNode,o.alternate=t,t.alternate=o):(o.pendingProps=n,o.type=t.type,o.flags=0,o.subtreeFlags=0,o.deletions=null),o.flags=t.flags&14680064,o.childLanes=t.childLanes,o.lanes=t.lanes,o.child=t.child,o.memoizedProps=t.memoizedProps,o.memoizedState=t.memoizedState,o.updateQueue=t.updateQueue,n=t.dependencies,o.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},o.sibling=t.sibling,o.index=t.index,o.ref=t.ref,o}function Ml(t,n,o,a,f,m){var _=2;if(a=t,typeof t=="function")Ps(t)&&(_=1);else if(typeof t=="string")_=5;else e:switch(t){case X:return Vr(o.children,f,m,n);case ee:_=8,f|=8;break;case re:return t=hn(12,o,n,f|2),t.elementType=re,t.lanes=m,t;case te:return t=hn(13,o,n,f),t.elementType=te,t.lanes=m,t;case L:return t=hn(19,o,n,f),t.elementType=L,t.lanes=m,t;case ce:return Ll(o,f,m,n);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case M:_=10;break e;case W:_=9;break e;case q:_=11;break e;case U:_=14;break e;case ue:_=16,a=null;break e}throw Error(r(130,t==null?t:typeof t,""))}return n=hn(_,o,n,f),n.elementType=t,n.type=a,n.lanes=m,n}function Vr(t,n,o,a){return t=hn(7,t,a,n),t.lanes=o,t}function Ll(t,n,o,a){return t=hn(22,t,a,n),t.elementType=ce,t.lanes=o,t.stateNode={isHidden:!1},t}function zs(t,n,o){return t=hn(6,t,null,n),t.lanes=o,t}function Fs(t,n,o){return n=hn(4,t.children!==null?t.children:[],t.key,n),n.lanes=o,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}function vh(t,n,o,a,f){this.tag=n,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ar(0),this.expirationTimes=ar(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ar(0),this.identifierPrefix=a,this.onRecoverableError=f,this.mutableSourceEagerHydrationData=null}function Bs(t,n,o,a,f,m,_,x,R){return t=new vh(t,n,o,x,R),n===1?(n=1,m===!0&&(n|=8)):n=0,m=hn(3,null,null,n),t.current=m,m.stateNode=t,m.memoizedState={element:a,isDehydrated:o,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xa(m),t}function kh(t,n,o){var a=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(i){console.error(i)}}return e(),Ks.exports=Ph(),Ks.exports}var yd;function Fh(){if(yd)return $l;yd=1;var e=zh();return $l.createRoot=e.createRoot,$l.hydrateRoot=e.hydrateRoot,$l}var Bh=Fh();const Uh=Ao(Bh);class $h{constructor(){Ci(this,"ws",null);Ci(this,"handlers",new Set);Ci(this,"queue",[]);Ci(this,"closedByUser",!1);Ci(this,"onStatus")}connect(){var l;this.closedByUser=!1,(l=this.onStatus)==null||l.call(this,"connecting");const i=location.protocol==="https:"?"wss:":"ws:",r=new WebSocket(`${i}//${location.host}/ws`);r.onopen=()=>{var s;(s=this.onStatus)==null||s.call(this,"open");for(const c of this.queue)r.send(c);this.queue=[]},r.onmessage=s=>{try{const c=JSON.parse(s.data);for(const u of this.handlers)u(c)}catch{}},r.onclose=()=>{var s;(s=this.onStatus)==null||s.call(this,"closed"),this.closedByUser||setTimeout(()=>this.connect(),1500)},this.ws=r}send(i){var l;const r=JSON.stringify(i);((l=this.ws)==null?void 0:l.readyState)===WebSocket.OPEN?this.ws.send(r):this.queue.push(r)}close(){var i;this.closedByUser=!0,(i=this.ws)==null||i.close()}subscribe(i){return this.handlers.add(i),()=>this.handlers.delete(i)}}const xp="oxagenttwo.options",bd="oxagenttwo.session",Ed="oxagenttwo.systemPrompt";function Hh(){const e={think:!0,tools:!0,temperature:.7,numPredict:2048,provider:"ollama",openrouterModel:"anthropic/claude-sonnet-4.5",memorySteps:10,memoryAnchors:!0,dreamAuto:!0};try{const i=localStorage.getItem(xp);if(i)return{...e,...JSON.parse(i)}}catch{}return e}function jh(){const e=de.useRef(null),[i,r]=de.useState("connecting"),[l,s]=de.useState([]),[c,u]=de.useState(()=>localStorage.getItem(bd)),[d,p]=de.useState([]),[g,y]=de.useState(!1),[h,b]=de.useState({}),[E,k]=de.useState(Hh),[T,S]=de.useState(()=>localStorage.getItem(Ed)??""),[N,B]=de.useState(null),P=de.useRef(!1);de.useEffect(()=>{const W=new $h;e.current=W,W.onStatus=r;const q=W.subscribe(te=>{const L=te.type;if(L==="user-message"){const U=te.message;p(ue=>ue.some(ce=>ce.id===U.id)?ue:[...ue,U])}else if(L==="assistant-start"){const U=te.message;p(ue=>[...ue,{...U,content:"",thinking:""}])}else if(L==="thinking"){const U=te.text;p(ue=>ue.map(ce=>ce.id===te.messageId?{...ce,thinking:(ce.thinking??"")+U}:ce))}else if(L==="token"){const U=te.text;p(ue=>ue.map(ce=>ce.id===te.messageId?{...ce,content:ce.content+U}:ce))}else L==="tool-call"?b(U=>({...U,[te.messageId]:[...U[te.messageId]??[],{name:te.name,args:te.args}]})):L==="tool-result"?b(U=>{const ue=U[te.messageId]??[],ce=[...ue].reverse().findIndex(v=>v.name===te.name&&v.ok===void 0);if(ce===-1)return U;const G=ue.length-1-ce,ae=ue.map((v,O)=>O===G?{...v,ok:te.ok,durationMs:te.durationMs}:v);return{...U,[te.messageId]:ae}}):L==="done"||L==="error"?(P.current=!1,y(!1)):(L==="sessions-changed"||L==="session-deleted")&&j()});return W.connect(),()=>{q(),W.close()}},[]);const j=de.useCallback(async()=>{const q=await(await fetch("/api/sessions")).json();s(q),u(te=>{var L;return te??((L=q[0])==null?void 0:L.id)??null})},[]);de.useEffect(()=>{j(),fetch("/api/model").then(W=>W.json()).then(B).catch(()=>B({ok:!1,error:"Ollama nicht erreichbar"}))},[j]),de.useEffect(()=>{if(!c){p([]);return}localStorage.setItem(bd,c),P.current=!1,y(!1),fetch(`/api/sessions/${c}/messages`).then(W=>W.json()).then(W=>p(Array.isArray(W)?W:[])).catch(()=>p([]))},[c]);const Z=de.useCallback(W=>{k(q=>{const te={...q,...W};return localStorage.setItem(xp,JSON.stringify(te)),te})},[]),A=de.useCallback(W=>{S(W),localStorage.setItem(Ed,W)},[]),X=de.useCallback((W,q=[])=>{var te;!W.trim()&&q.length===0||P.current||!c||(P.current=!0,y(!0),(te=e.current)==null||te.send({type:"chat",sessionId:c,content:W,images:q,options:E,systemPrompt:T}))},[c,E,T]),ee=de.useCallback(()=>{var W;(W=e.current)==null||W.send({type:"abort"})},[]),re=de.useCallback(async()=>{const q=await(await fetch("/api/sessions",{method:"POST"})).json();await j(),u(q.id)},[j]),M=de.useCallback(async W=>{await fetch(`/api/sessions/${W}`,{method:"DELETE"}),s(q=>q.filter(te=>te.id!==W)),u(q=>q===W?null:q),await j()},[j]);return{status:i,sessions:l,activeId:c,setActiveId:u,messages:d,streaming:g,toolEvents:h,sendMessage:X,abort:ee,newSession:re,deleteSession:M,options:E,setOptions:Z,systemPrompt:T,setSystemPrompt:A,modelInfo:N}}function Gh({onTranscript:e,onQueueDrained:i}){const[r,l]=de.useState(!1),[s,c]=de.useState(!1),[u,d]=de.useState(!1),[p,g]=de.useState(null),y=de.useRef(null),h=de.useRef([]),b=de.useRef(null),E=de.useRef(null),k=de.useRef([]),T=de.useRef(null),S=de.useRef(!1),N=de.useRef(null),B=de.useRef(i);B.current=i;const P=de.useRef(e);P.current=e;const j=de.useCallback(async()=>{if(S.current)return;const re=k.current.shift();if(re===void 0){d(!1),B.current();return}S.current=!0,d(!0);try{N.current=new AbortController;const M=await fetch("/api/tts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({text:re}),signal:N.current.signal});if(!M.ok)throw new Error(`TTS HTTP ${M.status}`);const W=await M.blob(),q=new Audio(URL.createObjectURL(W));T.current=q,await new Promise(te=>{q.onended=()=>te(),q.onerror=()=>te(),q.play().catch(()=>te())}),URL.revokeObjectURL(q.src)}catch(M){M instanceof DOMException&&M.name==="AbortError"||g(M instanceof Error?M.message:String(M))}finally{S.current=!1,N.current=null,j()}},[]),Z=de.useCallback(re=>{const M=re.trim();M&&(k.current.push(M),j())},[j]),A=de.useCallback(()=>{var re;k.current=[],(re=N.current)==null||re.abort(),T.current&&(T.current.pause(),T.current.src=""),S.current=!1,d(!1)},[]),X=de.useCallback(()=>{var re;E.current&&clearTimeout(E.current),E.current=null,((re=y.current)==null?void 0:re.state)==="recording"&&y.current.stop()},[]),ee=de.useCallback(async()=>{var re;if(((re=y.current)==null?void 0:re.state)!=="recording"){g(null);try{const M=await navigator.mediaDevices.getUserMedia({audio:!0});b.current=M;const W=new MediaRecorder(M);h.current=[],W.ondataavailable=q=>{q.data.size>0&&h.current.push(q.data)},W.onstop=async()=>{var te,L;(te=b.current)==null||te.getTracks().forEach(U=>U.stop()),b.current=null,l(!1);const q=new Blob(h.current);if(h.current=[],!(q.size<2e3)){c(!0);try{const ue=await(await fetch("/api/stt",{method:"POST",headers:{"Content-Type":"application/octet-stream"},body:q})).json();if(!ue.ok)throw new Error(ue.error??"STT fehlgeschlagen");const ce=(L=ue.text)==null?void 0:L.trim();ce?P.current(ce):g("Nichts verstanden — bitte nochmal sprechen.")}catch(U){g(U instanceof Error?U.message:String(U))}finally{c(!1)}}},y.current=W,W.start(),l(!0),E.current=setTimeout(()=>X(),3e4)}catch(M){g(M instanceof Error?M.message:String(M))}}},[e,X]);return de.useEffect(()=>()=>{var re,M;((re=y.current)==null?void 0:re.state)==="recording"&&y.current.stop(),(M=b.current)==null||M.getTracks().forEach(W=>W.stop()),A()},[]),{recording:r,transcribing:s,speaking:u,error:p,setError:g,startRecording:ee,stopRecording:X,enqueueSpeech:Z,cancelSpeech:A}}function Kh({sessions:e,activeId:i,onSelect:r,onNew:l,onDelete:s}){return K.jsxs("aside",{className:"sidebar",children:[K.jsxs("div",{className:"sidebar-header",children:[K.jsxs("div",{className:"brand",children:[K.jsx("span",{className:"brand-prompt",children:"▸"})," agenttwo-tools"]}),K.jsx("button",{className:"btn-new",onClick:l,children:"+ Neuer Chat"})]}),K.jsxs("nav",{className:"session-list",children:[e.length===0&&K.jsx("div",{className:"empty-hint",children:"Noch keine Sessions."}),e.map(c=>K.jsxs("div",{className:`session-item ${c.id===i?"active":""}`,onClick:()=>r(c.id),children:[K.jsx("span",{className:"session-title",children:c.title}),K.jsx("button",{className:"session-delete",title:"Session löschen",onClick:u=>{u.stopPropagation(),s(c.id)},children:"✕"})]},c.id))]})]})}function Wh(e,i){const r={};return(e[e.length-1]===""?[...e,""]:e).join((r.padRight?" ":"")+","+(r.padLeft===!1?"":" ")).trim()}const Vh=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qh=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Yh={};function _d(e,i){return(Yh.jsx?qh:Vh).test(e)}const Qh=/[ \t\n\f\r]/g;function Zh(e){return typeof e=="object"?e.type==="text"?vd(e.value):!1:vd(e)}function vd(e){return e.replace(Qh,"")===""}class Ro{constructor(i,r,l){this.normal=r,this.property=i,l&&(this.space=l)}}Ro.prototype.normal={};Ro.prototype.property={};Ro.prototype.space=void 0;function Sp(e,i){const r={},l={};for(const s of e)Object.assign(r,s.property),Object.assign(l,s.normal);return new Ro(r,l,i)}function gu(e){return e.toLowerCase()}class Zt{constructor(i,r){this.attribute=r,this.property=i}}Zt.prototype.attribute="";Zt.prototype.booleanish=!1;Zt.prototype.boolean=!1;Zt.prototype.commaOrSpaceSeparated=!1;Zt.prototype.commaSeparated=!1;Zt.prototype.defined=!1;Zt.prototype.mustUseProperty=!1;Zt.prototype.number=!1;Zt.prototype.overloadedBoolean=!1;Zt.prototype.property="";Zt.prototype.spaceSeparated=!1;Zt.prototype.space=void 0;let Xh=0;const Le=Xr(),Et=Xr(),mu=Xr(),ne=Xr(),Je=Xr(),Qr=Xr(),on=Xr();function Xr(){return 2**++Xh}const hu=Object.freeze(Object.defineProperty({__proto__:null,boolean:Le,booleanish:Et,commaOrSpaceSeparated:on,commaSeparated:Qr,number:ne,overloadedBoolean:mu,spaceSeparated:Je},Symbol.toStringTag,{value:"Module"})),qs=Object.keys(hu);class Cu extends Zt{constructor(i,r,l,s){let c=-1;if(super(i,r),kd(this,"space",s),typeof l=="number")for(;++c4&&r.slice(0,4)==="data"&&ry.test(i)){if(i.charAt(4)==="-"){const c=i.slice(5).replace(wd,ly);l="data"+c.charAt(0).toUpperCase()+c.slice(1)}else{const c=i.slice(4);if(!wd.test(c)){let u=c.replace(ny,oy);u.charAt(0)!=="-"&&(u="-"+u),i="data"+u}}s=Cu}return new s(l,i)}function oy(e){return"-"+e.toLowerCase()}function ly(e){return e.charAt(1).toUpperCase()}const ay=Sp([Np,Jh,Ap,Rp,Op],"html"),Tu=Sp([Np,ey,Ap,Rp,Op],"svg");function sy(e){return e.join(" ").trim()}var Ti={},Ys,xd;function uy(){if(xd)return Ys;xd=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,i=/\n/g,r=/^\s*/,l=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,s=/^:\s*/,c=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,u=/^[;\s]*/,d=/^\s+|\s+$/g,p=` -`,g="/",y="*",h="",b="comment",E="declaration";function k(S,N){if(typeof S!="string")throw new TypeError("First argument must be a string");if(!S)return[];N=N||{};var B=1,P=1;function j(L){var U=L.match(i);U&&(B+=U.length);var ue=L.lastIndexOf(p);P=~ue?L.length-ue:P+L.length}function Z(){var L={line:B,column:P};return function(U){return U.position=new A(L),re(),U}}function A(L){this.start=L,this.end={line:B,column:P},this.source=N.source}A.prototype.content=S;function X(L){var U=new Error(N.source+":"+B+":"+P+": "+L);if(U.reason=L,U.filename=N.source,U.line=B,U.column=P,U.source=S,!N.silent)throw U}function ee(L){var U=L.exec(S);if(U){var ue=U[0];return j(ue),S=S.slice(ue.length),U}}function re(){ee(r)}function M(L){var U;for(L=L||[];U=W();)U!==!1&&L.push(U);return L}function W(){var L=Z();if(!(g!=S.charAt(0)||y!=S.charAt(1))){for(var U=2;h!=S.charAt(U)&&(y!=S.charAt(U)||g!=S.charAt(U+1));)++U;if(U+=2,h===S.charAt(U-1))return X("End of comment missing");var ue=S.slice(2,U-2);return P+=2,j(ue),S=S.slice(U),P+=2,L({type:b,comment:ue})}}function q(){var L=Z(),U=ee(l);if(U){if(W(),!ee(s))return X("property missing ':'");var ue=ee(c),ce=L({type:E,property:T(U[0].replace(e,h)),value:ue?T(ue[0].replace(e,h)):h});return ee(u),ce}}function te(){var L=[];M(L);for(var U;U=q();)U!==!1&&(L.push(U),M(L));return L}return re(),te()}function T(S){return S?S.replace(d,h):h}return Ys=k,Ys}var Sd;function cy(){if(Sd)return Ti;Sd=1;var e=Ti&&Ti.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(Ti,"__esModule",{value:!0}),Ti.default=r;const i=e(uy());function r(l,s){let c=null;if(!l||typeof l!="string")return c;const u=(0,i.default)(l),d=typeof s=="function";return u.forEach(p=>{if(p.type!=="declaration")return;const{property:g,value:y}=p;d?s(g,y,p):y&&(c=c||{},c[g]=y)}),c}return Ti}var bo={},Nd;function fy(){if(Nd)return bo;Nd=1,Object.defineProperty(bo,"__esModule",{value:!0}),bo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,i=/-([a-z])/g,r=/^[^-]+$/,l=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,c=function(g){return!g||r.test(g)||e.test(g)},u=function(g,y){return y.toUpperCase()},d=function(g,y){return"".concat(y,"-")},p=function(g,y){return y===void 0&&(y={}),c(g)?g:(g=g.toLowerCase(),y.reactCompat?g=g.replace(s,d):g=g.replace(l,d),g.replace(i,u))};return bo.camelCase=p,bo}var Eo,Cd;function dy(){if(Cd)return Eo;Cd=1;var e=Eo&&Eo.__importDefault||function(s){return s&&s.__esModule?s:{default:s}},i=e(cy()),r=fy();function l(s,c){var u={};return!s||typeof s!="string"||(0,i.default)(s,function(d,p){d&&p&&(u[(0,r.camelCase)(d,c)]=p)}),u}return l.default=l,Eo=l,Eo}var py=dy();const gy=Ao(py),Ip=Mp("end"),Au=Mp("start");function Mp(e){return i;function i(r){const l=r&&r.position&&r.position[e]||{};if(typeof l.line=="number"&&l.line>0&&typeof l.column=="number"&&l.column>0)return{line:l.line,column:l.column,offset:typeof l.offset=="number"&&l.offset>-1?l.offset:void 0}}}function my(e){const i=Au(e),r=Ip(e);if(i&&r)return{start:i,end:r}}function xo(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Td(e.position):"start"in e||"end"in e?Td(e):"line"in e||"column"in e?yu(e):""}function yu(e){return Ad(e&&e.line)+":"+Ad(e&&e.column)}function Td(e){return yu(e&&e.start)+"-"+yu(e&&e.end)}function Ad(e){return e&&typeof e=="number"?e:1}class Pt extends Error{constructor(i,r,l){super(),typeof r=="string"&&(l=r,r=void 0);let s="",c={},u=!1;if(r&&("line"in r&&"column"in r?c={place:r}:"start"in r&&"end"in r?c={place:r}:"type"in r?c={ancestors:[r],place:r.position}:c={...r}),typeof i=="string"?s=i:!c.cause&&i&&(u=!0,s=i.message,c.cause=i),!c.ruleId&&!c.source&&typeof l=="string"){const p=l.indexOf(":");p===-1?c.ruleId=l:(c.source=l.slice(0,p),c.ruleId=l.slice(p+1))}if(!c.place&&c.ancestors&&c.ancestors){const p=c.ancestors[c.ancestors.length-1];p&&(c.place=p.position)}const d=c.place&&"start"in c.place?c.place.start:c.place;this.ancestors=c.ancestors||void 0,this.cause=c.cause||void 0,this.column=d?d.column:void 0,this.fatal=void 0,this.file="",this.message=s,this.line=d?d.line:void 0,this.name=xo(c.place)||"1:1",this.place=c.place||void 0,this.reason=this.message,this.ruleId=c.ruleId||void 0,this.source=c.source||void 0,this.stack=u&&c.cause&&typeof c.cause.stack=="string"?c.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Pt.prototype.file="";Pt.prototype.name="";Pt.prototype.reason="";Pt.prototype.message="";Pt.prototype.stack="";Pt.prototype.column=void 0;Pt.prototype.line=void 0;Pt.prototype.ancestors=void 0;Pt.prototype.cause=void 0;Pt.prototype.fatal=void 0;Pt.prototype.place=void 0;Pt.prototype.ruleId=void 0;Pt.prototype.source=void 0;const Ru={}.hasOwnProperty,hy=new Map,yy=/[A-Z]/g,by=new Set(["table","tbody","thead","tfoot","tr"]),Ey=new Set(["td","th"]),Lp="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function _y(e,i){if(!i||i.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=i.filePath||void 0;let l;if(i.development){if(typeof i.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");l=Ty(r,i.jsxDEV)}else{if(typeof i.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof i.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");l=Cy(r,i.jsx,i.jsxs)}const s={Fragment:i.Fragment,ancestors:[],components:i.components||{},create:l,elementAttributeNameCase:i.elementAttributeNameCase||"react",evaluater:i.createEvaluater?i.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:i.ignoreInvalidStyle||!1,passKeys:i.passKeys!==!1,passNode:i.passNode||!1,schema:i.space==="svg"?Tu:ay,stylePropertyNameCase:i.stylePropertyNameCase||"dom",tableCellAlignToStyle:i.tableCellAlignToStyle!==!1},c=Dp(s,e,void 0);return c&&typeof c!="string"?c:s.create(e,s.Fragment,{children:c||void 0},void 0)}function Dp(e,i,r){if(i.type==="element")return vy(e,i,r);if(i.type==="mdxFlowExpression"||i.type==="mdxTextExpression")return ky(e,i);if(i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement")return xy(e,i,r);if(i.type==="mdxjsEsm")return wy(e,i);if(i.type==="root")return Sy(e,i,r);if(i.type==="text")return Ny(e,i)}function vy(e,i,r){const l=e.schema;let s=l;i.tagName.toLowerCase()==="svg"&&l.space==="html"&&(s=Tu,e.schema=s),e.ancestors.push(i);const c=zp(e,i.tagName,!1),u=Ay(e,i);let d=Iu(e,i);return by.has(i.tagName)&&(d=d.filter(function(p){return typeof p=="string"?!Zh(p):!0})),Pp(e,u,c,i),Ou(u,d),e.ancestors.pop(),e.schema=l,e.create(i,c,u,r)}function ky(e,i){if(i.data&&i.data.estree&&e.evaluater){const l=i.data.estree.body[0];return l.type,e.evaluater.evaluateExpression(l.expression)}Co(e,i.position)}function wy(e,i){if(i.data&&i.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(i.data.estree);Co(e,i.position)}function xy(e,i,r){const l=e.schema;let s=l;i.name==="svg"&&l.space==="html"&&(s=Tu,e.schema=s),e.ancestors.push(i);const c=i.name===null?e.Fragment:zp(e,i.name,!0),u=Ry(e,i),d=Iu(e,i);return Pp(e,u,c,i),Ou(u,d),e.ancestors.pop(),e.schema=l,e.create(i,c,u,r)}function Sy(e,i,r){const l={};return Ou(l,Iu(e,i)),e.create(i,e.Fragment,l,r)}function Ny(e,i){return i.value}function Pp(e,i,r,l){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(i.node=l)}function Ou(e,i){if(i.length>0){const r=i.length>1?i:i[0];r&&(e.children=r)}}function Cy(e,i,r){return l;function l(s,c,u,d){const g=Array.isArray(u.children)?r:i;return d?g(c,u,d):g(c,u)}}function Ty(e,i){return r;function r(l,s,c,u){const d=Array.isArray(c.children),p=Au(l);return i(s,c,u,d,{columnNumber:p?p.column-1:void 0,fileName:e,lineNumber:p?p.line:void 0},void 0)}}function Ay(e,i){const r={};let l,s;for(s in i.properties)if(s!=="children"&&Ru.call(i.properties,s)){const c=Oy(e,s,i.properties[s]);if(c){const[u,d]=c;e.tableCellAlignToStyle&&u==="align"&&typeof d=="string"&&Ey.has(i.tagName)?l=d:r[u]=d}}if(l){const c=r.style||(r.style={});c[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=l}return r}function Ry(e,i){const r={};for(const l of i.attributes)if(l.type==="mdxJsxExpressionAttribute")if(l.data&&l.data.estree&&e.evaluater){const c=l.data.estree.body[0];c.type;const u=c.expression;u.type;const d=u.properties[0];d.type,Object.assign(r,e.evaluater.evaluateExpression(d.argument))}else Co(e,i.position);else{const s=l.name;let c;if(l.value&&typeof l.value=="object")if(l.value.data&&l.value.data.estree&&e.evaluater){const d=l.value.data.estree.body[0];d.type,c=e.evaluater.evaluateExpression(d.expression)}else Co(e,i.position);else c=l.value===null?!0:l.value;r[s]=c}return r}function Iu(e,i){const r=[];let l=-1;const s=e.passKeys?new Map:hy;for(;++ls?0:s+i:i=i>s?s:i,r=r>0?r:0,l.length<1e4)u=Array.from(l),u.unshift(i,r),e.splice(...u);else for(r&&e.splice(i,r);c0?(ln(e,e.length,0,i),e):i}const Id={}.hasOwnProperty;function Bp(e){const i={};let r=-1;for(;++r13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function Tn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Ht=Nr(/[A-Za-z]/),Dt=Nr(/[\dA-Za-z]/),Uy=Nr(/[#-'*+\--9=?A-Z^-~]/);function Xl(e){return e!==null&&(e<32||e===127)}const bu=Nr(/\d/),$y=Nr(/[\dA-Fa-f]/),Hy=Nr(/[!-/:-@[-`{-~]/);function Ce(e){return e!==null&&e<-2}function et(e){return e!==null&&(e<0||e===32)}function Ue(e){return e===-2||e===-1||e===32}const ia=Nr(new RegExp("\\p{P}|\\p{S}","u")),Zr=Nr(/\s/);function Nr(e){return i;function i(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function Li(e){const i=[];let r=-1,l=0,s=0;for(;++r55295&&c<57344){const d=e.charCodeAt(r+1);c<56320&&d>56319&&d<57344?(u=String.fromCharCode(c,d),s=1):u="�"}else u=String.fromCharCode(c);u&&(i.push(e.slice(l,r),encodeURIComponent(u)),l=r+s+1,u=""),s&&(r+=s,s=0)}return i.join("")+e.slice(l)}function We(e,i,r,l){const s=l?l-1:Number.POSITIVE_INFINITY;let c=0;return u;function u(p){return Ue(p)?(e.enter(r),d(p)):i(p)}function d(p){return Ue(p)&&c++u))return;const X=i.events.length;let ee=X,re,M;for(;ee--;)if(i.events[ee][0]==="exit"&&i.events[ee][1].type==="chunkFlow"){if(re){M=i.events[ee][1].end;break}re=!0}for(N(l),A=X;AP;){const Z=r[j];i.containerState=Z[1],Z[0].exit.call(i,e)}r.length=P}function B(){s.write([null]),c=void 0,s=void 0,i.containerState._closeFlow=void 0}}function Vy(e,i,r){return We(e,e.attempt(this.parser.constructs.document,i,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ii(e){if(e===null||et(e)||Zr(e))return 1;if(ia(e))return 2}function oa(e,i,r){const l=[];let s=-1;for(;++s1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const h={...e[l][1].end},b={...e[r][1].start};Ld(h,-p),Ld(b,p),u={type:p>1?"strongSequence":"emphasisSequence",start:h,end:{...e[l][1].end}},d={type:p>1?"strongSequence":"emphasisSequence",start:{...e[r][1].start},end:b},c={type:p>1?"strongText":"emphasisText",start:{...e[l][1].end},end:{...e[r][1].start}},s={type:p>1?"strong":"emphasis",start:{...u.start},end:{...d.end}},e[l][1].end={...u.start},e[r][1].start={...d.end},g=[],e[l][1].end.offset-e[l][1].start.offset&&(g=yn(g,[["enter",e[l][1],i],["exit",e[l][1],i]])),g=yn(g,[["enter",s,i],["enter",u,i],["exit",u,i],["enter",c,i]]),g=yn(g,oa(i.parser.constructs.insideSpan.null,e.slice(l+1,r),i)),g=yn(g,[["exit",c,i],["enter",d,i],["exit",d,i],["exit",s,i]]),e[r][1].end.offset-e[r][1].start.offset?(y=2,g=yn(g,[["enter",e[r][1],i],["exit",e[r][1],i]])):y=0,ln(e,l-1,r-l+3,g),r=l+g.length-y-2;break}}for(r=-1;++r0&&Ue(A)?We(e,B,"linePrefix",c+1)(A):B(A)}function B(A){return A===null||Ce(A)?e.check(Dd,T,j)(A):(e.enter("codeFlowValue"),P(A))}function P(A){return A===null||Ce(A)?(e.exit("codeFlowValue"),B(A)):(e.consume(A),P)}function j(A){return e.exit("codeFenced"),i(A)}function Z(A,X,ee){let re=0;return M;function M(U){return A.enter("lineEnding"),A.consume(U),A.exit("lineEnding"),W}function W(U){return A.enter("codeFencedFence"),Ue(U)?We(A,q,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(U):q(U)}function q(U){return U===d?(A.enter("codeFencedFenceSequence"),te(U)):ee(U)}function te(U){return U===d?(re++,A.consume(U),te):re>=u?(A.exit("codeFencedFenceSequence"),Ue(U)?We(A,L,"whitespace")(U):L(U)):ee(U)}function L(U){return U===null||Ce(U)?(A.exit("codeFencedFence"),X(U)):ee(U)}}}function ob(e,i,r){const l=this;return s;function s(u){return u===null?r(u):(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c)}function c(u){return l.parser.lazy[l.now().line]?r(u):i(u)}}const Zs={name:"codeIndented",tokenize:ab},lb={partial:!0,tokenize:sb};function ab(e,i,r){const l=this;return s;function s(g){return e.enter("codeIndented"),We(e,c,"linePrefix",5)(g)}function c(g){const y=l.events[l.events.length-1];return y&&y[1].type==="linePrefix"&&y[2].sliceSerialize(y[1],!0).length>=4?u(g):r(g)}function u(g){return g===null?p(g):Ce(g)?e.attempt(lb,u,p)(g):(e.enter("codeFlowValue"),d(g))}function d(g){return g===null||Ce(g)?(e.exit("codeFlowValue"),u(g)):(e.consume(g),d)}function p(g){return e.exit("codeIndented"),i(g)}}function sb(e,i,r){const l=this;return s;function s(u){return l.parser.lazy[l.now().line]?r(u):Ce(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),s):We(e,c,"linePrefix",5)(u)}function c(u){const d=l.events[l.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?i(u):Ce(u)?s(u):r(u)}}const ub={name:"codeText",previous:fb,resolve:cb,tokenize:db};function cb(e){let i=e.length-4,r=3,l,s;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[i][1].type==="lineEnding"||e[i][1].type==="space")){for(l=r;++l=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+i+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return ithis.left.length?this.right.slice(this.right.length-l+this.left.length,this.right.length-i+this.left.length).reverse():this.left.slice(i).concat(this.right.slice(this.right.length-l+this.left.length).reverse())}splice(i,r,l){const s=r||0;this.setCursor(Math.trunc(i));const c=this.right.splice(this.right.length-s,Number.POSITIVE_INFINITY);return l&&_o(this.left,l),c.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(i){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(i)}pushMany(i){this.setCursor(Number.POSITIVE_INFINITY),_o(this.left,i)}unshift(i){this.setCursor(0),this.right.push(i)}unshiftMany(i){this.setCursor(0),_o(this.right,i.reverse())}setCursor(i){if(!(i===this.left.length||i>this.left.length&&this.right.length===0||i<0&&this.left.length===0))if(i=4?i(u):e.interrupt(l.parser.constructs.flow,r,i)(u)}}function Kp(e,i,r,l,s,c,u,d,p){const g=p||Number.POSITIVE_INFINITY;let y=0;return h;function h(N){return N===60?(e.enter(l),e.enter(s),e.enter(c),e.consume(N),e.exit(c),b):N===null||N===32||N===41||Xl(N)?r(N):(e.enter(l),e.enter(u),e.enter(d),e.enter("chunkString",{contentType:"string"}),T(N))}function b(N){return N===62?(e.enter(c),e.consume(N),e.exit(c),e.exit(s),e.exit(l),i):(e.enter(d),e.enter("chunkString",{contentType:"string"}),E(N))}function E(N){return N===62?(e.exit("chunkString"),e.exit(d),b(N)):N===null||N===60||Ce(N)?r(N):(e.consume(N),N===92?k:E)}function k(N){return N===60||N===62||N===92?(e.consume(N),E):E(N)}function T(N){return!y&&(N===null||N===41||et(N))?(e.exit("chunkString"),e.exit(d),e.exit(u),e.exit(l),i(N)):y999||E===null||E===91||E===93&&!p||E===94&&!d&&"_hiddenFootnoteSupport"in u.parser.constructs?r(E):E===93?(e.exit(c),e.enter(s),e.consume(E),e.exit(s),e.exit(l),i):Ce(E)?(e.enter("lineEnding"),e.consume(E),e.exit("lineEnding"),y):(e.enter("chunkString",{contentType:"string"}),h(E))}function h(E){return E===null||E===91||E===93||Ce(E)||d++>999?(e.exit("chunkString"),y(E)):(e.consume(E),p||(p=!Ue(E)),E===92?b:h)}function b(E){return E===91||E===92||E===93?(e.consume(E),d++,h):h(E)}}function Vp(e,i,r,l,s,c){let u;return d;function d(b){return b===34||b===39||b===40?(e.enter(l),e.enter(s),e.consume(b),e.exit(s),u=b===40?41:b,p):r(b)}function p(b){return b===u?(e.enter(s),e.consume(b),e.exit(s),e.exit(l),i):(e.enter(c),g(b))}function g(b){return b===u?(e.exit(c),p(u)):b===null?r(b):Ce(b)?(e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),We(e,g,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),y(b))}function y(b){return b===u||b===null||Ce(b)?(e.exit("chunkString"),g(b)):(e.consume(b),b===92?h:y)}function h(b){return b===u||b===92?(e.consume(b),y):y(b)}}function So(e,i){let r;return l;function l(s){return Ce(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),r=!0,l):Ue(s)?We(e,l,r?"linePrefix":"lineSuffix")(s):i(s)}}const _b={name:"definition",tokenize:kb},vb={partial:!0,tokenize:wb};function kb(e,i,r){const l=this;let s;return c;function c(E){return e.enter("definition"),u(E)}function u(E){return Wp.call(l,e,d,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(E)}function d(E){return s=Tn(l.sliceSerialize(l.events[l.events.length-1][1]).slice(1,-1)),E===58?(e.enter("definitionMarker"),e.consume(E),e.exit("definitionMarker"),p):r(E)}function p(E){return et(E)?So(e,g)(E):g(E)}function g(E){return Kp(e,y,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(E)}function y(E){return e.attempt(vb,h,h)(E)}function h(E){return Ue(E)?We(e,b,"whitespace")(E):b(E)}function b(E){return E===null||Ce(E)?(e.exit("definition"),l.parser.defined.push(s),i(E)):r(E)}}function wb(e,i,r){return l;function l(d){return et(d)?So(e,s)(d):r(d)}function s(d){return Vp(e,c,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(d)}function c(d){return Ue(d)?We(e,u,"whitespace")(d):u(d)}function u(d){return d===null||Ce(d)?i(d):r(d)}}const xb={name:"hardBreakEscape",tokenize:Sb};function Sb(e,i,r){return l;function l(c){return e.enter("hardBreakEscape"),e.consume(c),s}function s(c){return Ce(c)?(e.exit("hardBreakEscape"),i(c)):r(c)}}const Nb={name:"headingAtx",resolve:Cb,tokenize:Tb};function Cb(e,i){let r=e.length-2,l=3,s,c;return e[l][1].type==="whitespace"&&(l+=2),r-2>l&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(l===r-1||r-4>l&&e[r-2][1].type==="whitespace")&&(r-=l+1===r?2:4),r>l&&(s={type:"atxHeadingText",start:e[l][1].start,end:e[r][1].end},c={type:"chunkText",start:e[l][1].start,end:e[r][1].end,contentType:"text"},ln(e,l,r-l+1,[["enter",s,i],["enter",c,i],["exit",c,i],["exit",s,i]])),e}function Tb(e,i,r){let l=0;return s;function s(y){return e.enter("atxHeading"),c(y)}function c(y){return e.enter("atxHeadingSequence"),u(y)}function u(y){return y===35&&l++<6?(e.consume(y),u):y===null||et(y)?(e.exit("atxHeadingSequence"),d(y)):r(y)}function d(y){return y===35?(e.enter("atxHeadingSequence"),p(y)):y===null||Ce(y)?(e.exit("atxHeading"),i(y)):Ue(y)?We(e,d,"whitespace")(y):(e.enter("atxHeadingText"),g(y))}function p(y){return y===35?(e.consume(y),p):(e.exit("atxHeadingSequence"),d(y))}function g(y){return y===null||y===35||et(y)?(e.exit("atxHeadingText"),d(y)):(e.consume(y),g)}}const Ab=["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"],zd=["pre","script","style","textarea"],Rb={concrete:!0,name:"htmlFlow",resolveTo:Mb,tokenize:Lb},Ob={partial:!0,tokenize:Pb},Ib={partial:!0,tokenize:Db};function Mb(e){let i=e.length;for(;i--&&!(e[i][0]==="enter"&&e[i][1].type==="htmlFlow"););return i>1&&e[i-2][1].type==="linePrefix"&&(e[i][1].start=e[i-2][1].start,e[i+1][1].start=e[i-2][1].start,e.splice(i-2,2)),e}function Lb(e,i,r){const l=this;let s,c,u,d,p;return g;function g(w){return y(w)}function y(w){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(w),h}function h(w){return w===33?(e.consume(w),b):w===47?(e.consume(w),c=!0,T):w===63?(e.consume(w),s=3,l.interrupt?i:v):Ht(w)?(e.consume(w),u=String.fromCharCode(w),S):r(w)}function b(w){return w===45?(e.consume(w),s=2,E):w===91?(e.consume(w),s=5,d=0,k):Ht(w)?(e.consume(w),s=4,l.interrupt?i:v):r(w)}function E(w){return w===45?(e.consume(w),l.interrupt?i:v):r(w)}function k(w){const we="CDATA[";return w===we.charCodeAt(d++)?(e.consume(w),d===we.length?l.interrupt?i:q:k):r(w)}function T(w){return Ht(w)?(e.consume(w),u=String.fromCharCode(w),S):r(w)}function S(w){if(w===null||w===47||w===62||et(w)){const we=w===47,Me=u.toLowerCase();return!we&&!c&&zd.includes(Me)?(s=1,l.interrupt?i(w):q(w)):Ab.includes(u.toLowerCase())?(s=6,we?(e.consume(w),N):l.interrupt?i(w):q(w)):(s=7,l.interrupt&&!l.parser.lazy[l.now().line]?r(w):c?B(w):P(w))}return w===45||Dt(w)?(e.consume(w),u+=String.fromCharCode(w),S):r(w)}function N(w){return w===62?(e.consume(w),l.interrupt?i:q):r(w)}function B(w){return Ue(w)?(e.consume(w),B):M(w)}function P(w){return w===47?(e.consume(w),M):w===58||w===95||Ht(w)?(e.consume(w),j):Ue(w)?(e.consume(w),P):M(w)}function j(w){return w===45||w===46||w===58||w===95||Dt(w)?(e.consume(w),j):Z(w)}function Z(w){return w===61?(e.consume(w),A):Ue(w)?(e.consume(w),Z):P(w)}function A(w){return w===null||w===60||w===61||w===62||w===96?r(w):w===34||w===39?(e.consume(w),p=w,X):Ue(w)?(e.consume(w),A):ee(w)}function X(w){return w===p?(e.consume(w),p=null,re):w===null||Ce(w)?r(w):(e.consume(w),X)}function ee(w){return w===null||w===34||w===39||w===47||w===60||w===61||w===62||w===96||et(w)?Z(w):(e.consume(w),ee)}function re(w){return w===47||w===62||Ue(w)?P(w):r(w)}function M(w){return w===62?(e.consume(w),W):r(w)}function W(w){return w===null||Ce(w)?q(w):Ue(w)?(e.consume(w),W):r(w)}function q(w){return w===45&&s===2?(e.consume(w),ue):w===60&&s===1?(e.consume(w),ce):w===62&&s===4?(e.consume(w),O):w===63&&s===3?(e.consume(w),v):w===93&&s===5?(e.consume(w),ae):Ce(w)&&(s===6||s===7)?(e.exit("htmlFlowData"),e.check(Ob,$,te)(w)):w===null||Ce(w)?(e.exit("htmlFlowData"),te(w)):(e.consume(w),q)}function te(w){return e.check(Ib,L,$)(w)}function L(w){return e.enter("lineEnding"),e.consume(w),e.exit("lineEnding"),U}function U(w){return w===null||Ce(w)?te(w):(e.enter("htmlFlowData"),q(w))}function ue(w){return w===45?(e.consume(w),v):q(w)}function ce(w){return w===47?(e.consume(w),u="",G):q(w)}function G(w){if(w===62){const we=u.toLowerCase();return zd.includes(we)?(e.consume(w),O):q(w)}return Ht(w)&&u.length<8?(e.consume(w),u+=String.fromCharCode(w),G):q(w)}function ae(w){return w===93?(e.consume(w),v):q(w)}function v(w){return w===62?(e.consume(w),O):w===45&&s===2?(e.consume(w),v):q(w)}function O(w){return w===null||Ce(w)?(e.exit("htmlFlowData"),$(w)):(e.consume(w),O)}function $(w){return e.exit("htmlFlow"),i(w)}}function Db(e,i,r){const l=this;return s;function s(u){return Ce(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c):r(u)}function c(u){return l.parser.lazy[l.now().line]?r(u):i(u)}}function Pb(e,i,r){return l;function l(s){return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),e.attempt(Oo,i,r)}}const zb={name:"htmlText",tokenize:Fb};function Fb(e,i,r){const l=this;let s,c,u;return d;function d(v){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(v),p}function p(v){return v===33?(e.consume(v),g):v===47?(e.consume(v),Z):v===63?(e.consume(v),P):Ht(v)?(e.consume(v),ee):r(v)}function g(v){return v===45?(e.consume(v),y):v===91?(e.consume(v),c=0,k):Ht(v)?(e.consume(v),B):r(v)}function y(v){return v===45?(e.consume(v),E):r(v)}function h(v){return v===null?r(v):v===45?(e.consume(v),b):Ce(v)?(u=h,ce(v)):(e.consume(v),h)}function b(v){return v===45?(e.consume(v),E):h(v)}function E(v){return v===62?ue(v):v===45?b(v):h(v)}function k(v){const O="CDATA[";return v===O.charCodeAt(c++)?(e.consume(v),c===O.length?T:k):r(v)}function T(v){return v===null?r(v):v===93?(e.consume(v),S):Ce(v)?(u=T,ce(v)):(e.consume(v),T)}function S(v){return v===93?(e.consume(v),N):T(v)}function N(v){return v===62?ue(v):v===93?(e.consume(v),N):T(v)}function B(v){return v===null||v===62?ue(v):Ce(v)?(u=B,ce(v)):(e.consume(v),B)}function P(v){return v===null?r(v):v===63?(e.consume(v),j):Ce(v)?(u=P,ce(v)):(e.consume(v),P)}function j(v){return v===62?ue(v):P(v)}function Z(v){return Ht(v)?(e.consume(v),A):r(v)}function A(v){return v===45||Dt(v)?(e.consume(v),A):X(v)}function X(v){return Ce(v)?(u=X,ce(v)):Ue(v)?(e.consume(v),X):ue(v)}function ee(v){return v===45||Dt(v)?(e.consume(v),ee):v===47||v===62||et(v)?re(v):r(v)}function re(v){return v===47?(e.consume(v),ue):v===58||v===95||Ht(v)?(e.consume(v),M):Ce(v)?(u=re,ce(v)):Ue(v)?(e.consume(v),re):ue(v)}function M(v){return v===45||v===46||v===58||v===95||Dt(v)?(e.consume(v),M):W(v)}function W(v){return v===61?(e.consume(v),q):Ce(v)?(u=W,ce(v)):Ue(v)?(e.consume(v),W):re(v)}function q(v){return v===null||v===60||v===61||v===62||v===96?r(v):v===34||v===39?(e.consume(v),s=v,te):Ce(v)?(u=q,ce(v)):Ue(v)?(e.consume(v),q):(e.consume(v),L)}function te(v){return v===s?(e.consume(v),s=void 0,U):v===null?r(v):Ce(v)?(u=te,ce(v)):(e.consume(v),te)}function L(v){return v===null||v===34||v===39||v===60||v===61||v===96?r(v):v===47||v===62||et(v)?re(v):(e.consume(v),L)}function U(v){return v===47||v===62||et(v)?re(v):r(v)}function ue(v){return v===62?(e.consume(v),e.exit("htmlTextData"),e.exit("htmlText"),i):r(v)}function ce(v){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(v),e.exit("lineEnding"),G}function G(v){return Ue(v)?We(e,ae,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(v):ae(v)}function ae(v){return e.enter("htmlTextData"),u(v)}}const Du={name:"labelEnd",resolveAll:Hb,resolveTo:jb,tokenize:Gb},Bb={tokenize:Kb},Ub={tokenize:Wb},$b={tokenize:Vb};function Hb(e){let i=-1;const r=[];for(;++i=3&&(g===null||Ce(g))?(e.exit("thematicBreak"),i(g)):r(g)}function p(g){return g===s?(e.consume(g),l++,p):(e.exit("thematicBreakSequence"),Ue(g)?We(e,d,"whitespace")(g):d(g))}}const Qt={continuation:{tokenize:rE},exit:oE,name:"list",tokenize:nE},eE={partial:!0,tokenize:lE},tE={partial:!0,tokenize:iE};function nE(e,i,r){const l=this,s=l.events[l.events.length-1];let c=s&&s[1].type==="linePrefix"?s[2].sliceSerialize(s[1],!0).length:0,u=0;return d;function d(E){const k=l.containerState.type||(E===42||E===43||E===45?"listUnordered":"listOrdered");if(k==="listUnordered"?!l.containerState.marker||E===l.containerState.marker:bu(E)){if(l.containerState.type||(l.containerState.type=k,e.enter(k,{_container:!0})),k==="listUnordered")return e.enter("listItemPrefix"),E===42||E===45?e.check(Zl,r,g)(E):g(E);if(!l.interrupt||E===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),p(E)}return r(E)}function p(E){return bu(E)&&++u<10?(e.consume(E),p):(!l.interrupt||u<2)&&(l.containerState.marker?E===l.containerState.marker:E===41||E===46)?(e.exit("listItemValue"),g(E)):r(E)}function g(E){return e.enter("listItemMarker"),e.consume(E),e.exit("listItemMarker"),l.containerState.marker=l.containerState.marker||E,e.check(Oo,l.interrupt?r:y,e.attempt(eE,b,h))}function y(E){return l.containerState.initialBlankLine=!0,c++,b(E)}function h(E){return Ue(E)?(e.enter("listItemPrefixWhitespace"),e.consume(E),e.exit("listItemPrefixWhitespace"),b):r(E)}function b(E){return l.containerState.size=c+l.sliceSerialize(e.exit("listItemPrefix"),!0).length,i(E)}}function rE(e,i,r){const l=this;return l.containerState._closeFlow=void 0,e.check(Oo,s,c);function s(d){return l.containerState.furtherBlankLines=l.containerState.furtherBlankLines||l.containerState.initialBlankLine,We(e,i,"listItemIndent",l.containerState.size+1)(d)}function c(d){return l.containerState.furtherBlankLines||!Ue(d)?(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,u(d)):(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,e.attempt(tE,i,u)(d))}function u(d){return l.containerState._closeFlow=!0,l.interrupt=void 0,We(e,e.attempt(Qt,i,r),"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(d)}}function iE(e,i,r){const l=this;return We(e,s,"listItemIndent",l.containerState.size+1);function s(c){const u=l.events[l.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===l.containerState.size?i(c):r(c)}}function oE(e){e.exit(this.containerState.type)}function lE(e,i,r){const l=this;return We(e,s,"listItemPrefixWhitespace",l.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function s(c){const u=l.events[l.events.length-1];return!Ue(c)&&u&&u[1].type==="listItemPrefixWhitespace"?i(c):r(c)}}const Fd={name:"setextUnderline",resolveTo:aE,tokenize:sE};function aE(e,i){let r=e.length,l,s,c;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){l=r;break}e[r][1].type==="paragraph"&&(s=r)}else e[r][1].type==="content"&&e.splice(r,1),!c&&e[r][1].type==="definition"&&(c=r);const u={type:"setextHeading",start:{...e[l][1].start},end:{...e[e.length-1][1].end}};return e[s][1].type="setextHeadingText",c?(e.splice(s,0,["enter",u,i]),e.splice(c+1,0,["exit",e[l][1],i]),e[l][1].end={...e[c][1].end}):e[l][1]=u,e.push(["exit",u,i]),e}function sE(e,i,r){const l=this;let s;return c;function c(g){let y=l.events.length,h;for(;y--;)if(l.events[y][1].type!=="lineEnding"&&l.events[y][1].type!=="linePrefix"&&l.events[y][1].type!=="content"){h=l.events[y][1].type==="paragraph";break}return!l.parser.lazy[l.now().line]&&(l.interrupt||h)?(e.enter("setextHeadingLine"),s=g,u(g)):r(g)}function u(g){return e.enter("setextHeadingLineSequence"),d(g)}function d(g){return g===s?(e.consume(g),d):(e.exit("setextHeadingLineSequence"),Ue(g)?We(e,p,"lineSuffix")(g):p(g))}function p(g){return g===null||Ce(g)?(e.exit("setextHeadingLine"),i(g)):r(g)}}const uE={tokenize:cE};function cE(e){const i=this,r=e.attempt(Oo,l,e.attempt(this.parser.constructs.flowInitial,s,We(e,e.attempt(this.parser.constructs.flow,s,e.attempt(mb,s)),"linePrefix")));return r;function l(c){if(c===null){e.consume(c);return}return e.enter("lineEndingBlank"),e.consume(c),e.exit("lineEndingBlank"),i.currentConstruct=void 0,r}function s(c){if(c===null){e.consume(c);return}return e.enter("lineEnding"),e.consume(c),e.exit("lineEnding"),i.currentConstruct=void 0,r}}const fE={resolveAll:Yp()},dE=qp("string"),pE=qp("text");function qp(e){return{resolveAll:Yp(e==="text"?gE:void 0),tokenize:i};function i(r){const l=this,s=this.parser.constructs[e],c=r.attempt(s,u,d);return u;function u(y){return g(y)?c(y):d(y)}function d(y){if(y===null){r.consume(y);return}return r.enter("data"),r.consume(y),p}function p(y){return g(y)?(r.exit("data"),c(y)):(r.consume(y),p)}function g(y){if(y===null)return!0;const h=s[y];let b=-1;if(h)for(;++b-1){const d=u[0];typeof d=="string"?u[0]=d.slice(l):u.shift()}c>0&&u.push(e[s].slice(0,c))}return u}function CE(e,i){let r=-1;const l=[];let s;for(;++r0){const _t=Te.tokenStack[Te.tokenStack.length-1];(_t[1]||Ud).call(Te,void 0,_t[0])}for(le.position={start:Sr(H.length>0?H[0][1].start:{line:1,column:1,offset:0}),end:Sr(H.length>0?H[H.length-2][1].end:{line:1,column:1,offset:0})},He=-1;++He0&&(l.className=["language-"+s[0]]);let c={type:"element",tagName:"code",properties:l,children:[{type:"text",value:r}]};return i.meta&&(c.data={meta:i.meta}),e.patch(i,c),c=e.applyData(i,c),c={type:"element",tagName:"pre",properties:{},children:[c]},e.patch(i,c),c}function $E(e,i){const r={type:"element",tagName:"del",properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function HE(e,i){const r={type:"element",tagName:"em",properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function jE(e,i){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",l=String(i.identifier).toUpperCase(),s=Li(l.toLowerCase()),c=e.footnoteOrder.indexOf(l);let u,d=e.footnoteCounts.get(l);d===void 0?(d=0,e.footnoteOrder.push(l),u=e.footnoteOrder.length):u=c+1,d+=1,e.footnoteCounts.set(l,d);const p={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+s,id:r+"fnref-"+s+(d>1?"-"+d:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};e.patch(i,p);const g={type:"element",tagName:"sup",properties:{},children:[p]};return e.patch(i,g),e.applyData(i,g)}function GE(e,i){const r={type:"element",tagName:"h"+i.depth,properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function KE(e,i){if(e.options.allowDangerousHtml){const r={type:"raw",value:i.value};return e.patch(i,r),e.applyData(i,r)}}function Xp(e,i){const r=i.referenceType;let l="]";if(r==="collapsed"?l+="[]":r==="full"&&(l+="["+(i.label||i.identifier)+"]"),i.type==="imageReference")return[{type:"text",value:"!["+i.alt+l}];const s=e.all(i),c=s[0];c&&c.type==="text"?c.value="["+c.value:s.unshift({type:"text",value:"["});const u=s[s.length-1];return u&&u.type==="text"?u.value+=l:s.push({type:"text",value:l}),s}function WE(e,i){const r=String(i.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return Xp(e,i);const s={src:Li(l.url||""),alt:i.alt};l.title!==null&&l.title!==void 0&&(s.title=l.title);const c={type:"element",tagName:"img",properties:s,children:[]};return e.patch(i,c),e.applyData(i,c)}function VE(e,i){const r={src:Li(i.url)};i.alt!==null&&i.alt!==void 0&&(r.alt=i.alt),i.title!==null&&i.title!==void 0&&(r.title=i.title);const l={type:"element",tagName:"img",properties:r,children:[]};return e.patch(i,l),e.applyData(i,l)}function qE(e,i){const r={type:"text",value:i.value.replace(/\r?\n|\r/g," ")};e.patch(i,r);const l={type:"element",tagName:"code",properties:{},children:[r]};return e.patch(i,l),e.applyData(i,l)}function YE(e,i){const r=String(i.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return Xp(e,i);const s={href:Li(l.url||"")};l.title!==null&&l.title!==void 0&&(s.title=l.title);const c={type:"element",tagName:"a",properties:s,children:e.all(i)};return e.patch(i,c),e.applyData(i,c)}function QE(e,i){const r={href:Li(i.url)};i.title!==null&&i.title!==void 0&&(r.title=i.title);const l={type:"element",tagName:"a",properties:r,children:e.all(i)};return e.patch(i,l),e.applyData(i,l)}function ZE(e,i,r){const l=e.all(i),s=r?XE(r):Jp(i),c={},u=[];if(typeof i.checked=="boolean"){const y=l[0];let h;y&&y.type==="element"&&y.tagName==="p"?h=y:(h={type:"element",tagName:"p",properties:{},children:[]},l.unshift(h)),h.children.length>0&&h.children.unshift({type:"text",value:" "}),h.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:i.checked,disabled:!0},children:[]}),c.className=["task-list-item"]}let d=-1;for(;++d1}function JE(e,i){const r={},l=e.all(i);let s=-1;for(typeof i.start=="number"&&i.start!==1&&(r.start=i.start);++s0){const u={type:"element",tagName:"tbody",properties:{},children:e.wrap(r,!0)},d=Au(i.children[1]),p=Ip(i.children[i.children.length-1]);d&&p&&(u.position={start:d,end:p}),s.push(u)}const c={type:"element",tagName:"table",properties:{},children:e.wrap(s,!0)};return e.patch(i,c),e.applyData(i,c)}function i_(e,i,r){const l=r?r.children:void 0,c=(l?l.indexOf(i):1)===0?"th":"td",u=r&&r.type==="table"?r.align:void 0,d=u?u.length:i.children.length;let p=-1;const g=[];for(;++p0,!0),l[0]),s=l.index+l[0].length,l=r.exec(i);return c.push(jd(i.slice(s),s>0,!1)),c.join("")}function jd(e,i,r){let l=0,s=e.length;if(i){let c=e.codePointAt(l);for(;c===$d||c===Hd;)l++,c=e.codePointAt(l)}if(r){let c=e.codePointAt(s-1);for(;c===$d||c===Hd;)s--,c=e.codePointAt(s-1)}return s>l?e.slice(l,s):""}function a_(e,i){const r={type:"text",value:l_(String(i.value))};return e.patch(i,r),e.applyData(i,r)}function s_(e,i){const r={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(i,r),e.applyData(i,r)}const u_={blockquote:FE,break:BE,code:UE,delete:$E,emphasis:HE,footnoteReference:jE,heading:GE,html:KE,imageReference:WE,image:VE,inlineCode:qE,linkReference:YE,link:QE,listItem:ZE,list:JE,paragraph:e_,root:t_,strong:n_,table:r_,tableCell:o_,tableRow:i_,text:a_,thematicBreak:s_,toml:Hl,yaml:Hl,definition:Hl,footnoteDefinition:Hl};function Hl(){}const eg=-1,la=0,No=1,Jl=2,Pu=3,zu=4,Fu=5,Bu=6,tg=7,ng=8,rg=typeof self=="object"?self:globalThis,Gd=(e,i)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new rg[e](i)},c_=(e,i)=>{const r=(s,c)=>(e.set(c,s),s),l=s=>{if(e.has(s))return e.get(s);const[c,u]=i[s];switch(c){case la:case eg:return r(u,s);case No:{const d=r([],s);for(const p of u)d.push(l(p));return d}case Jl:{const d=r({},s);for(const[p,g]of u)d[l(p)]=l(g);return d}case Pu:return r(new Date(u),s);case zu:{const{source:d,flags:p}=u;return r(new RegExp(d,p),s)}case Fu:{const d=r(new Map,s);for(const[p,g]of u)d.set(l(p),l(g));return d}case Bu:{const d=r(new Set,s);for(const p of u)d.add(l(p));return d}case tg:{const{name:d,message:p}=u;return r(typeof rg[d]=="function"?Gd(d,p):new Error(p),s)}case ng:return r(BigInt(u),s);case"BigInt":return r(Object(BigInt(u)),s);case"ArrayBuffer":return r(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:d}=new Uint8Array(u);return r(new DataView(d),u)}}return r(Gd(c,u),s)};return l},Kd=e=>c_(new Map,e)(0),Yr="",{toString:f_}={},{keys:d_}=Object,vo=e=>{const i=typeof e;if(i!=="object"||!e)return[la,i];const r=f_.call(e).slice(8,-1);switch(r){case"Array":return[No,Yr];case"Object":return[Jl,Yr];case"Date":return[Pu,Yr];case"RegExp":return[zu,Yr];case"Map":return[Fu,Yr];case"Set":return[Bu,Yr];case"DataView":return[No,r]}return r.includes("Array")?[No,r]:e instanceof Error?[tg,e.name||"Error"]:[Jl,r]},jl=([e,i])=>e===la&&(i==="function"||i==="symbol"),p_=(e,i,r,l)=>{const s=(u,d)=>{const p=l.push(u)-1;return r.set(d,p),p},c=u=>{if(r.has(u))return r.get(u);let[d,p]=vo(u);switch(d){case la:{let y=u;switch(p){case"bigint":d=ng,y=u.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+p);y=null;break;case"undefined":return s([eg],u)}return s([d,y],u)}case No:{if(p){let b=u;return p==="DataView"?b=new Uint8Array(u.buffer):p==="ArrayBuffer"&&(b=new Uint8Array(u)),s([p,[...b]],u)}const y=[],h=s([d,y],u);for(const b of u)y.push(c(b));return h}case Jl:{if(p)switch(p){case"BigInt":return s([p,u.toString()],u);case"Boolean":case"Number":case"String":return s([p,u.valueOf()],u)}if(i&&"toJSON"in u)return c(u.toJSON());const y=[],h=s([d,y],u);for(const b of d_(u))(e||!jl(vo(u[b])))&&y.push([c(b),c(u[b])]);return h}case Pu:return s([d,isNaN(u.getTime())?Yr:u.toISOString()],u);case zu:{const{source:y,flags:h}=u;return s([d,{source:y,flags:h}],u)}case Fu:{const y=[],h=s([d,y],u);for(const[b,E]of u)(e||!(jl(vo(b))||jl(vo(E))))&&y.push([c(b),c(E)]);return h}case Bu:{const y=[],h=s([d,y],u);for(const b of u)(e||!jl(vo(b)))&&y.push(c(b));return h}}const{message:g}=u;return s([d,{name:p,message:g}],u)};return c},Wd=(e,{json:i,lossy:r}={})=>{const l=[];return p_(!(i||r),!!i,new Map,l)(e),l},ea=typeof structuredClone=="function"?(e,i)=>i&&("json"in i||"lossy"in i)?Kd(Wd(e,i)):structuredClone(e):(e,i)=>Kd(Wd(e,i));function g_(e,i){const r=[{type:"text",value:"↩"}];return i>1&&r.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(i)}]}),r}function m_(e,i){return"Back to reference "+(e+1)+(i>1?"-"+i:"")}function h_(e){const i=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=e.options.footnoteBackContent||g_,l=e.options.footnoteBackLabel||m_,s=e.options.footnoteLabel||"Footnotes",c=e.options.footnoteLabelTagName||"h2",u=e.options.footnoteLabelProperties||{className:["sr-only"]},d=[];let p=-1;for(;++p0&&k.push({type:"text",value:" "});let B=typeof r=="string"?r:r(p,E);typeof B=="string"&&(B={type:"text",value:B}),k.push({type:"element",tagName:"a",properties:{href:"#"+i+"fnref-"+b+(E>1?"-"+E:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(p,E),className:["data-footnote-backref"]},children:Array.isArray(B)?B:[B]})}const S=y[y.length-1];if(S&&S.type==="element"&&S.tagName==="p"){const B=S.children[S.children.length-1];B&&B.type==="text"?B.value+=" ":S.children.push({type:"text",value:" "}),S.children.push(...k)}else y.push(...k);const N={type:"element",tagName:"li",properties:{id:i+"fn-"+b},children:e.wrap(y,!0)};e.patch(g,N),d.push(N)}if(d.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:c,properties:{...ea(u),id:"footnote-label"},children:[{type:"text",value:s}]},{type:"text",value:` -`},{type:"element",tagName:"ol",properties:{},children:e.wrap(d,!0)},{type:"text",value:` -`}]}}const Io=(function(e){if(e==null)return __;if(typeof e=="function")return aa(e);if(typeof e=="object")return Array.isArray(e)?y_(e):b_(e);if(typeof e=="string")return E_(e);throw new Error("Expected function, string, or object as test")});function y_(e){const i=[];let r=-1;for(;++r":""))+")"})}return b;function b(){let E=ig,k,T,S;if((!i||c(p,g,y[y.length-1]||void 0))&&(E=x_(r(p,y)),E[0]===_u))return E;if("children"in p&&p.children){const N=p;if(N.children&&E[0]!==w_)for(T=(l?N.children.length:-1)+u,S=y.concat(N);T>-1&&T0&&r.push({type:"text",value:` -`}),r}function Vd(e){let i=0,r=e.charCodeAt(i);for(;r===9||r===32;)i++,r=e.charCodeAt(i);return e.slice(i)}function qd(e,i){const r=N_(e,i),l=r.one(e,void 0),s=h_(r),c=Array.isArray(l)?{type:"root",children:l}:l||{type:"root",children:[]};return s&&c.children.push({type:"text",value:` -`},s),c}function O_(e,i){return e&&"run"in e?async function(r,l){const s=qd(r,{file:l,...i});await e.run(s,l)}:function(r,l){return qd(r,{file:l,...e||i})}}function Yd(e){if(e)throw e}var Js,Qd;function I_(){if(Qd)return Js;Qd=1;var e=Object.prototype.hasOwnProperty,i=Object.prototype.toString,r=Object.defineProperty,l=Object.getOwnPropertyDescriptor,s=function(g){return typeof Array.isArray=="function"?Array.isArray(g):i.call(g)==="[object Array]"},c=function(g){if(!g||i.call(g)!=="[object Object]")return!1;var y=e.call(g,"constructor"),h=g.constructor&&g.constructor.prototype&&e.call(g.constructor.prototype,"isPrototypeOf");if(g.constructor&&!y&&!h)return!1;var b;for(b in g);return typeof b>"u"||e.call(g,b)},u=function(g,y){r&&y.name==="__proto__"?r(g,y.name,{enumerable:!0,configurable:!0,value:y.newValue,writable:!0}):g[y.name]=y.newValue},d=function(g,y){if(y==="__proto__")if(e.call(g,y)){if(l)return l(g,y).value}else return;return g[y]};return Js=function p(){var g,y,h,b,E,k,T=arguments[0],S=1,N=arguments.length,B=!1;for(typeof T=="boolean"&&(B=T,T=arguments[1]||{},S=2),(T==null||typeof T!="object"&&typeof T!="function")&&(T={});Su.length;let p;d&&u.push(s);try{p=e.apply(this,u)}catch(g){const y=g;if(d&&r)throw y;return s(y)}d||(p&&p.then&&typeof p.then=="function"?p.then(c,s):p instanceof Error?s(p):c(p))}function s(u,...d){r||(r=!0,i(u,...d))}function c(u){s(null,u)}}const Un={basename:P_,dirname:z_,extname:F_,join:B_,sep:"/"};function P_(e,i){if(i!==void 0&&typeof i!="string")throw new TypeError('"ext" argument must be a string');Mo(e);let r=0,l=-1,s=e.length,c;if(i===void 0||i.length===0||i.length>e.length){for(;s--;)if(e.codePointAt(s)===47){if(c){r=s+1;break}}else l<0&&(c=!0,l=s+1);return l<0?"":e.slice(r,l)}if(i===e)return"";let u=-1,d=i.length-1;for(;s--;)if(e.codePointAt(s)===47){if(c){r=s+1;break}}else u<0&&(c=!0,u=s+1),d>-1&&(e.codePointAt(s)===i.codePointAt(d--)?d<0&&(l=s):(d=-1,l=u));return r===l?l=u:l<0&&(l=e.length),e.slice(r,l)}function z_(e){if(Mo(e),e.length===0)return".";let i=-1,r=e.length,l;for(;--r;)if(e.codePointAt(r)===47){if(l){i=r;break}}else l||(l=!0);return i<0?e.codePointAt(0)===47?"/":".":i===1&&e.codePointAt(0)===47?"//":e.slice(0,i)}function F_(e){Mo(e);let i=e.length,r=-1,l=0,s=-1,c=0,u;for(;i--;){const d=e.codePointAt(i);if(d===47){if(u){l=i+1;break}continue}r<0&&(u=!0,r=i+1),d===46?s<0?s=i:c!==1&&(c=1):s>-1&&(c=-1)}return s<0||r<0||c===0||c===1&&s===r-1&&s===l+1?"":e.slice(s,r)}function B_(...e){let i=-1,r;for(;++i0&&e.codePointAt(e.length-1)===47&&(r+="/"),i?"/"+r:r}function $_(e,i){let r="",l=0,s=-1,c=0,u=-1,d,p;for(;++u<=e.length;){if(u2){if(p=r.lastIndexOf("/"),p!==r.length-1){p<0?(r="",l=0):(r=r.slice(0,p),l=r.length-1-r.lastIndexOf("/")),s=u,c=0;continue}}else if(r.length>0){r="",l=0,s=u,c=0;continue}}i&&(r=r.length>0?r+"/..":"..",l=2)}else r.length>0?r+="/"+e.slice(s+1,u):r=e.slice(s+1,u),l=u-s-1;s=u,c=0}else d===46&&c>-1?c++:c=-1}return r}function Mo(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const H_={cwd:j_};function j_(){return"/"}function wu(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function G_(e){if(typeof e=="string")e=new URL(e);else if(!wu(e)){const i=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw i.code="ERR_INVALID_ARG_TYPE",i}if(e.protocol!=="file:"){const i=new TypeError("The URL must be of scheme file");throw i.code="ERR_INVALID_URL_SCHEME",i}return K_(e)}function K_(e){if(e.hostname!==""){const l=new TypeError('File URL host must be "localhost" or empty on darwin');throw l.code="ERR_INVALID_FILE_URL_HOST",l}const i=e.pathname;let r=-1;for(;++r0){let[E,...k]=y;const T=l[b][1];ku(T)&&ku(E)&&(E=eu(!0,T,E)),l[b]=[g,E,...k]}}}}const Y_=new Uu().freeze();function iu(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function ou(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function lu(e,i){if(i)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Xd(e){if(!ku(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Jd(e,i,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+i+"` instead")}function Gl(e){return Q_(e)?e:new lg(e)}function Q_(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function Z_(e){return typeof e=="string"||X_(e)}function X_(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const J_="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",ep=[],tp={allowDangerousHtml:!0},ev=/^(https?|ircs?|mailto|xmpp)$/i,tv=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function nv(e){const i=rv(e),r=iv(e);return ov(i.runSync(i.parse(r),r),e)}function rv(e){const i=e.rehypePlugins||ep,r=e.remarkPlugins||ep,l=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...tp}:tp;return Y_().use(zE).use(r).use(O_,l).use(i)}function iv(e){const i=e.children||"",r=new lg;return typeof i=="string"&&(r.value=i),r}function ov(e,i){const r=i.allowedElements,l=i.allowElement,s=i.components,c=i.disallowedElements,u=i.skipHtml,d=i.unwrapDisallowed,p=i.urlTransform||lv;for(const y of tv)Object.hasOwn(i,y.from)&&(""+y.from+(y.to?"use `"+y.to+"` instead":"remove it")+J_+y.id,void 0);return i.className&&(e={type:"element",tagName:"div",properties:{className:i.className},children:e.type==="root"?e.children:[e]}),sa(e,g),_y(e,{Fragment:K.Fragment,components:s,ignoreInvalidStyle:!0,jsx:K.jsx,jsxs:K.jsxs,passKeys:!0,passNode:!0});function g(y,h,b){if(y.type==="raw"&&b&&typeof h=="number")return u?b.children.splice(h,1):b.children[h]={type:"text",value:y.value},h;if(y.type==="element"){let E;for(E in Qs)if(Object.hasOwn(Qs,E)&&Object.hasOwn(y.properties,E)){const k=y.properties[E],T=Qs[E];(T===null||T.includes(y.tagName))&&(y.properties[E]=p(String(k||""),E,y))}}if(y.type==="element"){let E=r?!r.includes(y.tagName):c?c.includes(y.tagName):!1;if(!E&&l&&typeof h=="number"&&(E=!l(y,h,b)),E&&b&&typeof h=="number")return d&&y.children?b.children.splice(h,1,...y.children):b.children.splice(h,1),h}}}function lv(e){const i=e.indexOf(":"),r=e.indexOf("?"),l=e.indexOf("#"),s=e.indexOf("/");return i===-1||s!==-1&&i>s||r!==-1&&i>r||l!==-1&&i>l||ev.test(e.slice(0,i))?e:""}function np(e,i){const r=String(e);if(typeof i!="string")throw new TypeError("Expected character");let l=0,s=r.indexOf(i);for(;s!==-1;)l++,s=r.indexOf(i,s+i.length);return l}function av(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function sv(e,i,r){const s=Io((r||{}).ignore||[]),c=uv(i);let u=-1;for(;++u0?{type:"text",value:A}:void 0),A===!1?b.lastIndex=j+1:(k!==j&&B.push({type:"text",value:g.value.slice(k,j)}),Array.isArray(A)?B.push(...A):A&&B.push(A),k=j+P[0].length,N=!0),!b.global)break;P=b.exec(g.value)}return N?(k?\]}]+$/.exec(e);if(!i)return[e,void 0];e=e.slice(0,i.index);let r=i[0],l=r.indexOf(")");const s=np(e,"(");let c=np(e,")");for(;l!==-1&&s>c;)e+=r.slice(0,l+1),r=r.slice(l+1),l=r.indexOf(")"),c++;return[e,r]}function ag(e,i){const r=e.input.charCodeAt(e.index-1);return(e.index===0||Zr(r)||ia(r))&&(!i||r!==47)}sg.peek=Iv;function xv(){this.buffer()}function Sv(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function Nv(){this.buffer()}function Cv(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function Tv(e){const i=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=Tn(this.sliceSerialize(e)).toLowerCase(),r.label=i}function Av(e){this.exit(e)}function Rv(e){const i=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=Tn(this.sliceSerialize(e)).toLowerCase(),r.label=i}function Ov(e){this.exit(e)}function Iv(){return"["}function sg(e,i,r,l){const s=r.createTracker(l);let c=s.move("[^");const u=r.enter("footnoteReference"),d=r.enter("reference");return c+=s.move(r.safe(r.associationId(e),{after:"]",before:c})),d(),u(),c+=s.move("]"),c}function Mv(){return{enter:{gfmFootnoteCallString:xv,gfmFootnoteCall:Sv,gfmFootnoteDefinitionLabelString:Nv,gfmFootnoteDefinition:Cv},exit:{gfmFootnoteCallString:Tv,gfmFootnoteCall:Av,gfmFootnoteDefinitionLabelString:Rv,gfmFootnoteDefinition:Ov}}}function Lv(e){let i=!1;return e&&e.firstLineBlank&&(i=!0),{handlers:{footnoteDefinition:r,footnoteReference:sg},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function r(l,s,c,u){const d=c.createTracker(u);let p=d.move("[^");const g=c.enter("footnoteDefinition"),y=c.enter("label");return p+=d.move(c.safe(c.associationId(l),{before:p,after:"]"})),y(),p+=d.move("]:"),l.children&&l.children.length>0&&(d.shift(4),p+=d.move((i?` -`:" ")+c.indentLines(c.containerFlow(l,d.current()),i?ug:Dv))),g(),p}}function Dv(e,i,r){return i===0?e:ug(e,i,r)}function ug(e,i,r){return(r?"":" ")+e}const Pv=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];cg.peek=$v;function zv(){return{canContainEols:["delete"],enter:{strikethrough:Bv},exit:{strikethrough:Uv}}}function Fv(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Pv}],handlers:{delete:cg}}}function Bv(e){this.enter({type:"delete",children:[]},e)}function Uv(e){this.exit(e)}function cg(e,i,r,l){const s=r.createTracker(l),c=r.enter("strikethrough");let u=s.move("~~");return u+=r.containerPhrasing(e,{...s.current(),before:u,after:"~"}),u+=s.move("~~"),c(),u}function $v(){return"~"}function Hv(e){return e.length}function jv(e,i){const r=i||{},l=(r.align||[]).concat(),s=r.stringLength||Hv,c=[],u=[],d=[],p=[];let g=0,y=-1;for(;++yg&&(g=e[y].length);++Np[N])&&(p[N]=P)}T.push(B)}u[y]=T,d[y]=S}let h=-1;if(typeof l=="object"&&"length"in l)for(;++hp[h]&&(p[h]=B),E[h]=B),b[h]=P}u.splice(1,0,b),d.splice(1,0,E),y=-1;const k=[];for(;++y "),c.shift(2);const u=r.indentLines(r.containerFlow(e,c.current()),Wv);return s(),u}function Wv(e,i,r){return">"+(r?"":" ")+e}function Vv(e,i){return ip(e,i.inConstruct,!0)&&!ip(e,i.notInConstruct,!1)}function ip(e,i,r){if(typeof i=="string"&&(i=[i]),!i||i.length===0)return r;let l=-1;for(;++lu&&(u=c):c=1,s=l+i.length,l=r.indexOf(i,s);return u}function Yv(e,i){return!!(i.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Qv(e){const i=e.options.fence||"`";if(i!=="`"&&i!=="~")throw new Error("Cannot serialize code with `"+i+"` for `options.fence`, expected `` ` `` or `~`");return i}function Zv(e,i,r,l){const s=Qv(r),c=e.value||"",u=s==="`"?"GraveAccent":"Tilde";if(Yv(e,r)){const h=r.enter("codeIndented"),b=r.indentLines(c,Xv);return h(),b}const d=r.createTracker(l),p=s.repeat(Math.max(qv(c,s)+1,3)),g=r.enter("codeFenced");let y=d.move(p);if(e.lang){const h=r.enter(`codeFencedLang${u}`);y+=d.move(r.safe(e.lang,{before:y,after:" ",encode:["`"],...d.current()})),h()}if(e.lang&&e.meta){const h=r.enter(`codeFencedMeta${u}`);y+=d.move(" "),y+=d.move(r.safe(e.meta,{before:y,after:` -`,encode:["`"],...d.current()})),h()}return y+=d.move(` -`),c&&(y+=d.move(c+` -`)),y+=d.move(p),g(),y}function Xv(e,i,r){return(r?"":" ")+e}function $u(e){const i=e.options.quote||'"';if(i!=='"'&&i!=="'")throw new Error("Cannot serialize title with `"+i+"` for `options.quote`, expected `\"`, or `'`");return i}function Jv(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.enter("definition");let d=r.enter("label");const p=r.createTracker(l);let g=p.move("[");return g+=p.move(r.safe(r.associationId(e),{before:g,after:"]",...p.current()})),g+=p.move("]: "),d(),!e.url||/[\0- \u007F]/.test(e.url)?(d=r.enter("destinationLiteral"),g+=p.move("<"),g+=p.move(r.safe(e.url,{before:g,after:">",...p.current()})),g+=p.move(">")):(d=r.enter("destinationRaw"),g+=p.move(r.safe(e.url,{before:g,after:e.title?" ":` -`,...p.current()}))),d(),e.title&&(d=r.enter(`title${c}`),g+=p.move(" "+s),g+=p.move(r.safe(e.title,{before:g,after:s,...p.current()})),g+=p.move(s),d()),u(),g}function ek(e){const i=e.options.emphasis||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize emphasis with `"+i+"` for `options.emphasis`, expected `*`, or `_`");return i}function To(e){return"&#x"+e.toString(16).toUpperCase()+";"}function ta(e,i,r){const l=Ii(e),s=Ii(i);return l===void 0?s===void 0?r==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:s===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:l===1?s===void 0?{inside:!1,outside:!1}:s===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:s===void 0?{inside:!1,outside:!1}:s===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}fg.peek=tk;function fg(e,i,r,l){const s=ek(r),c=r.enter("emphasis"),u=r.createTracker(l),d=u.move(s);let p=u.move(r.containerPhrasing(e,{after:s,before:d,...u.current()}));const g=p.charCodeAt(0),y=ta(l.before.charCodeAt(l.before.length-1),g,s);y.inside&&(p=To(g)+p.slice(1));const h=p.charCodeAt(p.length-1),b=ta(l.after.charCodeAt(0),h,s);b.inside&&(p=p.slice(0,-1)+To(h));const E=u.move(s);return c(),r.attentionEncodeSurroundingInfo={after:b.outside,before:y.outside},d+p+E}function tk(e,i,r){return r.options.emphasis||"*"}function nk(e,i){let r=!1;return sa(e,function(l){if("value"in l&&/\r?\n|\r/.test(l.value)||l.type==="break")return r=!0,_u}),!!((!e.depth||e.depth<3)&&Mu(e)&&(i.options.setext||r))}function rk(e,i,r,l){const s=Math.max(Math.min(6,e.depth||1),1),c=r.createTracker(l);if(nk(e,r)){const y=r.enter("headingSetext"),h=r.enter("phrasing"),b=r.containerPhrasing(e,{...c.current(),before:` -`,after:` -`});return h(),y(),b+` -`+(s===1?"=":"-").repeat(b.length-(Math.max(b.lastIndexOf("\r"),b.lastIndexOf(` -`))+1))}const u="#".repeat(s),d=r.enter("headingAtx"),p=r.enter("phrasing");c.move(u+" ");let g=r.containerPhrasing(e,{before:"# ",after:` -`,...c.current()});return/^[\t ]/.test(g)&&(g=To(g.charCodeAt(0))+g.slice(1)),g=g?u+" "+g:u,r.options.closeAtx&&(g+=" "+u),p(),d(),g}dg.peek=ik;function dg(e){return e.value||""}function ik(){return"<"}pg.peek=ok;function pg(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.enter("image");let d=r.enter("label");const p=r.createTracker(l);let g=p.move("![");return g+=p.move(r.safe(e.alt,{before:g,after:"]",...p.current()})),g+=p.move("]("),d(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(d=r.enter("destinationLiteral"),g+=p.move("<"),g+=p.move(r.safe(e.url,{before:g,after:">",...p.current()})),g+=p.move(">")):(d=r.enter("destinationRaw"),g+=p.move(r.safe(e.url,{before:g,after:e.title?" ":")",...p.current()}))),d(),e.title&&(d=r.enter(`title${c}`),g+=p.move(" "+s),g+=p.move(r.safe(e.title,{before:g,after:s,...p.current()})),g+=p.move(s),d()),g+=p.move(")"),u(),g}function ok(){return"!"}gg.peek=lk;function gg(e,i,r,l){const s=e.referenceType,c=r.enter("imageReference");let u=r.enter("label");const d=r.createTracker(l);let p=d.move("![");const g=r.safe(e.alt,{before:p,after:"]",...d.current()});p+=d.move(g+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const h=r.safe(r.associationId(e),{before:p,after:"]",...d.current()});return u(),r.stack=y,c(),s==="full"||!g||g!==h?p+=d.move(h+"]"):s==="shortcut"?p=p.slice(0,-1):p+=d.move("]"),p}function lk(){return"!"}mg.peek=ak;function mg(e,i,r){let l=e.value||"",s="`",c=-1;for(;new RegExp("(^|[^`])"+s+"([^`]|$)").test(l);)s+="`";for(/[^ \r\n]/.test(l)&&(/^[ \r\n]/.test(l)&&/[ \r\n]$/.test(l)||/^`|`$/.test(l))&&(l=" "+l+" ");++c\u007F]/.test(e.url))}yg.peek=sk;function yg(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.createTracker(l);let d,p;if(hg(e,r)){const y=r.stack;r.stack=[],d=r.enter("autolink");let h=u.move("<");return h+=u.move(r.containerPhrasing(e,{before:h,after:">",...u.current()})),h+=u.move(">"),d(),r.stack=y,h}d=r.enter("link"),p=r.enter("label");let g=u.move("[");return g+=u.move(r.containerPhrasing(e,{before:g,after:"](",...u.current()})),g+=u.move("]("),p(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(p=r.enter("destinationLiteral"),g+=u.move("<"),g+=u.move(r.safe(e.url,{before:g,after:">",...u.current()})),g+=u.move(">")):(p=r.enter("destinationRaw"),g+=u.move(r.safe(e.url,{before:g,after:e.title?" ":")",...u.current()}))),p(),e.title&&(p=r.enter(`title${c}`),g+=u.move(" "+s),g+=u.move(r.safe(e.title,{before:g,after:s,...u.current()})),g+=u.move(s),p()),g+=u.move(")"),d(),g}function sk(e,i,r){return hg(e,r)?"<":"["}bg.peek=uk;function bg(e,i,r,l){const s=e.referenceType,c=r.enter("linkReference");let u=r.enter("label");const d=r.createTracker(l);let p=d.move("[");const g=r.containerPhrasing(e,{before:p,after:"]",...d.current()});p+=d.move(g+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const h=r.safe(r.associationId(e),{before:p,after:"]",...d.current()});return u(),r.stack=y,c(),s==="full"||!g||g!==h?p+=d.move(h+"]"):s==="shortcut"?p=p.slice(0,-1):p+=d.move("]"),p}function uk(){return"["}function Hu(e){const i=e.options.bullet||"*";if(i!=="*"&&i!=="+"&&i!=="-")throw new Error("Cannot serialize items with `"+i+"` for `options.bullet`, expected `*`, `+`, or `-`");return i}function ck(e){const i=Hu(e),r=e.options.bulletOther;if(!r)return i==="*"?"-":"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(r===i)throw new Error("Expected `bullet` (`"+i+"`) and `bulletOther` (`"+r+"`) to be different");return r}function fk(e){const i=e.options.bulletOrdered||".";if(i!=="."&&i!==")")throw new Error("Cannot serialize items with `"+i+"` for `options.bulletOrdered`, expected `.` or `)`");return i}function Eg(e){const i=e.options.rule||"*";if(i!=="*"&&i!=="-"&&i!=="_")throw new Error("Cannot serialize rules with `"+i+"` for `options.rule`, expected `*`, `-`, or `_`");return i}function dk(e,i,r,l){const s=r.enter("list"),c=r.bulletCurrent;let u=e.ordered?fk(r):Hu(r);const d=e.ordered?u==="."?")":".":ck(r);let p=i&&r.bulletLastUsed?u===r.bulletLastUsed:!1;if(!e.ordered){const y=e.children?e.children[0]:void 0;if((u==="*"||u==="-")&&y&&(!y.children||!y.children[0])&&r.stack[r.stack.length-1]==="list"&&r.stack[r.stack.length-2]==="listItem"&&r.stack[r.stack.length-3]==="list"&&r.stack[r.stack.length-4]==="listItem"&&r.indexStack[r.indexStack.length-1]===0&&r.indexStack[r.indexStack.length-2]===0&&r.indexStack[r.indexStack.length-3]===0&&(p=!0),Eg(r)===u&&y){let h=-1;for(;++h-1?i.start:1)+(r.options.incrementListMarker===!1?0:i.children.indexOf(e))+c);let u=c.length+1;(s==="tab"||s==="mixed"&&(i&&i.type==="list"&&i.spread||e.spread))&&(u=Math.ceil(u/4)*4);const d=r.createTracker(l);d.move(c+" ".repeat(u-c.length)),d.shift(u);const p=r.enter("listItem"),g=r.indentLines(r.containerFlow(e,d.current()),y);return p(),g;function y(h,b,E){return b?(E?"":" ".repeat(u))+h:(E?c:c+" ".repeat(u-c.length))+h}}function mk(e,i,r,l){const s=r.enter("paragraph"),c=r.enter("phrasing"),u=r.containerPhrasing(e,l);return c(),s(),u}const hk=Io(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function yk(e,i,r,l){return(e.children.some(function(u){return hk(u)})?r.containerPhrasing:r.containerFlow).call(r,e,l)}function bk(e){const i=e.options.strong||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize strong with `"+i+"` for `options.strong`, expected `*`, or `_`");return i}_g.peek=Ek;function _g(e,i,r,l){const s=bk(r),c=r.enter("strong"),u=r.createTracker(l),d=u.move(s+s);let p=u.move(r.containerPhrasing(e,{after:s,before:d,...u.current()}));const g=p.charCodeAt(0),y=ta(l.before.charCodeAt(l.before.length-1),g,s);y.inside&&(p=To(g)+p.slice(1));const h=p.charCodeAt(p.length-1),b=ta(l.after.charCodeAt(0),h,s);b.inside&&(p=p.slice(0,-1)+To(h));const E=u.move(s+s);return c(),r.attentionEncodeSurroundingInfo={after:b.outside,before:y.outside},d+p+E}function Ek(e,i,r){return r.options.strong||"*"}function _k(e,i,r,l){return r.safe(e.value,l)}function vk(e){const i=e.options.ruleRepetition||3;if(i<3)throw new Error("Cannot serialize rules with repetition `"+i+"` for `options.ruleRepetition`, expected `3` or more");return i}function kk(e,i,r){const l=(Eg(r)+(r.options.ruleSpaces?" ":"")).repeat(vk(r));return r.options.ruleSpaces?l.slice(0,-1):l}const vg={blockquote:Kv,break:op,code:Zv,definition:Jv,emphasis:fg,hardBreak:op,heading:rk,html:dg,image:pg,imageReference:gg,inlineCode:mg,link:yg,linkReference:bg,list:dk,listItem:gk,paragraph:mk,root:yk,strong:_g,text:_k,thematicBreak:kk};function wk(){return{enter:{table:xk,tableData:lp,tableHeader:lp,tableRow:Nk},exit:{codeText:Ck,table:Sk,tableData:cu,tableHeader:cu,tableRow:cu}}}function xk(e){const i=e._align;this.enter({type:"table",align:i.map(function(r){return r==="none"?null:r}),children:[]},e),this.data.inTable=!0}function Sk(e){this.exit(e),this.data.inTable=void 0}function Nk(e){this.enter({type:"tableRow",children:[]},e)}function cu(e){this.exit(e)}function lp(e){this.enter({type:"tableCell",children:[]},e)}function Ck(e){let i=this.resume();this.data.inTable&&(i=i.replace(/\\([\\|])/g,Tk));const r=this.stack[this.stack.length-1];r.type,r.value=i,this.exit(e)}function Tk(e,i){return i==="|"?i:e}function Ak(e){const i=e||{},r=i.tableCellPadding,l=i.tablePipeAlign,s=i.stringLength,c=r?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` -`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:b,table:u,tableCell:p,tableRow:d}};function u(E,k,T,S){return g(y(E,T,S),E.align)}function d(E,k,T,S){const N=h(E,T,S),B=g([N]);return B.slice(0,B.indexOf(` -`))}function p(E,k,T,S){const N=T.enter("tableCell"),B=T.enter("phrasing"),P=T.containerPhrasing(E,{...S,before:c,after:c});return B(),N(),P}function g(E,k){return jv(E,{align:k,alignDelimiters:l,padding:r,stringLength:s})}function y(E,k,T){const S=E.children;let N=-1;const B=[],P=k.enter("table");for(;++N0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}const Vk={tokenize:tw,partial:!0};function qk(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Xk,continuation:{tokenize:Jk},exit:ew}},text:{91:{name:"gfmFootnoteCall",tokenize:Zk},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:Yk,resolveTo:Qk}}}}function Yk(e,i,r){const l=this;let s=l.events.length;const c=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let u;for(;s--;){const p=l.events[s][1];if(p.type==="labelImage"){u=p;break}if(p.type==="gfmFootnoteCall"||p.type==="labelLink"||p.type==="label"||p.type==="image"||p.type==="link")break}return d;function d(p){if(!u||!u._balanced)return r(p);const g=Tn(l.sliceSerialize({start:u.end,end:l.now()}));return g.codePointAt(0)!==94||!c.includes(g.slice(1))?r(p):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),i(p))}}function Qk(e,i){let r=e.length;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";const l={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},s={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};s.end.column++,s.end.offset++,s.end._bufferIndex++;const c={type:"gfmFootnoteCallString",start:Object.assign({},s.end),end:Object.assign({},e[e.length-1][1].start)},u={type:"chunkString",contentType:"string",start:Object.assign({},c.start),end:Object.assign({},c.end)},d=[e[r+1],e[r+2],["enter",l,i],e[r+3],e[r+4],["enter",s,i],["exit",s,i],["enter",c,i],["enter",u,i],["exit",u,i],["exit",c,i],e[e.length-2],e[e.length-1],["exit",l,i]];return e.splice(r,e.length-r+1,...d),e}function Zk(e,i,r){const l=this,s=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let c=0,u;return d;function d(h){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),p}function p(h){return h!==94?r(h):(e.enter("gfmFootnoteCallMarker"),e.consume(h),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",g)}function g(h){if(c>999||h===93&&!u||h===null||h===91||et(h))return r(h);if(h===93){e.exit("chunkString");const b=e.exit("gfmFootnoteCallString");return s.includes(Tn(l.sliceSerialize(b)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),i):r(h)}return et(h)||(u=!0),c++,e.consume(h),h===92?y:g}function y(h){return h===91||h===92||h===93?(e.consume(h),c++,g):g(h)}}function Xk(e,i,r){const l=this,s=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let c,u=0,d;return p;function p(k){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),g}function g(k){return k===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",y):r(k)}function y(k){if(u>999||k===93&&!d||k===null||k===91||et(k))return r(k);if(k===93){e.exit("chunkString");const T=e.exit("gfmFootnoteDefinitionLabelString");return c=Tn(l.sliceSerialize(T)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),b}return et(k)||(d=!0),u++,e.consume(k),k===92?h:y}function h(k){return k===91||k===92||k===93?(e.consume(k),u++,y):y(k)}function b(k){return k===58?(e.enter("definitionMarker"),e.consume(k),e.exit("definitionMarker"),s.includes(c)||s.push(c),We(e,E,"gfmFootnoteDefinitionWhitespace")):r(k)}function E(k){return i(k)}}function Jk(e,i,r){return e.check(Oo,i,e.attempt(Vk,i,r))}function ew(e){e.exit("gfmFootnoteDefinition")}function tw(e,i,r){const l=this;return We(e,s,"gfmFootnoteDefinitionIndent",5);function s(c){const u=l.events[l.events.length-1];return u&&u[1].type==="gfmFootnoteDefinitionIndent"&&u[2].sliceSerialize(u[1],!0).length===4?i(c):r(c)}}function nw(e){let r=(e||{}).singleTilde;const l={name:"strikethrough",tokenize:c,resolveAll:s};return r==null&&(r=!0),{text:{126:l},insideSpan:{null:[l]},attentionMarkers:{null:[126]}};function s(u,d){let p=-1;for(;++p1?p(k):(u.consume(k),h++,E);if(h<2&&!r)return p(k);const S=u.exit("strikethroughSequenceTemporary"),N=Ii(k);return S._open=!N||N===2&&!!T,S._close=!T||T===2&&!!N,d(k)}}}class rw{constructor(){this.map=[]}add(i,r,l){iw(this,i,r,l)}consume(i){if(this.map.sort(function(c,u){return c[0]-u[0]}),this.map.length===0)return;let r=this.map.length;const l=[];for(;r>0;)r-=1,l.push(i.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),i.length=this.map[r][0];l.push(i.slice()),i.length=0;let s=l.pop();for(;s;){for(const c of s)i.push(c);s=l.pop()}this.map.length=0}}function iw(e,i,r,l){let s=0;if(!(r===0&&l.length===0)){for(;s-1;){const L=l.events[W][1].type;if(L==="lineEnding"||L==="linePrefix")W--;else break}const q=W>-1?l.events[W][1].type:null,te=q==="tableHead"||q==="tableRow"?A:p;return te===A&&l.parser.lazy[l.now().line]?r(M):te(M)}function p(M){return e.enter("tableHead"),e.enter("tableRow"),g(M)}function g(M){return M===124||(u=!0,c+=1),y(M)}function y(M){return M===null?r(M):Ce(M)?c>1?(c=0,l.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(M),e.exit("lineEnding"),E):r(M):Ue(M)?We(e,y,"whitespace")(M):(c+=1,u&&(u=!1,s+=1),M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),u=!0,y):(e.enter("data"),h(M)))}function h(M){return M===null||M===124||et(M)?(e.exit("data"),y(M)):(e.consume(M),M===92?b:h)}function b(M){return M===92||M===124?(e.consume(M),h):h(M)}function E(M){return l.interrupt=!1,l.parser.lazy[l.now().line]?r(M):(e.enter("tableDelimiterRow"),u=!1,Ue(M)?We(e,k,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):k(M))}function k(M){return M===45||M===58?S(M):M===124?(u=!0,e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),T):Z(M)}function T(M){return Ue(M)?We(e,S,"whitespace")(M):S(M)}function S(M){return M===58?(c+=1,u=!0,e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),N):M===45?(c+=1,N(M)):M===null||Ce(M)?j(M):Z(M)}function N(M){return M===45?(e.enter("tableDelimiterFiller"),B(M)):Z(M)}function B(M){return M===45?(e.consume(M),B):M===58?(u=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),P):(e.exit("tableDelimiterFiller"),P(M))}function P(M){return Ue(M)?We(e,j,"whitespace")(M):j(M)}function j(M){return M===124?k(M):M===null||Ce(M)?!u||s!==c?Z(M):(e.exit("tableDelimiterRow"),e.exit("tableHead"),i(M)):Z(M)}function Z(M){return r(M)}function A(M){return e.enter("tableRow"),X(M)}function X(M){return M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),X):M===null||Ce(M)?(e.exit("tableRow"),i(M)):Ue(M)?We(e,X,"whitespace")(M):(e.enter("data"),ee(M))}function ee(M){return M===null||M===124||et(M)?(e.exit("data"),X(M)):(e.consume(M),M===92?re:ee)}function re(M){return M===92||M===124?(e.consume(M),ee):ee(M)}}function sw(e,i){let r=-1,l=!0,s=0,c=[0,0,0,0],u=[0,0,0,0],d=!1,p=0,g,y,h;const b=new rw;for(;++rr[2]+1){const k=r[2]+1,T=r[3]-r[2]-1;e.add(k,T,[])}}e.add(r[3]+1,0,[["exit",h,i]])}return s!==void 0&&(c.end=Object.assign({},Ai(i.events,s)),e.add(s,0,[["exit",c,i]]),c=void 0),c}function sp(e,i,r,l,s){const c=[],u=Ai(i.events,r);s&&(s.end=Object.assign({},u),c.push(["exit",s,i])),l.end=Object.assign({},u),c.push(["exit",l,i]),e.add(r+1,0,c)}function Ai(e,i){const r=e[i],l=r[0]==="enter"?"start":"end";return r[1][l]}const uw={name:"tasklistCheck",tokenize:fw};function cw(){return{text:{91:uw}}}function fw(e,i,r){const l=this;return s;function s(p){return l.previous!==null||!l._gfmTasklistFirstContentOfListItem?r(p):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(p),e.exit("taskListCheckMarker"),c)}function c(p){return et(p)?(e.enter("taskListCheckValueUnchecked"),e.consume(p),e.exit("taskListCheckValueUnchecked"),u):p===88||p===120?(e.enter("taskListCheckValueChecked"),e.consume(p),e.exit("taskListCheckValueChecked"),u):r(p)}function u(p){return p===93?(e.enter("taskListCheckMarker"),e.consume(p),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),d):r(p)}function d(p){return Ce(p)?i(p):Ue(p)?e.check({tokenize:dw},i,r)(p):r(p)}}function dw(e,i,r){return We(e,l,"whitespace");function l(s){return s===null?r(s):i(s)}}function pw(e){return Bp([Fk(),qk(),nw(e),lw(),cw()])}const gw={};function mw(e){const i=this,r=e||gw,l=i.data(),s=l.micromarkExtensions||(l.micromarkExtensions=[]),c=l.fromMarkdownExtensions||(l.fromMarkdownExtensions=[]),u=l.toMarkdownExtensions||(l.toMarkdownExtensions=[]);s.push(pw(r)),c.push(Lk()),u.push(Dk(r))}const up=(function(e,i,r){const l=Io(r);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof i=="number"){if(i<0||i===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(i=e.children.indexOf(i),i<0)throw new Error("Expected child node or index");for(;++ig&&(g=y):y&&(g!==void 0&&g>-1&&p.push(` -`.repeat(g)||" "),g=-1,p.push(y))}return p.join("")}function Og(e,i,r){return e.type==="element"?ww(e,i,r):e.type==="text"?r.whitespace==="normal"?Ig(e,r):xw(e):[]}function ww(e,i,r){const l=Mg(e,r),s=e.children||[];let c=-1,u=[];if(vw(e))return u;let d,p;for(Su(e)||pp(e)&&up(i,e,pp)?p=` -`:_w(e)?(d=2,p=2):Rg(e)&&(d=1,p=1);++c]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],T=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],S=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],N=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],j={type:T,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:S},Z={className:"function.dispatch",relevance:0,keywords:{_hint:N},begin:i.concat(/\b/,`(?!${k.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},A=[Z,h,d,r,e.C_BLOCK_COMMENT_MODE,y,g],X={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:A.concat([{begin:/\(/,end:/\)/,keywords:j,contains:A.concat(["self"]),relevance:0}]),relevance:0},ee={className:"function",begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:j,relevance:0},{begin:E,returnBegin:!0,contains:[b],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[g,y]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,g,y,d,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,g,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"",keywords:j,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Rw(e){const i={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},r=Aw(e),l=r.keywords;return l.type=[...l.type,...i.type],l.literal=[...l.literal,...i.literal],l.built_in=[...l.built_in,...i.built_in],l._hints=i._hints,r.name="Arduino",r.aliases=["ino"],r.supersetOf="cpp",r}function Ow(e){const i=e.regex,r={},l={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[r]}]};Object.assign(r,{className:"variable",variants:[{begin:i.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},l]});const s={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},c=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),u={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},d={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,s]};s.contains.push(d);const p={match:/\\"/},g={className:"string",begin:/'/,end:/'/},y={match:/\\'/},h={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,r]},b=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],E=e.SHEBANG({binary:`(${b.join("|")})`,relevance:10}),k={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},T=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],S=["true","false"],N={match:/(\/[a-z._-]+)+/},B=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],P=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],j=["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"],Z=["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"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:T,literal:S,built_in:[...B,...P,"set","shopt",...j,...Z]},contains:[E,e.SHEBANG(),k,h,c,u,N,d,p,g,y,r]}}function Iw(e){const i=e.regex,r=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),l="decltype\\(auto\\)",s="[a-zA-Z_]\\w*::",u="("+l+"|"+i.optional(s)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",d={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",S={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},N=[h,d,r,e.C_BLOCK_COMMENT_MODE,y,g],B={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:S,contains:N.concat([{begin:/\(/,end:/\)/,keywords:S,contains:N.concat(["self"]),relevance:0}]),relevance:0},P={begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:S,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:S,relevance:0},{begin:E,returnBegin:!0,contains:[e.inherit(b,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,g,y,d,{begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,g,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C",aliases:["h"],keywords:S,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:h,strings:g,keywords:S}}}function Mw(e){const i=e.regex,r=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),l="decltype\\(auto\\)",s="[a-zA-Z_]\\w*::",u="(?!struct)("+l+"|"+i.optional(s)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},g={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(g,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],T=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],S=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],N=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],j={type:T,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:S},Z={className:"function.dispatch",relevance:0,keywords:{_hint:N},begin:i.concat(/\b/,`(?!${k.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},A=[Z,h,d,r,e.C_BLOCK_COMMENT_MODE,y,g],X={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:A.concat([{begin:/\(/,end:/\)/,keywords:j,contains:A.concat(["self"]),relevance:0}]),relevance:0},ee={className:"function",begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:j,relevance:0},{begin:E,returnBegin:!0,contains:[b],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[g,y]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,g,y,d,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,g,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"",keywords:j,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Lw(e){const i=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],r=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],l=["default","false","null","true"],s=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],c=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],u={keyword:s.concat(c),built_in:i,literal:l},d=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),p={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9'_]+|(\\b[\\d'_]+(\\.[\\d'_]*)?|\\.[\\d'_]+)([eE][-+]?[\\d'_]+)?)"}],relevance:0},g={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},y={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},h=e.inherit(y,{illegal:/\n/}),b={className:"subst",begin:/\{/,end:/\}/,keywords:u},E=e.inherit(b,{illegal:/\n/}),k={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,E]},T={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},b]},S=e.inherit(T,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},E]});b.contains=[T,k,y,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,e.C_BLOCK_COMMENT_MODE],E.contains=[S,k,h,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const N={variants:[g,T,k,y,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},B={begin:"<",end:">",contains:[{beginKeywords:"in out"},d]},P=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",j={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:u,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},N,p,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},d,B,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,B,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+P+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:u,contains:[{beginKeywords:r.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,B],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:u,relevance:0,contains:[N,p,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},j]}}const Dw=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Pw=["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"],zw=["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"],Fw=[...Pw,...zw],Bw=["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(),Uw=["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(),$w=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Hw=["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","unicode-range","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();function jw(e){const i=e.regex,r=Dw(e),l={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},s="and or not only",c=/@-?\w[\w]*(-\w+)*/,u="[a-zA-Z-][a-zA-Z0-9_-]*",d=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[r.BLOCK_COMMENT,l,r.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+u,relevance:0},r.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Uw.join("|")+")"},{begin:":(:)?("+$w.join("|")+")"}]},r.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Hw.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[r.BLOCK_COMMENT,r.HEXCOLOR,r.IMPORTANT,r.CSS_NUMBER_MODE,r.UNICODE_RANGE,...d,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...d,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},r.FUNCTION_DISPATCH]},{begin:i.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:c},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:s,attribute:Bw.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...d,r.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Fw.join("|")+")\\b"}]}}function Gw(e){const i=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:i.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+,\d+ +\+\d+ +@@/,/^@@ +-\d+ +\+\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:i.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function Kw(e){const c={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:c,illegal:"Lg(e,i,r-1))}function qw(e){const i=e.regex,r="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",l=r+Lg("(?:<"+r+"~~~(?:\\s*,\\s*"+r+"~~~)*>)?",/~~~/g,2),p={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},g={className:"meta",begin:"@"+r,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},y={className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:p,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[i.concat(/(?!else)/,r),/\s+/,r,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,r],className:{1:"keyword",3:"title.class"},contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+l+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:p,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[g,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,gp,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},gp,g]}}const mp="[A-Za-z$_][0-9A-Za-z$_]*",Yw=["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"],Qw=["true","false","null","undefined","NaN","Infinity"],Dg=["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"],Pg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],zg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Zw=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Xw=[].concat(zg,Dg,Pg);function Jw(e){const i=e.regex,r=(G,{after:ae})=>{const v="",end:""},c=/<[A-Za-z0-9\\._:-]+\s*\/>/,u={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(G,ae)=>{const v=G[0].length+G.index,O=G.input[v];if(O==="<"||O===","){ae.ignoreMatch();return}O===">"&&(r(G,{after:v})||ae.ignoreMatch());let $;const w=G.input.substring(v);if($=w.match(/^\s*=/)){ae.ignoreMatch();return}if(($=w.match(/^\s+extends\s+/))&&$.index===0){ae.ignoreMatch();return}}},d={$pattern:mp,keyword:Yw,literal:Qw,built_in:Xw,"variable.language":Zw},p="[0-9](_?[0-9])*",g=`\\.(${p})`,y="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${y})((${g})|\\.)?|(${g}))[eE][+-]?(${p})\\b`},{begin:`\\b(${y})\\b((${g})\\b|\\.)?|(${g})\\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},b={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},E={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"css"}},T={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"graphql"}},S={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,b]},B={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:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},P=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,k,T,S,{match:/\$\d+/},h];b.contains=P.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(P)});const j=[].concat(B,b.contains),Z=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(j)}]),A={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:Z},X={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,i.concat(l,"(",i.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},ee={relevance:0,match:i.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:{_:[...Dg,...Pg]}},re={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},M={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[A],illegal:/%/},W={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function q(G){return i.concat("(?!",G.join("|"),")")}const te={match:i.concat(/\b/,q([...zg,"super","import","await"].map(G=>`${G}\\s*\\(`)),l,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:i.concat(/\./,i.lookahead(i.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},U={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},A]},ue="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",ce={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(ue)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[A]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:Z,CLASS_REFERENCE:ee},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),re,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,k,T,S,B,{match:/\$\d+/},h,ee,{scope:"attr",match:l+i.lookahead(":"),relevance:0},ce,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[B,e.REGEXP_MODE,{className:"function",begin:ue,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:d,contains:Z}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:c},{begin:u.begin,"on:begin":u.isTrulyOpeningTag,end:u.end}],subLanguage:"xml",contains:[{begin:u.begin,end:u.end,skip:!0,contains:["self"]}]}]},M,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[A,e.inherit(e.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[A]},te,W,X,U,{match:/\$[(.]/}]}}const ex="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",tx={scope:"number",match:ex,relevance:0};function nx(e){const i={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\r\n])*'))(?=\s*:)/,relevance:1.01},r={match:/[{}[\],:]/,className:"punctuation",relevance:0},l=["true","false","null"],s={scope:"literal",beginKeywords:l.join(" ")};return{name:"JSON",aliases:["jsonc","json5"],keywords:{literal:l},contains:[i,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,tx,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var Oi="[0-9](_*[0-9])*",ql=`\\.(${Oi})`,Yl="[0-9a-fA-F](_*[0-9a-fA-F])*",rx={className:"number",variants:[{begin:`(\\b(${Oi})((${ql})|\\.)?|(${ql}))[eE][+-]?(${Oi})[fFdD]?\\b`},{begin:`\\b(${Oi})((${ql})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${ql})[fFdD]?\\b`},{begin:`\\b(${Oi})[fFdD]\\b`},{begin:`\\b0[xX]((${Yl})\\.?|(${Yl})?\\.(${Yl}))[pP][+-]?(${Oi})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Yl})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function ix(e){const i={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},r={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},l={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},c={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},u={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[c,s]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,c,s]}]};s.contains.push(u);const d={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},p={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(u,{className:"string"}),"self"]}]},g=rx,y=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),h={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},b=h;return b.variants[1].contains=[h],h.variants[1].contains=[b],{name:"Kotlin",aliases:["kt","kts"],keywords:i,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,y,r,l,d,p,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:i,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:i,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[h,e.C_LINE_COMMENT_MODE,y],relevance:0},e.C_LINE_COMMENT_MODE,y,d,p,u,e.C_NUMBER_MODE]},y]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},d,p]},u,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` -`},g]}}const ox=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),lx=["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"],ax=["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"],sx=[...lx,...ax],ux=["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(),Fg=["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(),Bg=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),cx=["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","unicode-range","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(),fx=Fg.concat(Bg).sort().reverse();function dx(e){const i=ox(e),r=fx,l="and or not only",s="[\\w-]+",c="("+s+"|@\\{"+s+"\\})",u=[],d=[],p=function(P){return{className:"string",begin:"~?"+P+".*?"+P}},g=function(P,j,Z){return{className:P,begin:j,relevance:Z}},y={$pattern:/[a-z-]+/,keyword:l,attribute:ux.join(" ")},h={begin:"\\(",end:"\\)",contains:d,keywords:y,relevance:0};d.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p("'"),p('"'),i.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},i.UNICODE_RANGE,i.HEXCOLOR,h,g("variable","@@?"+s,10),g("variable","@\\{"+s+"\\}"),g("built_in","~?`[^`]*?`"),{className:"attribute",begin:s+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},i.IMPORTANT,{beginKeywords:"and not"},i.FUNCTION_DISPATCH);const b=d.concat({begin:/\{/,end:/\}/,contains:u}),E={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(d)},k={begin:c+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+cx.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:d}}]},T={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:y,returnEnd:!0,contains:d,relevance:0}},S={className:"variable",variants:[{begin:"@"+s+"\\s*:",relevance:15},{begin:"@"+s}],starts:{end:"[;}]",returnEnd:!0,contains:b}},N={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:c,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,E,g("keyword","all\\b"),g("variable","@\\{"+s+"\\}"),{begin:"\\b("+sx.join("|")+")\\b",className:"selector-tag"},i.CSS_NUMBER_MODE,g("selector-tag",c,0),g("selector-id","#"+c),g("selector-class","\\."+c,0),g("selector-tag","&",0),i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Fg.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+Bg.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:b},{begin:"!important"},i.FUNCTION_DISPATCH]},B={begin:s+`:(:)?(${r.join("|")})`,returnBegin:!0,contains:[N]};return u.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,T,S,B,k,N,E,i.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:u}}function px(e){const i="\\[=*\\[",r="\\]=*\\]",l={begin:i,end:r,contains:["self"]},s=[e.COMMENT("--(?!"+i+")","$"),e.COMMENT("--"+i,r,{contains:[l],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:s.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:s}].concat(s)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:i,end:r,contains:[l],relevance:5}])}}function gx(e){const i={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%",subLanguage:"xml",relevance:0},l={begin:"^[-\\*]{3,}",end:"$"},s={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}]},c={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},u={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},d=/[A-Za-z][A-Za-z0-9+.-]*/,p={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:i.concat(/\[.+?\]\(/,d,/:\/\/.*?\)/),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}]},g={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},y={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},h=e.inherit(g,{contains:[]}),b=e.inherit(y,{contains:[]});g.contains.push(b),y.contains.push(h);let E=[r,p];return[g,y,h,b].forEach(N=>{N.contains=N.contains.concat(E)}),E=E.concat(g,y),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:E},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:E}]}]},r,c,g,y,{className:"quote",begin:"^>\\s+",contains:E,end:"$"},s,l,p,u,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function hx(e){const i={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},r=/[a-zA-Z@][a-zA-Z0-9_]*/,d={"variable.language":["this","super"],$pattern:r,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},p={$pattern:r,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:d,illegal:"/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+p.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:p,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function yx(e){const i=e.regex,r=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],l=/[dualxmsipngr]{0,12}/,s={$pattern:/[\w.]+/,keyword:r.join(" ")},c={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:s},u={begin:/->\{/,end:/\}/},d={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},p={scope:"variable",variants:[{begin:/\$\d/},{begin:i.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[d]},g={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},y=[e.BACKSLASH_ESCAPE,c,p],h=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],b=(T,S,N="\\1")=>{const B=N==="\\1"?N:i.concat(N,S);return i.concat(i.concat("(?:",T,")"),S,/(?:\\.|[^\\\/])*?/,B,/(?:\\.|[^\\\/])*?/,N,l)},E=(T,S,N)=>i.concat(i.concat("(?:",T,")"),S,/(?:\\.|[^\\\/])*?/,N,l),k=[p,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),u,{className:"string",contains:y,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},g,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:b("s|tr|y",i.either(...h,{capture:!0}))},{begin:b("s|tr|y","\\(","\\)")},{begin:b("s|tr|y","\\[","\\]")},{begin:b("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:E("(?:m|qr)?",/\//,/\//)},{begin:E("m|qr",i.either(...h,{capture:!0}),/\1/)},{begin:E("m|qr",/\(/,/\)/)},{begin:E("m|qr",/\[/,/\]/)},{begin:E("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d,g]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return c.contains=k,u.contains=k,{name:"Perl",aliases:["pl","pm"],keywords:s,contains:k}}function bx(e){const i=e.regex,r=/(?![A-Za-z0-9])(?![$])/,l=i.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,r),s=i.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,r),c=i.concat(/[A-Z]+/,r),u={scope:"variable",match:"\\$+"+l},d={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},p={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},g=e.inherit(e.APOS_STRING_MODE,{illegal:null}),y=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(p)}),h={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(p),"on:begin":(L,U)=>{U.data._beginMatch=L[1]||L[2]},"on:end":(L,U)=>{U.data._beginMatch!==L[1]&&U.ignoreMatch()}},b=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),E=`[ -]`,k={scope:"string",variants:[y,g,h,b]},T={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},S=["false","null","true"],N=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],B=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],j={keyword:N,literal:(L=>{const U=[];return L.forEach(ue=>{U.push(ue),ue.toLowerCase()===ue?U.push(ue.toUpperCase()):U.push(ue.toLowerCase())}),U})(S),built_in:B},Z=L=>L.map(U=>U.replace(/\|\d+$/,"")),A={variants:[{match:[/new/,i.concat(E,"+"),i.concat("(?!",Z(B).join("\\b|"),"\\b)"),s],scope:{1:"keyword",4:"title.class"}}]},X=i.concat(l,"\\b(?!\\()"),ee={variants:[{match:[i.concat(/::/,i.lookahead(/(?!class\b)/)),X],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[s,i.concat(/::/,i.lookahead(/(?!class\b)/)),X],scope:{1:"title.class",3:"variable.constant"}},{match:[s,i.concat("::",i.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[s,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},re={scope:"attr",match:i.concat(l,i.lookahead(":"),i.lookahead(/(?!::)/))},M={relevance:0,begin:/\(/,end:/\)/,keywords:j,contains:[re,u,ee,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,T,A]},W={relevance:0,match:[/\b/,i.concat("(?!fn\\b|function\\b|",Z(N).join("\\b|"),"|",Z(B).join("\\b|"),"\\b)"),l,i.concat(E,"*"),i.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[M]};M.contains.push(W);const q=[re,ee,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,T,A],te={begin:i.concat(/#\[\s*\\?/,i.either(s,c)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:S,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:S,keyword:["new","array"]},contains:["self",...q]},...q,{scope:"meta",variants:[{match:s},{match:c}]}]};return{case_insensitive:!1,keywords:j,contains:[te,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},d,{scope:"variable.language",match:/\$this\b/},u,W,ee,{match:[/const/,/\s/,l],scope:{1:"keyword",3:"variable.constant"}},A,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:j,contains:["self",te,u,ee,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,k,T]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},k,T]}}function Ex(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function _x(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function vx(e){const i=e.regex,r=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),l=["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"],d={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:l,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"]},p={className:"meta",begin:/^(>>>|\.\.\.) /},g={className:"subst",begin:/\{/,end:/\}/,keywords:d,illegal:/#/},y={begin:/\{\{/,relevance:0},h={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,p],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,p],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,p,y,g]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,p,y,g]},{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,y,g]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,y,g]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},b="[0-9](_?[0-9])*",E=`(\\b(${b}))?\\.(${b})|\\b(${b})\\.`,k=`\\b|${l.join("|")}`,T={className:"number",relevance:0,variants:[{begin:`(\\b(${b})|(${E}))[eE][+-]?(${b})[jJ]?(?=${k})`},{begin:`(${E})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${k})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${k})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${k})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${k})`},{begin:`\\b(${b})[jJ](?=${k})`}]},S={className:"comment",begin:i.lookahead(/# type:/),end:/$/,keywords:d,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},N={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:["self",p,T,h,e.HASH_COMMENT_MODE]}]};return g.contains=[h,T,p],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:d,illegal:/(<\/|\?)|=>/,contains:[p,T,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},h,S,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,r],scope:{1:"keyword",3:"title.function"},contains:[N]},{variants:[{match:[/\bclass/,/\s+/,r,/\s*/,/\(\s*/,r,/\s*\)/]},{match:[/\bclass/,/\s+/,r]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[T,N,h]}]}}function kx(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function wx(e){const i=e.regex,r=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,l=i.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),s=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,c=i.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:r,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:i.lookahead(i.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:r},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[s,l]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,l]},{scope:{1:"punctuation",2:"number"},match:[c,l]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,l]}]},{scope:{3:"operator"},match:[r,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:s},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:c},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function xx(e){const i=e.regex,r="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",l=i.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),s=i.concat(l,/(::\w+)*/),u={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},d={className:"doctag",begin:"@[A-Za-z]+"},p={begin:"#<",end:">"},g=[e.COMMENT("#","$",{contains:[d]}),e.COMMENT("^=begin","^=end",{contains:[d],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],y={className:"subst",begin:/#\{/,end:/\}/,keywords:u},h={className:"string",contains:[e.BACKSLASH_ESCAPE,y],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:i.concat(/<<[-~]?'?/,i.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,y]})]}]},b="[1-9](_?[0-9])*|0",E="[0-9](_?[0-9])*",k={className:"number",relevance:0,variants:[{begin:`\\b(${b})(\\.(${E}))?([eE][+-]?(${E})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},T={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:u}]},A=[h,{variants:[{match:[/class\s+/,s,/\s+<\s+/,s]},{match:[/\b(class|module)\s+/,s]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:u},{match:[/(include|extend)\s+/,s],scope:{2:"title.class"},keywords:u},{relevance:0,match:[s,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:l,scope:"title.class"},{match:[/def/,/\s+/,r],scope:{1:"keyword",3:"title.function"},contains:[T]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[h,{begin:r}],relevance:0},k,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:u},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,y],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(p,g),relevance:0}].concat(p,g);y.contains=A,T.contains=A;const M=[{begin:/^\s*=>/,starts:{end:"$",contains:A}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:u,contains:A}}];return g.unshift(p),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:u,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(M).concat(g).concat(A)}}function Sx(e){const i=e.regex,r=/(r#)?/,l=i.concat(r,e.UNDERSCORE_IDENT_RE),s=i.concat(r,e.IDENT_RE),c={className:"title.function.invoke",relevance:0,begin:i.concat(/\b/,/(?!let|for|while|if|else|match\b)/,s,i.lookahead(/\s*\(/))},u="([ui](8|16|32|64|128|size)|f(32|64))?",d=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],p=["true","false","Some","None","Ok","Err"],g=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],y=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:y,keyword:d,literal:p,built_in:g},illegal:""},c]}}const Nx=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Cx=["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"],Tx=["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"],Ax=[...Cx,...Tx],Rx=["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(),Ox=["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(),Ix=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Mx=["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","unicode-range","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();function Lx(e){const i=Nx(e),r=Ix,l=Ox,s="@[a-z-]+",c="and or not only",d={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,i.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ax.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+l.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+r.join("|")+")"},d,{begin:/\(/,end:/\)/,contains:[i.CSS_NUMBER_MODE]},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Mx.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[i.BLOCK_COMMENT,d,i.HEXCOLOR,i.CSS_NUMBER_MODE,i.UNICODE_RANGE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.IMPORTANT,i.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:s,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:c,attribute:Rx.join(" ")},contains:[{begin:s,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},d,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.HEXCOLOR,i.CSS_NUMBER_MODE]},i.FUNCTION_DISPATCH]}}function Dx(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function Px(e){const i=e.regex,r=e.COMMENT("--","$"),l={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},s={begin:/"/,end:/"/,contains:[{match:/""/}]},c=["true","false","unknown"],u=["double precision","large object","with timezone","without timezone"],d=["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"],p=["add","asc","collation","desc","final","first","last","view"],g=["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"],y=["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"],h=["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"],b=["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"],E=y,k=[...g,...p].filter(Z=>!y.includes(Z)),T={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},S={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},N={match:i.concat(/\b/,i.either(...E),/\s*\(/),relevance:0,keywords:{built_in:E}};function B(Z){return i.concat(/\b/,i.either(...Z.map(A=>A.replace(/\s+/,"\\s+"))),/\b/)}const P={scope:"keyword",match:B(b),relevance:0};function j(Z,{exceptions:A,when:X}={}){const ee=X;return A=A||[],Z.map(re=>re.match(/\|\d+$/)||A.includes(re)?re:ee(re)?`${re}|0`:re)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:j(k,{when:Z=>Z.length<3}),literal:c,type:d,built_in:h},contains:[{scope:"type",match:B(u)},P,N,T,l,s,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,r,S]}}function Ug(e){return e?typeof e=="string"?e:e.source:null}function ko(e){return Ze("(?=",e,")")}function Ze(...e){return e.map(r=>Ug(r)).join("")}function zx(e){const i=e[e.length-1];return typeof i=="object"&&i.constructor===Object?(e.splice(e.length-1,1),i):{}}function $t(...e){return"("+(zx(e).capture?"":"?:")+e.map(l=>Ug(l)).join("|")+")"}const Ku=e=>Ze(/\b/,e,/\w$/.test(e)?/\b/:/\B/),Fx=["Protocol","Type"].map(Ku),hp=["init","self"].map(Ku),Bx=["Any","Self"],fu=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],yp=["false","nil","true"],Ux=["assignment","associativity","higherThan","left","lowerThan","none","right"],$x=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],bp=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],$g=$t(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Hg=$t($g,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),du=Ze($g,Hg,"*"),jg=$t(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),na=$t(jg,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Bn=Ze(jg,na,"*"),Ql=Ze(/[A-Z]/,na,"*"),Hx=["attached","autoclosure",Ze(/convention\(/,$t("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Ze(/objc\(/,Bn,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],jx=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Gx(e){const i={match:/\s+/,relevance:0},r=e.COMMENT("/\\*","\\*/",{contains:["self"]}),l=[e.C_LINE_COMMENT_MODE,r],s={match:[/\./,$t(...Fx,...hp)],className:{2:"keyword"}},c={match:Ze(/\./,$t(...fu)),relevance:0},u=fu.filter(Ke=>typeof Ke=="string").concat(["_|0"]),d=fu.filter(Ke=>typeof Ke!="string").concat(Bx).map(Ku),p={variants:[{className:"keyword",match:$t(...d,...hp)}]},g={$pattern:$t(/\b\w+/,/#\w+/),keyword:u.concat($x),literal:yp},y=[s,c,p],h={match:Ze(/\./,$t(...bp)),relevance:0},b={className:"built_in",match:Ze(/\b/,$t(...bp),/(?=\()/)},E=[h,b],k={match:/->/,relevance:0},T={className:"operator",relevance:0,variants:[{match:du},{match:`\\.(\\.|${Hg})+`}]},S=[k,T],N="([0-9]_*)+",B="([0-9a-fA-F]_*)+",P={className:"number",relevance:0,variants:[{match:`\\b(${N})(\\.(${N}))?([eE][+-]?(${N}))?\\b`},{match:`\\b0x(${B})(\\.(${B}))?([pP][+-]?(${N}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},j=(Ke="")=>({className:"subst",variants:[{match:Ze(/\\/,Ke,/[0\\tnr"']/)},{match:Ze(/\\/,Ke,/u\{[0-9a-fA-F]{1,8}\}/)}]}),Z=(Ke="")=>({className:"subst",match:Ze(/\\/,Ke,/[\t ]*(?:[\r\n]|\r\n)/)}),A=(Ke="")=>({className:"subst",label:"interpol",begin:Ze(/\\/,Ke,/\(/),end:/\)/}),X=(Ke="")=>({begin:Ze(Ke,/"""/),end:Ze(/"""/,Ke),contains:[j(Ke),Z(Ke),A(Ke)]}),ee=(Ke="")=>({begin:Ze(Ke,/"/),end:Ze(/"/,Ke),contains:[j(Ke),A(Ke)]}),re={className:"string",variants:[X(),X("#"),X("##"),X("###"),ee(),ee("#"),ee("##"),ee("###")]},M=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],W={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:M},q=Ke=>{const Jt=Ze(Ke,/\//),an=Ze(/\//,Ke);return{begin:Jt,end:an,contains:[...M,{scope:"comment",begin:`#(?!.*${an})`,end:/$/}]}},te={scope:"regexp",variants:[q("###"),q("##"),q("#"),W]},L={match:Ze(/`/,Bn,/`/)},U={className:"variable",match:/\$\d+/},ue={className:"variable",match:`\\$${na}+`},ce=[L,U,ue],G={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:jx,contains:[...S,P,re]}]}},ae={scope:"keyword",match:Ze(/@/,$t(...Hx),ko($t(/\(/,/\s+/)))},v={scope:"meta",match:Ze(/@/,Bn)},O=[G,ae,v],$={match:ko(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Ze(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,na,"+")},{className:"type",match:Ql,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Ze(/\s+&\s+/,ko(Ql)),relevance:0}]},w={begin://,keywords:g,contains:[...l,...y,...O,k,$]};$.contains.push(w);const we={match:Ze(Bn,/\s*:/),keywords:"_|0",relevance:0},Me={begin:/\(/,end:/\)/,relevance:0,keywords:g,contains:["self",we,...l,te,...y,...E,...S,P,re,...ce,...O,$]},ke={begin://,keywords:"repeat each",contains:[...l,$]},$e={begin:$t(ko(Ze(Bn,/\s*:/)),ko(Ze(Bn,/\s+/,Bn,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Bn}]},De={begin:/\(/,end:/\)/,keywords:g,contains:[$e,...l,...y,...S,P,re,...O,$,Me],endsParent:!0,illegal:/["']/},Ge={match:[/(func|macro)/,/\s+/,$t(L.match,Bn,du)],className:{1:"keyword",3:"title.function"},contains:[ke,De,i],illegal:[/\[/,/%/]},Xe={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ke,De,i],illegal:/\[|%/},Xt={match:[/operator/,/\s+/,du],className:{1:"keyword",3:"title"}},rr={begin:[/precedencegroup/,/\s+/,Ql],className:{1:"keyword",3:"title"},contains:[$],keywords:[...Ux,...yp],end:/}/},An={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Hn={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},jn={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Bn,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:g,contains:[ke,...y,{begin:/:/,end:/\{/,keywords:g,contains:[{scope:"title.class.inherited",match:Ql},...y],relevance:0}]};for(const Ke of re.variants){const Jt=Ke.contains.find(Rn=>Rn.label==="interpol");Jt.keywords=g;const an=[...y,...E,...S,P,re,...ce];Jt.contains=[...an,{begin:/\(/,end:/\)/,contains:["self",...an]}]}return{name:"Swift",keywords:g,contains:[...l,Ge,Xe,An,Hn,jn,Xt,rr,{beginKeywords:"import",end:/$/,contains:[...l],relevance:0},te,...y,...E,...S,P,re,...ce,...O,$,Me]}}const ra="[A-Za-z$_][0-9A-Za-z$_]*",Gg=["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"],Kg=["true","false","null","undefined","NaN","Infinity"],Wg=["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"],Vg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],qg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Yg=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Qg=[].concat(qg,Wg,Vg);function Kx(e){const i=e.regex,r=(G,{after:ae})=>{const v="",end:""},c=/<[A-Za-z0-9\\._:-]+\s*\/>/,u={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(G,ae)=>{const v=G[0].length+G.index,O=G.input[v];if(O==="<"||O===","){ae.ignoreMatch();return}O===">"&&(r(G,{after:v})||ae.ignoreMatch());let $;const w=G.input.substring(v);if($=w.match(/^\s*=/)){ae.ignoreMatch();return}if(($=w.match(/^\s+extends\s+/))&&$.index===0){ae.ignoreMatch();return}}},d={$pattern:ra,keyword:Gg,literal:Kg,built_in:Qg,"variable.language":Yg},p="[0-9](_?[0-9])*",g=`\\.(${p})`,y="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${y})((${g})|\\.)?|(${g}))[eE][+-]?(${p})\\b`},{begin:`\\b(${y})\\b((${g})\\b|\\.)?|(${g})\\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},b={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},E={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"css"}},T={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"graphql"}},S={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,b]},B={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:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},P=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,k,T,S,{match:/\$\d+/},h];b.contains=P.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(P)});const j=[].concat(B,b.contains),Z=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(j)}]),A={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:Z},X={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,i.concat(l,"(",i.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},ee={relevance:0,match:i.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:{_:[...Wg,...Vg]}},re={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},M={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[A],illegal:/%/},W={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function q(G){return i.concat("(?!",G.join("|"),")")}const te={match:i.concat(/\b/,q([...qg,"super","import","await"].map(G=>`${G}\\s*\\(`)),l,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:i.concat(/\./,i.lookahead(i.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},U={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},A]},ue="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",ce={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(ue)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[A]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:Z,CLASS_REFERENCE:ee},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),re,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,k,T,S,B,{match:/\$\d+/},h,ee,{scope:"attr",match:l+i.lookahead(":"),relevance:0},ce,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[B,e.REGEXP_MODE,{className:"function",begin:ue,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:d,contains:Z}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:c},{begin:u.begin,"on:begin":u.isTrulyOpeningTag,end:u.end}],subLanguage:"xml",contains:[{begin:u.begin,end:u.end,skip:!0,contains:["self"]}]}]},M,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[A,e.inherit(e.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[A]},te,W,X,U,{match:/\$[(.]/}]}}function Wx(e){const i=e.regex,r=Kx(e),l=ra,s=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],c={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},u={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:s},contains:[r.exports.CLASS_REFERENCE]},d={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},p=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],g={$pattern:ra,keyword:Gg.concat(p),literal:Kg,built_in:Qg.concat(s),"variable.language":Yg},y={className:"meta",begin:"@"+l},h=(T,S,N)=>{const B=T.contains.findIndex(P=>P.label===S);if(B===-1)throw new Error("can not find mode to replace");T.contains.splice(B,1,N)};Object.assign(r.keywords,g),r.exports.PARAMS_CONTAINS.push(y);const b=r.contains.find(T=>T.scope==="attr"),E=Object.assign({},b,{match:i.concat(l,i.lookahead(/\s*\?:/))});r.exports.PARAMS_CONTAINS.push([r.exports.CLASS_REFERENCE,b,E]),r.contains=r.contains.concat([y,c,u,E]),h(r,"shebang",e.SHEBANG()),h(r,"use_strict",d);const k=r.contains.find(T=>T.label==="func.def");return k.relevance=0,Object.assign(r,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),r}function Vx(e){const i=e.regex,r={className:"string",begin:/"(""|[^/n])"C\b/},l={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},s=/\d{1,2}\/\d{1,2}\/\d{4}/,c=/\d{4}-\d{1,2}-\d{1,2}/,u=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,d=/\d{1,2}(:\d{1,2}){1,2}/,p={className:"literal",variants:[{begin:i.concat(/# */,i.either(c,s),/ *#/)},{begin:i.concat(/# */,d,/ *#/)},{begin:i.concat(/# */,u,/ *#/)},{begin:i.concat(/# */,i.either(c,s),/ +/,i.either(u,d),/ *#/)}]},g={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},y={className:"label",begin:/^\w+:/},h=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),b=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[r,l,p,g,y,h,b,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[b]}]}}function qx(e){e.regex;const i=e.COMMENT(/\(;/,/;\)/);i.contains.push("self");const r=e.COMMENT(/;;/,/$/),l=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],s={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},c={className:"variable",begin:/\$[\w_]+/},u={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},d={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},p={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},g={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:l},contains:[r,i,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},c,u,s,e.QUOTE_STRING_MODE,p,g,d]}}function Yx(e){const i=e.regex,r=i.concat(/[\p{L}_]/u,i.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},c={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},u=e.inherit(c,{begin:/\(/,end:/\)/}),d=e.inherit(e.APOS_STRING_MODE,{className:"string"}),p=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),g={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[c,p,d,u,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[c,u,p,d]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[p]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[g],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[g],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:i.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:r,relevance:0,starts:g}]},{className:"tag",begin:i.concat(/<\//,i.lookahead(i.concat(r,/>/))),contains:[{className:"name",begin:r,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function Qx(e){const i="true false yes no null",r="[\\w#;/?:@&=+$,.~*'()[\\]]+",l={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},c={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},u={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,s]},d=e.inherit(u,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),b={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"},E={end:",",endsWithParent:!0,excludeEnd:!0,keywords:i,relevance:0},k={begin:/\{/,end:/\}/,contains:[E],illegal:"\\n",relevance:0},T={begin:"\\[",end:"\\]",contains:[E],illegal:"\\n",relevance:0},S=[l,{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+!"+r},{className:"type",begin:"!<"+r+">"},{className:"type",begin:"!"+r},{className:"type",begin:"!!"+r},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:i,keywords:{literal:i}},b,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},k,T,c,u],N=[...S];return N.pop(),N.push(d),E.contains=N,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:S}}const Zx={arduino:Rw,bash:Ow,c:Iw,cpp:Mw,csharp:Lw,css:jw,diff:Gw,go:Kw,graphql:Ww,ini:Vw,java:qw,javascript:Jw,json:nx,kotlin:ix,less:dx,lua:px,makefile:gx,markdown:mx,objectivec:hx,perl:yx,php:bx,"php-template":Ex,plaintext:_x,python:vx,"python-repl":kx,r:wx,ruby:xx,rust:Sx,scss:Lx,shell:Dx,sql:Px,swift:Gx,typescript:Wx,vbnet:Vx,wasm:qx,xml:Yx,yaml:Qx};var pu,Ep;function Xx(){if(Ep)return pu;Ep=1;function e(C){return C instanceof Map?C.clear=C.delete=C.set=function(){throw new Error("map is read-only")}:C instanceof Set&&(C.add=C.clear=C.delete=function(){throw new Error("set is read-only")}),Object.freeze(C),Object.getOwnPropertyNames(C).forEach(V=>{const fe=C[V],Re=typeof fe;(Re==="object"||Re==="function")&&!Object.isFrozen(fe)&&e(fe)}),C}class i{constructor(V){V.data===void 0&&(V.data={}),this.data=V.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function r(C){return C.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function l(C,...V){const fe=Object.create(null);for(const Re in C)fe[Re]=C[Re];return V.forEach(function(Re){for(const rt in Re)fe[rt]=Re[rt]}),fe}const s="",c=C=>!!C.scope,u=(C,{prefix:V})=>{if(C.startsWith("language:"))return C.replace("language:","language-");if(C.includes(".")){const fe=C.split(".");return[`${V}${fe.shift()}`,...fe.map((Re,rt)=>`${Re}${"_".repeat(rt+1)}`)].join(" ")}return`${V}${C}`};class d{constructor(V,fe){this.buffer="",this.classPrefix=fe.classPrefix,V.walk(this)}addText(V){this.buffer+=r(V)}openNode(V){if(!c(V))return;const fe=u(V.scope,{prefix:this.classPrefix});this.span(fe)}closeNode(V){c(V)&&(this.buffer+=s)}value(){return this.buffer}span(V){this.buffer+=``}}const p=(C={})=>{const V={children:[]};return Object.assign(V,C),V};class g{constructor(){this.rootNode=p(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(V){this.top.children.push(V)}openNode(V){const fe=p({scope:V});this.add(fe),this.stack.push(fe)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(V){return this.constructor._walk(V,this.rootNode)}static _walk(V,fe){return typeof fe=="string"?V.addText(fe):fe.children&&(V.openNode(fe),fe.children.forEach(Re=>this._walk(V,Re)),V.closeNode(fe)),V}static _collapse(V){typeof V!="string"&&V.children&&(V.children.every(fe=>typeof fe=="string")?V.children=[V.children.join("")]:V.children.forEach(fe=>{g._collapse(fe)}))}}class y extends g{constructor(V){super(),this.options=V}addText(V){V!==""&&this.add(V)}startScope(V){this.openNode(V)}endScope(){this.closeNode()}__addSublanguage(V,fe){const Re=V.root;fe&&(Re.scope=`language:${fe}`),this.add(Re)}toHTML(){return new d(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function h(C){return C?typeof C=="string"?C:C.source:null}function b(C){return T("(?=",C,")")}function E(C){return T("(?:",C,")*")}function k(C){return T("(?:",C,")?")}function T(...C){return C.map(fe=>h(fe)).join("")}function S(C){const V=C[C.length-1];return typeof V=="object"&&V.constructor===Object?(C.splice(C.length-1,1),V):{}}function N(...C){return"("+(S(C).capture?"":"?:")+C.map(Re=>h(Re)).join("|")+")"}function B(C){return new RegExp(C.toString()+"|").exec("").length-1}function P(C,V){const fe=C&&C.exec(V);return fe&&fe.index===0}const j=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Z(C,{joinWith:V}){let fe=0;return C.map(Re=>{fe+=1;const rt=fe;let lt=h(Re),he="";for(;lt.length>0;){const ge=j.exec(lt);if(!ge){he+=lt;break}he+=lt.substring(0,ge.index),lt=lt.substring(ge.index+ge[0].length),ge[0][0]==="\\"&&ge[1]?he+="\\"+String(Number(ge[1])+rt):(he+=ge[0],ge[0]==="("&&fe++)}return he}).map(Re=>`(${Re})`).join(V)}const A=/\b\B/,X="[a-zA-Z]\\w*",ee="[a-zA-Z_]\\w*",re="\\b\\d+(\\.\\d+)?",M="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",W="\\b(0b[01]+)",q="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",te=(C={})=>{const V=/^#![ ]*\//;return C.binary&&(C.begin=T(V,/.*\b/,C.binary,/\b.*/)),l({scope:"meta",begin:V,end:/$/,relevance:0,"on:begin":(fe,Re)=>{fe.index!==0&&Re.ignoreMatch()}},C)},L={begin:"\\\\[\\s\\S]",relevance:0},U={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[L]},ue={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[L]},ce={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/},G=function(C,V,fe={}){const Re=l({scope:"comment",begin:C,end:V,contains:[]},fe);Re.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 rt=N("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 Re.contains.push({begin:T(/[ ]+/,"(",rt,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Re},ae=G("//","$"),v=G("/\\*","\\*/"),O=G("#","$"),$={scope:"number",begin:re,relevance:0},w={scope:"number",begin:M,relevance:0},we={scope:"number",begin:W,relevance:0},Me={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[L,{begin:/\[/,end:/\]/,relevance:0,contains:[L]}]},ke={scope:"title",begin:X,relevance:0},$e={scope:"title",begin:ee,relevance:0},De={begin:"\\.\\s*"+ee,relevance:0};var Xe=Object.freeze({__proto__:null,APOS_STRING_MODE:U,BACKSLASH_ESCAPE:L,BINARY_NUMBER_MODE:we,BINARY_NUMBER_RE:W,COMMENT:G,C_BLOCK_COMMENT_MODE:v,C_LINE_COMMENT_MODE:ae,C_NUMBER_MODE:w,C_NUMBER_RE:M,END_SAME_AS_BEGIN:function(C){return Object.assign(C,{"on:begin":(V,fe)=>{fe.data._beginMatch=V[1]},"on:end":(V,fe)=>{fe.data._beginMatch!==V[1]&&fe.ignoreMatch()}})},HASH_COMMENT_MODE:O,IDENT_RE:X,MATCH_NOTHING_RE:A,METHOD_GUARD:De,NUMBER_MODE:$,NUMBER_RE:re,PHRASAL_WORDS_MODE:ce,QUOTE_STRING_MODE:ue,REGEXP_MODE:Me,RE_STARTERS_RE:q,SHEBANG:te,TITLE_MODE:ke,UNDERSCORE_IDENT_RE:ee,UNDERSCORE_TITLE_MODE:$e});function Xt(C,V){C.input[C.index-1]==="."&&V.ignoreMatch()}function rr(C,V){C.className!==void 0&&(C.scope=C.className,delete C.className)}function An(C,V){V&&C.beginKeywords&&(C.begin="\\b("+C.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",C.__beforeBegin=Xt,C.keywords=C.keywords||C.beginKeywords,delete C.beginKeywords,C.relevance===void 0&&(C.relevance=0))}function Hn(C,V){Array.isArray(C.illegal)&&(C.illegal=N(...C.illegal))}function jn(C,V){if(C.match){if(C.begin||C.end)throw new Error("begin & end are not supported with match");C.begin=C.match,delete C.match}}function Ke(C,V){C.relevance===void 0&&(C.relevance=1)}const Jt=(C,V)=>{if(!C.beforeMatch)return;if(C.starts)throw new Error("beforeMatch cannot be used with starts");const fe=Object.assign({},C);Object.keys(C).forEach(Re=>{delete C[Re]}),C.keywords=fe.keywords,C.begin=T(fe.beforeMatch,b(fe.begin)),C.starts={relevance:0,contains:[Object.assign(fe,{endsParent:!0})]},C.relevance=0,delete fe.beforeMatch},an=["of","and","for","in","not","or","if","then","parent","list","value"],Rn="keyword";function bn(C,V,fe=Rn){const Re=Object.create(null);return typeof C=="string"?rt(fe,C.split(" ")):Array.isArray(C)?rt(fe,C):Object.keys(C).forEach(function(lt){Object.assign(Re,bn(C[lt],V,lt))}),Re;function rt(lt,he){V&&(he=he.map(ge=>ge.toLowerCase())),he.forEach(function(ge){const xe=ge.split("|");Re[xe[0]]=[lt,On(xe[0],xe[1])]})}}function On(C,V){return V?Number(V):Cr(C)?0:1}function Cr(C){return an.includes(C.toLowerCase())}const Tr={},sn=C=>{console.error(C)},Ar=(C,...V)=>{console.log(`WARN: ${C}`,...V)},H=(C,V)=>{Tr[`${C}/${V}`]||(console.log(`Deprecated as of ${C}. ${V}`),Tr[`${C}/${V}`]=!0)},le=new Error;function Te(C,V,{key:fe}){let Re=0;const rt=C[fe],lt={},he={};for(let ge=1;ge<=V.length;ge++)he[ge+Re]=rt[ge],lt[ge+Re]=!0,Re+=B(V[ge-1]);C[fe]=he,C[fe]._emit=lt,C[fe]._multi=!0}function Pe(C){if(Array.isArray(C.begin)){if(C.skip||C.excludeBegin||C.returnBegin)throw sn("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),le;if(typeof C.beginScope!="object"||C.beginScope===null)throw sn("beginScope must be object"),le;Te(C,C.begin,{key:"beginScope"}),C.begin=Z(C.begin,{joinWith:""})}}function He(C){if(Array.isArray(C.end)){if(C.skip||C.excludeEnd||C.returnEnd)throw sn("skip, excludeEnd, returnEnd not compatible with endScope: {}"),le;if(typeof C.endScope!="object"||C.endScope===null)throw sn("endScope must be object"),le;Te(C,C.end,{key:"endScope"}),C.end=Z(C.end,{joinWith:""})}}function _t(C){C.scope&&typeof C.scope=="object"&&C.scope!==null&&(C.beginScope=C.scope,delete C.scope)}function En(C){_t(C),typeof C.beginScope=="string"&&(C.beginScope={_wrap:C.beginScope}),typeof C.endScope=="string"&&(C.endScope={_wrap:C.endScope}),Pe(C),He(C)}function jt(C){function V(he,ge){return new RegExp(h(he),"m"+(C.case_insensitive?"i":"")+(C.unicodeRegex?"u":"")+(ge?"g":""))}class fe{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(ge,xe){xe.position=this.position++,this.matchIndexes[this.matchAt]=xe,this.regexes.push([xe,ge]),this.matchAt+=B(ge)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const ge=this.regexes.map(xe=>xe[1]);this.matcherRe=V(Z(ge,{joinWith:"|"}),!0),this.lastIndex=0}exec(ge){this.matcherRe.lastIndex=this.lastIndex;const xe=this.matcherRe.exec(ge);if(!xe)return null;const yt=xe.findIndex((In,or)=>or>0&&In!==void 0),tt=this.matchIndexes[yt];return xe.splice(0,yt),Object.assign(xe,tt)}}class Re{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(ge){if(this.multiRegexes[ge])return this.multiRegexes[ge];const xe=new fe;return this.rules.slice(ge).forEach(([yt,tt])=>xe.addRule(yt,tt)),xe.compile(),this.multiRegexes[ge]=xe,xe}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(ge,xe){this.rules.push([ge,xe]),xe.type==="begin"&&this.count++}exec(ge){const xe=this.getMatcher(this.regexIndex);xe.lastIndex=this.lastIndex;let yt=xe.exec(ge);if(this.resumingScanAtSamePosition()&&!(yt&&yt.index===this.lastIndex)){const tt=this.getMatcher(0);tt.lastIndex=this.lastIndex+1,yt=tt.exec(ge)}return yt&&(this.regexIndex+=yt.position+1,this.regexIndex===this.count&&this.considerAll()),yt}}function rt(he){const ge=new Re;return he.contains.forEach(xe=>ge.addRule(xe.begin,{rule:xe,type:"begin"})),he.terminatorEnd&&ge.addRule(he.terminatorEnd,{type:"end"}),he.illegal&&ge.addRule(he.illegal,{type:"illegal"}),ge}function lt(he,ge){const xe=he;if(he.isCompiled)return xe;[rr,jn,En,Jt].forEach(tt=>tt(he,ge)),C.compilerExtensions.forEach(tt=>tt(he,ge)),he.__beforeBegin=null,[An,Hn,Ke].forEach(tt=>tt(he,ge)),he.isCompiled=!0;let yt=null;return typeof he.keywords=="object"&&he.keywords.$pattern&&(he.keywords=Object.assign({},he.keywords),yt=he.keywords.$pattern,delete he.keywords.$pattern),yt=yt||/\w+/,he.keywords&&(he.keywords=bn(he.keywords,C.case_insensitive)),xe.keywordPatternRe=V(yt,!0),ge&&(he.begin||(he.begin=/\B|\b/),xe.beginRe=V(xe.begin),!he.end&&!he.endsWithParent&&(he.end=/\B|\b/),he.end&&(xe.endRe=V(xe.end)),xe.terminatorEnd=h(xe.end)||"",he.endsWithParent&&ge.terminatorEnd&&(xe.terminatorEnd+=(he.end?"|":"")+ge.terminatorEnd)),he.illegal&&(xe.illegalRe=V(he.illegal)),he.contains||(he.contains=[]),he.contains=[].concat(...he.contains.map(function(tt){return Gn(tt==="self"?he:tt)})),he.contains.forEach(function(tt){lt(tt,xe)}),he.starts&<(he.starts,ge),xe.matcher=rt(xe),xe}if(C.compilerExtensions||(C.compilerExtensions=[]),C.contains&&C.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return C.classNameAliases=l(C.classNameAliases||{}),lt(C)}function _n(C){return C?C.endsWithParent||_n(C.starts):!1}function Gn(C){return C.variants&&!C.cachedVariants&&(C.cachedVariants=C.variants.map(function(V){return l(C,{variants:null},V)})),C.cachedVariants?C.cachedVariants:_n(C)?l(C,{starts:C.starts?l(C.starts):null}):Object.isFrozen(C)?l(C):C}var vt="11.11.2";class un extends Error{constructor(V,fe){super(V),this.name="HTMLInjectionError",this.html=fe}}const Tt=r,ei=l,ti=Symbol("nomatch"),ir=7,Kn=function(C){const V=Object.create(null),fe=Object.create(null),Re=[];let rt=!0;const lt="Could not find the language '{}', did you forget to load/include a language module?",he={disableAutodetect:!0,name:"Plain text",contains:[]};let ge={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:y};function xe(ie){return ge.noHighlightRe.test(ie)}function yt(ie){let ve=ie.className+" ";ve+=ie.parentNode?ie.parentNode.className:"";const ze=ge.languageDetectRe.exec(ve);if(ze){const Be=vn(ze[1]);return Be||(Ar(lt.replace("{}",ze[1])),Ar("Falling back to no-highlight mode for this block.",ie)),Be?ze[1]:"no-highlight"}return ve.split(/\s+/).find(Be=>xe(Be)||vn(Be))}function tt(ie,ve,ze){let Be="",gt="";typeof ve=="object"?(Be=ie,ze=ve.ignoreIllegals,gt=ve.language):(H("10.7.0","highlight(lang, code, ...args) has been deprecated."),H("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),gt=ie,Be=ve),ze===void 0&&(ze=!0);const ut={code:Be,language:gt};Or("before:highlight",ut);const Mn=ut.result?ut.result:In(ut.language,ut.code,ze);return Mn.code=ut.code,Or("after:highlight",Mn),Mn}function In(ie,ve,ze,Be){const gt=Object.create(null);function ut(se,me){return se.keywords[me]}function Mn(){if(!Ie.keywords){mt.addText(Qe);return}let se=0;Ie.keywordPatternRe.lastIndex=0;let me=Ie.keywordPatternRe.exec(Qe),Ae="";for(;me;){Ae+=Qe.substring(se,me.index);const je=cn.case_insensitive?me[0].toLowerCase():me[0],dt=ut(Ie,je);if(dt){const[xt,ga]=dt;if(mt.addText(Ae),Ae="",gt[je]=(gt[je]||0)+1,gt[je]<=ir&&(Lr+=ga),xt.startsWith("_"))Ae+=me[0];else{const $o=cn.classNameAliases[xt]||xt;Ft(me[0],$o)}}else Ae+=me[0];se=Ie.keywordPatternRe.lastIndex,me=Ie.keywordPatternRe.exec(Qe)}Ae+=Qe.substring(se),mt.addText(Ae)}function ii(){if(Qe==="")return;let se=null;if(typeof Ie.subLanguage=="string"){if(!V[Ie.subLanguage]){mt.addText(Qe);return}se=In(Ie.subLanguage,Qe,!0,Ui[Ie.subLanguage]),Ui[Ie.subLanguage]=se._top}else se=Rr(Qe,Ie.subLanguage.length?Ie.subLanguage:null);Ie.relevance>0&&(Lr+=se.relevance),mt.__addSublanguage(se._emitter,se.language)}function zt(){Ie.subLanguage!=null?ii():Mn(),Qe=""}function Ft(se,me){se!==""&&(mt.startScope(me),mt.addText(se),mt.endScope())}function Ir(se,me){let Ae=1;const je=me.length-1;for(;Ae<=je;){if(!se._emit[Ae]){Ae++;continue}const dt=cn.classNameAliases[se[Ae]]||se[Ae],xt=me[Ae];dt?Ft(xt,dt):(Qe=xt,Mn(),Qe=""),Ae++}}function lr(se,me){return se.scope&&typeof se.scope=="string"&&mt.openNode(cn.classNameAliases[se.scope]||se.scope),se.beginScope&&(se.beginScope._wrap?(Ft(Qe,cn.classNameAliases[se.beginScope._wrap]||se.beginScope._wrap),Qe=""):se.beginScope._multi&&(Ir(se.beginScope,me),Qe="")),Ie=Object.create(se,{parent:{value:Ie}}),Ie}function Mr(se,me,Ae){let je=P(se.endRe,Ae);if(je){if(se["on:end"]){const dt=new i(se);se["on:end"](me,dt),dt.isMatchIgnored&&(je=!1)}if(je){for(;se.endsParent&&se.parent;)se=se.parent;return se}}if(se.endsWithParent)return Mr(se.parent,me,Ae)}function da(se){return Ie.matcher.regexIndex===0?(Qe+=se[0],1):(ur=!0,0)}function pa(se){const me=se[0],Ae=se.rule,je=new i(Ae),dt=[Ae.__beforeBegin,Ae["on:begin"]];for(const xt of dt)if(xt&&(xt(se,je),je.isMatchIgnored))return da(me);return Ae.skip?Qe+=me:(Ae.excludeBegin&&(Qe+=me),zt(),!Ae.returnBegin&&!Ae.excludeBegin&&(Qe=me)),lr(Ae,se),Ae.returnBegin?0:me.length}function Fi(se){const me=se[0],Ae=ve.substring(se.index),je=Mr(Ie,se,Ae);if(!je)return ti;const dt=Ie;Ie.endScope&&Ie.endScope._wrap?(zt(),Ft(me,Ie.endScope._wrap)):Ie.endScope&&Ie.endScope._multi?(zt(),Ir(Ie.endScope,se)):dt.skip?Qe+=me:(dt.returnEnd||dt.excludeEnd||(Qe+=me),zt(),dt.excludeEnd&&(Qe=me));do Ie.scope&&mt.closeNode(),!Ie.skip&&!Ie.subLanguage&&(Lr+=Ie.relevance),Ie=Ie.parent;while(Ie!==je.parent);return je.starts&&lr(je.starts,se),dt.returnEnd?0:me.length}function Uo(){const se=[];for(let me=Ie;me!==cn;me=me.parent)me.scope&&se.unshift(me.scope);se.forEach(me=>mt.openNode(me))}let ar={};function sr(se,me){const Ae=me&&me[0];if(Qe+=se,Ae==null)return zt(),0;if(ar.type==="begin"&&me.type==="end"&&ar.index===me.index&&Ae===""){if(Qe+=ve.slice(me.index,me.index+1),!rt){const je=new Error(`0 width match regex (${ie})`);throw je.languageName=ie,je.badRule=ar.rule,je}return 1}if(ar=me,me.type==="begin")return pa(me);if(me.type==="illegal"&&!ze){const je=new Error('Illegal lexeme "'+Ae+'" for mode "'+(Ie.scope||"")+'"');throw je.mode=Ie,je}else if(me.type==="end"){const je=Fi(me);if(je!==ti)return je}if(me.type==="illegal"&&Ae==="")return me.index===ve.length||(Qe+=` -`),1;if(Dr>1e5&&Dr>me.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Qe+=Ae,Ae.length}const cn=vn(ie);if(!cn)throw sn(lt.replace("{}",ie)),new Error('Unknown language: "'+ie+'"');const Bi=jt(cn);let Ve="",Ie=Be||Bi;const Ui={},mt=new ge.__emitter(ge);Uo();let Qe="",Lr=0,Ln=0,Dr=0,ur=!1;try{if(cn.__emitTokens)cn.__emitTokens(ve,mt);else{for(Ie.matcher.considerAll();;){Dr++,ur?ur=!1:Ie.matcher.considerAll(),Ie.matcher.lastIndex=Ln;const se=Ie.matcher.exec(ve);if(!se)break;const me=ve.substring(Ln,se.index),Ae=sr(me,se);Ln=se.index+Ae}sr(ve.substring(Ln))}return mt.finalize(),Ve=mt.toHTML(),{language:ie,value:Ve,relevance:Lr,illegal:!1,_emitter:mt,_top:Ie}}catch(se){if(se.message&&se.message.includes("Illegal"))return{language:ie,value:Tt(ve),illegal:!0,relevance:0,_illegalBy:{message:se.message,index:Ln,context:ve.slice(Ln-100,Ln+100),mode:se.mode,resultSoFar:Ve},_emitter:mt};if(rt)return{language:ie,value:Tt(ve),illegal:!1,relevance:0,errorRaised:se,_emitter:mt,_top:Ie};throw se}}function or(ie){const ve={value:Tt(ie),illegal:!1,relevance:0,_top:he,_emitter:new ge.__emitter(ge)};return ve._emitter.addText(ie),ve}function Rr(ie,ve){ve=ve||ge.languages||Object.keys(V);const ze=or(ie),Be=ve.filter(vn).filter(Bo).map(zt=>In(zt,ie,!1));Be.unshift(ze);const gt=Be.sort((zt,Ft)=>{if(zt.relevance!==Ft.relevance)return Ft.relevance-zt.relevance;if(zt.language&&Ft.language){if(vn(zt.language).supersetOf===Ft.language)return 1;if(vn(Ft.language).supersetOf===zt.language)return-1}return 0}),[ut,Mn]=gt,ii=ut;return ii.secondBest=Mn,ii}function ua(ie,ve,ze){const Be=ve&&fe[ve]||ze;ie.classList.add("hljs"),ie.classList.add(`language-${Be}`)}function Di(ie){let ve=null;const ze=yt(ie);if(xe(ze))return;if(Or("before:highlightElement",{el:ie,language:ze}),ie.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",ie);return}if(ie.children.length>0&&(ge.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(ie)),ge.throwUnescapedHTML))throw new un("One of your code blocks includes unescaped HTML.",ie.innerHTML);ve=ie;const Be=ve.textContent,gt=ze?tt(Be,{language:ze,ignoreIllegals:!0}):Rr(Be);ie.innerHTML=gt.value,ie.dataset.highlighted="yes",ua(ie,ze,gt.language),ie.result={language:gt.language,re:gt.relevance,relevance:gt.relevance},gt.secondBest&&(ie.secondBest={language:gt.secondBest.language,relevance:gt.secondBest.relevance}),Or("after:highlightElement",{el:ie,result:gt,text:Be})}function ca(ie){ge=ei(ge,ie)}const Vn=()=>{ni(),H("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Lo(){ni(),H("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let Pi=!1;function ni(){function ie(){ni()}if(document.readyState==="loading"){Pi||window.addEventListener("DOMContentLoaded",ie,!1),Pi=!0;return}document.querySelectorAll(ge.cssSelector).forEach(Di)}function Do(ie,ve){let ze=null;try{ze=ve(C)}catch(Be){if(sn("Language definition for '{}' could not be registered.".replace("{}",ie)),rt)sn(Be);else throw Be;ze=he}ze.name||(ze.name=ie),V[ie]=ze,ze.rawDefinition=ve.bind(null,C),ze.aliases&&Fo(ze.aliases,{languageName:ie})}function Po(ie){delete V[ie];for(const ve of Object.keys(fe))fe[ve]===ie&&delete fe[ve]}function zo(){return Object.keys(V)}function vn(ie){return ie=(ie||"").toLowerCase(),V[ie]||V[fe[ie]]}function Fo(ie,{languageName:ve}){typeof ie=="string"&&(ie=[ie]),ie.forEach(ze=>{fe[ze.toLowerCase()]=ve})}function Bo(ie){const ve=vn(ie);return ve&&!ve.disableAutodetect}function st(ie){ie["before:highlightBlock"]&&!ie["before:highlightElement"]&&(ie["before:highlightElement"]=ve=>{ie["before:highlightBlock"](Object.assign({block:ve.el},ve))}),ie["after:highlightBlock"]&&!ie["after:highlightElement"]&&(ie["after:highlightElement"]=ve=>{ie["after:highlightBlock"](Object.assign({block:ve.el},ve))})}function fa(ie){st(ie),Re.push(ie)}function zi(ie){const ve=Re.indexOf(ie);ve!==-1&&Re.splice(ve,1)}function Or(ie,ve){const ze=ie;Re.forEach(function(Be){Be[ze]&&Be[ze](ve)})}function ri(ie){return H("10.7.0","highlightBlock will be removed entirely in v12.0"),H("10.7.0","Please use highlightElement now."),Di(ie)}Object.assign(C,{highlight:tt,highlightAuto:Rr,highlightAll:ni,highlightElement:Di,highlightBlock:ri,configure:ca,initHighlighting:Vn,initHighlightingOnLoad:Lo,registerLanguage:Do,unregisterLanguage:Po,listLanguages:zo,getLanguage:vn,registerAliases:Fo,autoDetection:Bo,inherit:ei,addPlugin:fa,removePlugin:zi}),C.debugMode=function(){rt=!1},C.safeMode=function(){rt=!0},C.versionString=vt,C.regex={concat:T,lookahead:b,either:N,optional:k,anyNumberOfTimes:E};for(const ie in Xe)typeof Xe[ie]=="object"&&e(Xe[ie]);return Object.assign(C,Xe),C},Wn=Kn({});return Wn.newInstance=()=>Kn({}),pu=Wn,Wn.HighlightJS=Wn,Wn.default=Wn,pu}var Jx=Xx();const eS=Ao(Jx),_p={},tS="hljs-";function nS(e){const i=eS.newInstance();return e&&c(e),{highlight:r,highlightAuto:l,listLanguages:s,register:c,registerAlias:u,registered:d};function r(p,g,y){const h=y||_p,b=typeof h.prefix=="string"?h.prefix:tS;if(!i.getLanguage(p))throw new Error("Unknown language: `"+p+"` is not registered");i.configure({__emitter:rS,classPrefix:b});const E=i.highlight(g,{ignoreIllegals:!0,language:p});if(E.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:E.errorRaised});const k=E._emitter.root,T=k.data;return T.language=E.language,T.relevance=E.relevance,k}function l(p,g){const h=(g||_p).subset||s();let b=-1,E=0,k;for(;++bE&&(E=S.data.relevance,k=S)}return k||{type:"root",children:[],data:{language:void 0,relevance:E}}}function s(){return i.listLanguages()}function c(p,g){if(typeof p=="string")i.registerLanguage(p,g);else{let y;for(y in p)Object.hasOwn(p,y)&&i.registerLanguage(y,p[y])}}function u(p,g){if(typeof p=="string")i.registerAliases(typeof g=="string"?g:[...g],{languageName:p});else{let y;for(y in p)if(Object.hasOwn(p,y)){const h=p[y];i.registerAliases(typeof h=="string"?h:[...h],{languageName:y})}}}function d(p){return!!i.getLanguage(p)}}class rS{constructor(i){this.options=i,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(i){if(i==="")return;const r=this.stack[this.stack.length-1],l=r.children[r.children.length-1];l&&l.type==="text"?l.value+=i:r.children.push({type:"text",value:i})}startScope(i){this.openNode(String(i))}endScope(){this.closeNode()}__addSublanguage(i,r){const l=this.stack[this.stack.length-1],s=i.root.children;r?l.children.push({type:"element",tagName:"span",properties:{className:[r]},children:s}):l.children.push(...s)}openNode(i){const r=this,l=i.split(".").map(function(u,d){return d?u+"_".repeat(d):r.options.classPrefix+u}),s=this.stack[this.stack.length-1],c={type:"element",tagName:"span",properties:{className:l},children:[]};s.children.push(c),this.stack.push(c)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const iS={};function oS(e){const i=e||iS,r=i.aliases,l=i.detect||!1,s=i.languages||Zx,c=i.plainText,u=i.prefix,d=i.subset;let p="hljs";const g=nS(s);if(r&&g.registerAlias(r),u){const y=u.indexOf("-");p=y===-1?u:u.slice(0,y)}return function(y,h){sa(y,"element",function(b,E,k){if(b.tagName!=="code"||!k||k.type!=="element"||k.tagName!=="pre")return;const T=lS(b);if(T===!1||!T&&!l||T&&c&&c.includes(T))return;Array.isArray(b.properties.className)||(b.properties.className=[]),b.properties.className.includes(p)||b.properties.className.unshift(p);const S=kw(b,{whitespace:"pre"});let N;try{N=T?g.highlight(T,S,{prefix:u}):g.highlightAuto(S,{prefix:u,subset:d})}catch(B){const P=B;if(T&&/Unknown language/.test(P.message)){h.message("Cannot highlight as `"+T+"`, it’s not registered",{ancestors:[k,b],cause:P,place:b.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw P}!T&&N.data&&N.data.language&&b.properties.className.push("language-"+N.data.language),N.children.length>0&&(b.children=N.children)})}}function lS(e){const i=e.properties.className;let r=-1;if(!Array.isArray(i))return;let l;for(;++rtypeof r=="string"):[]}catch{return[]}}function uS({message:e,toolEvents:i=[]}){const[r,l]=de.useState(!1),s=e.role==="user",c=sS(e);return K.jsxs("div",{className:`msg ${s?"msg-user":"msg-assistant"}`,children:[K.jsx("div",{className:"msg-role",children:s?"du":"qwen3"}),!s&&e.thinking&&e.thinking.length>0&&K.jsxs("div",{className:`thinking ${r?"open":""}`,children:[K.jsxs("button",{className:"thinking-toggle",onClick:()=>l(u=>!u),children:[K.jsx("span",{className:`caret ${r?"rotated":""}`,children:"▸"}),e.content===""&&r===!1?"denkt nach …":`Denkprozess (${e.thinking.length.toLocaleString("de-DE")} Zeichen)`]}),r&&K.jsx("pre",{className:"thinking-body",children:e.thinking})]}),i.length>0&&K.jsx("div",{className:"tool-events",children:i.map((u,d)=>K.jsxs("div",{className:`tool-event ${u.ok===!1?"failed":""}`,children:[K.jsx("span",{className:"tool-icon",children:u.ok===void 0?"⋯":u.ok?"✓":"✗"}),K.jsx("code",{children:u.name}),K.jsx("span",{className:"tool-args",title:u.args,children:u.args}),u.durationMs!==void 0&&K.jsxs("span",{className:"tool-time",children:[u.durationMs," ms"]})]},d))}),c.length>0&&K.jsx("div",{className:"msg-images",children:c.map((u,d)=>K.jsx("img",{src:`data:${aS(u)};base64,${u}`,alt:`Anhang ${d+1}`,loading:"lazy"},d))}),s?e.content?K.jsx("div",{className:"msg-content user-content",children:e.content}):null:K.jsx("div",{className:"msg-content markdown",children:K.jsx(nv,{remarkPlugins:[mw],rehypePlugins:[oS],children:e.content||"▍"})})]})}const wo=4,vp=6*1024*1024,kp=["image/png","image/jpeg","image/gif","image/webp"];function cS(e){return new Promise((i,r)=>{const l=new FileReader;l.onerror=()=>r(new Error(`${e.name} konnte nicht gelesen werden`)),l.onload=()=>{const s=String(l.result),c=s.indexOf(",");i({id:`${e.name}-${e.size}-${Date.now()}-${Math.random()}`,base64:s.slice(c+1),dataUrl:s,name:e.name||"Bild"})},l.readAsDataURL(e)})}function fS({streaming:e,disabled:i,recording:r,transcribing:l,injectedText:s,onInjected:c,onSend:u,onAbort:d,onMicToggle:p}){const[g,y]=de.useState(""),[h,b]=de.useState([]),[E,k]=de.useState(null),[T,S]=de.useState(!1),N=de.useRef(null),B=de.useRef(null);de.useEffect(()=>{s!=null&&(y(s),c(),requestAnimationFrame(()=>{var A,X;(A=N.current)==null||A.focus(),(X=N.current)==null||X.setSelectionRange(s.length,s.length)}))},[s,c]);const P=async A=>{k(null);const X=[];for(const ee of A){if(!kp.includes(ee.type)){k(`${ee.name||"Datei"}: nur PNG, JPEG, GIF oder WebP`);continue}if(ee.size>vp){k(`${ee.name}: größer als ${vp/1024/1024} MB`);continue}X.push(ee)}if(X.length)try{const ee=await Promise.all(X.map(cS));b(re=>{const M=wo-re.length;return ee.length>M&&k(`Maximal ${wo} Bilder pro Nachricht`),[...re,...ee.slice(0,Math.max(M,0))]})}catch(ee){k(ee instanceof Error?ee.message:"Bild konnte nicht gelesen werden")}},j=()=>{const A=g.trim();!A&&h.length===0||e||i||(u(A,h.map(X=>X.base64)),y(""),b([]),k(null),requestAnimationFrame(()=>{var X;return(X=N.current)==null?void 0:X.focus()}))},Z=(g.trim().length>0||h.length>0)&&!i;return K.jsxs("div",{className:`composer ${T?"dragging":""}`,onDragOver:A=>{i||(A.preventDefault(),S(!0))},onDragLeave:()=>S(!1),onDrop:A=>{i||(A.preventDefault(),S(!1),P([...A.dataTransfer.files]))},children:[(h.length>0||E)&&K.jsxs("div",{className:"attachments",children:[h.map(A=>K.jsxs("div",{className:"attachment",children:[K.jsx("img",{src:A.dataUrl,alt:A.name}),K.jsx("button",{className:"attachment-remove",onClick:()=>b(X=>X.filter(ee=>ee.id!==A.id)),title:`${A.name} entfernen`,children:"×"})]},A.id)),E&&K.jsx("span",{className:"attachment-error",children:E})]}),K.jsxs("div",{className:"composer-row",children:[K.jsx("button",{className:`btn-mic ${r?"recording":""} ${l?"transcribing":""}`,onClick:p,title:r?"Aufnahme stoppen & senden":l?"Transkribiere …":"Sprachnachricht aufnehmen",disabled:l||i,children:r?"●":l?"…":"🎙"}),K.jsx("button",{className:"btn-attach",onClick:()=>{var A;return(A=B.current)==null?void 0:A.click()},disabled:i||h.length>=wo,title:h.length>=wo?`Maximal ${wo} Bilder`:"Bild anhängen (auch per Einfügen oder Drag & Drop)",children:"🖼"}),K.jsx("input",{ref:B,type:"file",accept:kp.join(","),multiple:!0,hidden:!0,onChange:A=>{P([...A.target.files??[]]),A.target.value=""}}),K.jsx("textarea",{ref:N,value:g,placeholder:r?"Ich höre zu … (zum Beenden nochmal auf das Mikro klicken)":i?"Keine Session aktiv — neuen Chat starten":"Nachricht an qwen3 … (Enter = senden, Bild einfügen mit ⌘V)",rows:1,disabled:i,onChange:A=>y(A.target.value),onPaste:A=>{const X=[...A.clipboardData.files].filter(ee=>ee.type.startsWith("image/"));X.length&&(A.preventDefault(),P(X))},onKeyDown:A=>{A.key==="Enter"&&!A.shiftKey&&(A.preventDefault(),j())}}),e?K.jsx("button",{className:"btn-send stop",onClick:d,children:"■ Stop"}):K.jsx("button",{className:"btn-send",disabled:!Z,onClick:j,children:"Senden ▸"})]})]})}const dS={fact:"Fakt",decision:"Entscheidung",preference:"Präferenz",entity:"Entität",open_question:"Offen"};function pS({sessionId:e,onClose:i}){const[r,l]=de.useState(null),[s,c]=de.useState(null),u=de.useCallback(async()=>{try{const E=await(await fetch(`/api/sessions/${e}/memory`)).json();E.state&&l(E)}catch{l(null)}},[e]);de.useEffect(()=>{u()},[u]);const d=async()=>{c("dream");try{await fetch(`/api/sessions/${e}/dream`,{method:"POST"}),await u()}finally{c(null)}},p=async()=>{c("rebuild");try{await fetch(`/api/sessions/${e}/memory/rebuild`,{method:"POST"}),await u()}finally{c(null)}},g=async b=>{await fetch(`/api/anchors/${b.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({pinned:!b.pinned})}),await u()},y=async b=>{await fetch(`/api/anchors/${b.id}`,{method:"DELETE"}),await u()},h=r?r.state.last_seq-r.state.last_dream_seq:0;return K.jsx("div",{className:"memory-overlay",onClick:i,children:K.jsxs("section",{className:"memory-panel",onClick:b=>b.stopPropagation(),children:[K.jsxs("header",{className:"memory-header",children:[K.jsxs("div",{children:[K.jsx("div",{className:"memory-title",children:"🧠 Gedächtnis"}),K.jsx("div",{className:"memory-stats",children:r?`${r.state.last_seq} Log-Schritte · ${r.state.dream_count}× geträumt · ${h} unkonsolidiert`:"lädt …"})]}),K.jsx("button",{className:"memory-close",onClick:i,title:"Schließen",children:"✕"})]}),K.jsxs("div",{className:"memory-actions",children:[K.jsx("button",{onClick:()=>void d(),disabled:s!==null,children:s==="dream"?"… träumt":"💤 Traumphase jetzt"}),K.jsx("button",{onClick:()=>void p(),disabled:s!==null,children:s==="rebuild"?"… faltet":"↻ Aus Log rekonstruieren"})]}),r&&r.anchors.length===0&&K.jsx("div",{className:"memory-empty",children:"Noch keine Ankerpunkte. Sie entstehen durch die Traumphase (automatisch nach Inaktivität oder Manual oben) oder wenn das Modell sich etwas mit „remember“ merkt."}),r==null?void 0:r.anchors.map(b=>K.jsxs("div",{className:"anchor-row"+(b.pinned?" pinned":""),children:[K.jsxs("div",{className:"anchor-body",children:[K.jsxs("div",{className:"anchor-kind",children:[dS[b.kind]??b.kind," · ",b.origin]}),K.jsx("div",{className:"anchor-text",children:b.text}),K.jsxs("div",{className:"anchor-meta",children:["Wichtigkeit ",(b.importance*100).toFixed(0)," % · ",b.hits,"× bestätigt"]}),K.jsx("div",{className:"anchor-bar",children:K.jsx("div",{className:"anchor-bar-fill",style:{width:`${Math.round(b.importance*100)}%`}})})]}),K.jsxs("div",{className:"anchor-actions",children:[K.jsx("button",{onClick:()=>void g(b),title:b.pinned?"Pin lösen (Decay möglich)":"Pinnen (vor Decay geschützt)",children:b.pinned?"★":"☆"}),K.jsx("button",{onClick:()=>void y(b),title:"Ankerpunkt löschen",children:"✕"})]})]},b.id))]})})}const wp="oxagenttwo.voiceMode";function gS(){var W,q,te;const e=jh(),i=de.useRef(null),[r,l]=de.useState(!1),[s,c]=de.useState(!1),[u,d]=de.useState(null),[p,g]=de.useState(()=>localStorage.getItem(wp)==="1"),[y,h]=de.useState([]);de.useEffect(()=>{r&&e.options.provider==="openrouter"&&y.length===0&&fetch("/api/openrouter/models").then(L=>L.json()).then(L=>{L.ok&&L.models&&h(L.models)}).catch(()=>{})},[r,e.options.provider,y.length]);const b=de.useRef(p),E=de.useRef(!1),k=de.useRef(!1);E.current=e.streaming,b.current=p;const T=de.useCallback(L=>{g(L),localStorage.setItem(wp,L?"1":"0")},[]),S=Gh({onTranscript:L=>{b.current?(N.current.cancelSpeech(),P.current="",B.current.sendMessage(L)):d(L)},onQueueDrained:()=>{k.current&&(k.current=!1,b.current&&!E.current&&N.current.startRecording())}}),N=de.useRef(S);N.current=S;const B=de.useRef(e);B.current=e;const P=de.useRef(""),j=de.useRef({id:"",offset:0});de.useEffect(()=>{const L=i.current;L&&(L.scrollTop=L.scrollHeight)},[e.messages]),de.useEffect(()=>{if(!p)return;const L=[...e.messages].reverse().find(v=>v.role==="assistant");if(!L)return;j.current.id!==L.id&&(j.current={id:L.id,offset:0},P.current="");const U=L.content;if(U.length=40&&(ae=ce.slice(0,O))}else if(ce.length>300){const v=Math.max(ce.lastIndexOf(", "),ce.lastIndexOf(" "));ae=v>100?ce.slice(0,v+1):ce}ae&&(P.current=ce.slice(ae.length),S.enqueueSpeech(ae))});const Z=de.useRef(!1);de.useEffect(()=>{if(Z.current&&!e.streaming&&p){const L=P.current.trim();L&&(P.current="",S.enqueueSpeech(L)),(L||j.current.id)&&(k.current=!0)}Z.current=e.streaming},[e.streaming,p,S]);const[A,X]=de.useState([]);de.useEffect(()=>{fetch("/api/tools").then(L=>L.json()).then(L=>X(L.tools??[])).catch(()=>X([]))},[]);const ee=de.useCallback((L,U=[])=>{S.cancelSpeech(),P.current="",e.sendMessage(L,U)},[e,S]),re=de.useCallback(()=>{S.cancelSpeech(),P.current="",e.abort()},[e,S]),M=de.useCallback(()=>{S.recording?S.stopRecording():(S.cancelSpeech(),S.startRecording())},[S]);return K.jsxs("div",{className:"app",children:[K.jsx(Kh,{sessions:e.sessions,activeId:e.activeId,onSelect:e.setActiveId,onNew:()=>void e.newSession(),onDelete:L=>void e.deleteSession(L)}),K.jsxs("main",{className:"main",children:[K.jsxs("header",{className:"topbar",children:[K.jsxs("div",{className:"model-badge",title:(W=e.modelInfo)!=null&&W.ok||(q=e.modelInfo)==null?void 0:q.error,children:[K.jsx("span",{className:`status-dot ${e.status==="open"?"on":"off"}`}),e.options.provider==="openrouter"?`☁ ${e.options.openrouterModel}`:(te=e.modelInfo)!=null&&te.ok?`${e.modelInfo.model} · ${e.modelInfo.parameterSize} · ${e.modelInfo.quantization}`:"Ollama offline"]}),K.jsxs("div",{className:"topbar-actions",children:[p&&(S.recording||S.transcribing||S.speaking)&&K.jsx("span",{className:"voice-state",children:S.recording?"● hört zu":S.transcribing?"… transkribiert":"🔊 spricht"}),K.jsx("button",{className:`btn-settings ${p?"toggled":""}`,onClick:()=>{p&&(S.cancelSpeech(),S.stopRecording()),T(!p)},title:"Sprachmodus: Antworten werden vorgelesen, danach wird automatisch wieder zugehört",children:p?"🔊 Stimme: an":"🔇 Stimme: aus"}),K.jsx("button",{className:"btn-settings",onClick:()=>c(L=>!L),disabled:!e.activeId,title:"Gedächtnis: Ankerpunkte, Traumphase, Log-Rekonstruktion",children:"🧠 Gedächtnis"}),K.jsx("button",{className:"btn-settings",onClick:()=>l(L=>!L),children:"⚙ Einstellungen"})]})]}),r&&K.jsxs("section",{className:"settings-panel",children:[K.jsxs("label",{className:"setting-row",children:[K.jsx("span",{children:"Modell"}),K.jsxs("select",{className:"provider-select",value:e.options.provider,onChange:L=>e.setOptions({provider:L.target.value}),children:[K.jsx("option",{value:"ollama",children:"Lokal: qwen3.5 (Ollama)"}),K.jsx("option",{value:"openrouter",children:"OpenRouter (Cloud)"})]})]}),e.options.provider==="openrouter"&&K.jsxs("label",{className:"setting-row column",children:[K.jsxs("span",{children:["OpenRouter-Modell (",y.length," verfügbar)"]}),K.jsx("input",{list:"or-models",value:e.options.openrouterModel,placeholder:"z. B. anthropic/claude-sonnet-4.5",onChange:L=>e.setOptions({openrouterModel:L.target.value})}),K.jsx("datalist",{id:"or-models",children:y.map(L=>K.jsxs("option",{value:L.id,children:[L.name," · ",L.promptPrice===0?"gratis":`$${L.promptPrice.toFixed(2)}/M`]},L.id))})]}),e.options.provider==="ollama"&&K.jsxs("label",{className:"setting-row checkbox",children:[K.jsx("input",{type:"checkbox",checked:e.options.think,onChange:L=>e.setOptions({think:L.target.checked})}),K.jsx("span",{children:"Thinking-Mode (Modell denkt sichtbar vor der Antwort)"})]}),K.jsxs("label",{className:"setting-row checkbox",children:[K.jsx("input",{type:"checkbox",checked:e.options.tools,onChange:L=>e.setOptions({tools:L.target.checked})}),K.jsxs("span",{children:["Werkzeuge (",A.length>0?A.join(", "):"keine geladen",")"]})]}),K.jsxs("label",{className:"setting-row",children:[K.jsxs("span",{children:["Temperature: ",e.options.temperature.toFixed(2)]}),K.jsx("input",{type:"range",min:0,max:1.5,step:.05,value:e.options.temperature,onChange:L=>e.setOptions({temperature:Number(L.target.value)})})]}),K.jsxs("label",{className:"setting-row",children:[K.jsxs("span",{children:["Max. Tokens: ",e.options.numPredict]}),K.jsx("input",{type:"range",min:256,max:8192,step:256,value:e.options.numPredict,onChange:L=>e.setOptions({numPredict:Number(L.target.value)})})]}),K.jsxs("label",{className:"setting-row",children:[K.jsxs("span",{children:["Gedächtnis-Fenster: ",e.options.memorySteps," Schritte"]}),K.jsx("input",{type:"range",min:2,max:50,step:1,value:e.options.memorySteps,onChange:L=>e.setOptions({memorySteps:Number(L.target.value)})})]}),K.jsxs("label",{className:"setting-row checkbox",children:[K.jsx("input",{type:"checkbox",checked:e.options.memoryAnchors,onChange:L=>e.setOptions({memoryAnchors:L.target.checked})}),K.jsx("span",{children:"Ankerpunkte ins Modell einspielen (Gedächtnis als System-Kontext)"})]}),K.jsxs("label",{className:"setting-row checkbox",children:[K.jsx("input",{type:"checkbox",checked:e.options.dreamAuto,onChange:L=>e.setOptions({dreamAuto:L.target.checked})}),K.jsx("span",{children:"Auto-Traumphase (Konsolidierung nach 3 Min Inaktivität oder 10 Schritten)"})]}),K.jsxs("label",{className:"setting-row column",children:[K.jsx("span",{children:"System-Prompt"}),K.jsx("textarea",{rows:3,placeholder:"Optional: Verhalten des Modells steuern …",value:e.systemPrompt,onChange:L=>e.setSystemPrompt(L.target.value)})]})]}),s&&e.activeId&&K.jsx(pS,{sessionId:e.activeId,onClose:()=>c(!1)}),K.jsxs("div",{className:"messages",ref:i,children:[e.messages.length===0&&K.jsxs("div",{className:"welcome",children:[K.jsx("div",{className:"welcome-title",children:"▸ agenttwo-tools"}),K.jsx("p",{children:"Echtzeit-Chat mit lokalem Qwen3 über Ollama — per Tastatur oder Stimme (Whisper STT + Piper TTS, alles lokal)."}),K.jsx("p",{className:"hint",children:"🎙 für Sprachnachricht · 🔊 Stimme an für freihändigen Dialog"})]}),e.messages.map(L=>K.jsx(uS,{message:L,toolEvents:e.toolEvents[L.id]},L.id))]}),S.error&&K.jsxs("div",{className:"voice-error",children:[S.error,K.jsx("button",{onClick:()=>S.setError(null),children:"✕"})]}),K.jsx(fS,{streaming:e.streaming,disabled:!e.activeId,recording:S.recording,transcribing:S.transcribing,injectedText:u,onInjected:()=>d(null),onSend:ee,onAbort:re,onMicToggle:M})]})]})}Uh.createRoot(document.getElementById("root")).render(K.jsx(Mh.StrictMode,{children:K.jsx(gS,{})})); diff --git a/web/dist/assets/index-leRe8gQm.js b/web/dist/assets/index-leRe8gQm.js new file mode 100644 index 0000000..2636a71 --- /dev/null +++ b/web/dist/assets/index-leRe8gQm.js @@ -0,0 +1,74 @@ +var Th=Object.defineProperty;var Ah=(e,i,r)=>i in e?Th(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r;var Ci=(e,i,r)=>Ah(e,typeof i!="symbol"?i+"":i,r);(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))l(s);new MutationObserver(s=>{for(const c of s)if(c.type==="childList")for(const u of c.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&l(u)}).observe(document,{childList:!0,subtree:!0});function r(s){const c={};return s.integrity&&(c.integrity=s.integrity),s.referrerPolicy&&(c.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?c.credentials="include":s.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function l(s){if(s.ep)return;s.ep=!0;const c=r(s);fetch(s.href,c)}})();function Ao(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var js={exports:{}},yo={},Gs={exports:{}},Fe={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var ud;function Rh(){if(ud)return Fe;ud=1;var e=Symbol.for("react.element"),i=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),u=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),h=Symbol.iterator;function b(A){return A===null||typeof A!="object"?null:(A=h&&A[h]||A["@@iterator"],typeof A=="function"?A:null)}var E={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,S={};function R(A,U,k){this.props=A,this.context=U,this.refs=S,this.updater=k||E}R.prototype.isReactComponent={},R.prototype.setState=function(A,U){if(typeof A!="object"&&typeof A!="function"&&A!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,A,U,"setState")},R.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};function N(){}N.prototype=R.prototype;function L(A,U,k){this.props=A,this.context=U,this.refs=S,this.updater=k||E}var z=L.prototype=new N;z.constructor=L,w(z,R.prototype),z.isPureReactComponent=!0;var W=Array.isArray,Q=Object.prototype.hasOwnProperty,M={current:null},q={key:!0,ref:!0,__self:!0,__source:!0};function ne(A,U,k){var ke,Me={},we=null,$e=null;if(U!=null)for(ke in U.ref!==void 0&&($e=U.ref),U.key!==void 0&&(we=""+U.key),U)Q.call(U,ke)&&!q.hasOwnProperty(ke)&&(Me[ke]=U[ke]);var De=arguments.length-2;if(De===1)Me.children=k;else if(1>>1,U=G[A];if(0>>1;As(Me,v))wes($e,Me)?(G[A]=$e,G[we]=v,A=we):(G[A]=Me,G[ke]=v,A=ke);else if(wes($e,v))G[A]=$e,G[we]=v,A=we;else break e}}return ue}function s(G,ue){var v=G.sortIndex-ue.sortIndex;return v!==0?v:G.id-ue.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;e.unstable_now=function(){return c.now()}}else{var u=Date,d=u.now();e.unstable_now=function(){return u.now()-d}}var p=[],m=[],y=1,h=null,b=3,E=!1,w=!1,S=!1,R=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,L=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function z(G){for(var ue=r(m);ue!==null;){if(ue.callback===null)l(m);else if(ue.startTime<=G)l(m),ue.sortIndex=ue.expirationTime,i(p,ue);else break;ue=r(m)}}function W(G){if(S=!1,z(G),!w)if(r(p)!==null)w=!0,se(Q);else{var ue=r(m);ue!==null&&P(W,ue.startTime-G)}}function Q(G,ue){w=!1,S&&(S=!1,N(ne),ne=-1),E=!0;var v=b;try{for(z(ue),h=r(p);h!==null&&(!(h.expirationTime>ue)||G&&!K());){var A=h.callback;if(typeof A=="function"){h.callback=null,b=h.priorityLevel;var U=A(h.expirationTime<=ue);ue=e.unstable_now(),typeof U=="function"?h.callback=U:h===r(p)&&l(p),z(ue)}else l(p);h=r(p)}if(h!==null)var k=!0;else{var ke=r(m);ke!==null&&P(W,ke.startTime-ue),k=!1}return k}finally{h=null,b=v,E=!1}}var M=!1,q=null,ne=-1,X=5,I=-1;function K(){return!(e.unstable_now()-IG||125A?(G.sortIndex=v,i(m,G),r(p)===null&&G===r(m)&&(S?(N(ne),ne=-1):S=!0,P(W,v-A))):(G.sortIndex=U,i(p,G),w||E||(w=!0,se(Q))),G},e.unstable_shouldYield=K,e.unstable_wrapCallback=function(G){var ue=b;return function(){var v=b;b=ue;try{return G.apply(this,arguments)}finally{b=v}}}})(Vs)),Vs}var md;function Dh(){return md||(md=1,Ws.exports=Lh()),Ws.exports}/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var gd;function Ph(){if(gd)return Yt;gd=1;var e=Nu(),i=Dh();function r(t){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+t,o=1;o"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),p=Object.prototype.hasOwnProperty,m=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,y={},h={};function b(t){return p.call(h,t)?!0:p.call(y,t)?!1:m.test(t)?h[t]=!0:(y[t]=!0,!1)}function E(t,n,o,a){if(o!==null&&o.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return a?!1:o!==null?!o.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function w(t,n,o,a){if(n===null||typeof n>"u"||E(t,n,o,a))return!0;if(a)return!1;if(o!==null)switch(o.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function S(t,n,o,a,f,g,_){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=a,this.attributeNamespace=f,this.mustUseProperty=o,this.propertyName=t,this.type=n,this.sanitizeURL=g,this.removeEmptyString=_}var R={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){R[t]=new S(t,0,!1,t,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var n=t[0];R[n]=new S(n,1,!1,t[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(t){R[t]=new S(t,2,!1,t.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){R[t]=new S(t,2,!1,t,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){R[t]=new S(t,3,!1,t.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(t){R[t]=new S(t,3,!0,t,null,!1,!1)}),["capture","download"].forEach(function(t){R[t]=new S(t,4,!1,t,null,!1,!1)}),["cols","rows","size","span"].forEach(function(t){R[t]=new S(t,6,!1,t,null,!1,!1)}),["rowSpan","start"].forEach(function(t){R[t]=new S(t,5,!1,t.toLowerCase(),null,!1,!1)});var N=/[\-:]([a-z])/g;function L(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var n=t.replace(N,L);R[n]=new S(n,1,!1,t,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var n=t.replace(N,L);R[n]=new S(n,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(t){var n=t.replace(N,L);R[n]=new S(n,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(t){R[t]=new S(t,1,!1,t.toLowerCase(),null,!1,!1)}),R.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(t){R[t]=new S(t,1,!1,t.toLowerCase(),null,!0,!0)});function z(t,n,o,a){var f=R.hasOwnProperty(n)?R[n]:null;(f!==null?f.type!==0:a||!(2x||f[_]!==g[x]){var T=` +`+f[_].replace(" at new "," at ");return t.displayName&&T.includes("")&&(T=T.replace("",t.displayName)),T}while(1<=_&&0<=x);break}}}finally{k=!1,Error.prepareStackTrace=o}return(t=t?t.displayName||t.name:"")?U(t):""}function Me(t){switch(t.tag){case 5:return U(t.type);case 16:return U("Lazy");case 13:return U("Suspense");case 19:return U("SuspenseList");case 0:case 2:case 15:return t=ke(t.type,!1),t;case 11:return t=ke(t.type.render,!1),t;case 1:return t=ke(t.type,!0),t;default:return""}}function we(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case q:return"Fragment";case M:return"Portal";case X:return"Profiler";case ne:return"StrictMode";case re:return"Suspense";case Z:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case K:return(t.displayName||"Context")+".Consumer";case I:return(t._context.displayName||"Context")+".Provider";case Y:var n=t.render;return t=t.displayName,t||(t=n.displayName||n.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case $:return n=t.displayName||null,n!==null?n:we(t.type)||"Memo";case se:n=t._payload,t=t._init;try{return we(t(n))}catch{}}return null}function $e(t){var n=t.type;switch(t.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=n.render,t=t.displayName||t.name||"",n.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return we(n);case 8:return n===ne?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function De(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function Ge(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Xe(t){var n=Ge(t)?"checked":"value",o=Object.getOwnPropertyDescriptor(t.constructor.prototype,n),a=""+t[n];if(!t.hasOwnProperty(n)&&typeof o<"u"&&typeof o.get=="function"&&typeof o.set=="function"){var f=o.get,g=o.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return f.call(this)},set:function(_){a=""+_,g.call(this,_)}}),Object.defineProperty(t,n,{enumerable:o.enumerable}),{getValue:function(){return a},setValue:function(_){a=""+_},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function Xt(t){t._valueTracker||(t._valueTracker=Xe(t))}function rr(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var o=n.getValue(),a="";return t&&(a=Ge(t)?t.checked?"true":"false":t.value),t=a,t!==o?(n.setValue(t),!0):!1}function An(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function Hn(t,n){var o=n.checked;return v({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:o??t._wrapperState.initialChecked})}function jn(t,n){var o=n.defaultValue==null?"":n.defaultValue,a=n.checked!=null?n.checked:n.defaultChecked;o=De(n.value!=null?n.value:o),t._wrapperState={initialChecked:a,initialValue:o,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Ke(t,n){n=n.checked,n!=null&&z(t,"checked",n,!1)}function Jt(t,n){Ke(t,n);var o=De(n.value),a=n.type;if(o!=null)a==="number"?(o===0&&t.value===""||t.value!=o)&&(t.value=""+o):t.value!==""+o&&(t.value=""+o);else if(a==="submit"||a==="reset"){t.removeAttribute("value");return}n.hasOwnProperty("value")?Rn(t,n.type,o):n.hasOwnProperty("defaultValue")&&Rn(t,n.type,De(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(t.defaultChecked=!!n.defaultChecked)}function an(t,n,o){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var a=n.type;if(!(a!=="submit"&&a!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+t._wrapperState.initialValue,o||n===t.value||(t.value=n),t.defaultValue=n}o=t.name,o!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,o!==""&&(t.name=o)}function Rn(t,n,o){(n!=="number"||An(t.ownerDocument)!==t)&&(o==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+o&&(t.defaultValue=""+o))}var bn=Array.isArray;function On(t,n,o,a){if(t=t.options,n){n={};for(var f=0;f"+n.valueOf().toString()+"",n=Te.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;n.firstChild;)t.appendChild(n.firstChild)}});function He(t,n){if(n){var o=t.firstChild;if(o&&o===t.lastChild&&o.nodeType===3){o.nodeValue=n;return}}t.textContent=n}var _t={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},En=["Webkit","ms","Moz","O"];Object.keys(_t).forEach(function(t){En.forEach(function(n){n=n+t.charAt(0).toUpperCase()+t.substring(1),_t[n]=_t[t]})});function jt(t,n,o){return n==null||typeof n=="boolean"||n===""?"":o||typeof n!="number"||n===0||_t.hasOwnProperty(t)&&_t[t]?(""+n).trim():n+"px"}function _n(t,n){t=t.style;for(var o in n)if(n.hasOwnProperty(o)){var a=o.indexOf("--")===0,f=jt(o,n[o],a);o==="float"&&(o="cssFloat"),a?t.setProperty(o,f):t[o]=f}}var Gn=v({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function vt(t,n){if(n){if(Gn[t]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(r(137,t));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(r(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(r(61))}if(n.style!=null&&typeof n.style!="object")throw Error(r(62))}}function un(t,n){if(t.indexOf("-")===-1)return typeof n.is=="string";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Tt=null;function ei(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var ti=null,ir=null,Kn=null;function Wn(t){if(t=to(t)){if(typeof ti!="function")throw Error(r(280));var n=t.stateNode;n&&(n=nl(n),ti(t.stateNode,t.type,n))}}function C(t){ir?Kn?Kn.push(t):Kn=[t]:ir=t}function V(){if(ir){var t=ir,n=Kn;if(Kn=ir=null,Wn(t),n)for(t=0;t>>=0,t===0?32:31-(Mn(t)/ii|0)|0}var Ft=64,Ir=4194304;function lr(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function Mr(t,n){var o=t.pendingLanes;if(o===0)return 0;var a=0,f=t.suspendedLanes,g=t.pingedLanes,_=o&268435455;if(_!==0){var x=_&~f;x!==0?a=lr(x):(g&=_,g!==0&&(a=lr(g)))}else _=o&~f,_!==0?a=lr(_):g!==0&&(a=lr(g));if(a===0)return 0;if(n!==0&&n!==a&&(n&f)===0&&(f=a&-a,g=n&-n,f>=g||f===16&&(g&4194240)!==0))return n;if((a&4)!==0&&(a|=o&16),n=t.entangledLanes,n!==0)for(t=t.entanglements,n&=a;0o;o++)n.push(t);return n}function sr(t,n,o){t.pendingLanes|=n,n!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,n=31-ut(n),t[n]=o}function cn(t,n){var o=t.pendingLanes&~n;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=n,t.mutableReadLanes&=n,t.entangledLanes&=n,n=t.entanglements;var a=t.eventTimes;for(t=t.expirationTimes;0=Wi),tc=" ",nc=!1;function rc(t,n){switch(t){case"keyup":return wg.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ic(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var ai=!1;function Sg(t,n){switch(t){case"compositionend":return ic(n);case"keypress":return n.which!==32?null:(nc=!0,tc);case"textInput":return t=n.data,t===tc&&nc?null:t;default:return null}}function Ng(t,n){if(ai)return t==="compositionend"||!wa&&rc(t,n)?(t=Yu(),Ko=ya=cr=null,ai=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1=n)return{node:o,offset:n-t};t=a}e:{for(;o;){if(o.nextSibling){o=o.nextSibling;break e}o=o.parentNode}o=void 0}o=fc(o)}}function pc(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?pc(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function mc(){for(var t=window,n=An();n instanceof t.HTMLIFrameElement;){try{var o=typeof n.contentWindow.location.href=="string"}catch{o=!1}if(o)t=n.contentWindow;else break;n=An(t.document)}return n}function Na(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}function Dg(t){var n=mc(),o=t.focusedElem,a=t.selectionRange;if(n!==o&&o&&o.ownerDocument&&pc(o.ownerDocument.documentElement,o)){if(a!==null&&Na(o)){if(n=a.start,t=a.end,t===void 0&&(t=n),"selectionStart"in o)o.selectionStart=n,o.selectionEnd=Math.min(t,o.value.length);else if(t=(n=o.ownerDocument||document)&&n.defaultView||window,t.getSelection){t=t.getSelection();var f=o.textContent.length,g=Math.min(a.start,f);a=a.end===void 0?g:Math.min(a.end,f),!t.extend&&g>a&&(f=a,a=g,g=f),f=dc(o,g);var _=dc(o,a);f&&_&&(t.rangeCount!==1||t.anchorNode!==f.node||t.anchorOffset!==f.offset||t.focusNode!==_.node||t.focusOffset!==_.offset)&&(n=n.createRange(),n.setStart(f.node,f.offset),t.removeAllRanges(),g>a?(t.addRange(n),t.extend(_.node,_.offset)):(n.setEnd(_.node,_.offset),t.addRange(n)))}}for(n=[],t=o;t=t.parentNode;)t.nodeType===1&&n.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;o=document.documentMode,si=null,Ca=null,Qi=null,Ta=!1;function gc(t,n,o){var a=o.window===o?o.document:o.nodeType===9?o:o.ownerDocument;Ta||si==null||si!==An(a)||(a=si,"selectionStart"in a&&Na(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Qi&&Yi(Qi,a)||(Qi=a,a=Jo(Ca,"onSelect"),0pi||(t.current=Ua[pi],Ua[pi]=null,pi--)}function nt(t,n){pi++,Ua[pi]=t.current,t.current=n}var mr={},Ot=pr(mr),Gt=pr(!1),zr=mr;function mi(t,n){var o=t.type.contextTypes;if(!o)return mr;var a=t.stateNode;if(a&&a.__reactInternalMemoizedUnmaskedChildContext===n)return a.__reactInternalMemoizedMaskedChildContext;var f={},g;for(g in o)f[g]=n[g];return a&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=n,t.__reactInternalMemoizedMaskedChildContext=f),f}function Kt(t){return t=t.childContextTypes,t!=null}function rl(){ot(Gt),ot(Ot)}function Rc(t,n,o){if(Ot.current!==mr)throw Error(r(168));nt(Ot,n),nt(Gt,o)}function Oc(t,n,o){var a=t.stateNode;if(n=n.childContextTypes,typeof a.getChildContext!="function")return o;a=a.getChildContext();for(var f in a)if(!(f in n))throw Error(r(108,$e(t)||"Unknown",f));return v({},o,a)}function il(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||mr,zr=Ot.current,nt(Ot,t),nt(Gt,Gt.current),!0}function Ic(t,n,o){var a=t.stateNode;if(!a)throw Error(r(169));o?(t=Oc(t,n,zr),a.__reactInternalMemoizedMergedChildContext=t,ot(Gt),ot(Ot),nt(Ot,t)):ot(Gt),nt(Gt,o)}var Yn=null,ol=!1,$a=!1;function Mc(t){Yn===null?Yn=[t]:Yn.push(t)}function Vg(t){ol=!0,Mc(t)}function gr(){if(!$a&&Yn!==null){$a=!0;var t=0,n=Ve;try{var o=Yn;for(Ve=1;t>=_,f-=_,Qn=1<<32-ut(n)+f|o<Oe?(Ct=Ne,Ne=null):Ct=Ne.sibling;var Ye=J(D,Ne,F[Oe],le);if(Ye===null){Ne===null&&(Ne=Ct);break}t&&Ne&&Ye.alternate===null&&n(D,Ne),O=g(Ye,O,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye,Ne=Ct}if(Oe===F.length)return o(D,Ne),at&&Br(D,Oe),_e;if(Ne===null){for(;OeOe?(Ct=Ne,Ne=null):Ct=Ne.sibling;var xr=J(D,Ne,Ye.value,le);if(xr===null){Ne===null&&(Ne=Ct);break}t&&Ne&&xr.alternate===null&&n(D,Ne),O=g(xr,O,Oe),Se===null?_e=xr:Se.sibling=xr,Se=xr,Ne=Ct}if(Ye.done)return o(D,Ne),at&&Br(D,Oe),_e;if(Ne===null){for(;!Ye.done;Oe++,Ye=F.next())Ye=te(D,Ye.value,le),Ye!==null&&(O=g(Ye,O,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye);return at&&Br(D,Oe),_e}for(Ne=a(D,Ne);!Ye.done;Oe++,Ye=F.next())Ye=pe(Ne,D,Oe,Ye.value,le),Ye!==null&&(t&&Ye.alternate!==null&&Ne.delete(Ye.key===null?Oe:Ye.key),O=g(Ye,O,Oe),Se===null?_e=Ye:Se.sibling=Ye,Se=Ye);return t&&Ne.forEach(function(Ch){return n(D,Ch)}),at&&Br(D,Oe),_e}function ht(D,O,F,le){if(typeof F=="object"&&F!==null&&F.type===q&&F.key===null&&(F=F.props.children),typeof F=="object"&&F!==null){switch(F.$$typeof){case Q:e:{for(var _e=F.key,Se=O;Se!==null;){if(Se.key===_e){if(_e=F.type,_e===q){if(Se.tag===7){o(D,Se.sibling),O=f(Se,F.props.children),O.return=D,D=O;break e}}else if(Se.elementType===_e||typeof _e=="object"&&_e!==null&&_e.$$typeof===se&&Bc(_e)===Se.type){o(D,Se.sibling),O=f(Se,F.props),O.ref=no(D,Se,F),O.return=D,D=O;break e}o(D,Se);break}else n(D,Se);Se=Se.sibling}F.type===q?(O=Vr(F.props.children,D.mode,le,F.key),O.return=D,D=O):(le=Ml(F.type,F.key,F.props,null,D.mode,le),le.ref=no(D,O,F),le.return=D,D=le)}return _(D);case M:e:{for(Se=F.key;O!==null;){if(O.key===Se)if(O.tag===4&&O.stateNode.containerInfo===F.containerInfo&&O.stateNode.implementation===F.implementation){o(D,O.sibling),O=f(O,F.children||[]),O.return=D,D=O;break e}else{o(D,O);break}else n(D,O);O=O.sibling}O=Fs(F,D.mode,le),O.return=D,D=O}return _(D);case se:return Se=F._init,ht(D,O,Se(F._payload),le)}if(bn(F))return be(D,O,F,le);if(ue(F))return Ee(D,O,F,le);ul(D,F)}return typeof F=="string"&&F!==""||typeof F=="number"?(F=""+F,O!==null&&O.tag===6?(o(D,O.sibling),O=f(O,F),O.return=D,D=O):(o(D,O),O=zs(F,D.mode,le),O.return=D,D=O),_(D)):o(D,O)}return ht}var bi=Uc(!0),$c=Uc(!1),cl=pr(null),fl=null,Ei=null,Va=null;function qa(){Va=Ei=fl=null}function Ya(t){var n=cl.current;ot(cl),t._currentValue=n}function Qa(t,n,o){for(;t!==null;){var a=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,a!==null&&(a.childLanes|=n)):a!==null&&(a.childLanes&n)!==n&&(a.childLanes|=n),t===o)break;t=t.return}}function _i(t,n){fl=t,Va=Ei=null,t=t.dependencies,t!==null&&t.firstContext!==null&&((t.lanes&n)!==0&&(Wt=!0),t.firstContext=null)}function pn(t){var n=t._currentValue;if(Va!==t)if(t={context:t,memoizedValue:n,next:null},Ei===null){if(fl===null)throw Error(r(308));Ei=t,fl.dependencies={lanes:0,firstContext:t}}else Ei=Ei.next=t;return n}var Ur=null;function Za(t){Ur===null?Ur=[t]:Ur.push(t)}function Hc(t,n,o,a){var f=n.interleaved;return f===null?(o.next=o,Za(n)):(o.next=f.next,f.next=o),n.interleaved=o,Xn(t,a)}function Xn(t,n){t.lanes|=n;var o=t.alternate;for(o!==null&&(o.lanes|=n),o=t,t=t.return;t!==null;)t.childLanes|=n,o=t.alternate,o!==null&&(o.childLanes|=n),o=t,t=t.return;return o.tag===3?o.stateNode:null}var hr=!1;function Xa(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function jc(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function Jn(t,n){return{eventTime:t,lane:n,tag:0,payload:null,callback:null,next:null}}function yr(t,n,o){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(qe&2)!==0){var f=a.pending;return f===null?n.next=n:(n.next=f.next,f.next=n),a.pending=n,Xn(t,o)}return f=a.interleaved,f===null?(n.next=n,Za(a)):(n.next=f.next,f.next=n),a.interleaved=n,Xn(t,o)}function dl(t,n,o){if(n=n.updateQueue,n!==null&&(n=n.shared,(o&4194240)!==0)){var a=n.lanes;a&=t.pendingLanes,o|=a,n.lanes=o,Bi(t,o)}}function Gc(t,n){var o=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,o===a)){var f=null,g=null;if(o=o.firstBaseUpdate,o!==null){do{var _={eventTime:o.eventTime,lane:o.lane,tag:o.tag,payload:o.payload,callback:o.callback,next:null};g===null?f=g=_:g=g.next=_,o=o.next}while(o!==null);g===null?f=g=n:g=g.next=n}else f=g=n;o={baseState:a.baseState,firstBaseUpdate:f,lastBaseUpdate:g,shared:a.shared,effects:a.effects},t.updateQueue=o;return}t=o.lastBaseUpdate,t===null?o.firstBaseUpdate=n:t.next=n,o.lastBaseUpdate=n}function pl(t,n,o,a){var f=t.updateQueue;hr=!1;var g=f.firstBaseUpdate,_=f.lastBaseUpdate,x=f.shared.pending;if(x!==null){f.shared.pending=null;var T=x,B=T.next;T.next=null,_===null?g=B:_.next=B,_=T;var ee=t.alternate;ee!==null&&(ee=ee.updateQueue,x=ee.lastBaseUpdate,x!==_&&(x===null?ee.firstBaseUpdate=B:x.next=B,ee.lastBaseUpdate=T))}if(g!==null){var te=f.baseState;_=0,ee=B=T=null,x=g;do{var J=x.lane,pe=x.eventTime;if((a&J)===J){ee!==null&&(ee=ee.next={eventTime:pe,lane:0,tag:x.tag,payload:x.payload,callback:x.callback,next:null});e:{var be=t,Ee=x;switch(J=n,pe=o,Ee.tag){case 1:if(be=Ee.payload,typeof be=="function"){te=be.call(pe,te,J);break e}te=be;break e;case 3:be.flags=be.flags&-65537|128;case 0:if(be=Ee.payload,J=typeof be=="function"?be.call(pe,te,J):be,J==null)break e;te=v({},te,J);break e;case 2:hr=!0}}x.callback!==null&&x.lane!==0&&(t.flags|=64,J=f.effects,J===null?f.effects=[x]:J.push(x))}else pe={eventTime:pe,lane:J,tag:x.tag,payload:x.payload,callback:x.callback,next:null},ee===null?(B=ee=pe,T=te):ee=ee.next=pe,_|=J;if(x=x.next,x===null){if(x=f.shared.pending,x===null)break;J=x,x=J.next,J.next=null,f.lastBaseUpdate=J,f.shared.pending=null}}while(!0);if(ee===null&&(T=te),f.baseState=T,f.firstBaseUpdate=B,f.lastBaseUpdate=ee,n=f.shared.interleaved,n!==null){f=n;do _|=f.lane,f=f.next;while(f!==n)}else g===null&&(f.shared.lanes=0);jr|=_,t.lanes=_,t.memoizedState=te}}function Kc(t,n,o){if(t=n.effects,n.effects=null,t!==null)for(n=0;no?o:4,t(!0);var a=rs.transition;rs.transition={};try{t(!1),n()}finally{Ve=o,rs.transition=a}}function ff(){return mn().memoizedState}function Zg(t,n,o){var a=vr(t);if(o={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null},df(t))pf(n,o);else if(o=Hc(t,n,o,a),o!==null){var f=Ut();Cn(o,t,a,f),mf(o,n,a)}}function Xg(t,n,o){var a=vr(t),f={lane:a,action:o,hasEagerState:!1,eagerState:null,next:null};if(df(t))pf(n,f);else{var g=t.alternate;if(t.lanes===0&&(g===null||g.lanes===0)&&(g=n.lastRenderedReducer,g!==null))try{var _=n.lastRenderedState,x=g(_,o);if(f.hasEagerState=!0,f.eagerState=x,kn(x,_)){var T=n.interleaved;T===null?(f.next=f,Za(n)):(f.next=T.next,T.next=f),n.interleaved=f;return}}catch{}finally{}o=Hc(t,n,f,a),o!==null&&(f=Ut(),Cn(o,t,a,f),mf(o,n,a))}}function df(t){var n=t.alternate;return t===ft||n!==null&&n===ft}function pf(t,n){lo=hl=!0;var o=t.pending;o===null?n.next=n:(n.next=o.next,o.next=n),t.pending=n}function mf(t,n,o){if((o&4194240)!==0){var a=n.lanes;a&=t.pendingLanes,o|=a,n.lanes=o,Bi(t,o)}}var El={readContext:pn,useCallback:It,useContext:It,useEffect:It,useImperativeHandle:It,useInsertionEffect:It,useLayoutEffect:It,useMemo:It,useReducer:It,useRef:It,useState:It,useDebugValue:It,useDeferredValue:It,useTransition:It,useMutableSource:It,useSyncExternalStore:It,useId:It,unstable_isNewReconciler:!1},Jg={readContext:pn,useCallback:function(t,n){return zn().memoizedState=[t,n===void 0?null:n],t},useContext:pn,useEffect:nf,useImperativeHandle:function(t,n,o){return o=o!=null?o.concat([t]):null,yl(4194308,4,lf.bind(null,n,t),o)},useLayoutEffect:function(t,n){return yl(4194308,4,t,n)},useInsertionEffect:function(t,n){return yl(4,2,t,n)},useMemo:function(t,n){var o=zn();return n=n===void 0?null:n,t=t(),o.memoizedState=[t,n],t},useReducer:function(t,n,o){var a=zn();return n=o!==void 0?o(n):n,a.memoizedState=a.baseState=n,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:n},a.queue=t,t=t.dispatch=Zg.bind(null,ft,t),[a.memoizedState,t]},useRef:function(t){var n=zn();return t={current:t},n.memoizedState=t},useState:ef,useDebugValue:cs,useDeferredValue:function(t){return zn().memoizedState=t},useTransition:function(){var t=ef(!1),n=t[0];return t=Qg.bind(null,t[1]),zn().memoizedState=t,[n,t]},useMutableSource:function(){},useSyncExternalStore:function(t,n,o){var a=ft,f=zn();if(at){if(o===void 0)throw Error(r(407));o=o()}else{if(o=n(),Nt===null)throw Error(r(349));(Hr&30)!==0||Yc(a,n,o)}f.memoizedState=o;var g={value:o,getSnapshot:n};return f.queue=g,nf(Zc.bind(null,a,g,t),[t]),a.flags|=2048,uo(9,Qc.bind(null,a,g,o,n),void 0,null),o},useId:function(){var t=zn(),n=Nt.identifierPrefix;if(at){var o=Zn,a=Qn;o=(a&~(1<<32-ut(a)-1)).toString(32)+o,n=":"+n+"R"+o,o=ao++,0<\/script>",t=t.removeChild(t.firstChild)):typeof a.is=="string"?t=_.createElement(o,{is:a.is}):(t=_.createElement(o),o==="select"&&(_=t,a.multiple?_.multiple=!0:a.size&&(_.size=a.size))):t=_.createElementNS(t,o),t[Dn]=n,t[eo]=a,Lf(t,n,!1,!1),n.stateNode=t;e:{switch(_=un(o,a),o){case"dialog":it("cancel",t),it("close",t),f=a;break;case"iframe":case"object":case"embed":it("load",t),f=a;break;case"video":case"audio":for(f=0;fSi&&(n.flags|=128,a=!0,co(g,!1),n.lanes=4194304)}else{if(!a)if(t=ml(_),t!==null){if(n.flags|=128,a=!0,o=t.updateQueue,o!==null&&(n.updateQueue=o,n.flags|=4),co(g,!0),g.tail===null&&g.tailMode==="hidden"&&!_.alternate&&!at)return Mt(n),null}else 2*st()-g.renderingStartTime>Si&&o!==1073741824&&(n.flags|=128,a=!0,co(g,!1),n.lanes=4194304);g.isBackwards?(_.sibling=n.child,n.child=_):(o=g.last,o!==null?o.sibling=_:n.child=_,g.last=_)}return g.tail!==null?(n=g.tail,g.rendering=n,g.tail=n.sibling,g.renderingStartTime=st(),n.sibling=null,o=ct.current,nt(ct,a?o&1|2:o&1),n):(Mt(n),null);case 22:case 23:return Ls(),a=n.memoizedState!==null,t!==null&&t.memoizedState!==null!==a&&(n.flags|=8192),a&&(n.mode&1)!==0?(rn&1073741824)!==0&&(Mt(n),n.subtreeFlags&6&&(n.flags|=8192)):Mt(n),null;case 24:return null;case 25:return null}throw Error(r(156,n.tag))}function ah(t,n){switch(ja(n),n.tag){case 1:return Kt(n.type)&&rl(),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return vi(),ot(Gt),ot(Ot),ns(),t=n.flags,(t&65536)!==0&&(t&128)===0?(n.flags=t&-65537|128,n):null;case 5:return es(n),null;case 13:if(ot(ct),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(r(340));yi()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return ot(ct),null;case 4:return vi(),null;case 10:return Ya(n.type._context),null;case 22:case 23:return Ls(),null;case 24:return null;default:return null}}var wl=!1,Lt=!1,sh=typeof WeakSet=="function"?WeakSet:Set,ye=null;function wi(t,n){var o=t.ref;if(o!==null)if(typeof o=="function")try{o(null)}catch(a){pt(t,n,a)}else o.current=null}function ks(t,n,o){try{o()}catch(a){pt(t,n,a)}}var zf=!1;function uh(t,n){if(La=jo,t=mc(),Na(t)){if("selectionStart"in t)var o={start:t.selectionStart,end:t.selectionEnd};else e:{o=(o=t.ownerDocument)&&o.defaultView||window;var a=o.getSelection&&o.getSelection();if(a&&a.rangeCount!==0){o=a.anchorNode;var f=a.anchorOffset,g=a.focusNode;a=a.focusOffset;try{o.nodeType,g.nodeType}catch{o=null;break e}var _=0,x=-1,T=-1,B=0,ee=0,te=t,J=null;t:for(;;){for(var pe;te!==o||f!==0&&te.nodeType!==3||(x=_+f),te!==g||a!==0&&te.nodeType!==3||(T=_+a),te.nodeType===3&&(_+=te.nodeValue.length),(pe=te.firstChild)!==null;)J=te,te=pe;for(;;){if(te===t)break t;if(J===o&&++B===f&&(x=_),J===g&&++ee===a&&(T=_),(pe=te.nextSibling)!==null)break;te=J,J=te.parentNode}te=pe}o=x===-1||T===-1?null:{start:x,end:T}}else o=null}o=o||{start:0,end:0}}else o=null;for(Da={focusedElem:t,selectionRange:o},jo=!1,ye=n;ye!==null;)if(n=ye,t=n.child,(n.subtreeFlags&1028)!==0&&t!==null)t.return=n,ye=t;else for(;ye!==null;){n=ye;try{var be=n.alternate;if((n.flags&1024)!==0)switch(n.tag){case 0:case 11:case 15:break;case 1:if(be!==null){var Ee=be.memoizedProps,ht=be.memoizedState,D=n.stateNode,O=D.getSnapshotBeforeUpdate(n.elementType===n.type?Ee:xn(n.type,Ee),ht);D.__reactInternalSnapshotBeforeUpdate=O}break;case 3:var F=n.stateNode.containerInfo;F.nodeType===1?F.textContent="":F.nodeType===9&&F.documentElement&&F.removeChild(F.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(r(163))}}catch(le){pt(n,n.return,le)}if(t=n.sibling,t!==null){t.return=n.return,ye=t;break}ye=n.return}return be=zf,zf=!1,be}function fo(t,n,o){var a=n.updateQueue;if(a=a!==null?a.lastEffect:null,a!==null){var f=a=a.next;do{if((f.tag&t)===t){var g=f.destroy;f.destroy=void 0,g!==void 0&&ks(n,o,g)}f=f.next}while(f!==a)}}function xl(t,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var o=n=n.next;do{if((o.tag&t)===t){var a=o.create;o.destroy=a()}o=o.next}while(o!==n)}}function ws(t){var n=t.ref;if(n!==null){var o=t.stateNode;switch(t.tag){case 5:t=o;break;default:t=o}typeof n=="function"?n(t):n.current=t}}function Ff(t){var n=t.alternate;n!==null&&(t.alternate=null,Ff(n)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(n=t.stateNode,n!==null&&(delete n[Dn],delete n[eo],delete n[Ba],delete n[Kg],delete n[Wg])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Bf(t){return t.tag===5||t.tag===3||t.tag===4}function Uf(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Bf(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function xs(t,n,o){var a=t.tag;if(a===5||a===6)t=t.stateNode,n?o.nodeType===8?o.parentNode.insertBefore(t,n):o.insertBefore(t,n):(o.nodeType===8?(n=o.parentNode,n.insertBefore(t,o)):(n=o,n.appendChild(t)),o=o._reactRootContainer,o!=null||n.onclick!==null||(n.onclick=tl));else if(a!==4&&(t=t.child,t!==null))for(xs(t,n,o),t=t.sibling;t!==null;)xs(t,n,o),t=t.sibling}function Ss(t,n,o){var a=t.tag;if(a===5||a===6)t=t.stateNode,n?o.insertBefore(t,n):o.appendChild(t);else if(a!==4&&(t=t.child,t!==null))for(Ss(t,n,o),t=t.sibling;t!==null;)Ss(t,n,o),t=t.sibling}var At=null,Sn=!1;function br(t,n,o){for(o=o.child;o!==null;)$f(t,n,o),o=o.sibling}function $f(t,n,o){if(Be&&typeof Be.onCommitFiberUnmount=="function")try{Be.onCommitFiberUnmount(ze,o)}catch{}switch(o.tag){case 5:Lt||wi(o,n);case 6:var a=At,f=Sn;At=null,br(t,n,o),At=a,Sn=f,At!==null&&(Sn?(t=At,o=o.stateNode,t.nodeType===8?t.parentNode.removeChild(o):t.removeChild(o)):At.removeChild(o.stateNode));break;case 18:At!==null&&(Sn?(t=At,o=o.stateNode,t.nodeType===8?Fa(t.parentNode,o):t.nodeType===1&&Fa(t,o),ji(t)):Fa(At,o.stateNode));break;case 4:a=At,f=Sn,At=o.stateNode.containerInfo,Sn=!0,br(t,n,o),At=a,Sn=f;break;case 0:case 11:case 14:case 15:if(!Lt&&(a=o.updateQueue,a!==null&&(a=a.lastEffect,a!==null))){f=a=a.next;do{var g=f,_=g.destroy;g=g.tag,_!==void 0&&((g&2)!==0||(g&4)!==0)&&ks(o,n,_),f=f.next}while(f!==a)}br(t,n,o);break;case 1:if(!Lt&&(wi(o,n),a=o.stateNode,typeof a.componentWillUnmount=="function"))try{a.props=o.memoizedProps,a.state=o.memoizedState,a.componentWillUnmount()}catch(x){pt(o,n,x)}br(t,n,o);break;case 21:br(t,n,o);break;case 22:o.mode&1?(Lt=(a=Lt)||o.memoizedState!==null,br(t,n,o),Lt=a):br(t,n,o);break;default:br(t,n,o)}}function Hf(t){var n=t.updateQueue;if(n!==null){t.updateQueue=null;var o=t.stateNode;o===null&&(o=t.stateNode=new sh),n.forEach(function(a){var f=bh.bind(null,t,a);o.has(a)||(o.add(a),a.then(f,f))})}}function Nn(t,n){var o=n.deletions;if(o!==null)for(var a=0;af&&(f=_),a&=~g}if(a=f,a=st()-a,a=(120>a?120:480>a?480:1080>a?1080:1920>a?1920:3e3>a?3e3:4320>a?4320:1960*fh(a/1960))-a,10t?16:t,_r===null)var a=!1;else{if(t=_r,_r=null,Al=0,(qe&6)!==0)throw Error(r(331));var f=qe;for(qe|=4,ye=t.current;ye!==null;){var g=ye,_=g.child;if((ye.flags&16)!==0){var x=g.deletions;if(x!==null){for(var T=0;Tst()-Ts?Kr(t,0):Cs|=o),qt(t,n)}function td(t,n){n===0&&((t.mode&1)===0?n=1:(n=Ir,Ir<<=1,(Ir&130023424)===0&&(Ir=4194304)));var o=Ut();t=Xn(t,n),t!==null&&(sr(t,n,o),qt(t,o))}function yh(t){var n=t.memoizedState,o=0;n!==null&&(o=n.retryLane),td(t,o)}function bh(t,n){var o=0;switch(t.tag){case 13:var a=t.stateNode,f=t.memoizedState;f!==null&&(o=f.retryLane);break;case 19:a=t.stateNode;break;default:throw Error(r(314))}a!==null&&a.delete(n),td(t,o)}var nd;nd=function(t,n,o){if(t!==null)if(t.memoizedProps!==n.pendingProps||Gt.current)Wt=!0;else{if((t.lanes&o)===0&&(n.flags&128)===0)return Wt=!1,oh(t,n,o);Wt=(t.flags&131072)!==0}else Wt=!1,at&&(n.flags&1048576)!==0&&Lc(n,al,n.index);switch(n.lanes=0,n.tag){case 2:var a=n.type;kl(t,n),t=n.pendingProps;var f=mi(n,Ot.current);_i(n,o),f=os(null,n,a,t,f,o);var g=ls();return n.flags|=1,typeof f=="object"&&f!==null&&typeof f.render=="function"&&f.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,Kt(a)?(g=!0,il(n)):g=!1,n.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,Xa(n),f.updater=_l,n.stateNode=f,f._reactInternals=n,ds(n,a,t,o),n=hs(null,n,a,!0,g,o)):(n.tag=0,at&&g&&Ha(n),Bt(null,n,f,o),n=n.child),n;case 16:a=n.elementType;e:{switch(kl(t,n),t=n.pendingProps,f=a._init,a=f(a._payload),n.type=a,f=n.tag=_h(a),t=xn(a,t),f){case 0:n=gs(null,n,a,t,o);break e;case 1:n=Tf(null,n,a,t,o);break e;case 11:n=wf(null,n,a,t,o);break e;case 14:n=xf(null,n,a,xn(a.type,t),o);break e}throw Error(r(306,a,""))}return n;case 0:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),gs(t,n,a,f,o);case 1:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),Tf(t,n,a,f,o);case 3:e:{if(Af(n),t===null)throw Error(r(387));a=n.pendingProps,g=n.memoizedState,f=g.element,jc(t,n),pl(n,a,null,o);var _=n.memoizedState;if(a=_.element,g.isDehydrated)if(g={element:a,isDehydrated:!1,cache:_.cache,pendingSuspenseBoundaries:_.pendingSuspenseBoundaries,transitions:_.transitions},n.updateQueue.baseState=g,n.memoizedState=g,n.flags&256){f=ki(Error(r(423)),n),n=Rf(t,n,a,o,f);break e}else if(a!==f){f=ki(Error(r(424)),n),n=Rf(t,n,a,o,f);break e}else for(nn=dr(n.stateNode.containerInfo.firstChild),tn=n,at=!0,wn=null,o=$c(n,null,a,o),n.child=o;o;)o.flags=o.flags&-3|4096,o=o.sibling;else{if(yi(),a===f){n=er(t,n,o);break e}Bt(t,n,a,o)}n=n.child}return n;case 5:return Wc(n),t===null&&Ka(n),a=n.type,f=n.pendingProps,g=t!==null?t.memoizedProps:null,_=f.children,Pa(a,f)?_=null:g!==null&&Pa(a,g)&&(n.flags|=32),Cf(t,n),Bt(t,n,_,o),n.child;case 6:return t===null&&Ka(n),null;case 13:return Of(t,n,o);case 4:return Ja(n,n.stateNode.containerInfo),a=n.pendingProps,t===null?n.child=bi(n,null,a,o):Bt(t,n,a,o),n.child;case 11:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),wf(t,n,a,f,o);case 7:return Bt(t,n,n.pendingProps,o),n.child;case 8:return Bt(t,n,n.pendingProps.children,o),n.child;case 12:return Bt(t,n,n.pendingProps.children,o),n.child;case 10:e:{if(a=n.type._context,f=n.pendingProps,g=n.memoizedProps,_=f.value,nt(cl,a._currentValue),a._currentValue=_,g!==null)if(kn(g.value,_)){if(g.children===f.children&&!Gt.current){n=er(t,n,o);break e}}else for(g=n.child,g!==null&&(g.return=n);g!==null;){var x=g.dependencies;if(x!==null){_=g.child;for(var T=x.firstContext;T!==null;){if(T.context===a){if(g.tag===1){T=Jn(-1,o&-o),T.tag=2;var B=g.updateQueue;if(B!==null){B=B.shared;var ee=B.pending;ee===null?T.next=T:(T.next=ee.next,ee.next=T),B.pending=T}}g.lanes|=o,T=g.alternate,T!==null&&(T.lanes|=o),Qa(g.return,o,n),x.lanes|=o;break}T=T.next}}else if(g.tag===10)_=g.type===n.type?null:g.child;else if(g.tag===18){if(_=g.return,_===null)throw Error(r(341));_.lanes|=o,x=_.alternate,x!==null&&(x.lanes|=o),Qa(_,o,n),_=g.sibling}else _=g.child;if(_!==null)_.return=g;else for(_=g;_!==null;){if(_===n){_=null;break}if(g=_.sibling,g!==null){g.return=_.return,_=g;break}_=_.return}g=_}Bt(t,n,f.children,o),n=n.child}return n;case 9:return f=n.type,a=n.pendingProps.children,_i(n,o),f=pn(f),a=a(f),n.flags|=1,Bt(t,n,a,o),n.child;case 14:return a=n.type,f=xn(a,n.pendingProps),f=xn(a.type,f),xf(t,n,a,f,o);case 15:return Sf(t,n,n.type,n.pendingProps,o);case 17:return a=n.type,f=n.pendingProps,f=n.elementType===a?f:xn(a,f),kl(t,n),n.tag=1,Kt(a)?(t=!0,il(n)):t=!1,_i(n,o),hf(n,a,f),ds(n,a,f,o),hs(null,n,a,!0,t,o);case 19:return Mf(t,n,o);case 22:return Nf(t,n,o)}throw Error(r(156,n.tag))};function rd(t,n){return zo(t,n)}function Eh(t,n,o,a){this.tag=t,this.key=o,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function hn(t,n,o,a){return new Eh(t,n,o,a)}function Ps(t){return t=t.prototype,!(!t||!t.isReactComponent)}function _h(t){if(typeof t=="function")return Ps(t)?1:0;if(t!=null){if(t=t.$$typeof,t===Y)return 11;if(t===$)return 14}return 2}function wr(t,n){var o=t.alternate;return o===null?(o=hn(t.tag,n,t.key,t.mode),o.elementType=t.elementType,o.type=t.type,o.stateNode=t.stateNode,o.alternate=t,t.alternate=o):(o.pendingProps=n,o.type=t.type,o.flags=0,o.subtreeFlags=0,o.deletions=null),o.flags=t.flags&14680064,o.childLanes=t.childLanes,o.lanes=t.lanes,o.child=t.child,o.memoizedProps=t.memoizedProps,o.memoizedState=t.memoizedState,o.updateQueue=t.updateQueue,n=t.dependencies,o.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},o.sibling=t.sibling,o.index=t.index,o.ref=t.ref,o}function Ml(t,n,o,a,f,g){var _=2;if(a=t,typeof t=="function")Ps(t)&&(_=1);else if(typeof t=="string")_=5;else e:switch(t){case q:return Vr(o.children,f,g,n);case ne:_=8,f|=8;break;case X:return t=hn(12,o,n,f|2),t.elementType=X,t.lanes=g,t;case re:return t=hn(13,o,n,f),t.elementType=re,t.lanes=g,t;case Z:return t=hn(19,o,n,f),t.elementType=Z,t.lanes=g,t;case P:return Ll(o,f,g,n);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case I:_=10;break e;case K:_=9;break e;case Y:_=11;break e;case $:_=14;break e;case se:_=16,a=null;break e}throw Error(r(130,t==null?t:typeof t,""))}return n=hn(_,o,n,f),n.elementType=t,n.type=a,n.lanes=g,n}function Vr(t,n,o,a){return t=hn(7,t,a,n),t.lanes=o,t}function Ll(t,n,o,a){return t=hn(22,t,a,n),t.elementType=P,t.lanes=o,t.stateNode={isHidden:!1},t}function zs(t,n,o){return t=hn(6,t,null,n),t.lanes=o,t}function Fs(t,n,o){return n=hn(4,t.children!==null?t.children:[],t.key,n),n.lanes=o,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}function vh(t,n,o,a,f){this.tag=n,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ar(0),this.expirationTimes=ar(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ar(0),this.identifierPrefix=a,this.onRecoverableError=f,this.mutableSourceEagerHydrationData=null}function Bs(t,n,o,a,f,g,_,x,T){return t=new vh(t,n,o,x,T),n===1?(n=1,g===!0&&(n|=8)):n=0,g=hn(3,null,null,n),t.current=g,g.stateNode=t,g.memoizedState={element:a,isDehydrated:o,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xa(g),t}function kh(t,n,o){var a=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(i){console.error(i)}}return e(),Ks.exports=Ph(),Ks.exports}var yd;function Fh(){if(yd)return $l;yd=1;var e=zh();return $l.createRoot=e.createRoot,$l.hydrateRoot=e.hydrateRoot,$l}var Bh=Fh();const Uh=Ao(Bh);class $h{constructor(){Ci(this,"ws",null);Ci(this,"handlers",new Set);Ci(this,"queue",[]);Ci(this,"closedByUser",!1);Ci(this,"onStatus")}connect(){var l;this.closedByUser=!1,(l=this.onStatus)==null||l.call(this,"connecting");const i=location.protocol==="https:"?"wss:":"ws:",r=new WebSocket(`${i}//${location.host}/ws`);r.onopen=()=>{var s;(s=this.onStatus)==null||s.call(this,"open");for(const c of this.queue)r.send(c);this.queue=[]},r.onmessage=s=>{try{const c=JSON.parse(s.data);for(const u of this.handlers)u(c)}catch{}},r.onclose=()=>{var s;(s=this.onStatus)==null||s.call(this,"closed"),this.closedByUser||setTimeout(()=>this.connect(),1500)},this.ws=r}send(i){var l;const r=JSON.stringify(i);((l=this.ws)==null?void 0:l.readyState)===WebSocket.OPEN?this.ws.send(r):this.queue.push(r)}close(){var i;this.closedByUser=!0,(i=this.ws)==null||i.close()}subscribe(i){return this.handlers.add(i),()=>this.handlers.delete(i)}}const xp="oxagenttwo.options",bd="oxagenttwo.session",Ed="oxagenttwo.systemPrompt";function Hh(){const e={model:"qwen3.5:latest",think:!0,tools:!0,temperature:.7,numPredict:2048,provider:"ollama",openrouterModel:"anthropic/claude-sonnet-4.5",memorySteps:10,memoryAnchors:!0,dreamAuto:!0};try{const i=localStorage.getItem(xp);if(i)return{...e,...JSON.parse(i)}}catch{}return e}function jh(){const e=fe.useRef(null),[i,r]=fe.useState("connecting"),[l,s]=fe.useState([]),[c,u]=fe.useState(()=>localStorage.getItem(bd)),[d,p]=fe.useState([]),[m,y]=fe.useState(!1),[h,b]=fe.useState({}),[E,w]=fe.useState(Hh),[S,R]=fe.useState(()=>localStorage.getItem(Ed)??""),[N,L]=fe.useState(null),z=fe.useRef(!1);fe.useEffect(()=>{const K=new $h;e.current=K,K.onStatus=r;const Y=K.subscribe(re=>{const Z=re.type;if(Z==="user-message"){const $=re.message;p(se=>se.some(P=>P.id===$.id)?se:[...se,$]),u(se=>se===$.session_id?se:$.session_id)}else if(Z==="assistant-start"){const $=re.message;p(se=>[...se,{...$,content:"",thinking:""}])}else if(Z==="thinking"){const $=re.text;p(se=>se.map(P=>P.id===re.messageId?{...P,thinking:(P.thinking??"")+$}:P))}else if(Z==="token"){const $=re.text;p(se=>se.map(P=>P.id===re.messageId?{...P,content:P.content+$}:P))}else Z==="tool-call"?b($=>({...$,[re.messageId]:[...$[re.messageId]??[],{name:re.name,args:re.args}]})):Z==="tool-result"?b($=>{const se=$[re.messageId]??[],P=[...se].reverse().findIndex(v=>v.name===re.name&&v.ok===void 0);if(P===-1)return $;const G=se.length-1-P,ue=se.map((v,A)=>A===G?{...v,ok:re.ok,durationMs:re.durationMs}:v);return{...$,[re.messageId]:ue}}):Z==="done"||Z==="error"?(z.current=!1,y(!1)):(Z==="sessions-changed"||Z==="session-deleted")&&W()});return K.connect(),()=>{Y(),K.close()}},[]);const W=fe.useCallback(async()=>{const Y=await(await fetch("/api/sessions")).json();s(Y),u(re=>{var Z;return re&&Y.some($=>$.id===re)?re:((Z=Y[0])==null?void 0:Z.id)??null})},[]);fe.useEffect(()=>{W()},[W]),fe.useEffect(()=>{fetch(`/api/model?name=${encodeURIComponent(E.model)}`).then(K=>K.json()).then(L).catch(()=>L({ok:!1,error:"Ollama nicht erreichbar"}))},[E.model]),fe.useEffect(()=>{if(!c){p([]);return}localStorage.setItem(bd,c),z.current=!1,y(!1),fetch(`/api/sessions/${c}/messages`).then(K=>K.json()).then(K=>p(Array.isArray(K)?K:[])).catch(()=>p([]))},[c]);const Q=fe.useCallback(K=>{w(Y=>{const re={...Y,...K};return localStorage.setItem(xp,JSON.stringify(re)),re})},[]),M=fe.useCallback(K=>{R(K),localStorage.setItem(Ed,K)},[]),q=fe.useCallback((K,Y=[])=>{var re;!K.trim()&&Y.length===0||z.current||!c||(z.current=!0,y(!0),(re=e.current)==null||re.send({type:"chat",sessionId:c,content:K,images:Y,options:E,systemPrompt:S}))},[c,E,S]),ne=fe.useCallback(()=>{var K;(K=e.current)==null||K.send({type:"abort"})},[]),X=fe.useCallback(async()=>{const Y=await(await fetch("/api/sessions",{method:"POST"})).json();await W(),u(Y.id)},[W]),I=fe.useCallback(async K=>{await fetch(`/api/sessions/${K}`,{method:"DELETE"}),s(Y=>Y.filter(re=>re.id!==K)),u(Y=>Y===K?null:Y),await W()},[W]);return{status:i,sessions:l,activeId:c,setActiveId:u,messages:d,streaming:m,toolEvents:h,sendMessage:q,abort:ne,newSession:X,deleteSession:I,options:E,setOptions:Q,systemPrompt:S,setSystemPrompt:M,modelInfo:N}}function Gh({onTranscript:e,onQueueDrained:i}){const[r,l]=fe.useState(!1),[s,c]=fe.useState(!1),[u,d]=fe.useState(!1),[p,m]=fe.useState(null),y=fe.useRef(null),h=fe.useRef([]),b=fe.useRef(null),E=fe.useRef(null),w=fe.useRef([]),S=fe.useRef(null),R=fe.useRef(!1),N=fe.useRef(null),L=fe.useRef(i);L.current=i;const z=fe.useRef(e);z.current=e;const W=fe.useCallback(async()=>{if(R.current)return;const X=w.current.shift();if(X===void 0){d(!1),L.current();return}R.current=!0,d(!0);try{N.current=new AbortController;const I=await fetch("/api/tts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({text:X}),signal:N.current.signal});if(!I.ok)throw new Error(`TTS HTTP ${I.status}`);const K=await I.blob(),Y=new Audio(URL.createObjectURL(K));S.current=Y,await new Promise(re=>{Y.onended=()=>re(),Y.onerror=()=>re(),Y.play().catch(()=>re())}),URL.revokeObjectURL(Y.src)}catch(I){I instanceof DOMException&&I.name==="AbortError"||m(I instanceof Error?I.message:String(I))}finally{R.current=!1,N.current=null,W()}},[]),Q=fe.useCallback(X=>{const I=X.trim();I&&(w.current.push(I),W())},[W]),M=fe.useCallback(()=>{var X;w.current=[],(X=N.current)==null||X.abort(),S.current&&(S.current.pause(),S.current.src=""),R.current=!1,d(!1)},[]),q=fe.useCallback(()=>{var X;E.current&&clearTimeout(E.current),E.current=null,((X=y.current)==null?void 0:X.state)==="recording"&&y.current.stop()},[]),ne=fe.useCallback(async()=>{var X;if(((X=y.current)==null?void 0:X.state)!=="recording"){m(null);try{const I=await navigator.mediaDevices.getUserMedia({audio:!0});b.current=I;const K=new MediaRecorder(I);h.current=[],K.ondataavailable=Y=>{Y.data.size>0&&h.current.push(Y.data)},K.onstop=async()=>{var re,Z;(re=b.current)==null||re.getTracks().forEach($=>$.stop()),b.current=null,l(!1);const Y=new Blob(h.current);if(h.current=[],!(Y.size<2e3)){c(!0);try{const se=await(await fetch("/api/stt",{method:"POST",headers:{"Content-Type":"application/octet-stream"},body:Y})).json();if(!se.ok)throw new Error(se.error??"STT fehlgeschlagen");const P=(Z=se.text)==null?void 0:Z.trim();P?z.current(P):m("Nichts verstanden — bitte nochmal sprechen.")}catch($){m($ instanceof Error?$.message:String($))}finally{c(!1)}}},y.current=K,K.start(),l(!0),E.current=setTimeout(()=>q(),3e4)}catch(I){m(I instanceof Error?I.message:String(I))}}},[e,q]);return fe.useEffect(()=>()=>{var X,I;((X=y.current)==null?void 0:X.state)==="recording"&&y.current.stop(),(I=b.current)==null||I.getTracks().forEach(K=>K.stop()),M()},[]),{recording:r,transcribing:s,speaking:u,error:p,setError:m,startRecording:ne,stopRecording:q,enqueueSpeech:Q,cancelSpeech:M}}function Kh({sessions:e,activeId:i,onSelect:r,onNew:l,onDelete:s}){return H.jsxs("aside",{className:"sidebar",children:[H.jsxs("div",{className:"sidebar-header",children:[H.jsxs("div",{className:"brand",children:[H.jsx("span",{className:"brand-prompt",children:"▸"})," agenttwo-tools"]}),H.jsx("button",{className:"btn-new",onClick:l,children:"+ Neuer Chat"})]}),H.jsxs("nav",{className:"session-list",children:[e.length===0&&H.jsx("div",{className:"empty-hint",children:"Noch keine Sessions."}),e.map(c=>H.jsxs("div",{className:`session-item ${c.id===i?"active":""}`,onClick:()=>r(c.id),children:[H.jsx("span",{className:"session-title",children:c.title}),H.jsx("button",{className:"session-delete",title:"Session löschen",onClick:u=>{u.stopPropagation(),s(c.id)},children:"✕"})]},c.id))]})]})}function Wh(e,i){const r={};return(e[e.length-1]===""?[...e,""]:e).join((r.padRight?" ":"")+","+(r.padLeft===!1?"":" ")).trim()}const Vh=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qh=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Yh={};function _d(e,i){return(Yh.jsx?qh:Vh).test(e)}const Qh=/[ \t\n\f\r]/g;function Zh(e){return typeof e=="object"?e.type==="text"?vd(e.value):!1:vd(e)}function vd(e){return e.replace(Qh,"")===""}class Ro{constructor(i,r,l){this.normal=r,this.property=i,l&&(this.space=l)}}Ro.prototype.normal={};Ro.prototype.property={};Ro.prototype.space=void 0;function Sp(e,i){const r={},l={};for(const s of e)Object.assign(r,s.property),Object.assign(l,s.normal);return new Ro(r,l,i)}function mu(e){return e.toLowerCase()}class Zt{constructor(i,r){this.attribute=r,this.property=i}}Zt.prototype.attribute="";Zt.prototype.booleanish=!1;Zt.prototype.boolean=!1;Zt.prototype.commaOrSpaceSeparated=!1;Zt.prototype.commaSeparated=!1;Zt.prototype.defined=!1;Zt.prototype.mustUseProperty=!1;Zt.prototype.number=!1;Zt.prototype.overloadedBoolean=!1;Zt.prototype.property="";Zt.prototype.spaceSeparated=!1;Zt.prototype.space=void 0;let Xh=0;const Le=Xr(),Et=Xr(),gu=Xr(),ie=Xr(),Je=Xr(),Qr=Xr(),on=Xr();function Xr(){return 2**++Xh}const hu=Object.freeze(Object.defineProperty({__proto__:null,boolean:Le,booleanish:Et,commaOrSpaceSeparated:on,commaSeparated:Qr,number:ie,overloadedBoolean:gu,spaceSeparated:Je},Symbol.toStringTag,{value:"Module"})),qs=Object.keys(hu);class Cu extends Zt{constructor(i,r,l,s){let c=-1;if(super(i,r),kd(this,"space",s),typeof l=="number")for(;++c4&&r.slice(0,4)==="data"&&ry.test(i)){if(i.charAt(4)==="-"){const c=i.slice(5).replace(wd,ly);l="data"+c.charAt(0).toUpperCase()+c.slice(1)}else{const c=i.slice(4);if(!wd.test(c)){let u=c.replace(ny,oy);u.charAt(0)!=="-"&&(u="-"+u),i="data"+u}}s=Cu}return new s(l,i)}function oy(e){return"-"+e.toLowerCase()}function ly(e){return e.charAt(1).toUpperCase()}const ay=Sp([Np,Jh,Ap,Rp,Op],"html"),Tu=Sp([Np,ey,Ap,Rp,Op],"svg");function sy(e){return e.join(" ").trim()}var Ti={},Ys,xd;function uy(){if(xd)return Ys;xd=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,i=/\n/g,r=/^\s*/,l=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,s=/^:\s*/,c=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,u=/^[;\s]*/,d=/^\s+|\s+$/g,p=` +`,m="/",y="*",h="",b="comment",E="declaration";function w(R,N){if(typeof R!="string")throw new TypeError("First argument must be a string");if(!R)return[];N=N||{};var L=1,z=1;function W(Z){var $=Z.match(i);$&&(L+=$.length);var se=Z.lastIndexOf(p);z=~se?Z.length-se:z+Z.length}function Q(){var Z={line:L,column:z};return function($){return $.position=new M(Z),X(),$}}function M(Z){this.start=Z,this.end={line:L,column:z},this.source=N.source}M.prototype.content=R;function q(Z){var $=new Error(N.source+":"+L+":"+z+": "+Z);if($.reason=Z,$.filename=N.source,$.line=L,$.column=z,$.source=R,!N.silent)throw $}function ne(Z){var $=Z.exec(R);if($){var se=$[0];return W(se),R=R.slice(se.length),$}}function X(){ne(r)}function I(Z){var $;for(Z=Z||[];$=K();)$!==!1&&Z.push($);return Z}function K(){var Z=Q();if(!(m!=R.charAt(0)||y!=R.charAt(1))){for(var $=2;h!=R.charAt($)&&(y!=R.charAt($)||m!=R.charAt($+1));)++$;if($+=2,h===R.charAt($-1))return q("End of comment missing");var se=R.slice(2,$-2);return z+=2,W(se),R=R.slice($),z+=2,Z({type:b,comment:se})}}function Y(){var Z=Q(),$=ne(l);if($){if(K(),!ne(s))return q("property missing ':'");var se=ne(c),P=Z({type:E,property:S($[0].replace(e,h)),value:se?S(se[0].replace(e,h)):h});return ne(u),P}}function re(){var Z=[];I(Z);for(var $;$=Y();)$!==!1&&(Z.push($),I(Z));return Z}return X(),re()}function S(R){return R?R.replace(d,h):h}return Ys=w,Ys}var Sd;function cy(){if(Sd)return Ti;Sd=1;var e=Ti&&Ti.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(Ti,"__esModule",{value:!0}),Ti.default=r;const i=e(uy());function r(l,s){let c=null;if(!l||typeof l!="string")return c;const u=(0,i.default)(l),d=typeof s=="function";return u.forEach(p=>{if(p.type!=="declaration")return;const{property:m,value:y}=p;d?s(m,y,p):y&&(c=c||{},c[m]=y)}),c}return Ti}var bo={},Nd;function fy(){if(Nd)return bo;Nd=1,Object.defineProperty(bo,"__esModule",{value:!0}),bo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,i=/-([a-z])/g,r=/^[^-]+$/,l=/^-(webkit|moz|ms|o|khtml)-/,s=/^-(ms)-/,c=function(m){return!m||r.test(m)||e.test(m)},u=function(m,y){return y.toUpperCase()},d=function(m,y){return"".concat(y,"-")},p=function(m,y){return y===void 0&&(y={}),c(m)?m:(m=m.toLowerCase(),y.reactCompat?m=m.replace(s,d):m=m.replace(l,d),m.replace(i,u))};return bo.camelCase=p,bo}var Eo,Cd;function dy(){if(Cd)return Eo;Cd=1;var e=Eo&&Eo.__importDefault||function(s){return s&&s.__esModule?s:{default:s}},i=e(cy()),r=fy();function l(s,c){var u={};return!s||typeof s!="string"||(0,i.default)(s,function(d,p){d&&p&&(u[(0,r.camelCase)(d,c)]=p)}),u}return l.default=l,Eo=l,Eo}var py=dy();const my=Ao(py),Ip=Mp("end"),Au=Mp("start");function Mp(e){return i;function i(r){const l=r&&r.position&&r.position[e]||{};if(typeof l.line=="number"&&l.line>0&&typeof l.column=="number"&&l.column>0)return{line:l.line,column:l.column,offset:typeof l.offset=="number"&&l.offset>-1?l.offset:void 0}}}function gy(e){const i=Au(e),r=Ip(e);if(i&&r)return{start:i,end:r}}function xo(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Td(e.position):"start"in e||"end"in e?Td(e):"line"in e||"column"in e?yu(e):""}function yu(e){return Ad(e&&e.line)+":"+Ad(e&&e.column)}function Td(e){return yu(e&&e.start)+"-"+yu(e&&e.end)}function Ad(e){return e&&typeof e=="number"?e:1}class Pt extends Error{constructor(i,r,l){super(),typeof r=="string"&&(l=r,r=void 0);let s="",c={},u=!1;if(r&&("line"in r&&"column"in r?c={place:r}:"start"in r&&"end"in r?c={place:r}:"type"in r?c={ancestors:[r],place:r.position}:c={...r}),typeof i=="string"?s=i:!c.cause&&i&&(u=!0,s=i.message,c.cause=i),!c.ruleId&&!c.source&&typeof l=="string"){const p=l.indexOf(":");p===-1?c.ruleId=l:(c.source=l.slice(0,p),c.ruleId=l.slice(p+1))}if(!c.place&&c.ancestors&&c.ancestors){const p=c.ancestors[c.ancestors.length-1];p&&(c.place=p.position)}const d=c.place&&"start"in c.place?c.place.start:c.place;this.ancestors=c.ancestors||void 0,this.cause=c.cause||void 0,this.column=d?d.column:void 0,this.fatal=void 0,this.file="",this.message=s,this.line=d?d.line:void 0,this.name=xo(c.place)||"1:1",this.place=c.place||void 0,this.reason=this.message,this.ruleId=c.ruleId||void 0,this.source=c.source||void 0,this.stack=u&&c.cause&&typeof c.cause.stack=="string"?c.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Pt.prototype.file="";Pt.prototype.name="";Pt.prototype.reason="";Pt.prototype.message="";Pt.prototype.stack="";Pt.prototype.column=void 0;Pt.prototype.line=void 0;Pt.prototype.ancestors=void 0;Pt.prototype.cause=void 0;Pt.prototype.fatal=void 0;Pt.prototype.place=void 0;Pt.prototype.ruleId=void 0;Pt.prototype.source=void 0;const Ru={}.hasOwnProperty,hy=new Map,yy=/[A-Z]/g,by=new Set(["table","tbody","thead","tfoot","tr"]),Ey=new Set(["td","th"]),Lp="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function _y(e,i){if(!i||i.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=i.filePath||void 0;let l;if(i.development){if(typeof i.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");l=Ty(r,i.jsxDEV)}else{if(typeof i.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof i.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");l=Cy(r,i.jsx,i.jsxs)}const s={Fragment:i.Fragment,ancestors:[],components:i.components||{},create:l,elementAttributeNameCase:i.elementAttributeNameCase||"react",evaluater:i.createEvaluater?i.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:i.ignoreInvalidStyle||!1,passKeys:i.passKeys!==!1,passNode:i.passNode||!1,schema:i.space==="svg"?Tu:ay,stylePropertyNameCase:i.stylePropertyNameCase||"dom",tableCellAlignToStyle:i.tableCellAlignToStyle!==!1},c=Dp(s,e,void 0);return c&&typeof c!="string"?c:s.create(e,s.Fragment,{children:c||void 0},void 0)}function Dp(e,i,r){if(i.type==="element")return vy(e,i,r);if(i.type==="mdxFlowExpression"||i.type==="mdxTextExpression")return ky(e,i);if(i.type==="mdxJsxFlowElement"||i.type==="mdxJsxTextElement")return xy(e,i,r);if(i.type==="mdxjsEsm")return wy(e,i);if(i.type==="root")return Sy(e,i,r);if(i.type==="text")return Ny(e,i)}function vy(e,i,r){const l=e.schema;let s=l;i.tagName.toLowerCase()==="svg"&&l.space==="html"&&(s=Tu,e.schema=s),e.ancestors.push(i);const c=zp(e,i.tagName,!1),u=Ay(e,i);let d=Iu(e,i);return by.has(i.tagName)&&(d=d.filter(function(p){return typeof p=="string"?!Zh(p):!0})),Pp(e,u,c,i),Ou(u,d),e.ancestors.pop(),e.schema=l,e.create(i,c,u,r)}function ky(e,i){if(i.data&&i.data.estree&&e.evaluater){const l=i.data.estree.body[0];return l.type,e.evaluater.evaluateExpression(l.expression)}Co(e,i.position)}function wy(e,i){if(i.data&&i.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(i.data.estree);Co(e,i.position)}function xy(e,i,r){const l=e.schema;let s=l;i.name==="svg"&&l.space==="html"&&(s=Tu,e.schema=s),e.ancestors.push(i);const c=i.name===null?e.Fragment:zp(e,i.name,!0),u=Ry(e,i),d=Iu(e,i);return Pp(e,u,c,i),Ou(u,d),e.ancestors.pop(),e.schema=l,e.create(i,c,u,r)}function Sy(e,i,r){const l={};return Ou(l,Iu(e,i)),e.create(i,e.Fragment,l,r)}function Ny(e,i){return i.value}function Pp(e,i,r,l){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(i.node=l)}function Ou(e,i){if(i.length>0){const r=i.length>1?i:i[0];r&&(e.children=r)}}function Cy(e,i,r){return l;function l(s,c,u,d){const m=Array.isArray(u.children)?r:i;return d?m(c,u,d):m(c,u)}}function Ty(e,i){return r;function r(l,s,c,u){const d=Array.isArray(c.children),p=Au(l);return i(s,c,u,d,{columnNumber:p?p.column-1:void 0,fileName:e,lineNumber:p?p.line:void 0},void 0)}}function Ay(e,i){const r={};let l,s;for(s in i.properties)if(s!=="children"&&Ru.call(i.properties,s)){const c=Oy(e,s,i.properties[s]);if(c){const[u,d]=c;e.tableCellAlignToStyle&&u==="align"&&typeof d=="string"&&Ey.has(i.tagName)?l=d:r[u]=d}}if(l){const c=r.style||(r.style={});c[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=l}return r}function Ry(e,i){const r={};for(const l of i.attributes)if(l.type==="mdxJsxExpressionAttribute")if(l.data&&l.data.estree&&e.evaluater){const c=l.data.estree.body[0];c.type;const u=c.expression;u.type;const d=u.properties[0];d.type,Object.assign(r,e.evaluater.evaluateExpression(d.argument))}else Co(e,i.position);else{const s=l.name;let c;if(l.value&&typeof l.value=="object")if(l.value.data&&l.value.data.estree&&e.evaluater){const d=l.value.data.estree.body[0];d.type,c=e.evaluater.evaluateExpression(d.expression)}else Co(e,i.position);else c=l.value===null?!0:l.value;r[s]=c}return r}function Iu(e,i){const r=[];let l=-1;const s=e.passKeys?new Map:hy;for(;++ls?0:s+i:i=i>s?s:i,r=r>0?r:0,l.length<1e4)u=Array.from(l),u.unshift(i,r),e.splice(...u);else for(r&&e.splice(i,r);c0?(ln(e,e.length,0,i),e):i}const Id={}.hasOwnProperty;function Bp(e){const i={};let r=-1;for(;++r13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function Tn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Ht=Nr(/[A-Za-z]/),Dt=Nr(/[\dA-Za-z]/),Uy=Nr(/[#-'*+\--9=?A-Z^-~]/);function Xl(e){return e!==null&&(e<32||e===127)}const bu=Nr(/\d/),$y=Nr(/[\dA-Fa-f]/),Hy=Nr(/[!-/:-@[-`{-~]/);function Ce(e){return e!==null&&e<-2}function et(e){return e!==null&&(e<0||e===32)}function Ue(e){return e===-2||e===-1||e===32}const ia=Nr(new RegExp("\\p{P}|\\p{S}","u")),Zr=Nr(/\s/);function Nr(e){return i;function i(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function Li(e){const i=[];let r=-1,l=0,s=0;for(;++r55295&&c<57344){const d=e.charCodeAt(r+1);c<56320&&d>56319&&d<57344?(u=String.fromCharCode(c,d),s=1):u="�"}else u=String.fromCharCode(c);u&&(i.push(e.slice(l,r),encodeURIComponent(u)),l=r+s+1,u=""),s&&(r+=s,s=0)}return i.join("")+e.slice(l)}function We(e,i,r,l){const s=l?l-1:Number.POSITIVE_INFINITY;let c=0;return u;function u(p){return Ue(p)?(e.enter(r),d(p)):i(p)}function d(p){return Ue(p)&&c++u))return;const q=i.events.length;let ne=q,X,I;for(;ne--;)if(i.events[ne][0]==="exit"&&i.events[ne][1].type==="chunkFlow"){if(X){I=i.events[ne][1].end;break}X=!0}for(N(l),M=q;Mz;){const Q=r[W];i.containerState=Q[1],Q[0].exit.call(i,e)}r.length=z}function L(){s.write([null]),c=void 0,s=void 0,i.containerState._closeFlow=void 0}}function Vy(e,i,r){return We(e,e.attempt(this.parser.constructs.document,i,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ii(e){if(e===null||et(e)||Zr(e))return 1;if(ia(e))return 2}function oa(e,i,r){const l=[];let s=-1;for(;++s1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const h={...e[l][1].end},b={...e[r][1].start};Ld(h,-p),Ld(b,p),u={type:p>1?"strongSequence":"emphasisSequence",start:h,end:{...e[l][1].end}},d={type:p>1?"strongSequence":"emphasisSequence",start:{...e[r][1].start},end:b},c={type:p>1?"strongText":"emphasisText",start:{...e[l][1].end},end:{...e[r][1].start}},s={type:p>1?"strong":"emphasis",start:{...u.start},end:{...d.end}},e[l][1].end={...u.start},e[r][1].start={...d.end},m=[],e[l][1].end.offset-e[l][1].start.offset&&(m=yn(m,[["enter",e[l][1],i],["exit",e[l][1],i]])),m=yn(m,[["enter",s,i],["enter",u,i],["exit",u,i],["enter",c,i]]),m=yn(m,oa(i.parser.constructs.insideSpan.null,e.slice(l+1,r),i)),m=yn(m,[["exit",c,i],["enter",d,i],["exit",d,i],["exit",s,i]]),e[r][1].end.offset-e[r][1].start.offset?(y=2,m=yn(m,[["enter",e[r][1],i],["exit",e[r][1],i]])):y=0,ln(e,l-1,r-l+3,m),r=l+m.length-y-2;break}}for(r=-1;++r0&&Ue(M)?We(e,L,"linePrefix",c+1)(M):L(M)}function L(M){return M===null||Ce(M)?e.check(Dd,S,W)(M):(e.enter("codeFlowValue"),z(M))}function z(M){return M===null||Ce(M)?(e.exit("codeFlowValue"),L(M)):(e.consume(M),z)}function W(M){return e.exit("codeFenced"),i(M)}function Q(M,q,ne){let X=0;return I;function I($){return M.enter("lineEnding"),M.consume($),M.exit("lineEnding"),K}function K($){return M.enter("codeFencedFence"),Ue($)?We(M,Y,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)($):Y($)}function Y($){return $===d?(M.enter("codeFencedFenceSequence"),re($)):ne($)}function re($){return $===d?(X++,M.consume($),re):X>=u?(M.exit("codeFencedFenceSequence"),Ue($)?We(M,Z,"whitespace")($):Z($)):ne($)}function Z($){return $===null||Ce($)?(M.exit("codeFencedFence"),q($)):ne($)}}}function ob(e,i,r){const l=this;return s;function s(u){return u===null?r(u):(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c)}function c(u){return l.parser.lazy[l.now().line]?r(u):i(u)}}const Zs={name:"codeIndented",tokenize:ab},lb={partial:!0,tokenize:sb};function ab(e,i,r){const l=this;return s;function s(m){return e.enter("codeIndented"),We(e,c,"linePrefix",5)(m)}function c(m){const y=l.events[l.events.length-1];return y&&y[1].type==="linePrefix"&&y[2].sliceSerialize(y[1],!0).length>=4?u(m):r(m)}function u(m){return m===null?p(m):Ce(m)?e.attempt(lb,u,p)(m):(e.enter("codeFlowValue"),d(m))}function d(m){return m===null||Ce(m)?(e.exit("codeFlowValue"),u(m)):(e.consume(m),d)}function p(m){return e.exit("codeIndented"),i(m)}}function sb(e,i,r){const l=this;return s;function s(u){return l.parser.lazy[l.now().line]?r(u):Ce(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),s):We(e,c,"linePrefix",5)(u)}function c(u){const d=l.events[l.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?i(u):Ce(u)?s(u):r(u)}}const ub={name:"codeText",previous:fb,resolve:cb,tokenize:db};function cb(e){let i=e.length-4,r=3,l,s;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[i][1].type==="lineEnding"||e[i][1].type==="space")){for(l=r;++l=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+i+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return ithis.left.length?this.right.slice(this.right.length-l+this.left.length,this.right.length-i+this.left.length).reverse():this.left.slice(i).concat(this.right.slice(this.right.length-l+this.left.length).reverse())}splice(i,r,l){const s=r||0;this.setCursor(Math.trunc(i));const c=this.right.splice(this.right.length-s,Number.POSITIVE_INFINITY);return l&&_o(this.left,l),c.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(i){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(i)}pushMany(i){this.setCursor(Number.POSITIVE_INFINITY),_o(this.left,i)}unshift(i){this.setCursor(0),this.right.push(i)}unshiftMany(i){this.setCursor(0),_o(this.right,i.reverse())}setCursor(i){if(!(i===this.left.length||i>this.left.length&&this.right.length===0||i<0&&this.left.length===0))if(i=4?i(u):e.interrupt(l.parser.constructs.flow,r,i)(u)}}function Kp(e,i,r,l,s,c,u,d,p){const m=p||Number.POSITIVE_INFINITY;let y=0;return h;function h(N){return N===60?(e.enter(l),e.enter(s),e.enter(c),e.consume(N),e.exit(c),b):N===null||N===32||N===41||Xl(N)?r(N):(e.enter(l),e.enter(u),e.enter(d),e.enter("chunkString",{contentType:"string"}),S(N))}function b(N){return N===62?(e.enter(c),e.consume(N),e.exit(c),e.exit(s),e.exit(l),i):(e.enter(d),e.enter("chunkString",{contentType:"string"}),E(N))}function E(N){return N===62?(e.exit("chunkString"),e.exit(d),b(N)):N===null||N===60||Ce(N)?r(N):(e.consume(N),N===92?w:E)}function w(N){return N===60||N===62||N===92?(e.consume(N),E):E(N)}function S(N){return!y&&(N===null||N===41||et(N))?(e.exit("chunkString"),e.exit(d),e.exit(u),e.exit(l),i(N)):y999||E===null||E===91||E===93&&!p||E===94&&!d&&"_hiddenFootnoteSupport"in u.parser.constructs?r(E):E===93?(e.exit(c),e.enter(s),e.consume(E),e.exit(s),e.exit(l),i):Ce(E)?(e.enter("lineEnding"),e.consume(E),e.exit("lineEnding"),y):(e.enter("chunkString",{contentType:"string"}),h(E))}function h(E){return E===null||E===91||E===93||Ce(E)||d++>999?(e.exit("chunkString"),y(E)):(e.consume(E),p||(p=!Ue(E)),E===92?b:h)}function b(E){return E===91||E===92||E===93?(e.consume(E),d++,h):h(E)}}function Vp(e,i,r,l,s,c){let u;return d;function d(b){return b===34||b===39||b===40?(e.enter(l),e.enter(s),e.consume(b),e.exit(s),u=b===40?41:b,p):r(b)}function p(b){return b===u?(e.enter(s),e.consume(b),e.exit(s),e.exit(l),i):(e.enter(c),m(b))}function m(b){return b===u?(e.exit(c),p(u)):b===null?r(b):Ce(b)?(e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),We(e,m,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),y(b))}function y(b){return b===u||b===null||Ce(b)?(e.exit("chunkString"),m(b)):(e.consume(b),b===92?h:y)}function h(b){return b===u||b===92?(e.consume(b),y):y(b)}}function So(e,i){let r;return l;function l(s){return Ce(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),r=!0,l):Ue(s)?We(e,l,r?"linePrefix":"lineSuffix")(s):i(s)}}const _b={name:"definition",tokenize:kb},vb={partial:!0,tokenize:wb};function kb(e,i,r){const l=this;let s;return c;function c(E){return e.enter("definition"),u(E)}function u(E){return Wp.call(l,e,d,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(E)}function d(E){return s=Tn(l.sliceSerialize(l.events[l.events.length-1][1]).slice(1,-1)),E===58?(e.enter("definitionMarker"),e.consume(E),e.exit("definitionMarker"),p):r(E)}function p(E){return et(E)?So(e,m)(E):m(E)}function m(E){return Kp(e,y,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(E)}function y(E){return e.attempt(vb,h,h)(E)}function h(E){return Ue(E)?We(e,b,"whitespace")(E):b(E)}function b(E){return E===null||Ce(E)?(e.exit("definition"),l.parser.defined.push(s),i(E)):r(E)}}function wb(e,i,r){return l;function l(d){return et(d)?So(e,s)(d):r(d)}function s(d){return Vp(e,c,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(d)}function c(d){return Ue(d)?We(e,u,"whitespace")(d):u(d)}function u(d){return d===null||Ce(d)?i(d):r(d)}}const xb={name:"hardBreakEscape",tokenize:Sb};function Sb(e,i,r){return l;function l(c){return e.enter("hardBreakEscape"),e.consume(c),s}function s(c){return Ce(c)?(e.exit("hardBreakEscape"),i(c)):r(c)}}const Nb={name:"headingAtx",resolve:Cb,tokenize:Tb};function Cb(e,i){let r=e.length-2,l=3,s,c;return e[l][1].type==="whitespace"&&(l+=2),r-2>l&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(l===r-1||r-4>l&&e[r-2][1].type==="whitespace")&&(r-=l+1===r?2:4),r>l&&(s={type:"atxHeadingText",start:e[l][1].start,end:e[r][1].end},c={type:"chunkText",start:e[l][1].start,end:e[r][1].end,contentType:"text"},ln(e,l,r-l+1,[["enter",s,i],["enter",c,i],["exit",c,i],["exit",s,i]])),e}function Tb(e,i,r){let l=0;return s;function s(y){return e.enter("atxHeading"),c(y)}function c(y){return e.enter("atxHeadingSequence"),u(y)}function u(y){return y===35&&l++<6?(e.consume(y),u):y===null||et(y)?(e.exit("atxHeadingSequence"),d(y)):r(y)}function d(y){return y===35?(e.enter("atxHeadingSequence"),p(y)):y===null||Ce(y)?(e.exit("atxHeading"),i(y)):Ue(y)?We(e,d,"whitespace")(y):(e.enter("atxHeadingText"),m(y))}function p(y){return y===35?(e.consume(y),p):(e.exit("atxHeadingSequence"),d(y))}function m(y){return y===null||y===35||et(y)?(e.exit("atxHeadingText"),d(y)):(e.consume(y),m)}}const Ab=["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"],zd=["pre","script","style","textarea"],Rb={concrete:!0,name:"htmlFlow",resolveTo:Mb,tokenize:Lb},Ob={partial:!0,tokenize:Pb},Ib={partial:!0,tokenize:Db};function Mb(e){let i=e.length;for(;i--&&!(e[i][0]==="enter"&&e[i][1].type==="htmlFlow"););return i>1&&e[i-2][1].type==="linePrefix"&&(e[i][1].start=e[i-2][1].start,e[i+1][1].start=e[i-2][1].start,e.splice(i-2,2)),e}function Lb(e,i,r){const l=this;let s,c,u,d,p;return m;function m(k){return y(k)}function y(k){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(k),h}function h(k){return k===33?(e.consume(k),b):k===47?(e.consume(k),c=!0,S):k===63?(e.consume(k),s=3,l.interrupt?i:v):Ht(k)?(e.consume(k),u=String.fromCharCode(k),R):r(k)}function b(k){return k===45?(e.consume(k),s=2,E):k===91?(e.consume(k),s=5,d=0,w):Ht(k)?(e.consume(k),s=4,l.interrupt?i:v):r(k)}function E(k){return k===45?(e.consume(k),l.interrupt?i:v):r(k)}function w(k){const ke="CDATA[";return k===ke.charCodeAt(d++)?(e.consume(k),d===ke.length?l.interrupt?i:Y:w):r(k)}function S(k){return Ht(k)?(e.consume(k),u=String.fromCharCode(k),R):r(k)}function R(k){if(k===null||k===47||k===62||et(k)){const ke=k===47,Me=u.toLowerCase();return!ke&&!c&&zd.includes(Me)?(s=1,l.interrupt?i(k):Y(k)):Ab.includes(u.toLowerCase())?(s=6,ke?(e.consume(k),N):l.interrupt?i(k):Y(k)):(s=7,l.interrupt&&!l.parser.lazy[l.now().line]?r(k):c?L(k):z(k))}return k===45||Dt(k)?(e.consume(k),u+=String.fromCharCode(k),R):r(k)}function N(k){return k===62?(e.consume(k),l.interrupt?i:Y):r(k)}function L(k){return Ue(k)?(e.consume(k),L):I(k)}function z(k){return k===47?(e.consume(k),I):k===58||k===95||Ht(k)?(e.consume(k),W):Ue(k)?(e.consume(k),z):I(k)}function W(k){return k===45||k===46||k===58||k===95||Dt(k)?(e.consume(k),W):Q(k)}function Q(k){return k===61?(e.consume(k),M):Ue(k)?(e.consume(k),Q):z(k)}function M(k){return k===null||k===60||k===61||k===62||k===96?r(k):k===34||k===39?(e.consume(k),p=k,q):Ue(k)?(e.consume(k),M):ne(k)}function q(k){return k===p?(e.consume(k),p=null,X):k===null||Ce(k)?r(k):(e.consume(k),q)}function ne(k){return k===null||k===34||k===39||k===47||k===60||k===61||k===62||k===96||et(k)?Q(k):(e.consume(k),ne)}function X(k){return k===47||k===62||Ue(k)?z(k):r(k)}function I(k){return k===62?(e.consume(k),K):r(k)}function K(k){return k===null||Ce(k)?Y(k):Ue(k)?(e.consume(k),K):r(k)}function Y(k){return k===45&&s===2?(e.consume(k),se):k===60&&s===1?(e.consume(k),P):k===62&&s===4?(e.consume(k),A):k===63&&s===3?(e.consume(k),v):k===93&&s===5?(e.consume(k),ue):Ce(k)&&(s===6||s===7)?(e.exit("htmlFlowData"),e.check(Ob,U,re)(k)):k===null||Ce(k)?(e.exit("htmlFlowData"),re(k)):(e.consume(k),Y)}function re(k){return e.check(Ib,Z,U)(k)}function Z(k){return e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),$}function $(k){return k===null||Ce(k)?re(k):(e.enter("htmlFlowData"),Y(k))}function se(k){return k===45?(e.consume(k),v):Y(k)}function P(k){return k===47?(e.consume(k),u="",G):Y(k)}function G(k){if(k===62){const ke=u.toLowerCase();return zd.includes(ke)?(e.consume(k),A):Y(k)}return Ht(k)&&u.length<8?(e.consume(k),u+=String.fromCharCode(k),G):Y(k)}function ue(k){return k===93?(e.consume(k),v):Y(k)}function v(k){return k===62?(e.consume(k),A):k===45&&s===2?(e.consume(k),v):Y(k)}function A(k){return k===null||Ce(k)?(e.exit("htmlFlowData"),U(k)):(e.consume(k),A)}function U(k){return e.exit("htmlFlow"),i(k)}}function Db(e,i,r){const l=this;return s;function s(u){return Ce(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c):r(u)}function c(u){return l.parser.lazy[l.now().line]?r(u):i(u)}}function Pb(e,i,r){return l;function l(s){return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),e.attempt(Oo,i,r)}}const zb={name:"htmlText",tokenize:Fb};function Fb(e,i,r){const l=this;let s,c,u;return d;function d(v){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(v),p}function p(v){return v===33?(e.consume(v),m):v===47?(e.consume(v),Q):v===63?(e.consume(v),z):Ht(v)?(e.consume(v),ne):r(v)}function m(v){return v===45?(e.consume(v),y):v===91?(e.consume(v),c=0,w):Ht(v)?(e.consume(v),L):r(v)}function y(v){return v===45?(e.consume(v),E):r(v)}function h(v){return v===null?r(v):v===45?(e.consume(v),b):Ce(v)?(u=h,P(v)):(e.consume(v),h)}function b(v){return v===45?(e.consume(v),E):h(v)}function E(v){return v===62?se(v):v===45?b(v):h(v)}function w(v){const A="CDATA[";return v===A.charCodeAt(c++)?(e.consume(v),c===A.length?S:w):r(v)}function S(v){return v===null?r(v):v===93?(e.consume(v),R):Ce(v)?(u=S,P(v)):(e.consume(v),S)}function R(v){return v===93?(e.consume(v),N):S(v)}function N(v){return v===62?se(v):v===93?(e.consume(v),N):S(v)}function L(v){return v===null||v===62?se(v):Ce(v)?(u=L,P(v)):(e.consume(v),L)}function z(v){return v===null?r(v):v===63?(e.consume(v),W):Ce(v)?(u=z,P(v)):(e.consume(v),z)}function W(v){return v===62?se(v):z(v)}function Q(v){return Ht(v)?(e.consume(v),M):r(v)}function M(v){return v===45||Dt(v)?(e.consume(v),M):q(v)}function q(v){return Ce(v)?(u=q,P(v)):Ue(v)?(e.consume(v),q):se(v)}function ne(v){return v===45||Dt(v)?(e.consume(v),ne):v===47||v===62||et(v)?X(v):r(v)}function X(v){return v===47?(e.consume(v),se):v===58||v===95||Ht(v)?(e.consume(v),I):Ce(v)?(u=X,P(v)):Ue(v)?(e.consume(v),X):se(v)}function I(v){return v===45||v===46||v===58||v===95||Dt(v)?(e.consume(v),I):K(v)}function K(v){return v===61?(e.consume(v),Y):Ce(v)?(u=K,P(v)):Ue(v)?(e.consume(v),K):X(v)}function Y(v){return v===null||v===60||v===61||v===62||v===96?r(v):v===34||v===39?(e.consume(v),s=v,re):Ce(v)?(u=Y,P(v)):Ue(v)?(e.consume(v),Y):(e.consume(v),Z)}function re(v){return v===s?(e.consume(v),s=void 0,$):v===null?r(v):Ce(v)?(u=re,P(v)):(e.consume(v),re)}function Z(v){return v===null||v===34||v===39||v===60||v===61||v===96?r(v):v===47||v===62||et(v)?X(v):(e.consume(v),Z)}function $(v){return v===47||v===62||et(v)?X(v):r(v)}function se(v){return v===62?(e.consume(v),e.exit("htmlTextData"),e.exit("htmlText"),i):r(v)}function P(v){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(v),e.exit("lineEnding"),G}function G(v){return Ue(v)?We(e,ue,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(v):ue(v)}function ue(v){return e.enter("htmlTextData"),u(v)}}const Du={name:"labelEnd",resolveAll:Hb,resolveTo:jb,tokenize:Gb},Bb={tokenize:Kb},Ub={tokenize:Wb},$b={tokenize:Vb};function Hb(e){let i=-1;const r=[];for(;++i=3&&(m===null||Ce(m))?(e.exit("thematicBreak"),i(m)):r(m)}function p(m){return m===s?(e.consume(m),l++,p):(e.exit("thematicBreakSequence"),Ue(m)?We(e,d,"whitespace")(m):d(m))}}const Qt={continuation:{tokenize:rE},exit:oE,name:"list",tokenize:nE},eE={partial:!0,tokenize:lE},tE={partial:!0,tokenize:iE};function nE(e,i,r){const l=this,s=l.events[l.events.length-1];let c=s&&s[1].type==="linePrefix"?s[2].sliceSerialize(s[1],!0).length:0,u=0;return d;function d(E){const w=l.containerState.type||(E===42||E===43||E===45?"listUnordered":"listOrdered");if(w==="listUnordered"?!l.containerState.marker||E===l.containerState.marker:bu(E)){if(l.containerState.type||(l.containerState.type=w,e.enter(w,{_container:!0})),w==="listUnordered")return e.enter("listItemPrefix"),E===42||E===45?e.check(Zl,r,m)(E):m(E);if(!l.interrupt||E===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),p(E)}return r(E)}function p(E){return bu(E)&&++u<10?(e.consume(E),p):(!l.interrupt||u<2)&&(l.containerState.marker?E===l.containerState.marker:E===41||E===46)?(e.exit("listItemValue"),m(E)):r(E)}function m(E){return e.enter("listItemMarker"),e.consume(E),e.exit("listItemMarker"),l.containerState.marker=l.containerState.marker||E,e.check(Oo,l.interrupt?r:y,e.attempt(eE,b,h))}function y(E){return l.containerState.initialBlankLine=!0,c++,b(E)}function h(E){return Ue(E)?(e.enter("listItemPrefixWhitespace"),e.consume(E),e.exit("listItemPrefixWhitespace"),b):r(E)}function b(E){return l.containerState.size=c+l.sliceSerialize(e.exit("listItemPrefix"),!0).length,i(E)}}function rE(e,i,r){const l=this;return l.containerState._closeFlow=void 0,e.check(Oo,s,c);function s(d){return l.containerState.furtherBlankLines=l.containerState.furtherBlankLines||l.containerState.initialBlankLine,We(e,i,"listItemIndent",l.containerState.size+1)(d)}function c(d){return l.containerState.furtherBlankLines||!Ue(d)?(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,u(d)):(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,e.attempt(tE,i,u)(d))}function u(d){return l.containerState._closeFlow=!0,l.interrupt=void 0,We(e,e.attempt(Qt,i,r),"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(d)}}function iE(e,i,r){const l=this;return We(e,s,"listItemIndent",l.containerState.size+1);function s(c){const u=l.events[l.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===l.containerState.size?i(c):r(c)}}function oE(e){e.exit(this.containerState.type)}function lE(e,i,r){const l=this;return We(e,s,"listItemPrefixWhitespace",l.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function s(c){const u=l.events[l.events.length-1];return!Ue(c)&&u&&u[1].type==="listItemPrefixWhitespace"?i(c):r(c)}}const Fd={name:"setextUnderline",resolveTo:aE,tokenize:sE};function aE(e,i){let r=e.length,l,s,c;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){l=r;break}e[r][1].type==="paragraph"&&(s=r)}else e[r][1].type==="content"&&e.splice(r,1),!c&&e[r][1].type==="definition"&&(c=r);const u={type:"setextHeading",start:{...e[l][1].start},end:{...e[e.length-1][1].end}};return e[s][1].type="setextHeadingText",c?(e.splice(s,0,["enter",u,i]),e.splice(c+1,0,["exit",e[l][1],i]),e[l][1].end={...e[c][1].end}):e[l][1]=u,e.push(["exit",u,i]),e}function sE(e,i,r){const l=this;let s;return c;function c(m){let y=l.events.length,h;for(;y--;)if(l.events[y][1].type!=="lineEnding"&&l.events[y][1].type!=="linePrefix"&&l.events[y][1].type!=="content"){h=l.events[y][1].type==="paragraph";break}return!l.parser.lazy[l.now().line]&&(l.interrupt||h)?(e.enter("setextHeadingLine"),s=m,u(m)):r(m)}function u(m){return e.enter("setextHeadingLineSequence"),d(m)}function d(m){return m===s?(e.consume(m),d):(e.exit("setextHeadingLineSequence"),Ue(m)?We(e,p,"lineSuffix")(m):p(m))}function p(m){return m===null||Ce(m)?(e.exit("setextHeadingLine"),i(m)):r(m)}}const uE={tokenize:cE};function cE(e){const i=this,r=e.attempt(Oo,l,e.attempt(this.parser.constructs.flowInitial,s,We(e,e.attempt(this.parser.constructs.flow,s,e.attempt(gb,s)),"linePrefix")));return r;function l(c){if(c===null){e.consume(c);return}return e.enter("lineEndingBlank"),e.consume(c),e.exit("lineEndingBlank"),i.currentConstruct=void 0,r}function s(c){if(c===null){e.consume(c);return}return e.enter("lineEnding"),e.consume(c),e.exit("lineEnding"),i.currentConstruct=void 0,r}}const fE={resolveAll:Yp()},dE=qp("string"),pE=qp("text");function qp(e){return{resolveAll:Yp(e==="text"?mE:void 0),tokenize:i};function i(r){const l=this,s=this.parser.constructs[e],c=r.attempt(s,u,d);return u;function u(y){return m(y)?c(y):d(y)}function d(y){if(y===null){r.consume(y);return}return r.enter("data"),r.consume(y),p}function p(y){return m(y)?(r.exit("data"),c(y)):(r.consume(y),p)}function m(y){if(y===null)return!0;const h=s[y];let b=-1;if(h)for(;++b-1){const d=u[0];typeof d=="string"?u[0]=d.slice(l):u.shift()}c>0&&u.push(e[s].slice(0,c))}return u}function CE(e,i){let r=-1;const l=[];let s;for(;++r0){const _t=Te.tokenStack[Te.tokenStack.length-1];(_t[1]||Ud).call(Te,void 0,_t[0])}for(ae.position={start:Sr(j.length>0?j[0][1].start:{line:1,column:1,offset:0}),end:Sr(j.length>0?j[j.length-2][1].end:{line:1,column:1,offset:0})},He=-1;++He0&&(l.className=["language-"+s[0]]);let c={type:"element",tagName:"code",properties:l,children:[{type:"text",value:r}]};return i.meta&&(c.data={meta:i.meta}),e.patch(i,c),c=e.applyData(i,c),c={type:"element",tagName:"pre",properties:{},children:[c]},e.patch(i,c),c}function $E(e,i){const r={type:"element",tagName:"del",properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function HE(e,i){const r={type:"element",tagName:"em",properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function jE(e,i){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",l=String(i.identifier).toUpperCase(),s=Li(l.toLowerCase()),c=e.footnoteOrder.indexOf(l);let u,d=e.footnoteCounts.get(l);d===void 0?(d=0,e.footnoteOrder.push(l),u=e.footnoteOrder.length):u=c+1,d+=1,e.footnoteCounts.set(l,d);const p={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+s,id:r+"fnref-"+s+(d>1?"-"+d:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};e.patch(i,p);const m={type:"element",tagName:"sup",properties:{},children:[p]};return e.patch(i,m),e.applyData(i,m)}function GE(e,i){const r={type:"element",tagName:"h"+i.depth,properties:{},children:e.all(i)};return e.patch(i,r),e.applyData(i,r)}function KE(e,i){if(e.options.allowDangerousHtml){const r={type:"raw",value:i.value};return e.patch(i,r),e.applyData(i,r)}}function Xp(e,i){const r=i.referenceType;let l="]";if(r==="collapsed"?l+="[]":r==="full"&&(l+="["+(i.label||i.identifier)+"]"),i.type==="imageReference")return[{type:"text",value:"!["+i.alt+l}];const s=e.all(i),c=s[0];c&&c.type==="text"?c.value="["+c.value:s.unshift({type:"text",value:"["});const u=s[s.length-1];return u&&u.type==="text"?u.value+=l:s.push({type:"text",value:l}),s}function WE(e,i){const r=String(i.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return Xp(e,i);const s={src:Li(l.url||""),alt:i.alt};l.title!==null&&l.title!==void 0&&(s.title=l.title);const c={type:"element",tagName:"img",properties:s,children:[]};return e.patch(i,c),e.applyData(i,c)}function VE(e,i){const r={src:Li(i.url)};i.alt!==null&&i.alt!==void 0&&(r.alt=i.alt),i.title!==null&&i.title!==void 0&&(r.title=i.title);const l={type:"element",tagName:"img",properties:r,children:[]};return e.patch(i,l),e.applyData(i,l)}function qE(e,i){const r={type:"text",value:i.value.replace(/\r?\n|\r/g," ")};e.patch(i,r);const l={type:"element",tagName:"code",properties:{},children:[r]};return e.patch(i,l),e.applyData(i,l)}function YE(e,i){const r=String(i.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return Xp(e,i);const s={href:Li(l.url||"")};l.title!==null&&l.title!==void 0&&(s.title=l.title);const c={type:"element",tagName:"a",properties:s,children:e.all(i)};return e.patch(i,c),e.applyData(i,c)}function QE(e,i){const r={href:Li(i.url)};i.title!==null&&i.title!==void 0&&(r.title=i.title);const l={type:"element",tagName:"a",properties:r,children:e.all(i)};return e.patch(i,l),e.applyData(i,l)}function ZE(e,i,r){const l=e.all(i),s=r?XE(r):Jp(i),c={},u=[];if(typeof i.checked=="boolean"){const y=l[0];let h;y&&y.type==="element"&&y.tagName==="p"?h=y:(h={type:"element",tagName:"p",properties:{},children:[]},l.unshift(h)),h.children.length>0&&h.children.unshift({type:"text",value:" "}),h.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:i.checked,disabled:!0},children:[]}),c.className=["task-list-item"]}let d=-1;for(;++d1}function JE(e,i){const r={},l=e.all(i);let s=-1;for(typeof i.start=="number"&&i.start!==1&&(r.start=i.start);++s0){const u={type:"element",tagName:"tbody",properties:{},children:e.wrap(r,!0)},d=Au(i.children[1]),p=Ip(i.children[i.children.length-1]);d&&p&&(u.position={start:d,end:p}),s.push(u)}const c={type:"element",tagName:"table",properties:{},children:e.wrap(s,!0)};return e.patch(i,c),e.applyData(i,c)}function i_(e,i,r){const l=r?r.children:void 0,c=(l?l.indexOf(i):1)===0?"th":"td",u=r&&r.type==="table"?r.align:void 0,d=u?u.length:i.children.length;let p=-1;const m=[];for(;++p0,!0),l[0]),s=l.index+l[0].length,l=r.exec(i);return c.push(jd(i.slice(s),s>0,!1)),c.join("")}function jd(e,i,r){let l=0,s=e.length;if(i){let c=e.codePointAt(l);for(;c===$d||c===Hd;)l++,c=e.codePointAt(l)}if(r){let c=e.codePointAt(s-1);for(;c===$d||c===Hd;)s--,c=e.codePointAt(s-1)}return s>l?e.slice(l,s):""}function a_(e,i){const r={type:"text",value:l_(String(i.value))};return e.patch(i,r),e.applyData(i,r)}function s_(e,i){const r={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(i,r),e.applyData(i,r)}const u_={blockquote:FE,break:BE,code:UE,delete:$E,emphasis:HE,footnoteReference:jE,heading:GE,html:KE,imageReference:WE,image:VE,inlineCode:qE,linkReference:YE,link:QE,listItem:ZE,list:JE,paragraph:e_,root:t_,strong:n_,table:r_,tableCell:o_,tableRow:i_,text:a_,thematicBreak:s_,toml:Hl,yaml:Hl,definition:Hl,footnoteDefinition:Hl};function Hl(){}const em=-1,la=0,No=1,Jl=2,Pu=3,zu=4,Fu=5,Bu=6,tm=7,nm=8,rm=typeof self=="object"?self:globalThis,Gd=(e,i)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new rm[e](i)},c_=(e,i)=>{const r=(s,c)=>(e.set(c,s),s),l=s=>{if(e.has(s))return e.get(s);const[c,u]=i[s];switch(c){case la:case em:return r(u,s);case No:{const d=r([],s);for(const p of u)d.push(l(p));return d}case Jl:{const d=r({},s);for(const[p,m]of u)d[l(p)]=l(m);return d}case Pu:return r(new Date(u),s);case zu:{const{source:d,flags:p}=u;return r(new RegExp(d,p),s)}case Fu:{const d=r(new Map,s);for(const[p,m]of u)d.set(l(p),l(m));return d}case Bu:{const d=r(new Set,s);for(const p of u)d.add(l(p));return d}case tm:{const{name:d,message:p}=u;return r(typeof rm[d]=="function"?Gd(d,p):new Error(p),s)}case nm:return r(BigInt(u),s);case"BigInt":return r(Object(BigInt(u)),s);case"ArrayBuffer":return r(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:d}=new Uint8Array(u);return r(new DataView(d),u)}}return r(Gd(c,u),s)};return l},Kd=e=>c_(new Map,e)(0),Yr="",{toString:f_}={},{keys:d_}=Object,vo=e=>{const i=typeof e;if(i!=="object"||!e)return[la,i];const r=f_.call(e).slice(8,-1);switch(r){case"Array":return[No,Yr];case"Object":return[Jl,Yr];case"Date":return[Pu,Yr];case"RegExp":return[zu,Yr];case"Map":return[Fu,Yr];case"Set":return[Bu,Yr];case"DataView":return[No,r]}return r.includes("Array")?[No,r]:e instanceof Error?[tm,e.name||"Error"]:[Jl,r]},jl=([e,i])=>e===la&&(i==="function"||i==="symbol"),p_=(e,i,r,l)=>{const s=(u,d)=>{const p=l.push(u)-1;return r.set(d,p),p},c=u=>{if(r.has(u))return r.get(u);let[d,p]=vo(u);switch(d){case la:{let y=u;switch(p){case"bigint":d=nm,y=u.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+p);y=null;break;case"undefined":return s([em],u)}return s([d,y],u)}case No:{if(p){let b=u;return p==="DataView"?b=new Uint8Array(u.buffer):p==="ArrayBuffer"&&(b=new Uint8Array(u)),s([p,[...b]],u)}const y=[],h=s([d,y],u);for(const b of u)y.push(c(b));return h}case Jl:{if(p)switch(p){case"BigInt":return s([p,u.toString()],u);case"Boolean":case"Number":case"String":return s([p,u.valueOf()],u)}if(i&&"toJSON"in u)return c(u.toJSON());const y=[],h=s([d,y],u);for(const b of d_(u))(e||!jl(vo(u[b])))&&y.push([c(b),c(u[b])]);return h}case Pu:return s([d,isNaN(u.getTime())?Yr:u.toISOString()],u);case zu:{const{source:y,flags:h}=u;return s([d,{source:y,flags:h}],u)}case Fu:{const y=[],h=s([d,y],u);for(const[b,E]of u)(e||!(jl(vo(b))||jl(vo(E))))&&y.push([c(b),c(E)]);return h}case Bu:{const y=[],h=s([d,y],u);for(const b of u)(e||!jl(vo(b)))&&y.push(c(b));return h}}const{message:m}=u;return s([d,{name:p,message:m}],u)};return c},Wd=(e,{json:i,lossy:r}={})=>{const l=[];return p_(!(i||r),!!i,new Map,l)(e),l},ea=typeof structuredClone=="function"?(e,i)=>i&&("json"in i||"lossy"in i)?Kd(Wd(e,i)):structuredClone(e):(e,i)=>Kd(Wd(e,i));function m_(e,i){const r=[{type:"text",value:"↩"}];return i>1&&r.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(i)}]}),r}function g_(e,i){return"Back to reference "+(e+1)+(i>1?"-"+i:"")}function h_(e){const i=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=e.options.footnoteBackContent||m_,l=e.options.footnoteBackLabel||g_,s=e.options.footnoteLabel||"Footnotes",c=e.options.footnoteLabelTagName||"h2",u=e.options.footnoteLabelProperties||{className:["sr-only"]},d=[];let p=-1;for(;++p0&&w.push({type:"text",value:" "});let L=typeof r=="string"?r:r(p,E);typeof L=="string"&&(L={type:"text",value:L}),w.push({type:"element",tagName:"a",properties:{href:"#"+i+"fnref-"+b+(E>1?"-"+E:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(p,E),className:["data-footnote-backref"]},children:Array.isArray(L)?L:[L]})}const R=y[y.length-1];if(R&&R.type==="element"&&R.tagName==="p"){const L=R.children[R.children.length-1];L&&L.type==="text"?L.value+=" ":R.children.push({type:"text",value:" "}),R.children.push(...w)}else y.push(...w);const N={type:"element",tagName:"li",properties:{id:i+"fn-"+b},children:e.wrap(y,!0)};e.patch(m,N),d.push(N)}if(d.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:c,properties:{...ea(u),id:"footnote-label"},children:[{type:"text",value:s}]},{type:"text",value:` +`},{type:"element",tagName:"ol",properties:{},children:e.wrap(d,!0)},{type:"text",value:` +`}]}}const Io=(function(e){if(e==null)return __;if(typeof e=="function")return aa(e);if(typeof e=="object")return Array.isArray(e)?y_(e):b_(e);if(typeof e=="string")return E_(e);throw new Error("Expected function, string, or object as test")});function y_(e){const i=[];let r=-1;for(;++r":""))+")"})}return b;function b(){let E=im,w,S,R;if((!i||c(p,m,y[y.length-1]||void 0))&&(E=x_(r(p,y)),E[0]===_u))return E;if("children"in p&&p.children){const N=p;if(N.children&&E[0]!==w_)for(S=(l?N.children.length:-1)+u,R=y.concat(N);S>-1&&S0&&r.push({type:"text",value:` +`}),r}function Vd(e){let i=0,r=e.charCodeAt(i);for(;r===9||r===32;)i++,r=e.charCodeAt(i);return e.slice(i)}function qd(e,i){const r=N_(e,i),l=r.one(e,void 0),s=h_(r),c=Array.isArray(l)?{type:"root",children:l}:l||{type:"root",children:[]};return s&&c.children.push({type:"text",value:` +`},s),c}function O_(e,i){return e&&"run"in e?async function(r,l){const s=qd(r,{file:l,...i});await e.run(s,l)}:function(r,l){return qd(r,{file:l,...e||i})}}function Yd(e){if(e)throw e}var Js,Qd;function I_(){if(Qd)return Js;Qd=1;var e=Object.prototype.hasOwnProperty,i=Object.prototype.toString,r=Object.defineProperty,l=Object.getOwnPropertyDescriptor,s=function(m){return typeof Array.isArray=="function"?Array.isArray(m):i.call(m)==="[object Array]"},c=function(m){if(!m||i.call(m)!=="[object Object]")return!1;var y=e.call(m,"constructor"),h=m.constructor&&m.constructor.prototype&&e.call(m.constructor.prototype,"isPrototypeOf");if(m.constructor&&!y&&!h)return!1;var b;for(b in m);return typeof b>"u"||e.call(m,b)},u=function(m,y){r&&y.name==="__proto__"?r(m,y.name,{enumerable:!0,configurable:!0,value:y.newValue,writable:!0}):m[y.name]=y.newValue},d=function(m,y){if(y==="__proto__")if(e.call(m,y)){if(l)return l(m,y).value}else return;return m[y]};return Js=function p(){var m,y,h,b,E,w,S=arguments[0],R=1,N=arguments.length,L=!1;for(typeof S=="boolean"&&(L=S,S=arguments[1]||{},R=2),(S==null||typeof S!="object"&&typeof S!="function")&&(S={});Ru.length;let p;d&&u.push(s);try{p=e.apply(this,u)}catch(m){const y=m;if(d&&r)throw y;return s(y)}d||(p&&p.then&&typeof p.then=="function"?p.then(c,s):p instanceof Error?s(p):c(p))}function s(u,...d){r||(r=!0,i(u,...d))}function c(u){s(null,u)}}const Un={basename:P_,dirname:z_,extname:F_,join:B_,sep:"/"};function P_(e,i){if(i!==void 0&&typeof i!="string")throw new TypeError('"ext" argument must be a string');Mo(e);let r=0,l=-1,s=e.length,c;if(i===void 0||i.length===0||i.length>e.length){for(;s--;)if(e.codePointAt(s)===47){if(c){r=s+1;break}}else l<0&&(c=!0,l=s+1);return l<0?"":e.slice(r,l)}if(i===e)return"";let u=-1,d=i.length-1;for(;s--;)if(e.codePointAt(s)===47){if(c){r=s+1;break}}else u<0&&(c=!0,u=s+1),d>-1&&(e.codePointAt(s)===i.codePointAt(d--)?d<0&&(l=s):(d=-1,l=u));return r===l?l=u:l<0&&(l=e.length),e.slice(r,l)}function z_(e){if(Mo(e),e.length===0)return".";let i=-1,r=e.length,l;for(;--r;)if(e.codePointAt(r)===47){if(l){i=r;break}}else l||(l=!0);return i<0?e.codePointAt(0)===47?"/":".":i===1&&e.codePointAt(0)===47?"//":e.slice(0,i)}function F_(e){Mo(e);let i=e.length,r=-1,l=0,s=-1,c=0,u;for(;i--;){const d=e.codePointAt(i);if(d===47){if(u){l=i+1;break}continue}r<0&&(u=!0,r=i+1),d===46?s<0?s=i:c!==1&&(c=1):s>-1&&(c=-1)}return s<0||r<0||c===0||c===1&&s===r-1&&s===l+1?"":e.slice(s,r)}function B_(...e){let i=-1,r;for(;++i0&&e.codePointAt(e.length-1)===47&&(r+="/"),i?"/"+r:r}function $_(e,i){let r="",l=0,s=-1,c=0,u=-1,d,p;for(;++u<=e.length;){if(u2){if(p=r.lastIndexOf("/"),p!==r.length-1){p<0?(r="",l=0):(r=r.slice(0,p),l=r.length-1-r.lastIndexOf("/")),s=u,c=0;continue}}else if(r.length>0){r="",l=0,s=u,c=0;continue}}i&&(r=r.length>0?r+"/..":"..",l=2)}else r.length>0?r+="/"+e.slice(s+1,u):r=e.slice(s+1,u),l=u-s-1;s=u,c=0}else d===46&&c>-1?c++:c=-1}return r}function Mo(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const H_={cwd:j_};function j_(){return"/"}function wu(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function G_(e){if(typeof e=="string")e=new URL(e);else if(!wu(e)){const i=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw i.code="ERR_INVALID_ARG_TYPE",i}if(e.protocol!=="file:"){const i=new TypeError("The URL must be of scheme file");throw i.code="ERR_INVALID_URL_SCHEME",i}return K_(e)}function K_(e){if(e.hostname!==""){const l=new TypeError('File URL host must be "localhost" or empty on darwin');throw l.code="ERR_INVALID_FILE_URL_HOST",l}const i=e.pathname;let r=-1;for(;++r0){let[E,...w]=y;const S=l[b][1];ku(S)&&ku(E)&&(E=eu(!0,S,E)),l[b]=[m,E,...w]}}}}const Y_=new Uu().freeze();function iu(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function ou(e,i){if(typeof i!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function lu(e,i){if(i)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Xd(e){if(!ku(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Jd(e,i,r){if(!r)throw new Error("`"+e+"` finished async. Use `"+i+"` instead")}function Gl(e){return Q_(e)?e:new lm(e)}function Q_(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function Z_(e){return typeof e=="string"||X_(e)}function X_(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const J_="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",ep=[],tp={allowDangerousHtml:!0},ev=/^(https?|ircs?|mailto|xmpp)$/i,tv=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function nv(e){const i=rv(e),r=iv(e);return ov(i.runSync(i.parse(r),r),e)}function rv(e){const i=e.rehypePlugins||ep,r=e.remarkPlugins||ep,l=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...tp}:tp;return Y_().use(zE).use(r).use(O_,l).use(i)}function iv(e){const i=e.children||"",r=new lm;return typeof i=="string"&&(r.value=i),r}function ov(e,i){const r=i.allowedElements,l=i.allowElement,s=i.components,c=i.disallowedElements,u=i.skipHtml,d=i.unwrapDisallowed,p=i.urlTransform||lv;for(const y of tv)Object.hasOwn(i,y.from)&&(""+y.from+(y.to?"use `"+y.to+"` instead":"remove it")+J_+y.id,void 0);return i.className&&(e={type:"element",tagName:"div",properties:{className:i.className},children:e.type==="root"?e.children:[e]}),sa(e,m),_y(e,{Fragment:H.Fragment,components:s,ignoreInvalidStyle:!0,jsx:H.jsx,jsxs:H.jsxs,passKeys:!0,passNode:!0});function m(y,h,b){if(y.type==="raw"&&b&&typeof h=="number")return u?b.children.splice(h,1):b.children[h]={type:"text",value:y.value},h;if(y.type==="element"){let E;for(E in Qs)if(Object.hasOwn(Qs,E)&&Object.hasOwn(y.properties,E)){const w=y.properties[E],S=Qs[E];(S===null||S.includes(y.tagName))&&(y.properties[E]=p(String(w||""),E,y))}}if(y.type==="element"){let E=r?!r.includes(y.tagName):c?c.includes(y.tagName):!1;if(!E&&l&&typeof h=="number"&&(E=!l(y,h,b)),E&&b&&typeof h=="number")return d&&y.children?b.children.splice(h,1,...y.children):b.children.splice(h,1),h}}}function lv(e){const i=e.indexOf(":"),r=e.indexOf("?"),l=e.indexOf("#"),s=e.indexOf("/");return i===-1||s!==-1&&i>s||r!==-1&&i>r||l!==-1&&i>l||ev.test(e.slice(0,i))?e:""}function np(e,i){const r=String(e);if(typeof i!="string")throw new TypeError("Expected character");let l=0,s=r.indexOf(i);for(;s!==-1;)l++,s=r.indexOf(i,s+i.length);return l}function av(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function sv(e,i,r){const s=Io((r||{}).ignore||[]),c=uv(i);let u=-1;for(;++u0?{type:"text",value:M}:void 0),M===!1?b.lastIndex=W+1:(w!==W&&L.push({type:"text",value:m.value.slice(w,W)}),Array.isArray(M)?L.push(...M):M&&L.push(M),w=W+z[0].length,N=!0),!b.global)break;z=b.exec(m.value)}return N?(w?\]}]+$/.exec(e);if(!i)return[e,void 0];e=e.slice(0,i.index);let r=i[0],l=r.indexOf(")");const s=np(e,"(");let c=np(e,")");for(;l!==-1&&s>c;)e+=r.slice(0,l+1),r=r.slice(l+1),l=r.indexOf(")"),c++;return[e,r]}function am(e,i){const r=e.input.charCodeAt(e.index-1);return(e.index===0||Zr(r)||ia(r))&&(!i||r!==47)}sm.peek=Iv;function xv(){this.buffer()}function Sv(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function Nv(){this.buffer()}function Cv(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function Tv(e){const i=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=Tn(this.sliceSerialize(e)).toLowerCase(),r.label=i}function Av(e){this.exit(e)}function Rv(e){const i=this.resume(),r=this.stack[this.stack.length-1];r.type,r.identifier=Tn(this.sliceSerialize(e)).toLowerCase(),r.label=i}function Ov(e){this.exit(e)}function Iv(){return"["}function sm(e,i,r,l){const s=r.createTracker(l);let c=s.move("[^");const u=r.enter("footnoteReference"),d=r.enter("reference");return c+=s.move(r.safe(r.associationId(e),{after:"]",before:c})),d(),u(),c+=s.move("]"),c}function Mv(){return{enter:{gfmFootnoteCallString:xv,gfmFootnoteCall:Sv,gfmFootnoteDefinitionLabelString:Nv,gfmFootnoteDefinition:Cv},exit:{gfmFootnoteCallString:Tv,gfmFootnoteCall:Av,gfmFootnoteDefinitionLabelString:Rv,gfmFootnoteDefinition:Ov}}}function Lv(e){let i=!1;return e&&e.firstLineBlank&&(i=!0),{handlers:{footnoteDefinition:r,footnoteReference:sm},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function r(l,s,c,u){const d=c.createTracker(u);let p=d.move("[^");const m=c.enter("footnoteDefinition"),y=c.enter("label");return p+=d.move(c.safe(c.associationId(l),{before:p,after:"]"})),y(),p+=d.move("]:"),l.children&&l.children.length>0&&(d.shift(4),p+=d.move((i?` +`:" ")+c.indentLines(c.containerFlow(l,d.current()),i?um:Dv))),m(),p}}function Dv(e,i,r){return i===0?e:um(e,i,r)}function um(e,i,r){return(r?"":" ")+e}const Pv=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];cm.peek=$v;function zv(){return{canContainEols:["delete"],enter:{strikethrough:Bv},exit:{strikethrough:Uv}}}function Fv(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Pv}],handlers:{delete:cm}}}function Bv(e){this.enter({type:"delete",children:[]},e)}function Uv(e){this.exit(e)}function cm(e,i,r,l){const s=r.createTracker(l),c=r.enter("strikethrough");let u=s.move("~~");return u+=r.containerPhrasing(e,{...s.current(),before:u,after:"~"}),u+=s.move("~~"),c(),u}function $v(){return"~"}function Hv(e){return e.length}function jv(e,i){const r=i||{},l=(r.align||[]).concat(),s=r.stringLength||Hv,c=[],u=[],d=[],p=[];let m=0,y=-1;for(;++ym&&(m=e[y].length);++Np[N])&&(p[N]=z)}S.push(L)}u[y]=S,d[y]=R}let h=-1;if(typeof l=="object"&&"length"in l)for(;++hp[h]&&(p[h]=L),E[h]=L),b[h]=z}u.splice(1,0,b),d.splice(1,0,E),y=-1;const w=[];for(;++y "),c.shift(2);const u=r.indentLines(r.containerFlow(e,c.current()),Wv);return s(),u}function Wv(e,i,r){return">"+(r?"":" ")+e}function Vv(e,i){return ip(e,i.inConstruct,!0)&&!ip(e,i.notInConstruct,!1)}function ip(e,i,r){if(typeof i=="string"&&(i=[i]),!i||i.length===0)return r;let l=-1;for(;++lu&&(u=c):c=1,s=l+i.length,l=r.indexOf(i,s);return u}function Yv(e,i){return!!(i.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Qv(e){const i=e.options.fence||"`";if(i!=="`"&&i!=="~")throw new Error("Cannot serialize code with `"+i+"` for `options.fence`, expected `` ` `` or `~`");return i}function Zv(e,i,r,l){const s=Qv(r),c=e.value||"",u=s==="`"?"GraveAccent":"Tilde";if(Yv(e,r)){const h=r.enter("codeIndented"),b=r.indentLines(c,Xv);return h(),b}const d=r.createTracker(l),p=s.repeat(Math.max(qv(c,s)+1,3)),m=r.enter("codeFenced");let y=d.move(p);if(e.lang){const h=r.enter(`codeFencedLang${u}`);y+=d.move(r.safe(e.lang,{before:y,after:" ",encode:["`"],...d.current()})),h()}if(e.lang&&e.meta){const h=r.enter(`codeFencedMeta${u}`);y+=d.move(" "),y+=d.move(r.safe(e.meta,{before:y,after:` +`,encode:["`"],...d.current()})),h()}return y+=d.move(` +`),c&&(y+=d.move(c+` +`)),y+=d.move(p),m(),y}function Xv(e,i,r){return(r?"":" ")+e}function $u(e){const i=e.options.quote||'"';if(i!=='"'&&i!=="'")throw new Error("Cannot serialize title with `"+i+"` for `options.quote`, expected `\"`, or `'`");return i}function Jv(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.enter("definition");let d=r.enter("label");const p=r.createTracker(l);let m=p.move("[");return m+=p.move(r.safe(r.associationId(e),{before:m,after:"]",...p.current()})),m+=p.move("]: "),d(),!e.url||/[\0- \u007F]/.test(e.url)?(d=r.enter("destinationLiteral"),m+=p.move("<"),m+=p.move(r.safe(e.url,{before:m,after:">",...p.current()})),m+=p.move(">")):(d=r.enter("destinationRaw"),m+=p.move(r.safe(e.url,{before:m,after:e.title?" ":` +`,...p.current()}))),d(),e.title&&(d=r.enter(`title${c}`),m+=p.move(" "+s),m+=p.move(r.safe(e.title,{before:m,after:s,...p.current()})),m+=p.move(s),d()),u(),m}function ek(e){const i=e.options.emphasis||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize emphasis with `"+i+"` for `options.emphasis`, expected `*`, or `_`");return i}function To(e){return"&#x"+e.toString(16).toUpperCase()+";"}function ta(e,i,r){const l=Ii(e),s=Ii(i);return l===void 0?s===void 0?r==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:s===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:l===1?s===void 0?{inside:!1,outside:!1}:s===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:s===void 0?{inside:!1,outside:!1}:s===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}fm.peek=tk;function fm(e,i,r,l){const s=ek(r),c=r.enter("emphasis"),u=r.createTracker(l),d=u.move(s);let p=u.move(r.containerPhrasing(e,{after:s,before:d,...u.current()}));const m=p.charCodeAt(0),y=ta(l.before.charCodeAt(l.before.length-1),m,s);y.inside&&(p=To(m)+p.slice(1));const h=p.charCodeAt(p.length-1),b=ta(l.after.charCodeAt(0),h,s);b.inside&&(p=p.slice(0,-1)+To(h));const E=u.move(s);return c(),r.attentionEncodeSurroundingInfo={after:b.outside,before:y.outside},d+p+E}function tk(e,i,r){return r.options.emphasis||"*"}function nk(e,i){let r=!1;return sa(e,function(l){if("value"in l&&/\r?\n|\r/.test(l.value)||l.type==="break")return r=!0,_u}),!!((!e.depth||e.depth<3)&&Mu(e)&&(i.options.setext||r))}function rk(e,i,r,l){const s=Math.max(Math.min(6,e.depth||1),1),c=r.createTracker(l);if(nk(e,r)){const y=r.enter("headingSetext"),h=r.enter("phrasing"),b=r.containerPhrasing(e,{...c.current(),before:` +`,after:` +`});return h(),y(),b+` +`+(s===1?"=":"-").repeat(b.length-(Math.max(b.lastIndexOf("\r"),b.lastIndexOf(` +`))+1))}const u="#".repeat(s),d=r.enter("headingAtx"),p=r.enter("phrasing");c.move(u+" ");let m=r.containerPhrasing(e,{before:"# ",after:` +`,...c.current()});return/^[\t ]/.test(m)&&(m=To(m.charCodeAt(0))+m.slice(1)),m=m?u+" "+m:u,r.options.closeAtx&&(m+=" "+u),p(),d(),m}dm.peek=ik;function dm(e){return e.value||""}function ik(){return"<"}pm.peek=ok;function pm(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.enter("image");let d=r.enter("label");const p=r.createTracker(l);let m=p.move("![");return m+=p.move(r.safe(e.alt,{before:m,after:"]",...p.current()})),m+=p.move("]("),d(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(d=r.enter("destinationLiteral"),m+=p.move("<"),m+=p.move(r.safe(e.url,{before:m,after:">",...p.current()})),m+=p.move(">")):(d=r.enter("destinationRaw"),m+=p.move(r.safe(e.url,{before:m,after:e.title?" ":")",...p.current()}))),d(),e.title&&(d=r.enter(`title${c}`),m+=p.move(" "+s),m+=p.move(r.safe(e.title,{before:m,after:s,...p.current()})),m+=p.move(s),d()),m+=p.move(")"),u(),m}function ok(){return"!"}mm.peek=lk;function mm(e,i,r,l){const s=e.referenceType,c=r.enter("imageReference");let u=r.enter("label");const d=r.createTracker(l);let p=d.move("![");const m=r.safe(e.alt,{before:p,after:"]",...d.current()});p+=d.move(m+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const h=r.safe(r.associationId(e),{before:p,after:"]",...d.current()});return u(),r.stack=y,c(),s==="full"||!m||m!==h?p+=d.move(h+"]"):s==="shortcut"?p=p.slice(0,-1):p+=d.move("]"),p}function lk(){return"!"}gm.peek=ak;function gm(e,i,r){let l=e.value||"",s="`",c=-1;for(;new RegExp("(^|[^`])"+s+"([^`]|$)").test(l);)s+="`";for(/[^ \r\n]/.test(l)&&(/^[ \r\n]/.test(l)&&/[ \r\n]$/.test(l)||/^`|`$/.test(l))&&(l=" "+l+" ");++c\u007F]/.test(e.url))}ym.peek=sk;function ym(e,i,r,l){const s=$u(r),c=s==='"'?"Quote":"Apostrophe",u=r.createTracker(l);let d,p;if(hm(e,r)){const y=r.stack;r.stack=[],d=r.enter("autolink");let h=u.move("<");return h+=u.move(r.containerPhrasing(e,{before:h,after:">",...u.current()})),h+=u.move(">"),d(),r.stack=y,h}d=r.enter("link"),p=r.enter("label");let m=u.move("[");return m+=u.move(r.containerPhrasing(e,{before:m,after:"](",...u.current()})),m+=u.move("]("),p(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(p=r.enter("destinationLiteral"),m+=u.move("<"),m+=u.move(r.safe(e.url,{before:m,after:">",...u.current()})),m+=u.move(">")):(p=r.enter("destinationRaw"),m+=u.move(r.safe(e.url,{before:m,after:e.title?" ":")",...u.current()}))),p(),e.title&&(p=r.enter(`title${c}`),m+=u.move(" "+s),m+=u.move(r.safe(e.title,{before:m,after:s,...u.current()})),m+=u.move(s),p()),m+=u.move(")"),d(),m}function sk(e,i,r){return hm(e,r)?"<":"["}bm.peek=uk;function bm(e,i,r,l){const s=e.referenceType,c=r.enter("linkReference");let u=r.enter("label");const d=r.createTracker(l);let p=d.move("[");const m=r.containerPhrasing(e,{before:p,after:"]",...d.current()});p+=d.move(m+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const h=r.safe(r.associationId(e),{before:p,after:"]",...d.current()});return u(),r.stack=y,c(),s==="full"||!m||m!==h?p+=d.move(h+"]"):s==="shortcut"?p=p.slice(0,-1):p+=d.move("]"),p}function uk(){return"["}function Hu(e){const i=e.options.bullet||"*";if(i!=="*"&&i!=="+"&&i!=="-")throw new Error("Cannot serialize items with `"+i+"` for `options.bullet`, expected `*`, `+`, or `-`");return i}function ck(e){const i=Hu(e),r=e.options.bulletOther;if(!r)return i==="*"?"-":"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(r===i)throw new Error("Expected `bullet` (`"+i+"`) and `bulletOther` (`"+r+"`) to be different");return r}function fk(e){const i=e.options.bulletOrdered||".";if(i!=="."&&i!==")")throw new Error("Cannot serialize items with `"+i+"` for `options.bulletOrdered`, expected `.` or `)`");return i}function Em(e){const i=e.options.rule||"*";if(i!=="*"&&i!=="-"&&i!=="_")throw new Error("Cannot serialize rules with `"+i+"` for `options.rule`, expected `*`, `-`, or `_`");return i}function dk(e,i,r,l){const s=r.enter("list"),c=r.bulletCurrent;let u=e.ordered?fk(r):Hu(r);const d=e.ordered?u==="."?")":".":ck(r);let p=i&&r.bulletLastUsed?u===r.bulletLastUsed:!1;if(!e.ordered){const y=e.children?e.children[0]:void 0;if((u==="*"||u==="-")&&y&&(!y.children||!y.children[0])&&r.stack[r.stack.length-1]==="list"&&r.stack[r.stack.length-2]==="listItem"&&r.stack[r.stack.length-3]==="list"&&r.stack[r.stack.length-4]==="listItem"&&r.indexStack[r.indexStack.length-1]===0&&r.indexStack[r.indexStack.length-2]===0&&r.indexStack[r.indexStack.length-3]===0&&(p=!0),Em(r)===u&&y){let h=-1;for(;++h-1?i.start:1)+(r.options.incrementListMarker===!1?0:i.children.indexOf(e))+c);let u=c.length+1;(s==="tab"||s==="mixed"&&(i&&i.type==="list"&&i.spread||e.spread))&&(u=Math.ceil(u/4)*4);const d=r.createTracker(l);d.move(c+" ".repeat(u-c.length)),d.shift(u);const p=r.enter("listItem"),m=r.indentLines(r.containerFlow(e,d.current()),y);return p(),m;function y(h,b,E){return b?(E?"":" ".repeat(u))+h:(E?c:c+" ".repeat(u-c.length))+h}}function gk(e,i,r,l){const s=r.enter("paragraph"),c=r.enter("phrasing"),u=r.containerPhrasing(e,l);return c(),s(),u}const hk=Io(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function yk(e,i,r,l){return(e.children.some(function(u){return hk(u)})?r.containerPhrasing:r.containerFlow).call(r,e,l)}function bk(e){const i=e.options.strong||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize strong with `"+i+"` for `options.strong`, expected `*`, or `_`");return i}_m.peek=Ek;function _m(e,i,r,l){const s=bk(r),c=r.enter("strong"),u=r.createTracker(l),d=u.move(s+s);let p=u.move(r.containerPhrasing(e,{after:s,before:d,...u.current()}));const m=p.charCodeAt(0),y=ta(l.before.charCodeAt(l.before.length-1),m,s);y.inside&&(p=To(m)+p.slice(1));const h=p.charCodeAt(p.length-1),b=ta(l.after.charCodeAt(0),h,s);b.inside&&(p=p.slice(0,-1)+To(h));const E=u.move(s+s);return c(),r.attentionEncodeSurroundingInfo={after:b.outside,before:y.outside},d+p+E}function Ek(e,i,r){return r.options.strong||"*"}function _k(e,i,r,l){return r.safe(e.value,l)}function vk(e){const i=e.options.ruleRepetition||3;if(i<3)throw new Error("Cannot serialize rules with repetition `"+i+"` for `options.ruleRepetition`, expected `3` or more");return i}function kk(e,i,r){const l=(Em(r)+(r.options.ruleSpaces?" ":"")).repeat(vk(r));return r.options.ruleSpaces?l.slice(0,-1):l}const vm={blockquote:Kv,break:op,code:Zv,definition:Jv,emphasis:fm,hardBreak:op,heading:rk,html:dm,image:pm,imageReference:mm,inlineCode:gm,link:ym,linkReference:bm,list:dk,listItem:mk,paragraph:gk,root:yk,strong:_m,text:_k,thematicBreak:kk};function wk(){return{enter:{table:xk,tableData:lp,tableHeader:lp,tableRow:Nk},exit:{codeText:Ck,table:Sk,tableData:cu,tableHeader:cu,tableRow:cu}}}function xk(e){const i=e._align;this.enter({type:"table",align:i.map(function(r){return r==="none"?null:r}),children:[]},e),this.data.inTable=!0}function Sk(e){this.exit(e),this.data.inTable=void 0}function Nk(e){this.enter({type:"tableRow",children:[]},e)}function cu(e){this.exit(e)}function lp(e){this.enter({type:"tableCell",children:[]},e)}function Ck(e){let i=this.resume();this.data.inTable&&(i=i.replace(/\\([\\|])/g,Tk));const r=this.stack[this.stack.length-1];r.type,r.value=i,this.exit(e)}function Tk(e,i){return i==="|"?i:e}function Ak(e){const i=e||{},r=i.tableCellPadding,l=i.tablePipeAlign,s=i.stringLength,c=r?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:b,table:u,tableCell:p,tableRow:d}};function u(E,w,S,R){return m(y(E,S,R),E.align)}function d(E,w,S,R){const N=h(E,S,R),L=m([N]);return L.slice(0,L.indexOf(` +`))}function p(E,w,S,R){const N=S.enter("tableCell"),L=S.enter("phrasing"),z=S.containerPhrasing(E,{...R,before:c,after:c});return L(),N(),z}function m(E,w){return jv(E,{align:w,alignDelimiters:l,padding:r,stringLength:s})}function y(E,w,S){const R=E.children;let N=-1;const L=[],z=w.enter("table");for(;++N0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}const Vk={tokenize:tw,partial:!0};function qk(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Xk,continuation:{tokenize:Jk},exit:ew}},text:{91:{name:"gfmFootnoteCall",tokenize:Zk},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:Yk,resolveTo:Qk}}}}function Yk(e,i,r){const l=this;let s=l.events.length;const c=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let u;for(;s--;){const p=l.events[s][1];if(p.type==="labelImage"){u=p;break}if(p.type==="gfmFootnoteCall"||p.type==="labelLink"||p.type==="label"||p.type==="image"||p.type==="link")break}return d;function d(p){if(!u||!u._balanced)return r(p);const m=Tn(l.sliceSerialize({start:u.end,end:l.now()}));return m.codePointAt(0)!==94||!c.includes(m.slice(1))?r(p):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),i(p))}}function Qk(e,i){let r=e.length;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";const l={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},s={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};s.end.column++,s.end.offset++,s.end._bufferIndex++;const c={type:"gfmFootnoteCallString",start:Object.assign({},s.end),end:Object.assign({},e[e.length-1][1].start)},u={type:"chunkString",contentType:"string",start:Object.assign({},c.start),end:Object.assign({},c.end)},d=[e[r+1],e[r+2],["enter",l,i],e[r+3],e[r+4],["enter",s,i],["exit",s,i],["enter",c,i],["enter",u,i],["exit",u,i],["exit",c,i],e[e.length-2],e[e.length-1],["exit",l,i]];return e.splice(r,e.length-r+1,...d),e}function Zk(e,i,r){const l=this,s=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let c=0,u;return d;function d(h){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),p}function p(h){return h!==94?r(h):(e.enter("gfmFootnoteCallMarker"),e.consume(h),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",m)}function m(h){if(c>999||h===93&&!u||h===null||h===91||et(h))return r(h);if(h===93){e.exit("chunkString");const b=e.exit("gfmFootnoteCallString");return s.includes(Tn(l.sliceSerialize(b)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),i):r(h)}return et(h)||(u=!0),c++,e.consume(h),h===92?y:m}function y(h){return h===91||h===92||h===93?(e.consume(h),c++,m):m(h)}}function Xk(e,i,r){const l=this,s=l.parser.gfmFootnotes||(l.parser.gfmFootnotes=[]);let c,u=0,d;return p;function p(w){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionLabelMarker"),m}function m(w){return w===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",y):r(w)}function y(w){if(u>999||w===93&&!d||w===null||w===91||et(w))return r(w);if(w===93){e.exit("chunkString");const S=e.exit("gfmFootnoteDefinitionLabelString");return c=Tn(l.sliceSerialize(S)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),b}return et(w)||(d=!0),u++,e.consume(w),w===92?h:y}function h(w){return w===91||w===92||w===93?(e.consume(w),u++,y):y(w)}function b(w){return w===58?(e.enter("definitionMarker"),e.consume(w),e.exit("definitionMarker"),s.includes(c)||s.push(c),We(e,E,"gfmFootnoteDefinitionWhitespace")):r(w)}function E(w){return i(w)}}function Jk(e,i,r){return e.check(Oo,i,e.attempt(Vk,i,r))}function ew(e){e.exit("gfmFootnoteDefinition")}function tw(e,i,r){const l=this;return We(e,s,"gfmFootnoteDefinitionIndent",5);function s(c){const u=l.events[l.events.length-1];return u&&u[1].type==="gfmFootnoteDefinitionIndent"&&u[2].sliceSerialize(u[1],!0).length===4?i(c):r(c)}}function nw(e){let r=(e||{}).singleTilde;const l={name:"strikethrough",tokenize:c,resolveAll:s};return r==null&&(r=!0),{text:{126:l},insideSpan:{null:[l]},attentionMarkers:{null:[126]}};function s(u,d){let p=-1;for(;++p1?p(w):(u.consume(w),h++,E);if(h<2&&!r)return p(w);const R=u.exit("strikethroughSequenceTemporary"),N=Ii(w);return R._open=!N||N===2&&!!S,R._close=!S||S===2&&!!N,d(w)}}}class rw{constructor(){this.map=[]}add(i,r,l){iw(this,i,r,l)}consume(i){if(this.map.sort(function(c,u){return c[0]-u[0]}),this.map.length===0)return;let r=this.map.length;const l=[];for(;r>0;)r-=1,l.push(i.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),i.length=this.map[r][0];l.push(i.slice()),i.length=0;let s=l.pop();for(;s;){for(const c of s)i.push(c);s=l.pop()}this.map.length=0}}function iw(e,i,r,l){let s=0;if(!(r===0&&l.length===0)){for(;s-1;){const Z=l.events[K][1].type;if(Z==="lineEnding"||Z==="linePrefix")K--;else break}const Y=K>-1?l.events[K][1].type:null,re=Y==="tableHead"||Y==="tableRow"?M:p;return re===M&&l.parser.lazy[l.now().line]?r(I):re(I)}function p(I){return e.enter("tableHead"),e.enter("tableRow"),m(I)}function m(I){return I===124||(u=!0,c+=1),y(I)}function y(I){return I===null?r(I):Ce(I)?c>1?(c=0,l.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),E):r(I):Ue(I)?We(e,y,"whitespace")(I):(c+=1,u&&(u=!1,s+=1),I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),u=!0,y):(e.enter("data"),h(I)))}function h(I){return I===null||I===124||et(I)?(e.exit("data"),y(I)):(e.consume(I),I===92?b:h)}function b(I){return I===92||I===124?(e.consume(I),h):h(I)}function E(I){return l.interrupt=!1,l.parser.lazy[l.now().line]?r(I):(e.enter("tableDelimiterRow"),u=!1,Ue(I)?We(e,w,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):w(I))}function w(I){return I===45||I===58?R(I):I===124?(u=!0,e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),S):Q(I)}function S(I){return Ue(I)?We(e,R,"whitespace")(I):R(I)}function R(I){return I===58?(c+=1,u=!0,e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),N):I===45?(c+=1,N(I)):I===null||Ce(I)?W(I):Q(I)}function N(I){return I===45?(e.enter("tableDelimiterFiller"),L(I)):Q(I)}function L(I){return I===45?(e.consume(I),L):I===58?(u=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(I),e.exit("tableDelimiterMarker"),z):(e.exit("tableDelimiterFiller"),z(I))}function z(I){return Ue(I)?We(e,W,"whitespace")(I):W(I)}function W(I){return I===124?w(I):I===null||Ce(I)?!u||s!==c?Q(I):(e.exit("tableDelimiterRow"),e.exit("tableHead"),i(I)):Q(I)}function Q(I){return r(I)}function M(I){return e.enter("tableRow"),q(I)}function q(I){return I===124?(e.enter("tableCellDivider"),e.consume(I),e.exit("tableCellDivider"),q):I===null||Ce(I)?(e.exit("tableRow"),i(I)):Ue(I)?We(e,q,"whitespace")(I):(e.enter("data"),ne(I))}function ne(I){return I===null||I===124||et(I)?(e.exit("data"),q(I)):(e.consume(I),I===92?X:ne)}function X(I){return I===92||I===124?(e.consume(I),ne):ne(I)}}function sw(e,i){let r=-1,l=!0,s=0,c=[0,0,0,0],u=[0,0,0,0],d=!1,p=0,m,y,h;const b=new rw;for(;++rr[2]+1){const w=r[2]+1,S=r[3]-r[2]-1;e.add(w,S,[])}}e.add(r[3]+1,0,[["exit",h,i]])}return s!==void 0&&(c.end=Object.assign({},Ai(i.events,s)),e.add(s,0,[["exit",c,i]]),c=void 0),c}function sp(e,i,r,l,s){const c=[],u=Ai(i.events,r);s&&(s.end=Object.assign({},u),c.push(["exit",s,i])),l.end=Object.assign({},u),c.push(["exit",l,i]),e.add(r+1,0,c)}function Ai(e,i){const r=e[i],l=r[0]==="enter"?"start":"end";return r[1][l]}const uw={name:"tasklistCheck",tokenize:fw};function cw(){return{text:{91:uw}}}function fw(e,i,r){const l=this;return s;function s(p){return l.previous!==null||!l._gfmTasklistFirstContentOfListItem?r(p):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(p),e.exit("taskListCheckMarker"),c)}function c(p){return et(p)?(e.enter("taskListCheckValueUnchecked"),e.consume(p),e.exit("taskListCheckValueUnchecked"),u):p===88||p===120?(e.enter("taskListCheckValueChecked"),e.consume(p),e.exit("taskListCheckValueChecked"),u):r(p)}function u(p){return p===93?(e.enter("taskListCheckMarker"),e.consume(p),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),d):r(p)}function d(p){return Ce(p)?i(p):Ue(p)?e.check({tokenize:dw},i,r)(p):r(p)}}function dw(e,i,r){return We(e,l,"whitespace");function l(s){return s===null?r(s):i(s)}}function pw(e){return Bp([Fk(),qk(),nw(e),lw(),cw()])}const mw={};function gw(e){const i=this,r=e||mw,l=i.data(),s=l.micromarkExtensions||(l.micromarkExtensions=[]),c=l.fromMarkdownExtensions||(l.fromMarkdownExtensions=[]),u=l.toMarkdownExtensions||(l.toMarkdownExtensions=[]);s.push(pw(r)),c.push(Lk()),u.push(Dk(r))}const up=(function(e,i,r){const l=Io(r);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof i=="number"){if(i<0||i===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(i=e.children.indexOf(i),i<0)throw new Error("Expected child node or index");for(;++im&&(m=y):y&&(m!==void 0&&m>-1&&p.push(` +`.repeat(m)||" "),m=-1,p.push(y))}return p.join("")}function Om(e,i,r){return e.type==="element"?ww(e,i,r):e.type==="text"?r.whitespace==="normal"?Im(e,r):xw(e):[]}function ww(e,i,r){const l=Mm(e,r),s=e.children||[];let c=-1,u=[];if(vw(e))return u;let d,p;for(Su(e)||pp(e)&&up(i,e,pp)?p=` +`:_w(e)?(d=2,p=2):Rm(e)&&(d=1,p=1);++c]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},m={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(m,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",w=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],S=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],R=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],N=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],W={type:S,keyword:w,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:R},Q={className:"function.dispatch",relevance:0,keywords:{_hint:N},begin:i.concat(/\b/,`(?!${w.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},M=[Q,h,d,r,e.C_BLOCK_COMMENT_MODE,y,m],q={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:W,contains:M.concat([{begin:/\(/,end:/\)/,keywords:W,contains:M.concat(["self"]),relevance:0}]),relevance:0},ne={className:"function",begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:W,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:W,relevance:0},{begin:E,returnBegin:!0,contains:[b],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[m,y]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:W,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,m,y,d,{begin:/\(/,end:/\)/,keywords:W,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,m,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:W,illegal:"",keywords:W,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:W},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Rw(e){const i={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},r=Aw(e),l=r.keywords;return l.type=[...l.type,...i.type],l.literal=[...l.literal,...i.literal],l.built_in=[...l.built_in,...i.built_in],l._hints=i._hints,r.name="Arduino",r.aliases=["ino"],r.supersetOf="cpp",r}function Ow(e){const i=e.regex,r={},l={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[r]}]};Object.assign(r,{className:"variable",variants:[{begin:i.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},l]});const s={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},c=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),u={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},d={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,r,s]};s.contains.push(d);const p={match:/\\"/},m={className:"string",begin:/'/,end:/'/},y={match:/\\'/},h={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,r]},b=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],E=e.SHEBANG({binary:`(${b.join("|")})`,relevance:10}),w={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},S=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],R=["true","false"],N={match:/(\/[a-z._-]+)+/},L=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],z=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],W=["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"],Q=["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"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:S,literal:R,built_in:[...L,...z,"set","shopt",...W,...Q]},contains:[E,e.SHEBANG(),w,h,c,u,N,d,p,m,y,r]}}function Iw(e){const i=e.regex,r=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),l="decltype\\(auto\\)",s="[a-zA-Z_]\\w*::",u="("+l+"|"+i.optional(s)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",d={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},m={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(m,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",R={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},N=[h,d,r,e.C_BLOCK_COMMENT_MODE,y,m],L={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:R,contains:N.concat([{begin:/\(/,end:/\)/,keywords:R,contains:N.concat(["self"]),relevance:0}]),relevance:0},z={begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:R,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:R,relevance:0},{begin:E,returnBegin:!0,contains:[e.inherit(b,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:R,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,m,y,d,{begin:/\(/,end:/\)/,keywords:R,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,m,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C",aliases:["h"],keywords:R,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:h,strings:m,keywords:R}}}function Mw(e){const i=e.regex,r=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),l="decltype\\(auto\\)",s="[a-zA-Z_]\\w*::",u="(?!struct)("+l+"|"+i.optional(s)+"[a-zA-Z_]\\w*"+i.optional("<[^<>]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},m={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},y={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},h={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(m,{className:"string"}),{className:"string",begin:/<.*?>/},r,e.C_BLOCK_COMMENT_MODE]},b={className:"title",begin:i.optional(s)+e.IDENT_RE,relevance:0},E=i.optional(s)+e.IDENT_RE+"\\s*\\(",w=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],S=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],R=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],N=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],W={type:S,keyword:w,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:R},Q={className:"function.dispatch",relevance:0,keywords:{_hint:N},begin:i.concat(/\b/,`(?!${w.join("|")})`,e.IDENT_RE,i.lookahead(/(<[^<>]+>|)\s*\(/))},M=[Q,h,d,r,e.C_BLOCK_COMMENT_MODE,y,m],q={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:W,contains:M.concat([{begin:/\(/,end:/\)/,keywords:W,contains:M.concat(["self"]),relevance:0}]),relevance:0},ne={className:"function",begin:"("+u+"[\\*&\\s]+)+"+E,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:W,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:l,keywords:W,relevance:0},{begin:E,returnBegin:!0,contains:[b],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[m,y]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:W,relevance:0,contains:[r,e.C_BLOCK_COMMENT_MODE,m,y,d,{begin:/\(/,end:/\)/,keywords:W,relevance:0,contains:["self",r,e.C_BLOCK_COMMENT_MODE,m,y,d]}]},d,r,e.C_BLOCK_COMMENT_MODE,h]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:W,illegal:"",keywords:W,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:W},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Lw(e){const i=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],r=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],l=["default","false","null","true"],s=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],c=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],u={keyword:s.concat(c),built_in:i,literal:l},d=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),p={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9'_]+|(\\b[\\d'_]+(\\.[\\d'_]*)?|\\.[\\d'_]+)([eE][-+]?[\\d'_]+)?)"}],relevance:0},m={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},y={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},h=e.inherit(y,{illegal:/\n/}),b={className:"subst",begin:/\{/,end:/\}/,keywords:u},E=e.inherit(b,{illegal:/\n/}),w={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,E]},S={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},b]},R=e.inherit(S,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},E]});b.contains=[S,w,y,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,e.C_BLOCK_COMMENT_MODE],E.contains=[R,w,h,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const N={variants:[m,S,w,y,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},L={begin:"<",end:">",contains:[{beginKeywords:"in out"},d]},z=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",W={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:u,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},N,p,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},d,L,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,L,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+z+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:u,contains:[{beginKeywords:r.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,L],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:u,relevance:0,contains:[N,p,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},W]}}const Dw=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Pw=["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"],zw=["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"],Fw=[...Pw,...zw],Bw=["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(),Uw=["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(),$w=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Hw=["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","unicode-range","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();function jw(e){const i=e.regex,r=Dw(e),l={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},s="and or not only",c=/@-?\w[\w]*(-\w+)*/,u="[a-zA-Z-][a-zA-Z0-9_-]*",d=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[r.BLOCK_COMMENT,l,r.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+u,relevance:0},r.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Uw.join("|")+")"},{begin:":(:)?("+$w.join("|")+")"}]},r.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Hw.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[r.BLOCK_COMMENT,r.HEXCOLOR,r.IMPORTANT,r.CSS_NUMBER_MODE,r.UNICODE_RANGE,...d,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...d,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},r.FUNCTION_DISPATCH]},{begin:i.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:c},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:s,attribute:Bw.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...d,r.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Fw.join("|")+")\\b"}]}}function Gw(e){const i=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:i.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+,\d+ +\+\d+ +@@/,/^@@ +-\d+ +\+\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:i.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function Kw(e){const c={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:c,illegal:"Lm(e,i,r-1))}function qw(e){const i=e.regex,r="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",l=r+Lm("(?:<"+r+"~~~(?:\\s*,\\s*"+r+"~~~)*>)?",/~~~/g,2),p={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},m={className:"meta",begin:"@"+r,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},y={className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:p,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[i.concat(/(?!else)/,r),/\s+/,r,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,r],className:{1:"keyword",3:"title.class"},contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+l+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:p,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[m,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,mp,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},mp,m]}}const gp="[A-Za-z$_][0-9A-Za-z$_]*",Yw=["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"],Qw=["true","false","null","undefined","NaN","Infinity"],Dm=["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"],Pm=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],zm=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Zw=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Xw=[].concat(zm,Dm,Pm);function Jw(e){const i=e.regex,r=(G,{after:ue})=>{const v="",end:""},c=/<[A-Za-z0-9\\._:-]+\s*\/>/,u={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(G,ue)=>{const v=G[0].length+G.index,A=G.input[v];if(A==="<"||A===","){ue.ignoreMatch();return}A===">"&&(r(G,{after:v})||ue.ignoreMatch());let U;const k=G.input.substring(v);if(U=k.match(/^\s*=/)){ue.ignoreMatch();return}if((U=k.match(/^\s+extends\s+/))&&U.index===0){ue.ignoreMatch();return}}},d={$pattern:gp,keyword:Yw,literal:Qw,built_in:Xw,"variable.language":Zw},p="[0-9](_?[0-9])*",m=`\\.(${p})`,y="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${y})((${m})|\\.)?|(${m}))[eE][+-]?(${p})\\b`},{begin:`\\b(${y})\\b((${m})\\b|\\.)?|(${m})\\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},b={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},E={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"xml"}},w={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"css"}},S={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"graphql"}},R={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,b]},L={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:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},z=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,w,S,R,{match:/\$\d+/},h];b.contains=z.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(z)});const W=[].concat(L,b.contains),Q=W.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(W)}]),M={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:Q},q={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,i.concat(l,"(",i.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},ne={relevance:0,match:i.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:{_:[...Dm,...Pm]}},X={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},I={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},K={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function Y(G){return i.concat("(?!",G.join("|"),")")}const re={match:i.concat(/\b/,Y([...zm,"super","import","await"].map(G=>`${G}\\s*\\(`)),l,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},Z={begin:i.concat(/\./,i.lookahead(i.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},$={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},M]},se="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",P={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(se)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:Q,CLASS_REFERENCE:ne},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),X,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,w,S,R,L,{match:/\$\d+/},h,ne,{scope:"attr",match:l+i.lookahead(":"),relevance:0},P,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[L,e.REGEXP_MODE,{className:"function",begin:se,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:d,contains:Q}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:c},{begin:u.begin,"on:begin":u.isTrulyOpeningTag,end:u.end}],subLanguage:"xml",contains:[{begin:u.begin,end:u.end,skip:!0,contains:["self"]}]}]},I,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,e.inherit(e.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},Z,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},re,K,q,$,{match:/\$[(.]/}]}}const ex="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",tx={scope:"number",match:ex,relevance:0};function nx(e){const i={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\r\n])*'))(?=\s*:)/,relevance:1.01},r={match:/[{}[\],:]/,className:"punctuation",relevance:0},l=["true","false","null"],s={scope:"literal",beginKeywords:l.join(" ")};return{name:"JSON",aliases:["jsonc","json5"],keywords:{literal:l},contains:[i,r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,tx,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var Oi="[0-9](_*[0-9])*",ql=`\\.(${Oi})`,Yl="[0-9a-fA-F](_*[0-9a-fA-F])*",rx={className:"number",variants:[{begin:`(\\b(${Oi})((${ql})|\\.)?|(${ql}))[eE][+-]?(${Oi})[fFdD]?\\b`},{begin:`\\b(${Oi})((${ql})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${ql})[fFdD]?\\b`},{begin:`\\b(${Oi})[fFdD]\\b`},{begin:`\\b0[xX]((${Yl})\\.?|(${Yl})?\\.(${Yl}))[pP][+-]?(${Oi})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Yl})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function ix(e){const i={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},r={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},l={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},c={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},u={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[c,s]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,c,s]}]};s.contains.push(u);const d={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},p={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(u,{className:"string"}),"self"]}]},m=rx,y=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),h={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},b=h;return b.variants[1].contains=[h],h.variants[1].contains=[b],{name:"Kotlin",aliases:["kt","kts"],keywords:i,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,y,r,l,d,p,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:i,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:i,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[h,e.C_LINE_COMMENT_MODE,y],relevance:0},e.C_LINE_COMMENT_MODE,y,d,p,u,e.C_NUMBER_MODE]},y]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},d,p]},u,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` +`},m]}}const ox=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),lx=["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"],ax=["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"],sx=[...lx,...ax],ux=["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(),Fm=["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(),Bm=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),cx=["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","unicode-range","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(),fx=Fm.concat(Bm).sort().reverse();function dx(e){const i=ox(e),r=fx,l="and or not only",s="[\\w-]+",c="("+s+"|@\\{"+s+"\\})",u=[],d=[],p=function(z){return{className:"string",begin:"~?"+z+".*?"+z}},m=function(z,W,Q){return{className:z,begin:W,relevance:Q}},y={$pattern:/[a-z-]+/,keyword:l,attribute:ux.join(" ")},h={begin:"\\(",end:"\\)",contains:d,keywords:y,relevance:0};d.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p("'"),p('"'),i.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},i.UNICODE_RANGE,i.HEXCOLOR,h,m("variable","@@?"+s,10),m("variable","@\\{"+s+"\\}"),m("built_in","~?`[^`]*?`"),{className:"attribute",begin:s+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},i.IMPORTANT,{beginKeywords:"and not"},i.FUNCTION_DISPATCH);const b=d.concat({begin:/\{/,end:/\}/,contains:u}),E={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(d)},w={begin:c+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+cx.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:d}}]},S={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:y,returnEnd:!0,contains:d,relevance:0}},R={className:"variable",variants:[{begin:"@"+s+"\\s*:",relevance:15},{begin:"@"+s}],starts:{end:"[;}]",returnEnd:!0,contains:b}},N={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:c,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,E,m("keyword","all\\b"),m("variable","@\\{"+s+"\\}"),{begin:"\\b("+sx.join("|")+")\\b",className:"selector-tag"},i.CSS_NUMBER_MODE,m("selector-tag",c,0),m("selector-id","#"+c),m("selector-class","\\."+c,0),m("selector-tag","&",0),i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Fm.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+Bm.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:b},{begin:"!important"},i.FUNCTION_DISPATCH]},L={begin:s+`:(:)?(${r.join("|")})`,returnBegin:!0,contains:[N]};return u.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,S,R,L,w,N,E,i.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:u}}function px(e){const i="\\[=*\\[",r="\\]=*\\]",l={begin:i,end:r,contains:["self"]},s=[e.COMMENT("--(?!"+i+")","$"),e.COMMENT("--"+i,r,{contains:[l],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:s.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:s}].concat(s)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:i,end:r,contains:[l],relevance:5}])}}function mx(e){const i={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%",subLanguage:"xml",relevance:0},l={begin:"^[-\\*]{3,}",end:"$"},s={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}]},c={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},u={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},d=/[A-Za-z][A-Za-z0-9+.-]*/,p={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:i.concat(/\[.+?\]\(/,d,/:\/\/.*?\)/),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}]},m={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},y={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},h=e.inherit(m,{contains:[]}),b=e.inherit(y,{contains:[]});m.contains.push(b),y.contains.push(h);let E=[r,p];return[m,y,h,b].forEach(N=>{N.contains=N.contains.concat(E)}),E=E.concat(m,y),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:E},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:E}]}]},r,c,m,y,{className:"quote",begin:"^>\\s+",contains:E,end:"$"},s,l,p,u,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function hx(e){const i={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},r=/[a-zA-Z@][a-zA-Z0-9_]*/,d={"variable.language":["this","super"],$pattern:r,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},p={$pattern:r,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:d,illegal:"/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+p.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:p,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function yx(e){const i=e.regex,r=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],l=/[dualxmsipngr]{0,12}/,s={$pattern:/[\w.]+/,keyword:r.join(" ")},c={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:s},u={begin:/->\{/,end:/\}/},d={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},p={scope:"variable",variants:[{begin:/\$\d/},{begin:i.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[d]},m={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},y=[e.BACKSLASH_ESCAPE,c,p],h=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],b=(S,R,N="\\1")=>{const L=N==="\\1"?N:i.concat(N,R);return i.concat(i.concat("(?:",S,")"),R,/(?:\\.|[^\\\/])*?/,L,/(?:\\.|[^\\\/])*?/,N,l)},E=(S,R,N)=>i.concat(i.concat("(?:",S,")"),R,/(?:\\.|[^\\\/])*?/,N,l),w=[p,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),u,{className:"string",contains:y,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},m,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:b("s|tr|y",i.either(...h,{capture:!0}))},{begin:b("s|tr|y","\\(","\\)")},{begin:b("s|tr|y","\\[","\\]")},{begin:b("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:E("(?:m|qr)?",/\//,/\//)},{begin:E("m|qr",i.either(...h,{capture:!0}),/\1/)},{begin:E("m|qr",/\(/,/\)/)},{begin:E("m|qr",/\[/,/\]/)},{begin:E("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d,m]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return c.contains=w,u.contains=w,{name:"Perl",aliases:["pl","pm"],keywords:s,contains:w}}function bx(e){const i=e.regex,r=/(?![A-Za-z0-9])(?![$])/,l=i.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,r),s=i.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,r),c=i.concat(/[A-Z]+/,r),u={scope:"variable",match:"\\$+"+l},d={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},p={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},m=e.inherit(e.APOS_STRING_MODE,{illegal:null}),y=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(p)}),h={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(p),"on:begin":(Z,$)=>{$.data._beginMatch=Z[1]||Z[2]},"on:end":(Z,$)=>{$.data._beginMatch!==Z[1]&&$.ignoreMatch()}},b=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),E=`[ +]`,w={scope:"string",variants:[y,m,h,b]},S={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},R=["false","null","true"],N=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],L=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],W={keyword:N,literal:(Z=>{const $=[];return Z.forEach(se=>{$.push(se),se.toLowerCase()===se?$.push(se.toUpperCase()):$.push(se.toLowerCase())}),$})(R),built_in:L},Q=Z=>Z.map($=>$.replace(/\|\d+$/,"")),M={variants:[{match:[/new/,i.concat(E,"+"),i.concat("(?!",Q(L).join("\\b|"),"\\b)"),s],scope:{1:"keyword",4:"title.class"}}]},q=i.concat(l,"\\b(?!\\()"),ne={variants:[{match:[i.concat(/::/,i.lookahead(/(?!class\b)/)),q],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[s,i.concat(/::/,i.lookahead(/(?!class\b)/)),q],scope:{1:"title.class",3:"variable.constant"}},{match:[s,i.concat("::",i.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[s,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},X={scope:"attr",match:i.concat(l,i.lookahead(":"),i.lookahead(/(?!::)/))},I={relevance:0,begin:/\(/,end:/\)/,keywords:W,contains:[X,u,ne,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,w,S,M]},K={relevance:0,match:[/\b/,i.concat("(?!fn\\b|function\\b|",Q(N).join("\\b|"),"|",Q(L).join("\\b|"),"\\b)"),l,i.concat(E,"*"),i.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[I]};I.contains.push(K);const Y=[X,ne,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,w,S,M],re={begin:i.concat(/#\[\s*\\?/,i.either(s,c)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:R,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:R,keyword:["new","array"]},contains:["self",...Y]},...Y,{scope:"meta",variants:[{match:s},{match:c}]}]};return{case_insensitive:!1,keywords:W,contains:[re,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},d,{scope:"variable.language",match:/\$this\b/},u,K,ne,{match:[/const/,/\s/,l],scope:{1:"keyword",3:"variable.constant"}},M,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:W,contains:["self",re,u,ne,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,w,S]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},w,S]}}function Ex(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function _x(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function vx(e){const i=e.regex,r=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),l=["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"],d={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:l,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"]},p={className:"meta",begin:/^(>>>|\.\.\.) /},m={className:"subst",begin:/\{/,end:/\}/,keywords:d,illegal:/#/},y={begin:/\{\{/,relevance:0},h={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,p],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,p],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,p,y,m]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,p,y,m]},{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,y,m]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,y,m]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},b="[0-9](_?[0-9])*",E=`(\\b(${b}))?\\.(${b})|\\b(${b})\\.`,w=`\\b|${l.join("|")}`,S={className:"number",relevance:0,variants:[{begin:`(\\b(${b})|(${E}))[eE][+-]?(${b})[jJ]?(?=${w})`},{begin:`(${E})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${w})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${w})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${w})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${w})`},{begin:`\\b(${b})[jJ](?=${w})`}]},R={className:"comment",begin:i.lookahead(/# type:/),end:/$/,keywords:d,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},N={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:["self",p,S,h,e.HASH_COMMENT_MODE]}]};return m.contains=[h,S,p],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:d,illegal:/(<\/|\?)|=>/,contains:[p,S,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},h,R,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,r],scope:{1:"keyword",3:"title.function"},contains:[N]},{variants:[{match:[/\bclass/,/\s+/,r,/\s*/,/\(\s*/,r,/\s*\)/]},{match:[/\bclass/,/\s+/,r]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[S,N,h]}]}}function kx(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function wx(e){const i=e.regex,r=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,l=i.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),s=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,c=i.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:r,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:i.lookahead(i.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:r},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[s,l]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,l]},{scope:{1:"punctuation",2:"number"},match:[c,l]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,l]}]},{scope:{3:"operator"},match:[r,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:s},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:c},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function xx(e){const i=e.regex,r="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",l=i.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),s=i.concat(l,/(::\w+)*/),u={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},d={className:"doctag",begin:"@[A-Za-z]+"},p={begin:"#<",end:">"},m=[e.COMMENT("#","$",{contains:[d]}),e.COMMENT("^=begin","^=end",{contains:[d],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],y={className:"subst",begin:/#\{/,end:/\}/,keywords:u},h={className:"string",contains:[e.BACKSLASH_ESCAPE,y],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:i.concat(/<<[-~]?'?/,i.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,y]})]}]},b="[1-9](_?[0-9])*|0",E="[0-9](_?[0-9])*",w={className:"number",relevance:0,variants:[{begin:`\\b(${b})(\\.(${E}))?([eE][+-]?(${E})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},S={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:u}]},M=[h,{variants:[{match:[/class\s+/,s,/\s+<\s+/,s]},{match:[/\b(class|module)\s+/,s]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:u},{match:[/(include|extend)\s+/,s],scope:{2:"title.class"},keywords:u},{relevance:0,match:[s,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:l,scope:"title.class"},{match:[/def/,/\s+/,r],scope:{1:"keyword",3:"title.function"},contains:[S]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[h,{begin:r}],relevance:0},w,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:u},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,y],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(p,m),relevance:0}].concat(p,m);y.contains=M,S.contains=M;const I=[{begin:/^\s*=>/,starts:{end:"$",contains:M}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:u,contains:M}}];return m.unshift(p),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:u,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(I).concat(m).concat(M)}}function Sx(e){const i=e.regex,r=/(r#)?/,l=i.concat(r,e.UNDERSCORE_IDENT_RE),s=i.concat(r,e.IDENT_RE),c={className:"title.function.invoke",relevance:0,begin:i.concat(/\b/,/(?!let|for|while|if|else|match\b)/,s,i.lookahead(/\s*\(/))},u="([ui](8|16|32|64|128|size)|f(32|64))?",d=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],p=["true","false","Some","None","Ok","Err"],m=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],y=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:y,keyword:d,literal:p,built_in:m},illegal:""},c]}}const Nx=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Cx=["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"],Tx=["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"],Ax=[...Cx,...Tx],Rx=["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(),Ox=["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(),Ix=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Mx=["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","unicode-range","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();function Lx(e){const i=Nx(e),r=Ix,l=Ox,s="@[a-z-]+",c="and or not only",d={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,i.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ax.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+l.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+r.join("|")+")"},d,{begin:/\(/,end:/\)/,contains:[i.CSS_NUMBER_MODE]},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Mx.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[i.BLOCK_COMMENT,d,i.HEXCOLOR,i.CSS_NUMBER_MODE,i.UNICODE_RANGE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.IMPORTANT,i.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:s,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:c,attribute:Rx.join(" ")},contains:[{begin:s,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},d,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,i.HEXCOLOR,i.CSS_NUMBER_MODE]},i.FUNCTION_DISPATCH]}}function Dx(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function Px(e){const i=e.regex,r=e.COMMENT("--","$"),l={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},s={begin:/"/,end:/"/,contains:[{match:/""/}]},c=["true","false","unknown"],u=["double precision","large object","with timezone","without timezone"],d=["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"],p=["add","asc","collation","desc","final","first","last","view"],m=["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"],y=["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"],h=["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"],b=["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"],E=y,w=[...m,...p].filter(Q=>!y.includes(Q)),S={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},R={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},N={match:i.concat(/\b/,i.either(...E),/\s*\(/),relevance:0,keywords:{built_in:E}};function L(Q){return i.concat(/\b/,i.either(...Q.map(M=>M.replace(/\s+/,"\\s+"))),/\b/)}const z={scope:"keyword",match:L(b),relevance:0};function W(Q,{exceptions:M,when:q}={}){const ne=q;return M=M||[],Q.map(X=>X.match(/\|\d+$/)||M.includes(X)?X:ne(X)?`${X}|0`:X)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:W(w,{when:Q=>Q.length<3}),literal:c,type:d,built_in:h},contains:[{scope:"type",match:L(u)},z,N,S,l,s,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,r,R]}}function Um(e){return e?typeof e=="string"?e:e.source:null}function ko(e){return Ze("(?=",e,")")}function Ze(...e){return e.map(r=>Um(r)).join("")}function zx(e){const i=e[e.length-1];return typeof i=="object"&&i.constructor===Object?(e.splice(e.length-1,1),i):{}}function $t(...e){return"("+(zx(e).capture?"":"?:")+e.map(l=>Um(l)).join("|")+")"}const Ku=e=>Ze(/\b/,e,/\w$/.test(e)?/\b/:/\B/),Fx=["Protocol","Type"].map(Ku),hp=["init","self"].map(Ku),Bx=["Any","Self"],fu=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],yp=["false","nil","true"],Ux=["assignment","associativity","higherThan","left","lowerThan","none","right"],$x=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],bp=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],$m=$t(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Hm=$t($m,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),du=Ze($m,Hm,"*"),jm=$t(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),na=$t(jm,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Bn=Ze(jm,na,"*"),Ql=Ze(/[A-Z]/,na,"*"),Hx=["attached","autoclosure",Ze(/convention\(/,$t("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Ze(/objc\(/,Bn,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],jx=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Gx(e){const i={match:/\s+/,relevance:0},r=e.COMMENT("/\\*","\\*/",{contains:["self"]}),l=[e.C_LINE_COMMENT_MODE,r],s={match:[/\./,$t(...Fx,...hp)],className:{2:"keyword"}},c={match:Ze(/\./,$t(...fu)),relevance:0},u=fu.filter(Ke=>typeof Ke=="string").concat(["_|0"]),d=fu.filter(Ke=>typeof Ke!="string").concat(Bx).map(Ku),p={variants:[{className:"keyword",match:$t(...d,...hp)}]},m={$pattern:$t(/\b\w+/,/#\w+/),keyword:u.concat($x),literal:yp},y=[s,c,p],h={match:Ze(/\./,$t(...bp)),relevance:0},b={className:"built_in",match:Ze(/\b/,$t(...bp),/(?=\()/)},E=[h,b],w={match:/->/,relevance:0},S={className:"operator",relevance:0,variants:[{match:du},{match:`\\.(\\.|${Hm})+`}]},R=[w,S],N="([0-9]_*)+",L="([0-9a-fA-F]_*)+",z={className:"number",relevance:0,variants:[{match:`\\b(${N})(\\.(${N}))?([eE][+-]?(${N}))?\\b`},{match:`\\b0x(${L})(\\.(${L}))?([pP][+-]?(${N}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},W=(Ke="")=>({className:"subst",variants:[{match:Ze(/\\/,Ke,/[0\\tnr"']/)},{match:Ze(/\\/,Ke,/u\{[0-9a-fA-F]{1,8}\}/)}]}),Q=(Ke="")=>({className:"subst",match:Ze(/\\/,Ke,/[\t ]*(?:[\r\n]|\r\n)/)}),M=(Ke="")=>({className:"subst",label:"interpol",begin:Ze(/\\/,Ke,/\(/),end:/\)/}),q=(Ke="")=>({begin:Ze(Ke,/"""/),end:Ze(/"""/,Ke),contains:[W(Ke),Q(Ke),M(Ke)]}),ne=(Ke="")=>({begin:Ze(Ke,/"/),end:Ze(/"/,Ke),contains:[W(Ke),M(Ke)]}),X={className:"string",variants:[q(),q("#"),q("##"),q("###"),ne(),ne("#"),ne("##"),ne("###")]},I=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],K={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:I},Y=Ke=>{const Jt=Ze(Ke,/\//),an=Ze(/\//,Ke);return{begin:Jt,end:an,contains:[...I,{scope:"comment",begin:`#(?!.*${an})`,end:/$/}]}},re={scope:"regexp",variants:[Y("###"),Y("##"),Y("#"),K]},Z={match:Ze(/`/,Bn,/`/)},$={className:"variable",match:/\$\d+/},se={className:"variable",match:`\\$${na}+`},P=[Z,$,se],G={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:jx,contains:[...R,z,X]}]}},ue={scope:"keyword",match:Ze(/@/,$t(...Hx),ko($t(/\(/,/\s+/)))},v={scope:"meta",match:Ze(/@/,Bn)},A=[G,ue,v],U={match:ko(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Ze(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,na,"+")},{className:"type",match:Ql,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Ze(/\s+&\s+/,ko(Ql)),relevance:0}]},k={begin://,keywords:m,contains:[...l,...y,...A,w,U]};U.contains.push(k);const ke={match:Ze(Bn,/\s*:/),keywords:"_|0",relevance:0},Me={begin:/\(/,end:/\)/,relevance:0,keywords:m,contains:["self",ke,...l,re,...y,...E,...R,z,X,...P,...A,U]},we={begin://,keywords:"repeat each",contains:[...l,U]},$e={begin:$t(ko(Ze(Bn,/\s*:/)),ko(Ze(Bn,/\s+/,Bn,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Bn}]},De={begin:/\(/,end:/\)/,keywords:m,contains:[$e,...l,...y,...R,z,X,...A,U,Me],endsParent:!0,illegal:/["']/},Ge={match:[/(func|macro)/,/\s+/,$t(Z.match,Bn,du)],className:{1:"keyword",3:"title.function"},contains:[we,De,i],illegal:[/\[/,/%/]},Xe={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[we,De,i],illegal:/\[|%/},Xt={match:[/operator/,/\s+/,du],className:{1:"keyword",3:"title"}},rr={begin:[/precedencegroup/,/\s+/,Ql],className:{1:"keyword",3:"title"},contains:[U],keywords:[...Ux,...yp],end:/}/},An={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Hn={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},jn={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Bn,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:m,contains:[we,...y,{begin:/:/,end:/\{/,keywords:m,contains:[{scope:"title.class.inherited",match:Ql},...y],relevance:0}]};for(const Ke of X.variants){const Jt=Ke.contains.find(Rn=>Rn.label==="interpol");Jt.keywords=m;const an=[...y,...E,...R,z,X,...P];Jt.contains=[...an,{begin:/\(/,end:/\)/,contains:["self",...an]}]}return{name:"Swift",keywords:m,contains:[...l,Ge,Xe,An,Hn,jn,Xt,rr,{beginKeywords:"import",end:/$/,contains:[...l],relevance:0},re,...y,...E,...R,z,X,...P,...A,U,Me]}}const ra="[A-Za-z$_][0-9A-Za-z$_]*",Gm=["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"],Km=["true","false","null","undefined","NaN","Infinity"],Wm=["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"],Vm=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],qm=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ym=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Qm=[].concat(qm,Wm,Vm);function Kx(e){const i=e.regex,r=(G,{after:ue})=>{const v="",end:""},c=/<[A-Za-z0-9\\._:-]+\s*\/>/,u={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(G,ue)=>{const v=G[0].length+G.index,A=G.input[v];if(A==="<"||A===","){ue.ignoreMatch();return}A===">"&&(r(G,{after:v})||ue.ignoreMatch());let U;const k=G.input.substring(v);if(U=k.match(/^\s*=/)){ue.ignoreMatch();return}if((U=k.match(/^\s+extends\s+/))&&U.index===0){ue.ignoreMatch();return}}},d={$pattern:ra,keyword:Gm,literal:Km,built_in:Qm,"variable.language":Ym},p="[0-9](_?[0-9])*",m=`\\.(${p})`,y="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${y})((${m})|\\.)?|(${m}))[eE][+-]?(${p})\\b`},{begin:`\\b(${y})\\b((${m})\\b|\\.)?|(${m})\\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},b={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},E={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"xml"}},w={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"css"}},S={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,b],subLanguage:"graphql"}},R={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,b]},L={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:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},z=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,w,S,R,{match:/\$\d+/},h];b.contains=z.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(z)});const W=[].concat(L,b.contains),Q=W.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(W)}]),M={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:Q},q={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,i.concat(l,"(",i.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},ne={relevance:0,match:i.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:{_:[...Wm,...Vm]}},X={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},I={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},K={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function Y(G){return i.concat("(?!",G.join("|"),")")}const re={match:i.concat(/\b/,Y([...qm,"super","import","await"].map(G=>`${G}\\s*\\(`)),l,i.lookahead(/\s*\(/)),className:"title.function",relevance:0},Z={begin:i.concat(/\./,i.lookahead(i.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},$={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},M]},se="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",P={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,i.lookahead(se)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:Q,CLASS_REFERENCE:ne},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),X,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,E,w,S,R,L,{match:/\$\d+/},h,ne,{scope:"attr",match:l+i.lookahead(":"),relevance:0},P,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[L,e.REGEXP_MODE,{className:"function",begin:se,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:d,contains:Q}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:c},{begin:u.begin,"on:begin":u.isTrulyOpeningTag,end:u.end}],subLanguage:"xml",contains:[{begin:u.begin,end:u.end,skip:!0,contains:["self"]}]}]},I,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,e.inherit(e.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},Z,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},re,K,q,$,{match:/\$[(.]/}]}}function Wx(e){const i=e.regex,r=Kx(e),l=ra,s=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],c={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},u={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:s},contains:[r.exports.CLASS_REFERENCE]},d={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},p=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],m={$pattern:ra,keyword:Gm.concat(p),literal:Km,built_in:Qm.concat(s),"variable.language":Ym},y={className:"meta",begin:"@"+l},h=(S,R,N)=>{const L=S.contains.findIndex(z=>z.label===R);if(L===-1)throw new Error("can not find mode to replace");S.contains.splice(L,1,N)};Object.assign(r.keywords,m),r.exports.PARAMS_CONTAINS.push(y);const b=r.contains.find(S=>S.scope==="attr"),E=Object.assign({},b,{match:i.concat(l,i.lookahead(/\s*\?:/))});r.exports.PARAMS_CONTAINS.push([r.exports.CLASS_REFERENCE,b,E]),r.contains=r.contains.concat([y,c,u,E]),h(r,"shebang",e.SHEBANG()),h(r,"use_strict",d);const w=r.contains.find(S=>S.label==="func.def");return w.relevance=0,Object.assign(r,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),r}function Vx(e){const i=e.regex,r={className:"string",begin:/"(""|[^/n])"C\b/},l={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},s=/\d{1,2}\/\d{1,2}\/\d{4}/,c=/\d{4}-\d{1,2}-\d{1,2}/,u=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,d=/\d{1,2}(:\d{1,2}){1,2}/,p={className:"literal",variants:[{begin:i.concat(/# */,i.either(c,s),/ *#/)},{begin:i.concat(/# */,d,/ *#/)},{begin:i.concat(/# */,u,/ *#/)},{begin:i.concat(/# */,i.either(c,s),/ +/,i.either(u,d),/ *#/)}]},m={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},y={className:"label",begin:/^\w+:/},h=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),b=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[r,l,p,m,y,h,b,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[b]}]}}function qx(e){e.regex;const i=e.COMMENT(/\(;/,/;\)/);i.contains.push("self");const r=e.COMMENT(/;;/,/$/),l=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],s={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},c={className:"variable",begin:/\$[\w_]+/},u={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},d={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},p={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},m={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:l},contains:[r,i,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},c,u,s,e.QUOTE_STRING_MODE,p,m,d]}}function Yx(e){const i=e.regex,r=i.concat(/[\p{L}_]/u,i.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},c={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},u=e.inherit(c,{begin:/\(/,end:/\)/}),d=e.inherit(e.APOS_STRING_MODE,{className:"string"}),p=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),m={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[c,p,d,u,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[c,u,p,d]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[p]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[m],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[m],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:i.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:r,relevance:0,starts:m}]},{className:"tag",begin:i.concat(/<\//,i.lookahead(i.concat(r,/>/))),contains:[{className:"name",begin:r,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function Qx(e){const i="true false yes no null",r="[\\w#;/?:@&=+$,.~*'()[\\]]+",l={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},c={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},u={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,s]},d=e.inherit(u,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),b={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"},E={end:",",endsWithParent:!0,excludeEnd:!0,keywords:i,relevance:0},w={begin:/\{/,end:/\}/,contains:[E],illegal:"\\n",relevance:0},S={begin:"\\[",end:"\\]",contains:[E],illegal:"\\n",relevance:0},R=[l,{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+!"+r},{className:"type",begin:"!<"+r+">"},{className:"type",begin:"!"+r},{className:"type",begin:"!!"+r},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:i,keywords:{literal:i}},b,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},w,S,c,u],N=[...R];return N.pop(),N.push(d),E.contains=N,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:R}}const Zx={arduino:Rw,bash:Ow,c:Iw,cpp:Mw,csharp:Lw,css:jw,diff:Gw,go:Kw,graphql:Ww,ini:Vw,java:qw,javascript:Jw,json:nx,kotlin:ix,less:dx,lua:px,makefile:mx,markdown:gx,objectivec:hx,perl:yx,php:bx,"php-template":Ex,plaintext:_x,python:vx,"python-repl":kx,r:wx,ruby:xx,rust:Sx,scss:Lx,shell:Dx,sql:Px,swift:Gx,typescript:Wx,vbnet:Vx,wasm:qx,xml:Yx,yaml:Qx};var pu,Ep;function Xx(){if(Ep)return pu;Ep=1;function e(C){return C instanceof Map?C.clear=C.delete=C.set=function(){throw new Error("map is read-only")}:C instanceof Set&&(C.add=C.clear=C.delete=function(){throw new Error("set is read-only")}),Object.freeze(C),Object.getOwnPropertyNames(C).forEach(V=>{const de=C[V],Re=typeof de;(Re==="object"||Re==="function")&&!Object.isFrozen(de)&&e(de)}),C}class i{constructor(V){V.data===void 0&&(V.data={}),this.data=V.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function r(C){return C.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function l(C,...V){const de=Object.create(null);for(const Re in C)de[Re]=C[Re];return V.forEach(function(Re){for(const rt in Re)de[rt]=Re[rt]}),de}const s="",c=C=>!!C.scope,u=(C,{prefix:V})=>{if(C.startsWith("language:"))return C.replace("language:","language-");if(C.includes(".")){const de=C.split(".");return[`${V}${de.shift()}`,...de.map((Re,rt)=>`${Re}${"_".repeat(rt+1)}`)].join(" ")}return`${V}${C}`};class d{constructor(V,de){this.buffer="",this.classPrefix=de.classPrefix,V.walk(this)}addText(V){this.buffer+=r(V)}openNode(V){if(!c(V))return;const de=u(V.scope,{prefix:this.classPrefix});this.span(de)}closeNode(V){c(V)&&(this.buffer+=s)}value(){return this.buffer}span(V){this.buffer+=``}}const p=(C={})=>{const V={children:[]};return Object.assign(V,C),V};class m{constructor(){this.rootNode=p(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(V){this.top.children.push(V)}openNode(V){const de=p({scope:V});this.add(de),this.stack.push(de)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(V){return this.constructor._walk(V,this.rootNode)}static _walk(V,de){return typeof de=="string"?V.addText(de):de.children&&(V.openNode(de),de.children.forEach(Re=>this._walk(V,Re)),V.closeNode(de)),V}static _collapse(V){typeof V!="string"&&V.children&&(V.children.every(de=>typeof de=="string")?V.children=[V.children.join("")]:V.children.forEach(de=>{m._collapse(de)}))}}class y extends m{constructor(V){super(),this.options=V}addText(V){V!==""&&this.add(V)}startScope(V){this.openNode(V)}endScope(){this.closeNode()}__addSublanguage(V,de){const Re=V.root;de&&(Re.scope=`language:${de}`),this.add(Re)}toHTML(){return new d(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function h(C){return C?typeof C=="string"?C:C.source:null}function b(C){return S("(?=",C,")")}function E(C){return S("(?:",C,")*")}function w(C){return S("(?:",C,")?")}function S(...C){return C.map(de=>h(de)).join("")}function R(C){const V=C[C.length-1];return typeof V=="object"&&V.constructor===Object?(C.splice(C.length-1,1),V):{}}function N(...C){return"("+(R(C).capture?"":"?:")+C.map(Re=>h(Re)).join("|")+")"}function L(C){return new RegExp(C.toString()+"|").exec("").length-1}function z(C,V){const de=C&&C.exec(V);return de&&de.index===0}const W=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Q(C,{joinWith:V}){let de=0;return C.map(Re=>{de+=1;const rt=de;let lt=h(Re),he="";for(;lt.length>0;){const me=W.exec(lt);if(!me){he+=lt;break}he+=lt.substring(0,me.index),lt=lt.substring(me.index+me[0].length),me[0][0]==="\\"&&me[1]?he+="\\"+String(Number(me[1])+rt):(he+=me[0],me[0]==="("&&de++)}return he}).map(Re=>`(${Re})`).join(V)}const M=/\b\B/,q="[a-zA-Z]\\w*",ne="[a-zA-Z_]\\w*",X="\\b\\d+(\\.\\d+)?",I="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",K="\\b(0b[01]+)",Y="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",re=(C={})=>{const V=/^#![ ]*\//;return C.binary&&(C.begin=S(V,/.*\b/,C.binary,/\b.*/)),l({scope:"meta",begin:V,end:/$/,relevance:0,"on:begin":(de,Re)=>{de.index!==0&&Re.ignoreMatch()}},C)},Z={begin:"\\\\[\\s\\S]",relevance:0},$={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Z]},se={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Z]},P={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/},G=function(C,V,de={}){const Re=l({scope:"comment",begin:C,end:V,contains:[]},de);Re.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 rt=N("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 Re.contains.push({begin:S(/[ ]+/,"(",rt,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Re},ue=G("//","$"),v=G("/\\*","\\*/"),A=G("#","$"),U={scope:"number",begin:X,relevance:0},k={scope:"number",begin:I,relevance:0},ke={scope:"number",begin:K,relevance:0},Me={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Z,{begin:/\[/,end:/\]/,relevance:0,contains:[Z]}]},we={scope:"title",begin:q,relevance:0},$e={scope:"title",begin:ne,relevance:0},De={begin:"\\.\\s*"+ne,relevance:0};var Xe=Object.freeze({__proto__:null,APOS_STRING_MODE:$,BACKSLASH_ESCAPE:Z,BINARY_NUMBER_MODE:ke,BINARY_NUMBER_RE:K,COMMENT:G,C_BLOCK_COMMENT_MODE:v,C_LINE_COMMENT_MODE:ue,C_NUMBER_MODE:k,C_NUMBER_RE:I,END_SAME_AS_BEGIN:function(C){return Object.assign(C,{"on:begin":(V,de)=>{de.data._beginMatch=V[1]},"on:end":(V,de)=>{de.data._beginMatch!==V[1]&&de.ignoreMatch()}})},HASH_COMMENT_MODE:A,IDENT_RE:q,MATCH_NOTHING_RE:M,METHOD_GUARD:De,NUMBER_MODE:U,NUMBER_RE:X,PHRASAL_WORDS_MODE:P,QUOTE_STRING_MODE:se,REGEXP_MODE:Me,RE_STARTERS_RE:Y,SHEBANG:re,TITLE_MODE:we,UNDERSCORE_IDENT_RE:ne,UNDERSCORE_TITLE_MODE:$e});function Xt(C,V){C.input[C.index-1]==="."&&V.ignoreMatch()}function rr(C,V){C.className!==void 0&&(C.scope=C.className,delete C.className)}function An(C,V){V&&C.beginKeywords&&(C.begin="\\b("+C.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",C.__beforeBegin=Xt,C.keywords=C.keywords||C.beginKeywords,delete C.beginKeywords,C.relevance===void 0&&(C.relevance=0))}function Hn(C,V){Array.isArray(C.illegal)&&(C.illegal=N(...C.illegal))}function jn(C,V){if(C.match){if(C.begin||C.end)throw new Error("begin & end are not supported with match");C.begin=C.match,delete C.match}}function Ke(C,V){C.relevance===void 0&&(C.relevance=1)}const Jt=(C,V)=>{if(!C.beforeMatch)return;if(C.starts)throw new Error("beforeMatch cannot be used with starts");const de=Object.assign({},C);Object.keys(C).forEach(Re=>{delete C[Re]}),C.keywords=de.keywords,C.begin=S(de.beforeMatch,b(de.begin)),C.starts={relevance:0,contains:[Object.assign(de,{endsParent:!0})]},C.relevance=0,delete de.beforeMatch},an=["of","and","for","in","not","or","if","then","parent","list","value"],Rn="keyword";function bn(C,V,de=Rn){const Re=Object.create(null);return typeof C=="string"?rt(de,C.split(" ")):Array.isArray(C)?rt(de,C):Object.keys(C).forEach(function(lt){Object.assign(Re,bn(C[lt],V,lt))}),Re;function rt(lt,he){V&&(he=he.map(me=>me.toLowerCase())),he.forEach(function(me){const xe=me.split("|");Re[xe[0]]=[lt,On(xe[0],xe[1])]})}}function On(C,V){return V?Number(V):Cr(C)?0:1}function Cr(C){return an.includes(C.toLowerCase())}const Tr={},sn=C=>{console.error(C)},Ar=(C,...V)=>{console.log(`WARN: ${C}`,...V)},j=(C,V)=>{Tr[`${C}/${V}`]||(console.log(`Deprecated as of ${C}. ${V}`),Tr[`${C}/${V}`]=!0)},ae=new Error;function Te(C,V,{key:de}){let Re=0;const rt=C[de],lt={},he={};for(let me=1;me<=V.length;me++)he[me+Re]=rt[me],lt[me+Re]=!0,Re+=L(V[me-1]);C[de]=he,C[de]._emit=lt,C[de]._multi=!0}function Pe(C){if(Array.isArray(C.begin)){if(C.skip||C.excludeBegin||C.returnBegin)throw sn("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),ae;if(typeof C.beginScope!="object"||C.beginScope===null)throw sn("beginScope must be object"),ae;Te(C,C.begin,{key:"beginScope"}),C.begin=Q(C.begin,{joinWith:""})}}function He(C){if(Array.isArray(C.end)){if(C.skip||C.excludeEnd||C.returnEnd)throw sn("skip, excludeEnd, returnEnd not compatible with endScope: {}"),ae;if(typeof C.endScope!="object"||C.endScope===null)throw sn("endScope must be object"),ae;Te(C,C.end,{key:"endScope"}),C.end=Q(C.end,{joinWith:""})}}function _t(C){C.scope&&typeof C.scope=="object"&&C.scope!==null&&(C.beginScope=C.scope,delete C.scope)}function En(C){_t(C),typeof C.beginScope=="string"&&(C.beginScope={_wrap:C.beginScope}),typeof C.endScope=="string"&&(C.endScope={_wrap:C.endScope}),Pe(C),He(C)}function jt(C){function V(he,me){return new RegExp(h(he),"m"+(C.case_insensitive?"i":"")+(C.unicodeRegex?"u":"")+(me?"g":""))}class de{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(me,xe){xe.position=this.position++,this.matchIndexes[this.matchAt]=xe,this.regexes.push([xe,me]),this.matchAt+=L(me)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const me=this.regexes.map(xe=>xe[1]);this.matcherRe=V(Q(me,{joinWith:"|"}),!0),this.lastIndex=0}exec(me){this.matcherRe.lastIndex=this.lastIndex;const xe=this.matcherRe.exec(me);if(!xe)return null;const yt=xe.findIndex((In,or)=>or>0&&In!==void 0),tt=this.matchIndexes[yt];return xe.splice(0,yt),Object.assign(xe,tt)}}class Re{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(me){if(this.multiRegexes[me])return this.multiRegexes[me];const xe=new de;return this.rules.slice(me).forEach(([yt,tt])=>xe.addRule(yt,tt)),xe.compile(),this.multiRegexes[me]=xe,xe}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(me,xe){this.rules.push([me,xe]),xe.type==="begin"&&this.count++}exec(me){const xe=this.getMatcher(this.regexIndex);xe.lastIndex=this.lastIndex;let yt=xe.exec(me);if(this.resumingScanAtSamePosition()&&!(yt&&yt.index===this.lastIndex)){const tt=this.getMatcher(0);tt.lastIndex=this.lastIndex+1,yt=tt.exec(me)}return yt&&(this.regexIndex+=yt.position+1,this.regexIndex===this.count&&this.considerAll()),yt}}function rt(he){const me=new Re;return he.contains.forEach(xe=>me.addRule(xe.begin,{rule:xe,type:"begin"})),he.terminatorEnd&&me.addRule(he.terminatorEnd,{type:"end"}),he.illegal&&me.addRule(he.illegal,{type:"illegal"}),me}function lt(he,me){const xe=he;if(he.isCompiled)return xe;[rr,jn,En,Jt].forEach(tt=>tt(he,me)),C.compilerExtensions.forEach(tt=>tt(he,me)),he.__beforeBegin=null,[An,Hn,Ke].forEach(tt=>tt(he,me)),he.isCompiled=!0;let yt=null;return typeof he.keywords=="object"&&he.keywords.$pattern&&(he.keywords=Object.assign({},he.keywords),yt=he.keywords.$pattern,delete he.keywords.$pattern),yt=yt||/\w+/,he.keywords&&(he.keywords=bn(he.keywords,C.case_insensitive)),xe.keywordPatternRe=V(yt,!0),me&&(he.begin||(he.begin=/\B|\b/),xe.beginRe=V(xe.begin),!he.end&&!he.endsWithParent&&(he.end=/\B|\b/),he.end&&(xe.endRe=V(xe.end)),xe.terminatorEnd=h(xe.end)||"",he.endsWithParent&&me.terminatorEnd&&(xe.terminatorEnd+=(he.end?"|":"")+me.terminatorEnd)),he.illegal&&(xe.illegalRe=V(he.illegal)),he.contains||(he.contains=[]),he.contains=[].concat(...he.contains.map(function(tt){return Gn(tt==="self"?he:tt)})),he.contains.forEach(function(tt){lt(tt,xe)}),he.starts&<(he.starts,me),xe.matcher=rt(xe),xe}if(C.compilerExtensions||(C.compilerExtensions=[]),C.contains&&C.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return C.classNameAliases=l(C.classNameAliases||{}),lt(C)}function _n(C){return C?C.endsWithParent||_n(C.starts):!1}function Gn(C){return C.variants&&!C.cachedVariants&&(C.cachedVariants=C.variants.map(function(V){return l(C,{variants:null},V)})),C.cachedVariants?C.cachedVariants:_n(C)?l(C,{starts:C.starts?l(C.starts):null}):Object.isFrozen(C)?l(C):C}var vt="11.11.2";class un extends Error{constructor(V,de){super(V),this.name="HTMLInjectionError",this.html=de}}const Tt=r,ei=l,ti=Symbol("nomatch"),ir=7,Kn=function(C){const V=Object.create(null),de=Object.create(null),Re=[];let rt=!0;const lt="Could not find the language '{}', did you forget to load/include a language module?",he={disableAutodetect:!0,name:"Plain text",contains:[]};let me={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:y};function xe(oe){return me.noHighlightRe.test(oe)}function yt(oe){let ve=oe.className+" ";ve+=oe.parentNode?oe.parentNode.className:"";const ze=me.languageDetectRe.exec(ve);if(ze){const Be=vn(ze[1]);return Be||(Ar(lt.replace("{}",ze[1])),Ar("Falling back to no-highlight mode for this block.",oe)),Be?ze[1]:"no-highlight"}return ve.split(/\s+/).find(Be=>xe(Be)||vn(Be))}function tt(oe,ve,ze){let Be="",mt="";typeof ve=="object"?(Be=oe,ze=ve.ignoreIllegals,mt=ve.language):(j("10.7.0","highlight(lang, code, ...args) has been deprecated."),j("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),mt=oe,Be=ve),ze===void 0&&(ze=!0);const ut={code:Be,language:mt};Or("before:highlight",ut);const Mn=ut.result?ut.result:In(ut.language,ut.code,ze);return Mn.code=ut.code,Or("after:highlight",Mn),Mn}function In(oe,ve,ze,Be){const mt=Object.create(null);function ut(ce,ge){return ce.keywords[ge]}function Mn(){if(!Ie.keywords){gt.addText(Qe);return}let ce=0;Ie.keywordPatternRe.lastIndex=0;let ge=Ie.keywordPatternRe.exec(Qe),Ae="";for(;ge;){Ae+=Qe.substring(ce,ge.index);const je=cn.case_insensitive?ge[0].toLowerCase():ge[0],dt=ut(Ie,je);if(dt){const[xt,ma]=dt;if(gt.addText(Ae),Ae="",mt[je]=(mt[je]||0)+1,mt[je]<=ir&&(Lr+=ma),xt.startsWith("_"))Ae+=ge[0];else{const $o=cn.classNameAliases[xt]||xt;Ft(ge[0],$o)}}else Ae+=ge[0];ce=Ie.keywordPatternRe.lastIndex,ge=Ie.keywordPatternRe.exec(Qe)}Ae+=Qe.substring(ce),gt.addText(Ae)}function ii(){if(Qe==="")return;let ce=null;if(typeof Ie.subLanguage=="string"){if(!V[Ie.subLanguage]){gt.addText(Qe);return}ce=In(Ie.subLanguage,Qe,!0,Ui[Ie.subLanguage]),Ui[Ie.subLanguage]=ce._top}else ce=Rr(Qe,Ie.subLanguage.length?Ie.subLanguage:null);Ie.relevance>0&&(Lr+=ce.relevance),gt.__addSublanguage(ce._emitter,ce.language)}function zt(){Ie.subLanguage!=null?ii():Mn(),Qe=""}function Ft(ce,ge){ce!==""&&(gt.startScope(ge),gt.addText(ce),gt.endScope())}function Ir(ce,ge){let Ae=1;const je=ge.length-1;for(;Ae<=je;){if(!ce._emit[Ae]){Ae++;continue}const dt=cn.classNameAliases[ce[Ae]]||ce[Ae],xt=ge[Ae];dt?Ft(xt,dt):(Qe=xt,Mn(),Qe=""),Ae++}}function lr(ce,ge){return ce.scope&&typeof ce.scope=="string"&>.openNode(cn.classNameAliases[ce.scope]||ce.scope),ce.beginScope&&(ce.beginScope._wrap?(Ft(Qe,cn.classNameAliases[ce.beginScope._wrap]||ce.beginScope._wrap),Qe=""):ce.beginScope._multi&&(Ir(ce.beginScope,ge),Qe="")),Ie=Object.create(ce,{parent:{value:Ie}}),Ie}function Mr(ce,ge,Ae){let je=z(ce.endRe,Ae);if(je){if(ce["on:end"]){const dt=new i(ce);ce["on:end"](ge,dt),dt.isMatchIgnored&&(je=!1)}if(je){for(;ce.endsParent&&ce.parent;)ce=ce.parent;return ce}}if(ce.endsWithParent)return Mr(ce.parent,ge,Ae)}function da(ce){return Ie.matcher.regexIndex===0?(Qe+=ce[0],1):(ur=!0,0)}function pa(ce){const ge=ce[0],Ae=ce.rule,je=new i(Ae),dt=[Ae.__beforeBegin,Ae["on:begin"]];for(const xt of dt)if(xt&&(xt(ce,je),je.isMatchIgnored))return da(ge);return Ae.skip?Qe+=ge:(Ae.excludeBegin&&(Qe+=ge),zt(),!Ae.returnBegin&&!Ae.excludeBegin&&(Qe=ge)),lr(Ae,ce),Ae.returnBegin?0:ge.length}function Fi(ce){const ge=ce[0],Ae=ve.substring(ce.index),je=Mr(Ie,ce,Ae);if(!je)return ti;const dt=Ie;Ie.endScope&&Ie.endScope._wrap?(zt(),Ft(ge,Ie.endScope._wrap)):Ie.endScope&&Ie.endScope._multi?(zt(),Ir(Ie.endScope,ce)):dt.skip?Qe+=ge:(dt.returnEnd||dt.excludeEnd||(Qe+=ge),zt(),dt.excludeEnd&&(Qe=ge));do Ie.scope&>.closeNode(),!Ie.skip&&!Ie.subLanguage&&(Lr+=Ie.relevance),Ie=Ie.parent;while(Ie!==je.parent);return je.starts&&lr(je.starts,ce),dt.returnEnd?0:ge.length}function Uo(){const ce=[];for(let ge=Ie;ge!==cn;ge=ge.parent)ge.scope&&ce.unshift(ge.scope);ce.forEach(ge=>gt.openNode(ge))}let ar={};function sr(ce,ge){const Ae=ge&&ge[0];if(Qe+=ce,Ae==null)return zt(),0;if(ar.type==="begin"&&ge.type==="end"&&ar.index===ge.index&&Ae===""){if(Qe+=ve.slice(ge.index,ge.index+1),!rt){const je=new Error(`0 width match regex (${oe})`);throw je.languageName=oe,je.badRule=ar.rule,je}return 1}if(ar=ge,ge.type==="begin")return pa(ge);if(ge.type==="illegal"&&!ze){const je=new Error('Illegal lexeme "'+Ae+'" for mode "'+(Ie.scope||"")+'"');throw je.mode=Ie,je}else if(ge.type==="end"){const je=Fi(ge);if(je!==ti)return je}if(ge.type==="illegal"&&Ae==="")return ge.index===ve.length||(Qe+=` +`),1;if(Dr>1e5&&Dr>ge.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Qe+=Ae,Ae.length}const cn=vn(oe);if(!cn)throw sn(lt.replace("{}",oe)),new Error('Unknown language: "'+oe+'"');const Bi=jt(cn);let Ve="",Ie=Be||Bi;const Ui={},gt=new me.__emitter(me);Uo();let Qe="",Lr=0,Ln=0,Dr=0,ur=!1;try{if(cn.__emitTokens)cn.__emitTokens(ve,gt);else{for(Ie.matcher.considerAll();;){Dr++,ur?ur=!1:Ie.matcher.considerAll(),Ie.matcher.lastIndex=Ln;const ce=Ie.matcher.exec(ve);if(!ce)break;const ge=ve.substring(Ln,ce.index),Ae=sr(ge,ce);Ln=ce.index+Ae}sr(ve.substring(Ln))}return gt.finalize(),Ve=gt.toHTML(),{language:oe,value:Ve,relevance:Lr,illegal:!1,_emitter:gt,_top:Ie}}catch(ce){if(ce.message&&ce.message.includes("Illegal"))return{language:oe,value:Tt(ve),illegal:!0,relevance:0,_illegalBy:{message:ce.message,index:Ln,context:ve.slice(Ln-100,Ln+100),mode:ce.mode,resultSoFar:Ve},_emitter:gt};if(rt)return{language:oe,value:Tt(ve),illegal:!1,relevance:0,errorRaised:ce,_emitter:gt,_top:Ie};throw ce}}function or(oe){const ve={value:Tt(oe),illegal:!1,relevance:0,_top:he,_emitter:new me.__emitter(me)};return ve._emitter.addText(oe),ve}function Rr(oe,ve){ve=ve||me.languages||Object.keys(V);const ze=or(oe),Be=ve.filter(vn).filter(Bo).map(zt=>In(zt,oe,!1));Be.unshift(ze);const mt=Be.sort((zt,Ft)=>{if(zt.relevance!==Ft.relevance)return Ft.relevance-zt.relevance;if(zt.language&&Ft.language){if(vn(zt.language).supersetOf===Ft.language)return 1;if(vn(Ft.language).supersetOf===zt.language)return-1}return 0}),[ut,Mn]=mt,ii=ut;return ii.secondBest=Mn,ii}function ua(oe,ve,ze){const Be=ve&&de[ve]||ze;oe.classList.add("hljs"),oe.classList.add(`language-${Be}`)}function Di(oe){let ve=null;const ze=yt(oe);if(xe(ze))return;if(Or("before:highlightElement",{el:oe,language:ze}),oe.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",oe);return}if(oe.children.length>0&&(me.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(oe)),me.throwUnescapedHTML))throw new un("One of your code blocks includes unescaped HTML.",oe.innerHTML);ve=oe;const Be=ve.textContent,mt=ze?tt(Be,{language:ze,ignoreIllegals:!0}):Rr(Be);oe.innerHTML=mt.value,oe.dataset.highlighted="yes",ua(oe,ze,mt.language),oe.result={language:mt.language,re:mt.relevance,relevance:mt.relevance},mt.secondBest&&(oe.secondBest={language:mt.secondBest.language,relevance:mt.secondBest.relevance}),Or("after:highlightElement",{el:oe,result:mt,text:Be})}function ca(oe){me=ei(me,oe)}const Vn=()=>{ni(),j("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Lo(){ni(),j("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let Pi=!1;function ni(){function oe(){ni()}if(document.readyState==="loading"){Pi||window.addEventListener("DOMContentLoaded",oe,!1),Pi=!0;return}document.querySelectorAll(me.cssSelector).forEach(Di)}function Do(oe,ve){let ze=null;try{ze=ve(C)}catch(Be){if(sn("Language definition for '{}' could not be registered.".replace("{}",oe)),rt)sn(Be);else throw Be;ze=he}ze.name||(ze.name=oe),V[oe]=ze,ze.rawDefinition=ve.bind(null,C),ze.aliases&&Fo(ze.aliases,{languageName:oe})}function Po(oe){delete V[oe];for(const ve of Object.keys(de))de[ve]===oe&&delete de[ve]}function zo(){return Object.keys(V)}function vn(oe){return oe=(oe||"").toLowerCase(),V[oe]||V[de[oe]]}function Fo(oe,{languageName:ve}){typeof oe=="string"&&(oe=[oe]),oe.forEach(ze=>{de[ze.toLowerCase()]=ve})}function Bo(oe){const ve=vn(oe);return ve&&!ve.disableAutodetect}function st(oe){oe["before:highlightBlock"]&&!oe["before:highlightElement"]&&(oe["before:highlightElement"]=ve=>{oe["before:highlightBlock"](Object.assign({block:ve.el},ve))}),oe["after:highlightBlock"]&&!oe["after:highlightElement"]&&(oe["after:highlightElement"]=ve=>{oe["after:highlightBlock"](Object.assign({block:ve.el},ve))})}function fa(oe){st(oe),Re.push(oe)}function zi(oe){const ve=Re.indexOf(oe);ve!==-1&&Re.splice(ve,1)}function Or(oe,ve){const ze=oe;Re.forEach(function(Be){Be[ze]&&Be[ze](ve)})}function ri(oe){return j("10.7.0","highlightBlock will be removed entirely in v12.0"),j("10.7.0","Please use highlightElement now."),Di(oe)}Object.assign(C,{highlight:tt,highlightAuto:Rr,highlightAll:ni,highlightElement:Di,highlightBlock:ri,configure:ca,initHighlighting:Vn,initHighlightingOnLoad:Lo,registerLanguage:Do,unregisterLanguage:Po,listLanguages:zo,getLanguage:vn,registerAliases:Fo,autoDetection:Bo,inherit:ei,addPlugin:fa,removePlugin:zi}),C.debugMode=function(){rt=!1},C.safeMode=function(){rt=!0},C.versionString=vt,C.regex={concat:S,lookahead:b,either:N,optional:w,anyNumberOfTimes:E};for(const oe in Xe)typeof Xe[oe]=="object"&&e(Xe[oe]);return Object.assign(C,Xe),C},Wn=Kn({});return Wn.newInstance=()=>Kn({}),pu=Wn,Wn.HighlightJS=Wn,Wn.default=Wn,pu}var Jx=Xx();const eS=Ao(Jx),_p={},tS="hljs-";function nS(e){const i=eS.newInstance();return e&&c(e),{highlight:r,highlightAuto:l,listLanguages:s,register:c,registerAlias:u,registered:d};function r(p,m,y){const h=y||_p,b=typeof h.prefix=="string"?h.prefix:tS;if(!i.getLanguage(p))throw new Error("Unknown language: `"+p+"` is not registered");i.configure({__emitter:rS,classPrefix:b});const E=i.highlight(m,{ignoreIllegals:!0,language:p});if(E.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:E.errorRaised});const w=E._emitter.root,S=w.data;return S.language=E.language,S.relevance=E.relevance,w}function l(p,m){const h=(m||_p).subset||s();let b=-1,E=0,w;for(;++bE&&(E=R.data.relevance,w=R)}return w||{type:"root",children:[],data:{language:void 0,relevance:E}}}function s(){return i.listLanguages()}function c(p,m){if(typeof p=="string")i.registerLanguage(p,m);else{let y;for(y in p)Object.hasOwn(p,y)&&i.registerLanguage(y,p[y])}}function u(p,m){if(typeof p=="string")i.registerAliases(typeof m=="string"?m:[...m],{languageName:p});else{let y;for(y in p)if(Object.hasOwn(p,y)){const h=p[y];i.registerAliases(typeof h=="string"?h:[...h],{languageName:y})}}}function d(p){return!!i.getLanguage(p)}}class rS{constructor(i){this.options=i,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(i){if(i==="")return;const r=this.stack[this.stack.length-1],l=r.children[r.children.length-1];l&&l.type==="text"?l.value+=i:r.children.push({type:"text",value:i})}startScope(i){this.openNode(String(i))}endScope(){this.closeNode()}__addSublanguage(i,r){const l=this.stack[this.stack.length-1],s=i.root.children;r?l.children.push({type:"element",tagName:"span",properties:{className:[r]},children:s}):l.children.push(...s)}openNode(i){const r=this,l=i.split(".").map(function(u,d){return d?u+"_".repeat(d):r.options.classPrefix+u}),s=this.stack[this.stack.length-1],c={type:"element",tagName:"span",properties:{className:l},children:[]};s.children.push(c),this.stack.push(c)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const iS={};function oS(e){const i=e||iS,r=i.aliases,l=i.detect||!1,s=i.languages||Zx,c=i.plainText,u=i.prefix,d=i.subset;let p="hljs";const m=nS(s);if(r&&m.registerAlias(r),u){const y=u.indexOf("-");p=y===-1?u:u.slice(0,y)}return function(y,h){sa(y,"element",function(b,E,w){if(b.tagName!=="code"||!w||w.type!=="element"||w.tagName!=="pre")return;const S=lS(b);if(S===!1||!S&&!l||S&&c&&c.includes(S))return;Array.isArray(b.properties.className)||(b.properties.className=[]),b.properties.className.includes(p)||b.properties.className.unshift(p);const R=kw(b,{whitespace:"pre"});let N;try{N=S?m.highlight(S,R,{prefix:u}):m.highlightAuto(R,{prefix:u,subset:d})}catch(L){const z=L;if(S&&/Unknown language/.test(z.message)){h.message("Cannot highlight as `"+S+"`, it’s not registered",{ancestors:[w,b],cause:z,place:b.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw z}!S&&N.data&&N.data.language&&b.properties.className.push("language-"+N.data.language),N.children.length>0&&(b.children=N.children)})}}function lS(e){const i=e.properties.className;let r=-1;if(!Array.isArray(i))return;let l;for(;++rtypeof r=="string"):[]}catch{return[]}}function uS({message:e,toolEvents:i=[],modelLabel:r="qwen3"}){const[l,s]=fe.useState(!1),c=e.role==="user",u=sS(e);return H.jsxs("div",{className:`msg ${c?"msg-user":"msg-assistant"}`,children:[H.jsx("div",{className:"msg-role",children:c?"du":r}),!c&&e.thinking&&e.thinking.length>0&&H.jsxs("div",{className:`thinking ${l?"open":""}`,children:[H.jsxs("button",{className:"thinking-toggle",onClick:()=>s(d=>!d),children:[H.jsx("span",{className:`caret ${l?"rotated":""}`,children:"▸"}),e.content===""&&l===!1?"denkt nach …":`Denkprozess (${e.thinking.length.toLocaleString("de-DE")} Zeichen)`]}),l&&H.jsx("pre",{className:"thinking-body",children:e.thinking})]}),i.length>0&&H.jsx("div",{className:"tool-events",children:i.map((d,p)=>H.jsxs("div",{className:`tool-event ${d.ok===!1?"failed":""}`,children:[H.jsx("span",{className:"tool-icon",children:d.ok===void 0?"⋯":d.ok?"✓":"✗"}),H.jsx("code",{children:d.name}),H.jsx("span",{className:"tool-args",title:d.args,children:d.args}),d.durationMs!==void 0&&H.jsxs("span",{className:"tool-time",children:[d.durationMs," ms"]})]},p))}),u.length>0&&H.jsx("div",{className:"msg-images",children:u.map((d,p)=>H.jsx("img",{src:`data:${aS(d)};base64,${d}`,alt:`Anhang ${p+1}`,loading:"lazy"},p))}),c?e.content?H.jsx("div",{className:"msg-content user-content",children:e.content}):null:H.jsx("div",{className:"msg-content markdown",children:H.jsx(nv,{remarkPlugins:[gw],rehypePlugins:[oS],children:e.content||"▍"})})]})}const wo=4,vp=6*1024*1024,kp=["image/png","image/jpeg","image/gif","image/webp"];function cS(e){return new Promise((i,r)=>{const l=new FileReader;l.onerror=()=>r(new Error(`${e.name} konnte nicht gelesen werden`)),l.onload=()=>{const s=String(l.result),c=s.indexOf(",");i({id:`${e.name}-${e.size}-${Date.now()}-${Math.random()}`,base64:s.slice(c+1),dataUrl:s,name:e.name||"Bild"})},l.readAsDataURL(e)})}function fS({streaming:e,disabled:i,recording:r,transcribing:l,injectedText:s,modelLabel:c="qwen3",onInjected:u,onSend:d,onAbort:p,onMicToggle:m}){const[y,h]=fe.useState(""),[b,E]=fe.useState([]),[w,S]=fe.useState(null),[R,N]=fe.useState(!1),L=fe.useRef(null),z=fe.useRef(null);fe.useEffect(()=>{s!=null&&(h(s),u(),requestAnimationFrame(()=>{var q,ne;(q=L.current)==null||q.focus(),(ne=L.current)==null||ne.setSelectionRange(s.length,s.length)}))},[s,u]);const W=async q=>{S(null);const ne=[];for(const X of q){if(!kp.includes(X.type)){S(`${X.name||"Datei"}: nur PNG, JPEG, GIF oder WebP`);continue}if(X.size>vp){S(`${X.name}: größer als ${vp/1024/1024} MB`);continue}ne.push(X)}if(ne.length)try{const X=await Promise.all(ne.map(cS));E(I=>{const K=wo-I.length;return X.length>K&&S(`Maximal ${wo} Bilder pro Nachricht`),[...I,...X.slice(0,Math.max(K,0))]})}catch(X){S(X instanceof Error?X.message:"Bild konnte nicht gelesen werden")}},Q=()=>{const q=y.trim();!q&&b.length===0||e||i||(d(q,b.map(ne=>ne.base64)),h(""),E([]),S(null),requestAnimationFrame(()=>{var ne;return(ne=L.current)==null?void 0:ne.focus()}))},M=(y.trim().length>0||b.length>0)&&!i;return H.jsxs("div",{className:`composer ${R?"dragging":""}`,onDragOver:q=>{i||(q.preventDefault(),N(!0))},onDragLeave:()=>N(!1),onDrop:q=>{i||(q.preventDefault(),N(!1),W([...q.dataTransfer.files]))},children:[(b.length>0||w)&&H.jsxs("div",{className:"attachments",children:[b.map(q=>H.jsxs("div",{className:"attachment",children:[H.jsx("img",{src:q.dataUrl,alt:q.name}),H.jsx("button",{className:"attachment-remove",onClick:()=>E(ne=>ne.filter(X=>X.id!==q.id)),title:`${q.name} entfernen`,children:"×"})]},q.id)),w&&H.jsx("span",{className:"attachment-error",children:w})]}),H.jsxs("div",{className:"composer-row",children:[H.jsx("button",{className:`btn-mic ${r?"recording":""} ${l?"transcribing":""}`,onClick:m,title:r?"Aufnahme stoppen & senden":l?"Transkribiere …":"Sprachnachricht aufnehmen",disabled:l||i,children:r?"●":l?"…":"🎙"}),H.jsx("button",{className:"btn-attach",onClick:()=>{var q;return(q=z.current)==null?void 0:q.click()},disabled:i||b.length>=wo,title:b.length>=wo?`Maximal ${wo} Bilder`:"Bild anhängen (auch per Einfügen oder Drag & Drop)",children:"🖼"}),H.jsx("input",{ref:z,type:"file",accept:kp.join(","),multiple:!0,hidden:!0,onChange:q=>{W([...q.target.files??[]]),q.target.value=""}}),H.jsx("textarea",{ref:L,value:y,placeholder:r?"Ich höre zu … (zum Beenden nochmal auf das Mikro klicken)":i?"Keine Session aktiv — neuen Chat starten":`Nachricht an ${c} … (Enter = senden, Bild einfügen mit ⌘V)`,rows:1,disabled:i,onChange:q=>h(q.target.value),onPaste:q=>{const ne=[...q.clipboardData.files].filter(X=>X.type.startsWith("image/"));ne.length&&(q.preventDefault(),W(ne))},onKeyDown:q=>{q.key==="Enter"&&!q.shiftKey&&(q.preventDefault(),Q())}}),e?H.jsx("button",{className:"btn-send stop",onClick:p,children:"■ Stop"}):H.jsx("button",{className:"btn-send",disabled:!M,onClick:Q,children:"Senden ▸"})]})]})}const dS={fact:"Fakt",decision:"Entscheidung",preference:"Präferenz",entity:"Entität",open_question:"Offen"};function pS({sessionId:e,onClose:i}){const[r,l]=fe.useState(null),[s,c]=fe.useState(null),u=fe.useCallback(async()=>{try{const E=await(await fetch(`/api/sessions/${e}/memory`)).json();E.state&&l(E)}catch{l(null)}},[e]);fe.useEffect(()=>{u()},[u]);const d=async()=>{c("dream");try{await fetch(`/api/sessions/${e}/dream`,{method:"POST"}),await u()}finally{c(null)}},p=async()=>{c("rebuild");try{await fetch(`/api/sessions/${e}/memory/rebuild`,{method:"POST"}),await u()}finally{c(null)}},m=async b=>{await fetch(`/api/anchors/${b.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({pinned:!b.pinned})}),await u()},y=async b=>{await fetch(`/api/anchors/${b.id}`,{method:"DELETE"}),await u()},h=r?r.state.last_seq-r.state.last_dream_seq:0;return H.jsx("div",{className:"memory-overlay",onClick:i,children:H.jsxs("section",{className:"memory-panel",onClick:b=>b.stopPropagation(),children:[H.jsxs("header",{className:"memory-header",children:[H.jsxs("div",{children:[H.jsx("div",{className:"memory-title",children:"🧠 Gedächtnis"}),H.jsx("div",{className:"memory-stats",children:r?`${r.state.last_seq} Log-Schritte · ${r.state.dream_count}× geträumt · ${h} unkonsolidiert`:"lädt …"})]}),H.jsx("button",{className:"memory-close",onClick:i,title:"Schließen",children:"✕"})]}),H.jsxs("div",{className:"memory-actions",children:[H.jsx("button",{onClick:()=>void d(),disabled:s!==null,children:s==="dream"?"… träumt":"💤 Traumphase jetzt"}),H.jsx("button",{onClick:()=>void p(),disabled:s!==null,children:s==="rebuild"?"… faltet":"↻ Aus Log rekonstruieren"})]}),r&&r.anchors.length===0&&H.jsx("div",{className:"memory-empty",children:"Noch keine Ankerpunkte. Sie entstehen durch die Traumphase (automatisch nach Inaktivität oder Manual oben) oder wenn das Modell sich etwas mit „remember“ merkt."}),r==null?void 0:r.anchors.map(b=>H.jsxs("div",{className:"anchor-row"+(b.pinned?" pinned":""),children:[H.jsxs("div",{className:"anchor-body",children:[H.jsxs("div",{className:"anchor-kind",children:[dS[b.kind]??b.kind," · ",b.origin]}),H.jsx("div",{className:"anchor-text",children:b.text}),H.jsxs("div",{className:"anchor-meta",children:["Wichtigkeit ",(b.importance*100).toFixed(0)," % · ",b.hits,"× bestätigt"]}),H.jsx("div",{className:"anchor-bar",children:H.jsx("div",{className:"anchor-bar-fill",style:{width:`${Math.round(b.importance*100)}%`}})})]}),H.jsxs("div",{className:"anchor-actions",children:[H.jsx("button",{onClick:()=>void m(b),title:b.pinned?"Pin lösen (Decay möglich)":"Pinnen (vor Decay geschützt)",children:b.pinned?"★":"☆"}),H.jsx("button",{onClick:()=>void y(b),title:"Ankerpunkt löschen",children:"✕"})]})]},b.id))]})})}const wp="oxagenttwo.voiceMode";function mS(){var Z,$,se;const e=jh(),i=fe.useRef(null),[r,l]=fe.useState(!1),[s,c]=fe.useState(!1),[u,d]=fe.useState(null),[p,m]=fe.useState(()=>localStorage.getItem(wp)==="1"),[y,h]=fe.useState([]),[b,E]=fe.useState([]);fe.useEffect(()=>{r&&e.options.provider==="openrouter"&&y.length===0&&fetch("/api/openrouter/models").then(P=>P.json()).then(P=>{P.ok&&P.models&&h(P.models)}).catch(()=>{}),r&&e.options.provider==="ollama"&&b.length===0&&fetch("/api/ollama/models").then(P=>P.json()).then(P=>{P.ok&&P.models&&E(P.models)}).catch(()=>{})},[r,e.options.provider,y.length,b.length]);const w=fe.useRef(p),S=fe.useRef(!1),R=fe.useRef(!1);S.current=e.streaming,w.current=p;const N=fe.useCallback(P=>{m(P),localStorage.setItem(wp,P?"1":"0")},[]),L=Gh({onTranscript:P=>{w.current?(z.current.cancelSpeech(),Q.current="",W.current.sendMessage(P)):d(P)},onQueueDrained:()=>{R.current&&(R.current=!1,w.current&&!S.current&&z.current.startRecording())}}),z=fe.useRef(L);z.current=L;const W=fe.useRef(e);W.current=e;const Q=fe.useRef(""),M=fe.useRef({id:"",offset:0});fe.useEffect(()=>{const P=i.current;P&&(P.scrollTop=P.scrollHeight)},[e.messages]),fe.useEffect(()=>{if(!p)return;const P=[...e.messages].reverse().find(k=>k.role==="assistant");if(!P)return;M.current.id!==P.id&&(M.current={id:P.id,offset:0},Q.current="");const G=P.content;if(G.length=40&&(U=v.slice(0,ke))}else if(v.length>300){const k=Math.max(v.lastIndexOf(", "),v.lastIndexOf(" "));U=k>100?v.slice(0,k+1):v}U&&(Q.current=v.slice(U.length),L.enqueueSpeech(U))});const q=fe.useRef(!1);fe.useEffect(()=>{if(q.current&&!e.streaming&&p){const P=Q.current.trim();P&&(Q.current="",L.enqueueSpeech(P)),(P||M.current.id)&&(R.current=!0)}q.current=e.streaming},[e.streaming,p,L]);const[ne,X]=fe.useState([]);fe.useEffect(()=>{fetch("/api/tools").then(P=>P.json()).then(P=>X(P.tools??[])).catch(()=>X([]))},[]);const I=(e.options.provider==="openrouter"?e.options.openrouterModel.split("/").pop():e.options.model.replace(/:latest$/,""))??"qwen3",K=fe.useCallback((P,G=[])=>{L.cancelSpeech(),Q.current="",e.sendMessage(P,G)},[e,L]),Y=fe.useCallback(()=>{L.cancelSpeech(),Q.current="",e.abort()},[e,L]),re=fe.useCallback(()=>{L.recording?L.stopRecording():(L.cancelSpeech(),L.startRecording())},[L]);return H.jsxs("div",{className:"app",children:[H.jsx(Kh,{sessions:e.sessions,activeId:e.activeId,onSelect:e.setActiveId,onNew:()=>void e.newSession(),onDelete:P=>void e.deleteSession(P)}),H.jsxs("main",{className:"main",children:[H.jsxs("header",{className:"topbar",children:[H.jsxs("div",{className:"model-badge",title:(Z=e.modelInfo)!=null&&Z.ok||($=e.modelInfo)==null?void 0:$.error,children:[H.jsx("span",{className:`status-dot ${e.status==="open"?"on":"off"}`}),e.options.provider==="openrouter"?`☁ ${e.options.openrouterModel}`:(se=e.modelInfo)!=null&&se.ok?`${e.modelInfo.model} · ${e.modelInfo.parameterSize} · ${e.modelInfo.quantization}`:"Ollama offline"]}),H.jsxs("div",{className:"topbar-actions",children:[p&&(L.recording||L.transcribing||L.speaking)&&H.jsx("span",{className:"voice-state",children:L.recording?"● hört zu":L.transcribing?"… transkribiert":"🔊 spricht"}),H.jsx("button",{className:`btn-settings ${p?"toggled":""}`,onClick:()=>{p&&(L.cancelSpeech(),L.stopRecording()),N(!p)},title:"Sprachmodus: Antworten werden vorgelesen, danach wird automatisch wieder zugehört",children:p?"🔊 Stimme: an":"🔇 Stimme: aus"}),H.jsx("button",{className:"btn-settings",onClick:()=>c(P=>!P),disabled:!e.activeId,title:"Gedächtnis: Ankerpunkte, Traumphase, Log-Rekonstruktion",children:"🧠 Gedächtnis"}),H.jsx("button",{className:"btn-settings",onClick:()=>l(P=>!P),children:"⚙ Einstellungen"})]})]}),r&&H.jsxs("section",{className:"settings-panel",children:[H.jsxs("label",{className:"setting-row",children:[H.jsx("span",{children:"Modell"}),H.jsxs("select",{className:"provider-select",value:e.options.provider,onChange:P=>e.setOptions({provider:P.target.value}),children:[H.jsx("option",{value:"ollama",children:"Lokal: qwen3.5 (Ollama)"}),H.jsx("option",{value:"openrouter",children:"OpenRouter (Cloud)"})]})]}),e.options.provider==="openrouter"&&H.jsxs("label",{className:"setting-row column",children:[H.jsxs("span",{children:["OpenRouter-Modell (",y.length," verfügbar)"]}),H.jsx("input",{list:"or-models",value:e.options.openrouterModel,placeholder:"z. B. anthropic/claude-sonnet-4.5",onChange:P=>e.setOptions({openrouterModel:P.target.value})}),H.jsx("datalist",{id:"or-models",children:y.map(P=>H.jsxs("option",{value:P.id,children:[P.name," · ",P.promptPrice===0?"gratis":`$${P.promptPrice.toFixed(2)}/M`]},P.id))})]}),e.options.provider==="ollama"&&H.jsxs("label",{className:"setting-row",children:[H.jsx("span",{children:"Lokales Modell (Ollama)"}),H.jsxs("select",{className:"provider-select",value:b.some(P=>P.name===e.options.model)?e.options.model:"",onChange:P=>e.setOptions({model:P.target.value}),children:[!b.some(P=>P.name===e.options.model)&&H.jsxs("option",{value:"",children:[e.options.model," (nicht installiert)"]}),b.map(P=>H.jsxs("option",{value:P.name,children:[P.name,P.parameterSize?` · ${P.parameterSize}`:"",P.sizeGB?` · ${P.sizeGB} GB`:""]},P.name)),b.length===0&&H.jsx("option",{value:e.options.model,children:e.options.model})]})]}),e.options.provider==="ollama"&&H.jsxs("label",{className:"setting-row checkbox",children:[H.jsx("input",{type:"checkbox",checked:e.options.think,onChange:P=>e.setOptions({think:P.target.checked})}),H.jsx("span",{children:"Thinking-Mode (Modell denkt sichtbar vor der Antwort)"})]}),H.jsxs("label",{className:"setting-row checkbox",children:[H.jsx("input",{type:"checkbox",checked:e.options.tools,onChange:P=>e.setOptions({tools:P.target.checked})}),H.jsxs("span",{children:["Werkzeuge (",ne.length>0?ne.join(", "):"keine geladen",")"]})]}),H.jsxs("label",{className:"setting-row",children:[H.jsxs("span",{children:["Temperature: ",e.options.temperature.toFixed(2)]}),H.jsx("input",{type:"range",min:0,max:1.5,step:.05,value:e.options.temperature,onChange:P=>e.setOptions({temperature:Number(P.target.value)})})]}),H.jsxs("label",{className:"setting-row",children:[H.jsxs("span",{children:["Max. Tokens: ",e.options.numPredict]}),H.jsx("input",{type:"range",min:256,max:8192,step:256,value:e.options.numPredict,onChange:P=>e.setOptions({numPredict:Number(P.target.value)})})]}),H.jsxs("label",{className:"setting-row",children:[H.jsxs("span",{children:["Gedächtnis-Fenster: ",e.options.memorySteps," Schritte"]}),H.jsx("input",{type:"range",min:2,max:50,step:1,value:e.options.memorySteps,onChange:P=>e.setOptions({memorySteps:Number(P.target.value)})})]}),H.jsxs("label",{className:"setting-row checkbox",children:[H.jsx("input",{type:"checkbox",checked:e.options.memoryAnchors,onChange:P=>e.setOptions({memoryAnchors:P.target.checked})}),H.jsx("span",{children:"Ankerpunkte ins Modell einspielen (Gedächtnis als System-Kontext)"})]}),H.jsxs("label",{className:"setting-row checkbox",children:[H.jsx("input",{type:"checkbox",checked:e.options.dreamAuto,onChange:P=>e.setOptions({dreamAuto:P.target.checked})}),H.jsx("span",{children:"Auto-Traumphase (Konsolidierung nach 3 Min Inaktivität oder 10 Schritten)"})]}),H.jsxs("label",{className:"setting-row column",children:[H.jsx("span",{children:"System-Prompt"}),H.jsx("textarea",{rows:3,placeholder:"Optional: Verhalten des Modells steuern …",value:e.systemPrompt,onChange:P=>e.setSystemPrompt(P.target.value)})]})]}),s&&e.activeId&&H.jsx(pS,{sessionId:e.activeId,onClose:()=>c(!1)}),H.jsxs("div",{className:"messages",ref:i,children:[e.messages.length===0&&H.jsxs("div",{className:"welcome",children:[H.jsx("div",{className:"welcome-title",children:"▸ agenttwo-tools"}),H.jsx("p",{children:"Echtzeit-Chat mit lokalem Qwen3 über Ollama — per Tastatur oder Stimme (Whisper STT + Piper TTS, alles lokal)."}),H.jsx("p",{className:"hint",children:"🎙 für Sprachnachricht · 🔊 Stimme an für freihändigen Dialog"})]}),e.messages.map(P=>H.jsx(uS,{message:P,toolEvents:e.toolEvents[P.id],modelLabel:I},P.id))]}),L.error&&H.jsxs("div",{className:"voice-error",children:[L.error,H.jsx("button",{onClick:()=>L.setError(null),children:"✕"})]}),H.jsx(fS,{streaming:e.streaming,disabled:!e.activeId,recording:L.recording,transcribing:L.transcribing,injectedText:u,modelLabel:I,onInjected:()=>d(null),onSend:K,onAbort:Y,onMicToggle:re})]})]})}Uh.createRoot(document.getElementById("root")).render(H.jsx(Mh.StrictMode,{children:H.jsx(mS,{})})); diff --git a/web/dist/index.html b/web/dist/index.html index 6613430..5730983 100644 --- a/web/dist/index.html +++ b/web/dist/index.html @@ -6,7 +6,7 @@ agenttwo-tools — qwen3 mit Vision - + diff --git a/web/src/App.tsx b/web/src/App.tsx index 4289fd2..c55c048 100644 --- a/web/src/App.tsx +++ b/web/src/App.tsx @@ -5,7 +5,7 @@ import { Sidebar } from "./components/Sidebar"; import { ChatMessage } from "./components/ChatMessage"; import { Composer } from "./components/Composer"; import { MemoryPanel } from "./components/MemoryPanel"; -import type { OpenRouterModel } from "./types"; +import type { OpenRouterModel, OllamaModel } from "./types"; const VOICE_KEY = "oxagenttwo.voiceMode"; @@ -19,6 +19,7 @@ export default function App() { () => localStorage.getItem(VOICE_KEY) === "1", ); const [orModels, setOrModels] = useState([]); + const [ollamaModels, setOllamaModels] = useState([]); useEffect(() => { if ( @@ -33,7 +34,19 @@ export default function App() { }) .catch(() => {}); } - }, [settingsOpen, chat.options.provider, orModels.length]); + if ( + settingsOpen && + chat.options.provider === "ollama" && + ollamaModels.length === 0 + ) { + fetch("/api/ollama/models") + .then((r) => r.json()) + .then((d: { ok: boolean; models?: OllamaModel[] }) => { + if (d.ok && d.models) setOllamaModels(d.models); + }) + .catch(() => {}); + } + }, [settingsOpen, chat.options.provider, orModels.length, ollamaModels.length]); const voiceModeRef = useRef(voiceMode); const streamingRef = useRef(false); @@ -139,6 +152,10 @@ export default function App() { .catch(() => setToolNames([])); }, []); + const modelLabel = (chat.options.provider === "openrouter" + ? chat.options.openrouterModel.split("/").pop() + : chat.options.model.replace(/:latest$/, "")) ?? "qwen3"; + const handleSend = useCallback( (text: string, images: string[] = []) => { voice.cancelSpeech(); @@ -263,6 +280,36 @@ export default function App() { )} + {chat.options.provider === "ollama" && ( + + )} {chat.options.provider === "ollama" && (