diff --git a/js/dist/chat/chat.js b/js/dist/chat/chat.js index 0bda64f7..585bc2b3 100644 --- a/js/dist/chat/chat.js +++ b/js/dist/chat/chat.js @@ -1,7 +1,7 @@ var ys=Object.defineProperty;var vs=Object.getOwnPropertyDescriptor;var g=(i,t,e,n)=>{for(var o=n>1?void 0:n?vs(t,e):t,r=i.length-1,l;r>=0;r--)(l=i[r])&&(o=(n?l(t,e,o):l(o))||o);return n&&o&&ys(t,e,o),o};var qt=globalThis,Bt=qt.ShadowRoot&&(qt.ShadyCSS===void 0||qt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,fn=Symbol(),mn=new WeakMap,Ft=class{constructor(t,e,n){if(this._$cssResult$=!0,n!==fn)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(Bt&&t===void 0){let n=e!==void 0&&e.length===1;n&&(t=mn.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),n&&mn.set(e,t))}return t}toString(){return this.cssText}},gn=i=>new Ft(typeof i=="string"?i:i+"",void 0,fn);var _n=(i,t)=>{if(Bt)i.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let n=document.createElement("style"),o=qt.litNonce;o!==void 0&&n.setAttribute("nonce",o),n.textContent=e.cssText,i.appendChild(n)}},_e=Bt?i=>i:i=>i instanceof CSSStyleSheet?(t=>{let e="";for(let n of t.cssRules)e+=n.cssText;return gn(e)})(i):i;var{is:As,defineProperty:bs,getOwnPropertyDescriptor:Ts,getOwnPropertyNames:Ss,getOwnPropertySymbols:ws,getPrototypeOf:Cs}=Object,Gt=globalThis,En=Gt.trustedTypes,$s=En?En.emptyScript:"",xs=Gt.reactiveElementPolyfillSupport,yt=(i,t)=>i,vt={toAttribute(i,t){switch(t){case Boolean:i=i?$s:null;break;case Object:case Array:i=i==null?i:JSON.stringify(i)}return i},fromAttribute(i,t){let e=i;switch(t){case Boolean:e=i!==null;break;case Number:e=i===null?null:Number(i);break;case Object:case Array:try{e=JSON.parse(i)}catch{e=null}}return e}},Wt=(i,t)=>!As(i,t),yn={attribute:!0,type:String,converter:vt,reflect:!1,useDefault:!1,hasChanged:Wt};Symbol.metadata??=Symbol("metadata"),Gt.litPropertyMetadata??=new WeakMap;var j=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=yn){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let n=Symbol(),o=this.getPropertyDescriptor(t,n,e);o!==void 0&&bs(this.prototype,t,o)}}static getPropertyDescriptor(t,e,n){let{get:o,set:r}=Ts(this.prototype,t)??{get(){return this[e]},set(l){this[e]=l}};return{get:o,set(l){let p=o?.call(this);r?.call(this,l),this.requestUpdate(t,p,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??yn}static _$Ei(){if(this.hasOwnProperty(yt("elementProperties")))return;let t=Cs(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(yt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(yt("properties"))){let e=this.properties,n=[...Ss(e),...ws(e)];for(let o of n)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[n,o]of e)this.elementProperties.set(n,o)}this._$Eh=new Map;for(let[e,n]of this.elementProperties){let o=this._$Eu(e,n);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let n=new Set(t.flat(1/0).reverse());for(let o of n)e.unshift(_e(o))}else t!==void 0&&e.push(_e(t));return e}static _$Eu(t,e){let n=e.attribute;return n===!1?void 0:typeof n=="string"?n:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let n of e.keys())this.hasOwnProperty(n)&&(t.set(n,this[n]),delete this[n]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return _n(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,n){this._$AK(t,n)}_$ET(t,e){let n=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,n);if(o!==void 0&&n.reflect===!0){let r=(n.converter?.toAttribute!==void 0?n.converter:vt).toAttribute(e,n.type);this._$Em=t,r==null?this.removeAttribute(o):this.setAttribute(o,r),this._$Em=null}}_$AK(t,e){let n=this.constructor,o=n._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let r=n.getPropertyOptions(o),l=typeof r.converter=="function"?{fromAttribute:r.converter}:r.converter?.fromAttribute!==void 0?r.converter:vt;this._$Em=o,this[o]=l.fromAttribute(e,r.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,n){if(t!==void 0){let o=this.constructor,r=this[t];if(n??=o.getPropertyOptions(t),!((n.hasChanged??Wt)(r,e)||n.useDefault&&n.reflect&&r===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,n))))return;this.C(t,e,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:n,reflect:o,wrapped:r},l){n&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,l??e??this[t]),r!==!0||l!==void 0)||(this._$AL.has(t)||(this.hasUpdated||n||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,r]of this._$Ep)this[o]=r;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[o,r]of n){let{wrapped:l}=r,p=this[o];l!==!0||this._$AL.has(o)||p===void 0||this.C(o,void 0,r,p)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(e)):this._$EM()}catch(n){throw t=!1,this._$EM(),n}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};j.elementStyles=[],j.shadowRootOptions={mode:"open"},j[yt("elementProperties")]=new Map,j[yt("finalized")]=new Map,xs?.({ReactiveElement:j}),(Gt.reactiveElementVersions??=[]).push("2.1.0");var Se=globalThis,jt=Se.trustedTypes,vn=jt?jt.createPolicy("lit-html",{createHTML:i=>i}):void 0,Cn="$lit$",Z=`lit$${Math.random().toFixed(9).slice(2)}$`,$n="?"+Z,Ls=`<${$n}>`,nt=document,bt=()=>nt.createComment(""),Tt=i=>i===null||typeof i!="object"&&typeof i!="function",we=Array.isArray,Ms=i=>we(i)||typeof i?.[Symbol.iterator]=="function",Ee=`[ \f\r]`,At=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,An=/-->/g,bn=/>/g,tt=RegExp(`>|${Ee}(?:([^\\s"'>=/]+)(${Ee}*=${Ee}*(?:[^ \f\r"'\`<>=]|("|')|))|$)`,"g"),Tn=/'/g,Sn=/"/g,xn=/^(?:script|style|textarea|title)$/i,Ce=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),y=Ce(1),mi=Ce(2),fi=Ce(3),V=Symbol.for("lit-noChange"),A=Symbol.for("lit-nothing"),wn=new WeakMap,et=nt.createTreeWalker(nt,129);function Ln(i,t){if(!we(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return vn!==void 0?vn.createHTML(t):t}var Os=(i,t)=>{let e=i.length-1,n=[],o,r=t===2?"":t===3?"":"",l=At;for(let p=0;p"?(l=o??At,m=-1):T[1]===void 0?m=-2:(m=l.lastIndex-T[2].length,_=T[1],l=T[3]===void 0?tt:T[3]==='"'?Sn:Tn):l===Sn||l===Tn?l=tt:l===An||l===bn?l=At:(l=tt,o=void 0);let I=l===tt&&i[p+1].startsWith("/>")?" ":"";r+=l===At?h+Ls:m>=0?(n.push(_),h.slice(0,m)+Cn+h.slice(m)+Z+I):h+Z+(m===-2?p:I)}return[Ln(i,r+(i[e]||"")+(t===2?"":t===3?"":"")),n]},St=class i{constructor({strings:t,_$litType$:e},n){let o;this.parts=[];let r=0,l=0,p=t.length-1,h=this.parts,[_,T]=Os(t,e);if(this.el=i.createElement(_,n),et.currentNode=this.el.content,e===2||e===3){let m=this.el.content.firstChild;m.replaceWith(...m.childNodes)}for(;(o=et.nextNode())!==null&&h.length0){o.textContent=jt?jt.emptyScript:"";for(let I=0;I2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=A}_$AI(t,e=this,n,o){let r=this.strings,l=!1;if(r===void 0)t=ht(this,t,e,0),l=!Tt(t)||t!==this._$AH&&t!==V,l&&(this._$AH=t);else{let p=t,h,_;for(t=r[0],h=0;h{let n=e?.renderBefore??t,o=n._$litPart$;if(o===void 0){let r=e?.renderBefore??null;n._$litPart$=o=new wt(t.insertBefore(bt(),r),r,void 0,e??{})}return o._$AI(i),o};var $e=globalThis,F=class extends j{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Mn(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return V}};F._$litElement$=!0,F.finalized=!0,$e.litElementHydrateSupport?.({LitElement:F});var ks=$e.litElementPolyfillSupport;ks?.({LitElement:F});($e.litElementVersions??=[]).push("4.2.0");var On={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Rn=i=>(...t)=>({_$litDirective$:i,values:t}),Vt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,n){this._$Ct=t,this._$AM=e,this._$Ci=n}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var Ct=class extends Vt{constructor(t){if(super(t),this.it=A,t.type!==On.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===A||t==null)return this._t=void 0,this.it=t;if(t===V)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;let e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}};Ct.directiveName="unsafeHTML",Ct.resultType=1;var J=Rn(Ct);var Ns={attribute:!0,type:String,converter:vt,reflect:!1,hasChanged:Wt},Is=(i=Ns,t,e)=>{let{kind:n,metadata:o}=e,r=globalThis.litPropertyMetadata.get(o);if(r===void 0&&globalThis.litPropertyMetadata.set(o,r=new Map),n==="setter"&&((i=Object.create(i)).wrapped=!0),r.set(e.name,i),n==="accessor"){let{name:l}=e;return{set(p){let h=t.get.call(this);t.set.call(this,p),this.requestUpdate(l,h,i)},init(p){return p!==void 0&&this.C(l,void 0,i,p),p}}}if(n==="setter"){let{name:l}=e;return function(p){let h=this[l];t.call(this,p),this.requestUpdate(l,h,i)}}throw Error("Unsupported decorator location: "+n)};function f(i){return(t,e)=>typeof e=="object"?Is(i,t,e):((n,o,r)=>{let l=o.hasOwnProperty(r);return o.constructor.createProperty(r,n),l?Object.getOwnPropertyDescriptor(o,r):void 0})(i,t,e)}var{entries:Fn,setPrototypeOf:kn,isFrozen:Ds,getPrototypeOf:Ps,getOwnPropertyDescriptor:Us}=Object,{freeze:R,seal:D,create:Bn}=Object,{apply:ke,construct:Ne}=typeof Reflect<"u"&&Reflect;R||(R=function(t){return t});D||(D=function(t){return t});ke||(ke=function(t,e,n){return t.apply(e,n)});Ne||(Ne=function(t,e){return new t(...e)});var Kt=k(Array.prototype.forEach),Hs=k(Array.prototype.lastIndexOf),Nn=k(Array.prototype.pop),$t=k(Array.prototype.push),zs=k(Array.prototype.splice),Zt=k(String.prototype.toLowerCase),xe=k(String.prototype.toString),In=k(String.prototype.match),xt=k(String.prototype.replace),qs=k(String.prototype.indexOf),Fs=k(String.prototype.trim),H=k(Object.prototype.hasOwnProperty),O=k(RegExp.prototype.test),Lt=Bs(TypeError);function k(i){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var e=arguments.length,n=new Array(e>1?e-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:Zt;kn&&kn(i,null);let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let r=e(o);r!==o&&(Ds(t)||(t[n]=r),o=r)}i[o]=!0}return i}function Gs(i){for(let t=0;t/gm),Ks=D(/\$\{[\w\W]*/gm),Xs=D(/^data-[\-\w.\u00B7-\uFFFF]+$/),Zs=D(/^aria-[\-\w]+$/),Gn=D(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Js=D(/^(?:\w+script|data):/i),Qs=D(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=D(/^html$/i),ti=D(/^[a-z][.\w]*(-[.\w]+)+$/i),zn=Object.freeze({__proto__:null,ARIA_ATTR:Zs,ATTR_WHITESPACE:Qs,CUSTOM_ELEMENT:ti,DATA_ATTR:Xs,DOCTYPE_NAME:Wn,ERB_EXPR:Ys,IS_ALLOWED_URI:Gn,IS_SCRIPT_OR_DATA:Js,MUSTACHE_EXPR:Vs,TMPLIT_EXPR:Ks}),Ot={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},ei=function(){return typeof window>"u"?null:window},ni=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";e&&e.hasAttribute(o)&&(n=e.getAttribute(o));let r="dompurify"+(n?"#"+n:"");try{return t.createPolicy(r,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+r+" could not be created."),null}},qn=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function jn(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ei(),t=u=>jn(u);if(t.version="3.2.6",t.removed=[],!i||!i.document||i.document.nodeType!==Ot.document||!i.Element)return t.isSupported=!1,t;let{document:e}=i,n=e,o=n.currentScript,{DocumentFragment:r,HTMLTemplateElement:l,Node:p,Element:h,NodeFilter:_,NamedNodeMap:T=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:m,DOMParser:U,trustedTypes:I}=i,z=h.prototype,Qn=Mt(z,"cloneNode"),ts=Mt(z,"remove"),es=Mt(z,"nextSibling"),ns=Mt(z,"childNodes"),kt=Mt(z,"parentNode");if(typeof l=="function"){let u=e.createElement("template");u.content&&u.content.ownerDocument&&(e=u.content.ownerDocument)}let L,mt="",{implementation:ne,createNodeIterator:ss,createDocumentFragment:is,getElementsByTagName:os}=e,{importNode:rs}=n,M=qn();t.isSupported=typeof Fn=="function"&&typeof kt=="function"&&ne&&ne.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:se,ERB_EXPR:ie,TMPLIT_EXPR:oe,DATA_ATTR:as,ARIA_ATTR:ls,IS_SCRIPT_OR_DATA:cs,ATTR_WHITESPACE:Fe,CUSTOM_ELEMENT:us}=zn,{IS_ALLOWED_URI:Be}=zn,S=null,Ge=d({},[...Dn,...Le,...Me,...Oe,...Pn]),C=null,We=d({},[...Un,...Re,...Hn,...Xt]),v=Object.seal(Bn(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ft=null,re=null,je=!0,ae=!0,Ve=!1,Ye=!0,it=!1,Nt=!0,Q=!1,le=!1,ce=!1,ot=!1,It=!1,Dt=!1,Ke=!0,Xe=!1,hs="user-content-",ue=!0,gt=!1,rt={},at=null,Ze=d({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Je=null,Qe=d({},["audio","video","img","source","image","track"]),he=null,tn=d({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Pt="http://www.w3.org/1998/Math/MathML",Ut="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",lt=B,de=!1,pe=null,ds=d({},[Pt,Ut,B],xe),Ht=d({},["mi","mo","mn","ms","mtext"]),zt=d({},["annotation-xml"]),ps=d({},["title","style","font","a","script"]),_t=null,ms=["application/xhtml+xml","text/html"],fs="text/html",w=null,ct=null,gs=e.createElement("form"),en=function(s){return s instanceof RegExp||s instanceof Function},me=function(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ct&&ct===s)){if((!s||typeof s!="object")&&(s={}),s=Y(s),_t=ms.indexOf(s.PARSER_MEDIA_TYPE)===-1?fs:s.PARSER_MEDIA_TYPE,w=_t==="application/xhtml+xml"?xe:Zt,S=H(s,"ALLOWED_TAGS")?d({},s.ALLOWED_TAGS,w):Ge,C=H(s,"ALLOWED_ATTR")?d({},s.ALLOWED_ATTR,w):We,pe=H(s,"ALLOWED_NAMESPACES")?d({},s.ALLOWED_NAMESPACES,xe):ds,he=H(s,"ADD_URI_SAFE_ATTR")?d(Y(tn),s.ADD_URI_SAFE_ATTR,w):tn,Je=H(s,"ADD_DATA_URI_TAGS")?d(Y(Qe),s.ADD_DATA_URI_TAGS,w):Qe,at=H(s,"FORBID_CONTENTS")?d({},s.FORBID_CONTENTS,w):Ze,ft=H(s,"FORBID_TAGS")?d({},s.FORBID_TAGS,w):Y({}),re=H(s,"FORBID_ATTR")?d({},s.FORBID_ATTR,w):Y({}),rt=H(s,"USE_PROFILES")?s.USE_PROFILES:!1,je=s.ALLOW_ARIA_ATTR!==!1,ae=s.ALLOW_DATA_ATTR!==!1,Ve=s.ALLOW_UNKNOWN_PROTOCOLS||!1,Ye=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,it=s.SAFE_FOR_TEMPLATES||!1,Nt=s.SAFE_FOR_XML!==!1,Q=s.WHOLE_DOCUMENT||!1,ot=s.RETURN_DOM||!1,It=s.RETURN_DOM_FRAGMENT||!1,Dt=s.RETURN_TRUSTED_TYPE||!1,ce=s.FORCE_BODY||!1,Ke=s.SANITIZE_DOM!==!1,Xe=s.SANITIZE_NAMED_PROPS||!1,ue=s.KEEP_CONTENT!==!1,gt=s.IN_PLACE||!1,Be=s.ALLOWED_URI_REGEXP||Gn,lt=s.NAMESPACE||B,Ht=s.MATHML_TEXT_INTEGRATION_POINTS||Ht,zt=s.HTML_INTEGRATION_POINTS||zt,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),it&&(ae=!1),It&&(ot=!0),rt&&(S=d({},Pn),C=[],rt.html===!0&&(d(S,Dn),d(C,Un)),rt.svg===!0&&(d(S,Le),d(C,Re),d(C,Xt)),rt.svgFilters===!0&&(d(S,Me),d(C,Re),d(C,Xt)),rt.mathMl===!0&&(d(S,Oe),d(C,Hn),d(C,Xt))),s.ADD_TAGS&&(S===Ge&&(S=Y(S)),d(S,s.ADD_TAGS,w)),s.ADD_ATTR&&(C===We&&(C=Y(C)),d(C,s.ADD_ATTR,w)),s.ADD_URI_SAFE_ATTR&&d(he,s.ADD_URI_SAFE_ATTR,w),s.FORBID_CONTENTS&&(at===Ze&&(at=Y(at)),d(at,s.FORBID_CONTENTS,w)),ue&&(S["#text"]=!0),Q&&d(S,["html","head","body"]),S.table&&(d(S,["tbody"]),delete ft.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');L=s.TRUSTED_TYPES_POLICY,mt=L.createHTML("")}else L===void 0&&(L=ni(I,o)),L!==null&&typeof mt=="string"&&(mt=L.createHTML(""));R&&R(s),ct=s}},nn=d({},[...Le,...Me,...Ws]),sn=d({},[...Oe,...js]),_s=function(s){let a=kt(s);(!a||!a.tagName)&&(a={namespaceURI:lt,tagName:"template"});let c=Zt(s.tagName),E=Zt(a.tagName);return pe[s.namespaceURI]?s.namespaceURI===Ut?a.namespaceURI===B?c==="svg":a.namespaceURI===Pt?c==="svg"&&(E==="annotation-xml"||Ht[E]):!!nn[c]:s.namespaceURI===Pt?a.namespaceURI===B?c==="math":a.namespaceURI===Ut?c==="math"&&zt[E]:!!sn[c]:s.namespaceURI===B?a.namespaceURI===Ut&&!zt[E]||a.namespaceURI===Pt&&!Ht[E]?!1:!sn[c]&&(ps[c]||!nn[c]):!!(_t==="application/xhtml+xml"&&pe[s.namespaceURI]):!1},q=function(s){$t(t.removed,{element:s});try{kt(s).removeChild(s)}catch{ts(s)}},ut=function(s,a){try{$t(t.removed,{attribute:a.getAttributeNode(s),from:a})}catch{$t(t.removed,{attribute:null,from:a})}if(a.removeAttribute(s),s==="is")if(ot||It)try{q(a)}catch{}else try{a.setAttribute(s,"")}catch{}},on=function(s){let a=null,c=null;if(ce)s=""+s;else{let b=In(s,/^[\r\n\t ]+/);c=b&&b[0]}_t==="application/xhtml+xml"&<===B&&(s=''+s+"");let E=L?L.createHTML(s):s;if(lt===B)try{a=new U().parseFromString(E,_t)}catch{}if(!a||!a.documentElement){a=ne.createDocument(lt,"template",null);try{a.documentElement.innerHTML=de?mt:E}catch{}}let $=a.body||a.documentElement;return s&&c&&$.insertBefore(e.createTextNode(c),$.childNodes[0]||null),lt===B?os.call(a,Q?"html":"body")[0]:Q?a.documentElement:$},rn=function(s){return ss.call(s.ownerDocument||s,s,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT|_.SHOW_PROCESSING_INSTRUCTION|_.SHOW_CDATA_SECTION,null)},fe=function(s){return s instanceof m&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof T)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},an=function(s){return typeof p=="function"&&s instanceof p};function G(u,s,a){Kt(u,c=>{c.call(t,s,a,ct)})}let ln=function(s){let a=null;if(G(M.beforeSanitizeElements,s,null),fe(s))return q(s),!0;let c=w(s.nodeName);if(G(M.uponSanitizeElement,s,{tagName:c,allowedTags:S}),Nt&&s.hasChildNodes()&&!an(s.firstElementChild)&&O(/<[/\w!]/g,s.innerHTML)&&O(/<[/\w!]/g,s.textContent)||s.nodeType===Ot.progressingInstruction||Nt&&s.nodeType===Ot.comment&&O(/<[/\w]/g,s.data))return q(s),!0;if(!S[c]||ft[c]){if(!ft[c]&&un(c)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c)))return!1;if(ue&&!at[c]){let E=kt(s)||s.parentNode,$=ns(s)||s.childNodes;if($&&E){let b=$.length;for(let N=b-1;N>=0;--N){let W=Qn($[N],!0);W.__removalCount=(s.__removalCount||0)+1,E.insertBefore(W,es(s))}}}return q(s),!0}return s instanceof h&&!_s(s)||(c==="noscript"||c==="noembed"||c==="noframes")&&O(/<\/no(script|embed|frames)/i,s.innerHTML)?(q(s),!0):(it&&s.nodeType===Ot.text&&(a=s.textContent,Kt([se,ie,oe],E=>{a=xt(a,E," ")}),s.textContent!==a&&($t(t.removed,{element:s.cloneNode()}),s.textContent=a)),G(M.afterSanitizeElements,s,null),!1)},cn=function(s,a,c){if(Ke&&(a==="id"||a==="name")&&(c in e||c in gs))return!1;if(!(ae&&!re[a]&&O(as,a))){if(!(je&&O(ls,a))){if(!C[a]||re[a]){if(!(un(s)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&O(v.attributeNameCheck,a)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(a))||a==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c))))return!1}else if(!he[a]){if(!O(Be,xt(c,Fe,""))){if(!((a==="src"||a==="xlink:href"||a==="href")&&s!=="script"&&qs(c,"data:")===0&&Je[s])){if(!(Ve&&!O(cs,xt(c,Fe,"")))){if(c)return!1}}}}}}return!0},un=function(s){return s!=="annotation-xml"&&In(s,us)},hn=function(s){G(M.beforeSanitizeAttributes,s,null);let{attributes:a}=s;if(!a||fe(s))return;let c={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:C,forceKeepAttr:void 0},E=a.length;for(;E--;){let $=a[E],{name:b,namespaceURI:N,value:W}=$,Et=w(b),ge=W,x=b==="value"?ge:Fs(ge);if(c.attrName=Et,c.attrValue=x,c.keepAttr=!0,c.forceKeepAttr=void 0,G(M.uponSanitizeAttribute,s,c),x=c.attrValue,Xe&&(Et==="id"||Et==="name")&&(ut(b,s),x=hs+x),Nt&&O(/((--!?|])>)|<\/(style|title)/i,x)){ut(b,s);continue}if(c.forceKeepAttr)continue;if(!c.keepAttr){ut(b,s);continue}if(!Ye&&O(/\/>/i,x)){ut(b,s);continue}it&&Kt([se,ie,oe],pn=>{x=xt(x,pn," ")});let dn=w(s.nodeName);if(!cn(dn,Et,x)){ut(b,s);continue}if(L&&typeof I=="object"&&typeof I.getAttributeType=="function"&&!N)switch(I.getAttributeType(dn,Et)){case"TrustedHTML":{x=L.createHTML(x);break}case"TrustedScriptURL":{x=L.createScriptURL(x);break}}if(x!==ge)try{N?s.setAttributeNS(N,b,x):s.setAttribute(b,x),fe(s)?q(s):Nn(t.removed)}catch{ut(b,s)}}G(M.afterSanitizeAttributes,s,null)},Es=function u(s){let a=null,c=rn(s);for(G(M.beforeSanitizeShadowDOM,s,null);a=c.nextNode();)G(M.uponSanitizeShadowNode,a,null),ln(a),hn(a),a.content instanceof r&&u(a.content);G(M.afterSanitizeShadowDOM,s,null)};return t.sanitize=function(u){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=null,c=null,E=null,$=null;if(de=!u,de&&(u=""),typeof u!="string"&&!an(u))if(typeof u.toString=="function"){if(u=u.toString(),typeof u!="string")throw Lt("dirty is not a string, aborting")}else throw Lt("toString is not a function");if(!t.isSupported)return u;if(le||me(s),t.removed=[],typeof u=="string"&&(gt=!1),gt){if(u.nodeName){let W=w(u.nodeName);if(!S[W]||ft[W])throw Lt("root node is forbidden and cannot be sanitized in-place")}}else if(u instanceof p)a=on(""),c=a.ownerDocument.importNode(u,!0),c.nodeType===Ot.element&&c.nodeName==="BODY"||c.nodeName==="HTML"?a=c:a.appendChild(c);else{if(!ot&&!it&&!Q&&u.indexOf("<")===-1)return L&&Dt?L.createHTML(u):u;if(a=on(u),!a)return ot?null:Dt?mt:""}a&&ce&&q(a.firstChild);let b=rn(gt?u:a);for(;E=b.nextNode();)ln(E),hn(E),E.content instanceof r&&Es(E.content);if(gt)return u;if(ot){if(It)for($=is.call(a.ownerDocument);a.firstChild;)$.appendChild(a.firstChild);else $=a;return(C.shadowroot||C.shadowrootmode)&&($=rs.call(n,$,!0)),$}let N=Q?a.outerHTML:a.innerHTML;return Q&&S["!doctype"]&&a.ownerDocument&&a.ownerDocument.doctype&&a.ownerDocument.doctype.name&&O(Wn,a.ownerDocument.doctype.name)&&(N=" -`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y` +`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y`
${J(r)}
${this.formatTitle()}
diff --git a/js/dist/chat/chat.js.map b/js/dist/chat/chat.js.map index 80518076..87aa3063 100644 --- a/js/dist/chat/chat.js.map +++ b/js/dist/chat/chat.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", + "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", "names": ["global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizer", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "attrs", "name", "value", "ShinyToolCard", "i", "#toggleCollapse", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage"] } diff --git a/js/dist/markdown-stream/markdown-stream.js b/js/dist/markdown-stream/markdown-stream.js index 84fc2783..c14629b2 100644 --- a/js/dist/markdown-stream/markdown-stream.js +++ b/js/dist/markdown-stream/markdown-stream.js @@ -1,25 +1,25 @@ -var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var fr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var f=function(m){var E=g()(m);return p("cut"),E},b=f;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function h(w){return h=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},h(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,f,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,f,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,f,b)}))}function u(c,g,p,f){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&f.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,f,b){if(!p&&!f&&!b)throw new Error("Missing required arguments");if(!s.string(f))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,f,b);if(s.nodeList(p))return c(p,f,b);if(s.string(p))return g(p,f,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,f,b){return p.addEventListener(f,b),{destroy:function(){p.removeEventListener(f,b)}}}function c(p,f,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(f,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(f,b)})}}}function g(p,f,b){return a(document.body,p,f,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var fn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="",hr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!hr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){hr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var fl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},hl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return hl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},hn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),hn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),hn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),hn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),hn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,fl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(h){return a.noHighlightRe.test(h)}function u(h){let S=h.className+" ";S+=h.parentNode?h.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",h)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(h,S,N){let $="",w="";typeof S=="object"?($=h,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(h,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=he.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ht]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ft+=ht),ke.startsWith("_"))z+=x[0];else{let mt=he.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=f(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ft+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=he.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(he.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,he.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new fn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new fn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ft+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==he;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${h})`);throw Y.languageName=h,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` -`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let he=q(h);if(!he)throw lt(o.replace("{}",h)),new Error('Unknown language: "'+h+'"');let Z=Tl(he),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ft=0,Ie=0,He=0,$e=!1;try{if(he.__emitTokens)he.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:h,value:_e,relevance:ft,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:h,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:h,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(h){let S={value:ei(h),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(h),S}function f(h,S){S=S||a.languages||Object.keys(e);let N=p(h),$=S.filter(q).filter(de).map(R=>g(R,h,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(h,S,N){let $=S&&t[S]||N;h.classList.add("hljs"),h.classList.add(`language-${$}`)}function v(h){let S=null,N=u(h);if(l(N))return;if(te("before:highlightElement",{el:h,language:N}),h.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",h);return}if(h.children.length>0&&(a.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(h)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",h.innerHTML);S=h;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):f($);h.innerHTML=w.value,h.dataset.highlighted="yes",b(h,N,w.language),h.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(h.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:h,result:w,text:$})}function k(h){a=Er(a,h)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function h(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",h,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(h,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",h)),r)lt($);else throw $;N=s}N.name||(N.name=h),e[h]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:h})}function D(h){delete e[h];for(let S of Object.keys(t))t[S]===h&&delete t[S]}function oe(){return Object.keys(e)}function q(h){return h=(h||"").toLowerCase(),e[h]||e[t[h]]}function J(h,{languageName:S}){typeof h=="string"&&(h=[h]),h.forEach(N=>{t[N.toLowerCase()]=S})}function de(h){let S=q(h);return S&&!S.disableAutodetect}function V(h){h["before:highlightBlock"]&&!h["before:highlightElement"]&&(h["before:highlightElement"]=S=>{h["before:highlightBlock"](Object.assign({block:S.el},S))}),h["after:highlightBlock"]&&!h["after:highlightElement"]&&(h["after:highlightElement"]=S=>{h["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(h){V(h),i.push(h)}function fe(h){let S=i.indexOf(h);S!==-1&&i.splice(S,1)}function te(h,S){let N=h;i.forEach(function($){$[N]&&$[N](S)})}function se(h){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(h)}Object.assign(n,{highlight:c,highlightAuto:f,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:fe}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let h in gn)typeof gn[h]=="object"&&vr(gn[h]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],f=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[f,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:f,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:f,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},f=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,f]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},f]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],f.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let f=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(f)}),f=f.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:f},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:f}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:f,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",f="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${f}))?([eE][+-]?(${f})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var fs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,hs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}hs.exports=jl});var _s=H((fp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` -`},u]}}bs.exports=tc});var ws=H((hp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),f={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,f,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,f,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},f=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:f("(?:m|qr)?",/\//,/\//)},{begin:f("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:f("m|qr",/\(/,/\)/)},{begin:f("m|qr",/\[/,/\]/)},{begin:f("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function fc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),f=`[ -]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(h=>{se.push(h),h.toLowerCase()===h?se.push(h.toUpperCase()):se.push(h.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(f,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(f,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],fe={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[fe,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",fe,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=fc});var Ls=H((vp,Is)=>{function hc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=hc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",f=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${f}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${f})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],f=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...f),/\s*\(/),relevance:0,keywords:{built_in:f}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},f=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},fe={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},h={className:"variable",match:`\\$${wn}+`},S=[te,se,h],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,fe,...c,...f,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},he={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...f,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,he,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},fe,...c,...f,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),f.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],fo=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ho=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:ho,"variable.language":fo},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:ho.concat(r),"variable.language":fo},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),f=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,f]),t.contains=t.contains.concat([c,o,s,f]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",fs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ +var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var hr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var h=function(m){var E=g()(m);return p("cut"),E},b=h;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function f(w){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},f(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,h,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,h,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,h,b)}))}function u(c,g,p,h){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&h.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,h,b){if(!p&&!h&&!b)throw new Error("Missing required arguments");if(!s.string(h))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,h,b);if(s.nodeList(p))return c(p,h,b);if(s.string(p))return g(p,h,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,h,b){return p.addEventListener(h,b),{destroy:function(){p.removeEventListener(h,b)}}}function c(p,h,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(h,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(h,b)})}}}function g(p,h,b){return a(document.body,p,h,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var hn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="",fr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!fr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){fr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var hl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},fl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return fl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},fn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),fn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),fn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,hl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(f){return a.noHighlightRe.test(f)}function u(f){let S=f.className+" ";S+=f.parentNode?f.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",f)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(f,S,N){let $="",w="";typeof S=="object"?($=f,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),w=f,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(f,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=fe.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ft]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ht+=ft),ke.startsWith("_"))z+=x[0];else{let mt=fe.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=h(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ht+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=fe.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(fe.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,fe.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new hn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new hn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ht+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==fe;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${f})`);throw Y.languageName=f,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` +`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let fe=q(f);if(!fe)throw lt(o.replace("{}",f)),new Error('Unknown language: "'+f+'"');let Z=Tl(fe),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ht=0,Ie=0,He=0,$e=!1;try{if(fe.__emitTokens)fe.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:f,value:_e,relevance:ht,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:f,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:f,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(f){let S={value:ei(f),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(f),S}function h(f,S){S=S||a.languages||Object.keys(e);let N=p(f),$=S.filter(q).filter(de).map(R=>g(R,f,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(f,S,N){let $=S&&t[S]||N;f.classList.add("hljs"),f.classList.add(`language-${$}`)}function v(f){let S=null,N=u(f);if(l(N))return;if(te("before:highlightElement",{el:f,language:N}),f.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",f);return}if(f.children.length>0&&(a.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(f)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",f.innerHTML);S=f;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):h($);f.innerHTML=w.value,f.dataset.highlighted="yes",b(f,N,w.language),f.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(f.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:f,result:w,text:$})}function k(f){a=Er(a,f)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function f(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",f,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(f,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",f)),r)lt($);else throw $;N=s}N.name||(N.name=f),e[f]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:f})}function D(f){delete e[f];for(let S of Object.keys(t))t[S]===f&&delete t[S]}function oe(){return Object.keys(e)}function q(f){return f=(f||"").toLowerCase(),e[f]||e[t[f]]}function J(f,{languageName:S}){typeof f=="string"&&(f=[f]),f.forEach(N=>{t[N.toLowerCase()]=S})}function de(f){let S=q(f);return S&&!S.disableAutodetect}function V(f){f["before:highlightBlock"]&&!f["before:highlightElement"]&&(f["before:highlightElement"]=S=>{f["before:highlightBlock"](Object.assign({block:S.el},S))}),f["after:highlightBlock"]&&!f["after:highlightElement"]&&(f["after:highlightElement"]=S=>{f["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(f){V(f),i.push(f)}function he(f){let S=i.indexOf(f);S!==-1&&i.splice(S,1)}function te(f,S){let N=f;i.forEach(function($){$[N]&&$[N](S)})}function se(f){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(f)}Object.assign(n,{highlight:c,highlightAuto:h,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:he}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let f in gn)typeof gn[f]=="object"&&vr(gn[f]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],h=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[h,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:h,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:h,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},h=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,h]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},h]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],h.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let h=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(h)}),h=h.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:h},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:h}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:h,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",h="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${h}))?([eE][+-]?(${h})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var hs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,fs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}fs.exports=jl});var _s=H((hp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` +`},u]}}bs.exports=tc});var ws=H((fp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),h={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,h,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,h,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},h=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:h("(?:m|qr)?",/\//,/\//)},{begin:h("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:h("m|qr",/\(/,/\)/)},{begin:h("m|qr",/\[/,/\]/)},{begin:h("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function hc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),h=`[ +]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(f=>{se.push(f),f.toLowerCase()===f?se.push(f.toUpperCase()):se.push(f.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(h,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(h,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],he={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[he,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",he,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=hc});var Ls=H((vp,Is)=>{function fc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=fc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",h=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${h}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${h})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],h=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...h),/\s*\(/),relevance:0,keywords:{built_in:h}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},h=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},he={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},f={className:"variable",match:`\\$${wn}+`},S=[te,se,f],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,he,...c,...h,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},fe={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...h,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,fe,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},he,...c,...h,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},h={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[h],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[h],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),h.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],ho=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fo=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:fo,"variable.language":ho},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:fo.concat(r),"variable.language":ho},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),h=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,h]),t.contains=t.contains.concat([c,o,s,h]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",hs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ \f\r]`,Lt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,nr=/-->/g,ir=/>/g,st=RegExp(`>|${Gn}(?:([^\\s"'>=/]+)(${Gn}*=${Gn}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let f=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+f):l+tt+(g===-2?a:f)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let f=0;f2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(fr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let h=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+h):l+tt+(g===-2?a:h)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let h=0;h2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(hr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length{let o=r.match(/^\s+/);if(o===null)return r;let[s]=o;return s.length>=i.length?r.slice(i.length):r}).join(` `)}var kt=class{options;rules;lexer;constructor(e){this.options=e||dt}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let i=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:An(i,` `)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let i=t[0],r=Jc(i,t[3]||"");return{type:"code",raw:i,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let i=t[2].trim();if(/#$/.test(i)){let r=An(i,"#");(this.options.pedantic||!r||/ $/.test(r))&&(i=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let i=t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` $1`);i=An(i.replace(/^ *>[ \t]?/gm,""),` `);let r=this.lexer.state.top;this.lexer.state.top=!0;let o=this.lexer.blockTokens(i);return this.lexer.state.top=r,{type:"blockquote",raw:t[0],tokens:o,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let i=t[1].trim(),r=i.length>1,o={type:"list",raw:"",ordered:r,start:r?+i.slice(0,-1):"",loose:!1,items:[]};i=r?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=r?i:"[*+-]");let s=new RegExp(`^( {0,3}${i})((?:[ ][^\\n]*)?(?:\\n|$))`),a="",l="",u=!1;for(;e;){let c=!1;if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;a=t[0],e=e.substring(a.length);let g=t[2].split(` `,1)[0].replace(/^\t+/,M=>" ".repeat(3*M.length)),p=e.split(` -`,1)[0],f=0;this.options.pedantic?(f=2,l=g.trimStart()):(f=t[2].search(/[^ ]/),f=f>4?1:f,l=g.slice(f),f+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` -`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,f-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,f-1)}}#`);for(;e;){let B=e.split(` -`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=f||!p.trim())l+=` -`+p.slice(f);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` +`,1)[0],h=0;this.options.pedantic?(h=2,l=g.trimStart()):(h=t[2].search(/[^ ]/),h=h>4?1:h,l=g.slice(h),h+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` +`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,h-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,h-1)}}#`);for(;e;){let B=e.split(` +`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=h||!p.trim())l+=` +`+p.slice(h);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` `+p}!b&&!p.trim()&&(b=!0),a+=B+` -`,e=e.substring(B.length+1),g=p.slice(f)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;cf.type==="space"),p=g.length>0&&g.some(f=>/\n.*\n/.test(f.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`,e=e.substring(B.length+1),g=p.slice(h)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;ch.type==="space"),p=g.length>0&&g.some(h=>/\n.*\n/.test(h.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` `):[],s={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===r.length){for(let a of r)/^ *-+: *$/.test(a)?s.align.push("right"):/^ *:-+: *$/.test(a)?s.align.push("center"):/^ *:-+ *$/.test(a)?s.align.push("left"):s.align.push(null);for(let a of i)s.header.push({text:a,tokens:this.lexer.inline(a)});for(let a of o)s.rows.push(xo(a,s.header.length).map(l=>({text:l,tokens:this.lexer.inline(l)})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let i=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:i,tokens:this.lexer.inline(i)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Se(t[1])}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,f=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=f.slice(1,-1);return{type:"em",raw:f,text:v,tokens:this.lexer.inlineTokens(v)}}let b=f.slice(2,-2);return{type:"strong",raw:f,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),fi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,hi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",hi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(fi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,fu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),hu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",hi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",hi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:fu,emStrongRDelimAst:hu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,h=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=h.slice(1,-1);return{type:"em",raw:h,text:v,tokens:this.lexer.inlineTokens(v)}}let b=h.slice(2,-2);return{type:"strong",raw:h,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),hi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,fi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",fi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(hi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,hu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),fu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",fi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",fi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:hu,emStrongRDelimAst:fu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\l+" ".repeat(u.length));let i,r,o,s;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(a=>(i=a.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.raw.length===1&&t.length>0?t[t.length-1].raw+=` `:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=` `+i.raw,r.text+=` @@ -29,7 +29,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&( `+i.raw,r.text+=` `+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i),s=o.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&r.type==="text"?(r.raw+=` `+i.raw,r.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(f=>{p=f.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` +`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(h=>{p=h.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` `,r?'
'+(i?e:Se(e,!0))+`
`:"
"+(i?e:Se(e,!0))+`
`}blockquote(e){return`
@@ -47,10 +47,10 @@ ${e}
`}tablerow(e){return` ${e} `}tablecell(e,t){let i=t.header?"th":"td";return(t.align?`<${i} align="${t.align}">`:`<${i}>`)+e+` -`}strong(e){return`${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!f)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!h)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1{let a=o[s].flat(1/0);i=i.concat(this.walkTokens(a,t))}):o.tokens&&(i=i.concat(this.walkTokens(o.tokens,t)))}}return i}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(i=>{let r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(o=>{if(!o.name)throw new Error("extension name required");if("renderer"in o){let s=t.renderers[o.name];s?t.renderers[o.name]=function(...a){let l=o.renderer.apply(this,a);return l===!1&&(l=s.apply(this,a)),l}:t.renderers[o.name]=o.renderer}if("tokenizer"in o){if(!o.level||o.level!=="block"&&o.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=t[o.level];s?s.unshift(o.tokenizer):t[o.level]=[o.tokenizer],o.start&&(o.level==="block"?t.startBlock?t.startBlock.push(o.start):t.startBlock=[o.start]:o.level==="inline"&&(t.startInline?t.startInline.push(o.start):t.startInline=[o.start]))}"childTokens"in o&&o.childTokens&&(t.childTokens[o.name]=o.childTokens)}),r.extensions=t),i.renderer){let o=this.defaults.renderer||new Xe(this.defaults);for(let s in i.renderer){if(!(s in o))throw new Error(`renderer '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.renderer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g||""}}r.renderer=o}if(i.tokenizer){let o=this.defaults.tokenizer||new kt(this.defaults);for(let s in i.tokenizer){if(!(s in o))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let a=s,l=i.tokenizer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.tokenizer=o}if(i.hooks){let o=this.defaults.hooks||new Nt;for(let s in i.hooks){if(!(s in o))throw new Error(`hook '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.hooks[a],u=o[a];Nt.passThroughHooks.has(s)?o[a]=c=>{if(this.defaults.async)return Promise.resolve(l.call(o,c)).then(p=>u.call(o,p));let g=l.call(o,c);return u.call(o,g)}:o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.hooks=o}if(i.walkTokens){let o=this.defaults.walkTokens,s=i.walkTokens;r.walkTokens=function(a){let l=[];return l.push(s.call(this,a)),o&&(l=l.concat(o.call(this,a))),l}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Ye.lex(e,t??this.defaults)}parser(e,t){return Ve.parse(e,t??this.defaults)}#e(e,t){return(i,r)=>{let o={...r},s={...this.defaults,...o};this.defaults.async===!0&&o.async===!1&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);let a=this.#t(!!s.silent,!!s.async);if(typeof i>"u"||i===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof i!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(i):i).then(l=>e(l,s)).then(l=>s.hooks?s.hooks.processAllTokens(l):l).then(l=>s.walkTokens?Promise.all(this.walkTokens(l,s.walkTokens)).then(()=>l):l).then(l=>t(l,s)).then(l=>s.hooks?s.hooks.postprocess(l):l).catch(a);try{s.hooks&&(i=s.hooks.preprocess(i));let l=e(i,s);s.hooks&&(l=s.hooks.processAllTokens(l)),s.walkTokens&&this.walkTokens(l,s.walkTokens);let u=t(l,s);return s.hooks&&(u=s.hooks.postprocess(u)),u}catch(l){return a(l)}}}#t(e,t){return i=>{if(i.message+=` -Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:f}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:fe,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:h,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,he=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ft="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ht="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ht,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],fa="text/html",ge=null,_t=null,ha=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?fa:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(f,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ht?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ht?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ht&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,fe,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in ha))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(h,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ft+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,fe,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Te)switch(f.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(he||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" -`+Te),De&&xn([pe,fe,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),he=!0},e.clearConfig=function(){_t=null,he=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne` +Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:h}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:he,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:f,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,fe=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ht="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ft,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],ha="text/html",ge=null,_t=null,fa=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?ha:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(h,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ft?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ft?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ft&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,he,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in fa))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(f,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ht+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,he,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!Te)switch(h.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(fe||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" +`+Te),De&&xn([pe,he,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),fe=!0},e.clearConfig=function(){_t=null,fe=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne`
${xe(o)}
${this.formatTitle()}
@@ -163,13 +163,13 @@ ${t}`};window.Shiny?.addCustomMessageHandler("shiny-tool-request-hide",n=>{windo > ${xe('')} - `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#c),this.addEventListener("shiny-chat-update-user-input",this.#u),this.addEventListener("shiny-chat-remove-loading-message",this.#h),this.addEventListener("click",this.#d),this.addEventListener("keydown",this.#p),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#c),this.removeEventListener("shiny-chat-update-user-input",this.#u),this.removeEventListener("shiny-chat-remove-loading-message",this.#h),this.removeEventListener("click",this.#d),this.removeEventListener("keydown",this.#p),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#c(){this.messages.innerHTML=""}#u(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#d(t){this.#g(t)}#p(t){(t.key==="Enter"||t.key===" ")&&this.#g(t)}#g(t){let{suggestion:i,submit:r}=this.#m(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#m(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#h(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id + `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#d),this.addEventListener("shiny-chat-update-user-input",this.#p),this.addEventListener("shiny-chat-remove-loading-message",this.#m),this.addEventListener("click",this.#g),this.addEventListener("keydown",this.#c),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#d),this.removeEventListener("shiny-chat-update-user-input",this.#p),this.removeEventListener("shiny-chat-remove-loading-message",this.#m),this.removeEventListener("click",this.#g),this.removeEventListener("keydown",this.#c),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#d(){this.messages.innerHTML=""}#p(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#g(t){this.#u(t)}#c(t){(t.key==="Enter"||t.key===" ")&&this.#u(t)}#u(t){let{suggestion:i,submit:r}=this.#h(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#h(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#m(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a chat_ui('${n.id}') in the UI (Core)? `});return}t.dispatchEvent(e)});function Xu(n){return"isStreaming"in n}var ca="markdown-stream-dot",Qu=na(``),Dn=new Xe;Dn.table=(n,e)=>`${n}${e} -
`;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#c())}}render(){return ne`${ju(this.content,this.content_type)}`}disconnectedCallback(){super.disconnectedCallback(),this.#g()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#u(),this.#o=!1,this.#p(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let f=u[p];if(!f)break;if(f.nodeType===Node.ELEMENT_NODE||f.nodeType===Node.TEXT_NODE&&t(f)){c=f;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#c(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#u(){let t=this.#d();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#d(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#p(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#g(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id + `;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#d())};this.#c=()=>{this.#u()}}render(){return ne`${ju(this.content,this.content_type)}`}connectedCallback(){super.connectedCallback(),this.addEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}disconnectedCallback(){super.disconnectedCallback(),this.#h()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#p(),this.#o=!1,this.#u(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let h=u[p];if(!h)break;if(h.nodeType===Node.ELEMENT_NODE||h.nodeType===Node.TEXT_NODE&&t(h)){c=h;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#d(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#p(){let t=this.#g();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#g(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#c;#u(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#h(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1,this.removeEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a output_markdown_stream('${n.id}') in the UI (Core)?`});return}if(Xu(n)){e.streaming=n.isStreaming;return}if(n.html_deps&&await Mn(n.html_deps),n.operation==="replace")e.setAttribute("content",n.content);else if(n.operation==="append"){let t=e.getAttribute("content");e.setAttribute("content",t+n.content)}else throw new Error(`Unknown operation: ${n.operation}`)}window.Shiny?.addCustomMessageHandler("shinyMarkdownStreamMessage",ed);export{Li as MarkdownElement,ju as contentToHTML}; /*! Bundled license information: diff --git a/js/dist/markdown-stream/markdown-stream.js.map b/js/dist/markdown-stream/markdown-stream.js.map index 20145126..4614afb8 100644 --- a/js/dist/markdown-stream/markdown-stream.js.map +++ b/js/dist/markdown-stream/markdown-stream.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/clipboard/dist/clipboard.js", "../../node_modules/highlight.js/lib/core.js", "../../node_modules/highlight.js/lib/languages/xml.js", "../../node_modules/highlight.js/lib/languages/bash.js", "../../node_modules/highlight.js/lib/languages/c.js", "../../node_modules/highlight.js/lib/languages/cpp.js", "../../node_modules/highlight.js/lib/languages/csharp.js", "../../node_modules/highlight.js/lib/languages/css.js", "../../node_modules/highlight.js/lib/languages/markdown.js", "../../node_modules/highlight.js/lib/languages/diff.js", "../../node_modules/highlight.js/lib/languages/ruby.js", "../../node_modules/highlight.js/lib/languages/go.js", "../../node_modules/highlight.js/lib/languages/graphql.js", "../../node_modules/highlight.js/lib/languages/ini.js", "../../node_modules/highlight.js/lib/languages/java.js", "../../node_modules/highlight.js/lib/languages/javascript.js", "../../node_modules/highlight.js/lib/languages/json.js", "../../node_modules/highlight.js/lib/languages/kotlin.js", "../../node_modules/highlight.js/lib/languages/less.js", "../../node_modules/highlight.js/lib/languages/lua.js", "../../node_modules/highlight.js/lib/languages/makefile.js", "../../node_modules/highlight.js/lib/languages/perl.js", "../../node_modules/highlight.js/lib/languages/objectivec.js", "../../node_modules/highlight.js/lib/languages/php.js", "../../node_modules/highlight.js/lib/languages/php-template.js", "../../node_modules/highlight.js/lib/languages/plaintext.js", "../../node_modules/highlight.js/lib/languages/python.js", "../../node_modules/highlight.js/lib/languages/python-repl.js", "../../node_modules/highlight.js/lib/languages/r.js", "../../node_modules/highlight.js/lib/languages/rust.js", "../../node_modules/highlight.js/lib/languages/scss.js", "../../node_modules/highlight.js/lib/languages/shell.js", "../../node_modules/highlight.js/lib/languages/sql.js", "../../node_modules/highlight.js/lib/languages/swift.js", "../../node_modules/highlight.js/lib/languages/yaml.js", "../../node_modules/highlight.js/lib/languages/typescript.js", "../../node_modules/highlight.js/lib/languages/vbnet.js", "../../node_modules/highlight.js/lib/languages/wasm.js", "../../node_modules/highlight.js/lib/common.js", "../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../src/markdown-stream/markdown-stream.ts", "../../node_modules/highlight.js/es/common.js", "../../node_modules/marked/src/defaults.ts", "../../node_modules/marked/src/helpers.ts", "../../node_modules/marked/src/Tokenizer.ts", "../../node_modules/marked/src/rules.ts", "../../node_modules/marked/src/Lexer.ts", "../../node_modules/marked/src/Renderer.ts", "../../node_modules/marked/src/TextRenderer.ts", "../../node_modules/marked/src/Parser.ts", "../../node_modules/marked/src/Hooks.ts", "../../node_modules/marked/src/Instance.ts", "../../node_modules/marked/src/marked.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '
';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "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CZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KA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AAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UA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WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EAAS,IAE1D,GAAI,CACF,OAAOH,EAAaE,aAAaK,EAAY,CAC3CC,WAAWxC,EAAI,CACb,OAAOA,GAETyC,gBAAgBC,EAAS,CACvB,OAAOA,CACT,CACD,CAAA,OACS,CAIVC,eAAQC,KACN,uBAAyBL,EAAa,wBAAwB,EAEzD,IACT,CACF,EAEMM,GAAkB,UAAA,CACtB,MAAO,CACLC,wBAAyB,CAAA,EACzBC,sBAAuB,CAAA,EACvBC,uBAAwB,CAAA,EACxBC,yBAA0B,CAAA,EAC1BC,uBAAwB,CAAA,EACxBC,wBAAyB,CAAA,EACzBC,sBAAuB,CAAA,EACvBC,oBAAqB,CAAA,EACrBC,uBAAwB,CAAA,EAE5B,EAEA,SAASC,IAAgD,CAAA,IAAhCzB,EAAqBxD,UAAAC,OAAAD,GAAAA,UAAAkF,CAAAA,IAAAA,OAAAlF,UAAAuD,CAAAA,EAAAA,GAAS,EAC/C4B,EAAwBC,GAAqBH,GAAgBG,CAAI,EAMvE,GAJAD,EAAUE,QAAUC,QAEpBH,EAAUI,QAAU,CAAA,EAGlB,CAAC/B,GACD,CAACA,EAAOL,UACRK,EAAOL,SAASqC,WAAa5C,GAAUO,UACvC,CAACK,EAAOiC,QAIRN,OAAAA,EAAUO,YAAc,GAEjBP,EAGT,GAAI,CAAEhC,SAAAA,CAAU,EAAGK,EAEbmC,EAAmBxC,EACnByC,EACJD,EAAiBC,cACb,CACJC,iBAAAA,EACAC,oBAAAA,EACAC,KAAAA,EACAN,QAAAA,EACAO,WAAAA,EACAC,aAAAA,EAAezC,EAAOyC,cAAiBzC,EAAe0C,gBACtDC,gBAAAA,EACAC,UAAAA,EACA1C,aAAAA,CACD,EAAGF,EAEE6C,EAAmBZ,EAAQ5H,UAE3ByI,EAAYjF,GAAagF,EAAkB,WAAW,EACtDE,EAASlF,GAAagF,EAAkB,QAAQ,EAChDG,EAAiBnF,GAAagF,EAAkB,aAAa,EAC7DI,EAAgBpF,GAAagF,EAAkB,YAAY,EAC3DK,EAAgBrF,GAAagF,EAAkB,YAAY,EAQjE,GAAI,OAAOP,GAAwB,WAAY,CAC7C,IAAMa,EAAWxD,EAASyD,cAAc,UAAU,EAC9CD,EAASE,SAAWF,EAASE,QAAQC,gBACvC3D,EAAWwD,EAASE,QAAQC,cAEhC,CAEA,IAAIC,EACAC,EAAY,GAEV,CACJC,eAAAA,EACAC,mBAAAA,GACAC,uBAAAA,EACAC,qBAAAA,CAAoB,EAClBjE,EACE,CAAEkE,WAAAA,EAAY,EAAG1B,EAEnB2B,EAAQ/C,GAAe,EAK3BY,EAAUO,YACR,OAAOjJ,IAAY,YACnB,OAAOiK,GAAkB,YACzBO,GACAA,EAAeM,qBAAuBrC,OAExC,GAAM,CACJhD,cAAAA,GACAC,SAAAA,GACAC,YAAAA,GACAC,UAAAA,GACAC,UAAAA,EACAE,kBAAAA,EACAC,gBAAAA,EACAE,eAAAA,CACD,EAAG6E,GAEA,CAAEjF,eAAAA,CAAgB,EAAGiF,GAQrBC,EAAe,KACbC,EAAuBrH,EAAS,CAAA,EAAI,CACxC,GAAGsH,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,EAAS,CACb,EAGGC,EAAe,KACbC,EAAuBxH,EAAS,CAAA,EAAI,CACxC,GAAGyH,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,EAAS,CACb,EAQGC,EAA0BjL,OAAOE,KACnCC,GAAO,KAAM,CACX+K,aAAc,CACZC,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,MAETkH,mBAAoB,CAClBH,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,MAETmH,+BAAgC,CAC9BJ,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,EACR,CACF,CAAA,CAAC,EAIAoH,GAAc,KAGdC,GAAc,KAGdC,GAAkB,GAGlBC,GAAkB,GAGlBC,GAA0B,GAI1BC,GAA2B,GAK3BC,GAAqB,GAKrBC,GAAe,GAGfC,GAAiB,GAGjBC,GAAa,GAIbC,EAAa,GAMbC,GAAa,GAIbC,EAAsB,GAItBC,GAAsB,GAKtBC,GAAe,GAefC,EAAuB,GACrBC,GAA8B,gBAGhCC,GAAe,GAIfC,GAAW,GAGXC,GAA0C,CAAA,EAG1CC,EAAkB,KAChBC,EAA0BtJ,EAAS,CAAA,EAAI,CAC3C,iBACA,QACA,WACA,OACA,gBACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,QACA,UACA,WACA,WACA,YACA,SACA,QACA,MACA,WACA,QACA,QACA,QACA,KAAK,CACN,EAGGuJ,EAAgB,KACdC,EAAwBxJ,EAAS,CAAA,EAAI,CACzC,QACA,QACA,MACA,SACA,QACA,OAAO,CACR,EAGGyJ,GAAsB,KACpBC,GAA8B1J,EAAS,CAAA,EAAI,CAC/C,MACA,QACA,MACA,KACA,QACA,OACA,UACA,cACA,OACA,UACA,QACA,QACA,QACA,OAAO,CACR,EAEK2J,GAAmB,qCACnBC,GAAgB,6BAChBC,GAAiB,+BAEnBC,GAAYD,GACZE,GAAiB,GAGjBC,GAAqB,KACnBC,GAA6BjK,EACjC,CAAA,EACA,CAAC2J,GAAkBC,GAAeC,EAAc,EAChDxL,EAAc,EAGZ6L,GAAiClK,EAAS,CAAA,EAAI,CAChD,KACA,KACA,KACA,KACA,OAAO,CACR,EAEGmK,GAA0BnK,EAAS,CAAA,EAAI,CAAC,gBAAgB,CAAC,EAMvDoK,GAA+BpK,EAAS,CAAA,EAAI,CAChD,QACA,QACA,OACA,IACA,QAAQ,CACT,EAGGqK,GAAmD,KACjDC,GAA+B,CAAC,wBAAyB,WAAW,EACpEC,GAA4B,YAC9BpK,GAA2D,KAG3DqK,GAAwB,KAKtBC,GAAc3H,EAASyD,cAAc,MAAM,EAE3CmE,GAAoB,SACxBC,EAAkB,CAElB,OAAOA,aAAqBzL,QAAUyL,aAAqBC,UASvDC,GAAe,UAA0B,CAAA,IAAhBC,EAAAnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAc,CAAA,EAC3C,GAAI6K,EAAAA,IAAUA,KAAWM,GA6LzB,KAxLI,CAACA,GAAO,OAAOA,GAAQ,YACzBA,EAAM,CAAA,GAIRA,EAAMrK,GAAMqK,CAAG,EAEfT,GAEEC,GAA6B1L,QAAQkM,EAAIT,iBAAiB,IAAM,GAC5DE,GACAO,EAAIT,kBAGVlK,GACEkK,KAAsB,wBAClBhM,GACAH,GAGNkJ,EAAerI,GAAqB+L,EAAK,cAAc,EACnD9K,EAAS,CAAA,EAAI8K,EAAI1D,aAAcjH,EAAiB,EAChDkH,EACJE,EAAexI,GAAqB+L,EAAK,cAAc,EACnD9K,EAAS,CAAA,EAAI8K,EAAIvD,aAAcpH,EAAiB,EAChDqH,EACJwC,GAAqBjL,GAAqB+L,EAAK,oBAAoB,EAC/D9K,EAAS,CAAA,EAAI8K,EAAId,mBAAoB3L,EAAc,EACnD4L,GACJR,GAAsB1K,GAAqB+L,EAAK,mBAAmB,EAC/D9K,EACES,GAAMiJ,EAA2B,EACjCoB,EAAIC,kBACJ5K,EAAiB,EAEnBuJ,GACJH,EAAgBxK,GAAqB+L,EAAK,mBAAmB,EACzD9K,EACES,GAAM+I,CAAqB,EAC3BsB,EAAIE,kBACJ7K,EAAiB,EAEnBqJ,EACJH,EAAkBtK,GAAqB+L,EAAK,iBAAiB,EACzD9K,EAAS,CAAA,EAAI8K,EAAIzB,gBAAiBlJ,EAAiB,EACnDmJ,EACJrB,GAAclJ,GAAqB+L,EAAK,aAAa,EACjD9K,EAAS,CAAA,EAAI8K,EAAI7C,YAAa9H,EAAiB,EAC/CM,GAAM,CAAA,CAAE,EACZyH,GAAcnJ,GAAqB+L,EAAK,aAAa,EACjD9K,EAAS,CAAA,EAAI8K,EAAI5C,YAAa/H,EAAiB,EAC/CM,GAAM,CAAA,CAAE,EACZ2I,GAAerK,GAAqB+L,EAAK,cAAc,EACnDA,EAAI1B,aACJ,GACJjB,GAAkB2C,EAAI3C,kBAAoB,GAC1CC,GAAkB0C,EAAI1C,kBAAoB,GAC1CC,GAA0ByC,EAAIzC,yBAA2B,GACzDC,GAA2BwC,EAAIxC,2BAA6B,GAC5DC,GAAqBuC,EAAIvC,oBAAsB,GAC/CC,GAAesC,EAAItC,eAAiB,GACpCC,GAAiBqC,EAAIrC,gBAAkB,GACvCG,GAAakC,EAAIlC,YAAc,GAC/BC,EAAsBiC,EAAIjC,qBAAuB,GACjDC,GAAsBgC,EAAIhC,qBAAuB,GACjDH,EAAamC,EAAInC,YAAc,GAC/BI,GAAe+B,EAAI/B,eAAiB,GACpCC,EAAuB8B,EAAI9B,sBAAwB,GACnDE,GAAe4B,EAAI5B,eAAiB,GACpCC,GAAW2B,EAAI3B,UAAY,GAC3BjH,EAAiB4I,EAAIG,oBAAsB9D,GAC3C2C,GAAYgB,EAAIhB,WAAaD,GAC7BK,GACEY,EAAIZ,gCAAkCA,GACxCC,GACEW,EAAIX,yBAA2BA,GAEjCzC,EAA0BoD,EAAIpD,yBAA2B,CAAA,EAEvDoD,EAAIpD,yBACJgD,GAAkBI,EAAIpD,wBAAwBC,YAAY,IAE1DD,EAAwBC,aACtBmD,EAAIpD,wBAAwBC,cAI9BmD,EAAIpD,yBACJgD,GAAkBI,EAAIpD,wBAAwBK,kBAAkB,IAEhEL,EAAwBK,mBACtB+C,EAAIpD,wBAAwBK,oBAI9B+C,EAAIpD,yBACJ,OAAOoD,EAAIpD,wBAAwBM,gCACjC,YAEFN,EAAwBM,+BACtB8C,EAAIpD,wBAAwBM,gCAG5BO,KACFH,GAAkB,IAGhBS,IACFD,GAAa,IAIXQ,KACFhC,EAAepH,EAAS,CAAA,EAAIsH,EAAS,EACrCC,EAAe,CAAA,EACX6B,GAAa/H,OAAS,KACxBrB,EAASoH,EAAcE,EAAS,EAChCtH,EAASuH,EAAcE,EAAU,GAG/B2B,GAAa9H,MAAQ,KACvBtB,EAASoH,EAAcE,EAAQ,EAC/BtH,EAASuH,EAAcE,EAAS,EAChCzH,EAASuH,EAAcE,EAAS,GAG9B2B,GAAa7H,aAAe,KAC9BvB,EAASoH,EAAcE,EAAe,EACtCtH,EAASuH,EAAcE,EAAS,EAChCzH,EAASuH,EAAcE,EAAS,GAG9B2B,GAAa3H,SAAW,KAC1BzB,EAASoH,EAAcE,EAAW,EAClCtH,EAASuH,EAAcE,EAAY,EACnCzH,EAASuH,EAAcE,EAAS,IAKhCqD,EAAII,WACF9D,IAAiBC,IACnBD,EAAe3G,GAAM2G,CAAY,GAGnCpH,EAASoH,EAAc0D,EAAII,SAAU/K,EAAiB,GAGpD2K,EAAIK,WACF5D,IAAiBC,IACnBD,EAAe9G,GAAM8G,CAAY,GAGnCvH,EAASuH,EAAcuD,EAAIK,SAAUhL,EAAiB,GAGpD2K,EAAIC,mBACN/K,EAASyJ,GAAqBqB,EAAIC,kBAAmB5K,EAAiB,EAGpE2K,EAAIzB,kBACFA,IAAoBC,IACtBD,EAAkB5I,GAAM4I,CAAe,GAGzCrJ,EAASqJ,EAAiByB,EAAIzB,gBAAiBlJ,EAAiB,GAI9D+I,KACF9B,EAAa,OAAO,EAAI,IAItBqB,IACFzI,EAASoH,EAAc,CAAC,OAAQ,OAAQ,MAAM,CAAC,EAI7CA,EAAagE,QACfpL,EAASoH,EAAc,CAAC,OAAO,CAAC,EAChC,OAAOa,GAAYoD,OAGjBP,EAAIQ,qBAAsB,CAC5B,GAAI,OAAOR,EAAIQ,qBAAqBzH,YAAe,WACjD,MAAMzE,GACJ,6EAA6E,EAIjF,GAAI,OAAO0L,EAAIQ,qBAAqBxH,iBAAoB,WACtD,MAAM1E,GACJ,kFAAkF,EAKtFsH,EAAqBoE,EAAIQ,qBAGzB3E,EAAYD,EAAmB7C,WAAW,EAAE,CAC9C,MAEM6C,IAAuB7B,SACzB6B,EAAqBtD,GACnBC,EACAkC,CAAa,GAKbmB,IAAuB,MAAQ,OAAOC,GAAc,WACtDA,EAAYD,EAAmB7C,WAAW,EAAE,GAM5CnH,IACFA,GAAOoO,CAAG,EAGZN,GAASM,IAMLS,GAAevL,EAAS,CAAA,EAAI,CAChC,GAAGsH,GACH,GAAGA,GACH,GAAGA,EAAkB,CACtB,EACKkE,GAAkBxL,EAAS,CAAA,EAAI,CACnC,GAAGsH,GACH,GAAGA,EAAqB,CACzB,EAQKmE,GAAuB,SAAUpL,EAAgB,CACrD,IAAIqL,EAASrF,EAAchG,CAAO,GAI9B,CAACqL,GAAU,CAACA,EAAOC,WACrBD,EAAS,CACPE,aAAc9B,GACd6B,QAAS,aAIb,IAAMA,EAAUzN,GAAkBmC,EAAQsL,OAAO,EAC3CE,GAAgB3N,GAAkBwN,EAAOC,OAAO,EAEtD,OAAK3B,GAAmB3J,EAAQuL,YAAY,EAIxCvL,EAAQuL,eAAiBhC,GAIvB8B,EAAOE,eAAiB/B,GACnB8B,IAAY,MAMjBD,EAAOE,eAAiBjC,GAExBgC,IAAY,QACXE,KAAkB,kBACjB3B,GAA+B2B,EAAa,GAM3CC,EAAQP,GAAaI,CAAO,EAGjCtL,EAAQuL,eAAiBjC,GAIvB+B,EAAOE,eAAiB/B,GACnB8B,IAAY,OAKjBD,EAAOE,eAAiBhC,GACnB+B,IAAY,QAAUxB,GAAwB0B,EAAa,EAK7DC,EAAQN,GAAgBG,CAAO,EAGpCtL,EAAQuL,eAAiB/B,GAKzB6B,EAAOE,eAAiBhC,IACxB,CAACO,GAAwB0B,EAAa,GAMtCH,EAAOE,eAAiBjC,IACxB,CAACO,GAA+B2B,EAAa,EAEtC,GAMP,CAACL,GAAgBG,CAAO,IACvBvB,GAA6BuB,CAAO,GAAK,CAACJ,GAAaI,CAAO,GAMjEtB,GAAAA,KAAsB,yBACtBL,GAAmB3J,EAAQuL,YAAY,GA3EhC,IA4FLG,GAAe,SAAUC,EAAU,CACvClO,GAAUgH,EAAUI,QAAS,CAAE7E,QAAS2L,CAAM,CAAA,EAE9C,GAAI,CAEF3F,EAAc2F,CAAI,EAAEC,YAAYD,CAAI,OAC1B,CACV9F,EAAO8F,CAAI,CACb,GASIE,GAAmB,SAAUC,EAAc9L,EAAgB,CAC/D,GAAI,CACFvC,GAAUgH,EAAUI,QAAS,CAC3B1C,UAAWnC,EAAQ+L,iBAAiBD,CAAI,EACxCE,KAAMhM,CACP,CAAA,OACS,CACVvC,GAAUgH,EAAUI,QAAS,CAC3B1C,UAAW,KACX6J,KAAMhM,CACP,CAAA,CACH,CAKA,GAHAA,EAAQiM,gBAAgBH,CAAI,EAGxBA,IAAS,KACX,GAAIvD,IAAcC,EAChB,GAAI,CACFkD,GAAa1L,CAAO,CACtB,MAAY,CAAA,KAEZ,IAAI,CACFA,EAAQkM,aAAaJ,EAAM,EAAE,CAC/B,MAAY,CAAA,GAWZK,GAAgB,SAAUC,EAAa,CAE3C,IAAIC,EAAM,KACNC,EAAoB,KAExB,GAAIhE,EACF8D,EAAQ,oBAAsBA,MACzB,CAEL,IAAMG,GAAUrO,GAAYkO,EAAO,aAAa,EAChDE,EAAoBC,IAAWA,GAAQ,CAAC,CAC1C,CAGEvC,KAAsB,yBACtBP,KAAcD,KAGd4C,EACE,iEACAA,EACA,kBAGJ,IAAMI,GAAenG,EACjBA,EAAmB7C,WAAW4I,CAAK,EACnCA,EAKJ,GAAI3C,KAAcD,GAChB,GAAI,CACF6C,EAAM,IAAI3G,EAAS,EAAG+G,gBAAgBD,GAAcxC,EAAiB,CACvE,MAAY,CAAA,CAId,GAAI,CAACqC,GAAO,CAACA,EAAIK,gBAAiB,CAChCL,EAAM9F,EAAeoG,eAAelD,GAAW,WAAY,IAAI,EAC/D,GAAI,CACF4C,EAAIK,gBAAgBE,UAAYlD,GAC5BpD,EACAkG,QACM,CACV,CAEJ,CAEA,IAAMK,GAAOR,EAAIQ,MAAQR,EAAIK,gBAU7B,OARIN,GAASE,GACXO,GAAKC,aACHrK,EAASsK,eAAeT,CAAiB,EACzCO,GAAKG,WAAW,CAAC,GAAK,IAAI,EAK1BvD,KAAcD,GACT9C,EAAqBuG,KAC1BZ,EACAjE,GAAiB,OAAS,MAAM,EAChC,CAAC,EAGEA,GAAiBiE,EAAIK,gBAAkBG,IAS1CK,GAAsB,SAAUxI,EAAU,CAC9C,OAAO8B,GAAmByG,KACxBvI,EAAK0B,eAAiB1B,EACtBA,EAEAY,EAAW6H,aACT7H,EAAW8H,aACX9H,EAAW+H,UACX/H,EAAWgI,4BACXhI,EAAWiI,mBACb,IAAI,GAUFC,GAAe,SAAUxN,EAAgB,CAC7C,OACEA,aAAmByF,IAClB,OAAOzF,EAAQyN,UAAa,UAC3B,OAAOzN,EAAQ0N,aAAgB,UAC/B,OAAO1N,EAAQ4L,aAAgB,YAC/B,EAAE5L,EAAQ2N,sBAAsBpI,IAChC,OAAOvF,EAAQiM,iBAAoB,YACnC,OAAOjM,EAAQkM,cAAiB,YAChC,OAAOlM,EAAQuL,cAAiB,UAChC,OAAOvL,EAAQ8M,cAAiB,YAChC,OAAO9M,EAAQ4N,eAAkB,aAUjCC,GAAU,SAAUrN,EAAc,CACtC,OAAO,OAAO6E,GAAS,YAAc7E,aAAiB6E,GAGxD,SAASyI,GAOPlH,EAAYmH,EAA+BC,EAAsB,CACjEhR,GAAa4J,EAAQqH,GAAQ,CAC3BA,EAAKhB,KAAKxI,EAAWsJ,EAAaC,EAAM7D,EAAM,CAChD,CAAC,CACH,CAWA,IAAM+D,GAAoB,SAAUH,EAAgB,CAClD,IAAI5H,EAAU,KAMd,GAHA2H,GAAclH,EAAM1C,uBAAwB6J,EAAa,IAAI,EAGzDP,GAAaO,CAAW,EAC1BrC,OAAAA,GAAaqC,CAAW,EACjB,GAIT,IAAMzC,EAAUxL,GAAkBiO,EAAYN,QAAQ,EA2BtD,GAxBAK,GAAclH,EAAMvC,oBAAqB0J,EAAa,CACpDzC,QAAAA,EACA6C,YAAapH,CACd,CAAA,EAICoB,IACA4F,EAAYH,cAAa,GACzB,CAACC,GAAQE,EAAYK,iBAAiB,GACtCxP,GAAW,WAAYmP,EAAYnB,SAAS,GAC5ChO,GAAW,WAAYmP,EAAYL,WAAW,GAO5CK,EAAYjJ,WAAa5C,GAAUK,wBAOrC4F,IACA4F,EAAYjJ,WAAa5C,GAAUM,SACnC5D,GAAW,UAAWmP,EAAYC,IAAI,EAEtCtC,OAAAA,GAAaqC,CAAW,EACjB,GAIT,GAAI,CAAChH,EAAauE,CAAO,GAAK1D,GAAY0D,CAAO,EAAG,CAElD,GAAI,CAAC1D,GAAY0D,CAAO,GAAK+C,GAAsB/C,CAAO,IAEtDjE,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAcgE,CAAO,GAMxDjE,EAAwBC,wBAAwBiD,UAChDlD,EAAwBC,aAAagE,CAAO,GAE5C,MAAO,GAKX,GAAIzC,IAAgB,CAACG,EAAgBsC,CAAO,EAAG,CAC7C,IAAMgD,GAAatI,EAAc+H,CAAW,GAAKA,EAAYO,WACvDtB,GAAajH,EAAcgI,CAAW,GAAKA,EAAYf,WAE7D,GAAIA,IAAcsB,GAAY,CAC5B,IAAMC,GAAavB,GAAWzN,OAE9B,QAASiP,GAAID,GAAa,EAAGC,IAAK,EAAG,EAAEA,GAAG,CACxC,IAAMC,GAAa7I,EAAUoH,GAAWwB,EAAC,EAAG,EAAI,EAChDC,GAAWC,gBAAkBX,EAAYW,gBAAkB,GAAK,EAChEJ,GAAWxB,aAAa2B,GAAY3I,EAAeiI,CAAW,CAAC,CACjE,CACF,CACF,CAEArC,OAAAA,GAAaqC,CAAW,EACjB,EACT,CASA,OANIA,aAAuBhJ,GAAW,CAACqG,GAAqB2C,CAAW,IAOpEzC,IAAY,YACXA,IAAY,WACZA,IAAY,aACd1M,GAAW,8BAA+BmP,EAAYnB,SAAS,GAE/DlB,GAAaqC,CAAW,EACjB,KAIL7F,IAAsB6F,EAAYjJ,WAAa5C,GAAUZ,OAE3D6E,EAAU4H,EAAYL,YAEtB1Q,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5DxI,EAAU/H,GAAc+H,EAASwI,GAAM,GAAG,CAC5C,CAAC,EAEGZ,EAAYL,cAAgBvH,IAC9B1I,GAAUgH,EAAUI,QAAS,CAAE7E,QAAS+N,EAAYnI,UAAS,CAAE,CAAE,EACjEmI,EAAYL,YAAcvH,IAK9B2H,GAAclH,EAAM7C,sBAAuBgK,EAAa,IAAI,EAErD,KAYHa,GAAoB,SACxBC,EACAC,EACAtO,EAAa,CAGb,GACEkI,KACCoG,IAAW,MAAQA,IAAW,UAC9BtO,KAASiC,GAAYjC,KAAS4J,IAE/B,MAAO,GAOT,GACErC,EAAAA,IACA,CAACF,GAAYiH,CAAM,GACnBlQ,GAAW+C,GAAWmN,CAAM,IAGvB,GAAIhH,EAAAA,IAAmBlJ,GAAWgD,EAAWkN,CAAM,IAGnD,GAAI,CAAC5H,EAAa4H,CAAM,GAAKjH,GAAYiH,CAAM,GACpD,GAIGT,EAAAA,GAAsBQ,CAAK,IACxBxH,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAcuH,CAAK,GACrDxH,EAAwBC,wBAAwBiD,UAC/ClD,EAAwBC,aAAauH,CAAK,KAC5CxH,EAAwBK,8BAA8B7I,QACtDD,GAAWyI,EAAwBK,mBAAoBoH,CAAM,GAC5DzH,EAAwBK,8BAA8B6C,UACrDlD,EAAwBK,mBAAmBoH,CAAM,IAGtDA,IAAW,MACVzH,EAAwBM,iCACtBN,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAc9G,CAAK,GACrD6G,EAAwBC,wBAAwBiD,UAC/ClD,EAAwBC,aAAa9G,CAAK,IAKhD,MAAO,WAGA4I,CAAAA,GAAoB0F,CAAM,GAI9B,GACLlQ,CAAAA,GAAWiD,EAAgBzD,GAAcoC,EAAOuB,EAAiB,EAAE,CAAC,GAK/D,GACJ+M,GAAAA,IAAW,OAASA,IAAW,cAAgBA,IAAW,SAC3DD,IAAU,UACVvQ,GAAckC,EAAO,OAAO,IAAM,GAClC0I,EAAc2F,CAAK,IAMd,GACL7G,EAAAA,IACA,CAACpJ,GAAWkD,EAAmB1D,GAAcoC,EAAOuB,EAAiB,EAAE,CAAC,IAInE,GAAIvB,EACT,MAAO,QAMT,MAAO,IAWH6N,GAAwB,SAAU/C,EAAe,CACrD,OAAOA,IAAY,kBAAoBpN,GAAYoN,EAASrJ,CAAc,GAatE8M,GAAsB,SAAUhB,EAAoB,CAExDD,GAAclH,EAAM3C,yBAA0B8J,EAAa,IAAI,EAE/D,GAAM,CAAEJ,WAAAA,CAAY,EAAGI,EAGvB,GAAI,CAACJ,GAAcH,GAAaO,CAAW,EACzC,OAGF,IAAMiB,EAAY,CAChBC,SAAU,GACVC,UAAW,GACXC,SAAU,GACVC,kBAAmBlI,EACnBmI,cAAe7K,QAEbzE,GAAI4N,EAAWpO,OAGnB,KAAOQ,MAAK,CACV,IAAMuP,GAAO3B,EAAW5N,EAAC,EACnB,CAAE+L,KAAAA,GAAMP,aAAAA,GAAc/K,MAAO0O,EAAS,EAAKI,GAC3CR,GAAShP,GAAkBgM,EAAI,EAE/ByD,GAAYL,GACd1O,GAAQsL,KAAS,QAAUyD,GAAY/Q,GAAW+Q,EAAS,EAsB/D,GAnBAP,EAAUC,SAAWH,GACrBE,EAAUE,UAAY1O,GACtBwO,EAAUG,SAAW,GACrBH,EAAUK,cAAgB7K,OAC1BsJ,GAAclH,EAAMxC,sBAAuB2J,EAAaiB,CAAS,EACjExO,GAAQwO,EAAUE,UAKdvG,IAAyBmG,KAAW,MAAQA,KAAW,UAEzDjD,GAAiBC,GAAMiC,CAAW,EAGlCvN,GAAQoI,GAA8BpI,IAIpC2H,IAAgBvJ,GAAW,gCAAiC4B,EAAK,EAAG,CACtEqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GAAIiB,EAAUK,cACZ,SAIF,GAAI,CAACL,EAAUG,SAAU,CACvBtD,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GAAI,CAAC9F,IAA4BrJ,GAAW,OAAQ4B,EAAK,EAAG,CAC1DqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGI7F,IACFlL,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5DnO,GAAQpC,GAAcoC,GAAOmO,GAAM,GAAG,CACxC,CAAC,EAIH,IAAME,GAAQ/O,GAAkBiO,EAAYN,QAAQ,EACpD,GAAI,CAACmB,GAAkBC,GAAOC,GAAQtO,EAAK,EAAG,CAC5CqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GACE1H,GACA,OAAOrD,GAAiB,UACxB,OAAOA,EAAawM,kBAAqB,YAErCjE,CAAAA,GAGF,OAAQvI,EAAawM,iBAAiBX,GAAOC,EAAM,EAAC,CAClD,IAAK,cAAe,CAClBtO,GAAQ6F,EAAmB7C,WAAWhD,EAAK,EAC3C,KACF,CAEA,IAAK,mBAAoB,CACvBA,GAAQ6F,EAAmB5C,gBAAgBjD,EAAK,EAChD,KACF,CAKF,CAKJ,GAAIA,KAAU+O,GACZ,GAAI,CACEhE,GACFwC,EAAY0B,eAAelE,GAAcO,GAAMtL,EAAK,EAGpDuN,EAAY7B,aAAaJ,GAAMtL,EAAK,EAGlCgN,GAAaO,CAAW,EAC1BrC,GAAaqC,CAAW,EAExBxQ,GAASkH,EAAUI,OAAO,OAElB,CACVgH,GAAiBC,GAAMiC,CAAW,CACpC,CAEJ,CAGAD,GAAclH,EAAM9C,wBAAyBiK,EAAa,IAAI,GAQ1D2B,GAAqB,SAArBA,EAA+BC,EAA0B,CAC7D,IAAIC,EAAa,KACXC,EAAiB3C,GAAoByC,CAAQ,EAKnD,IAFA7B,GAAclH,EAAMzC,wBAAyBwL,EAAU,IAAI,EAEnDC,EAAaC,EAAeC,SAAQ,GAE1ChC,GAAclH,EAAMtC,uBAAwBsL,EAAY,IAAI,EAG5D1B,GAAkB0B,CAAU,EAG5Bb,GAAoBa,CAAU,EAG1BA,EAAWzJ,mBAAmBhB,GAChCuK,EAAmBE,EAAWzJ,OAAO,EAKzC2H,GAAclH,EAAM5C,uBAAwB2L,EAAU,IAAI,GAI5DlL,OAAAA,EAAUsL,SAAW,SAAU3D,EAAe,CAAA,IAAR3B,EAAGnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAG,CAAA,EACtCuN,EAAO,KACPmD,EAAe,KACfjC,GAAc,KACdkC,GAAa,KAUjB,GANAvG,GAAiB,CAAC0C,EACd1C,KACF0C,EAAQ,SAIN,OAAOA,GAAU,UAAY,CAACyB,GAAQzB,CAAK,EAC7C,GAAI,OAAOA,EAAMnO,UAAa,YAE5B,GADAmO,EAAQA,EAAMnO,SAAQ,EAClB,OAAOmO,GAAU,SACnB,MAAMrN,GAAgB,iCAAiC,MAGzD,OAAMA,GAAgB,4BAA4B,EAKtD,GAAI,CAAC0F,EAAUO,YACb,OAAOoH,EAgBT,GAZK/D,IACHmC,GAAaC,CAAG,EAIlBhG,EAAUI,QAAU,CAAA,EAGhB,OAAOuH,GAAU,WACnBtD,GAAW,IAGTA,IAEF,GAAKsD,EAAeqB,SAAU,CAC5B,IAAMnC,GAAUxL,GAAmBsM,EAAeqB,QAAQ,EAC1D,GAAI,CAAC1G,EAAauE,EAAO,GAAK1D,GAAY0D,EAAO,EAC/C,MAAMvM,GACJ,yDAAyD,CAG/D,UACSqN,aAAiB/G,EAG1BwH,EAAOV,GAAc,SAAS,EAC9B6D,EAAenD,EAAKzG,cAAcO,WAAWyF,EAAO,EAAI,EAEtD4D,EAAalL,WAAa5C,GAAUlC,SACpCgQ,EAAavC,WAAa,QAIjBuC,EAAavC,WAAa,OADnCZ,EAAOmD,EAKPnD,EAAKqD,YAAYF,CAAY,MAE1B,CAEL,GACE,CAACzH,IACD,CAACL,IACD,CAACE,IAEDgE,EAAM7N,QAAQ,GAAG,IAAM,GAEvB,OAAO8H,GAAsBoC,GACzBpC,EAAmB7C,WAAW4I,CAAK,EACnCA,EAON,GAHAS,EAAOV,GAAcC,CAAK,EAGtB,CAACS,EACH,OAAOtE,GAAa,KAAOE,GAAsBnC,EAAY,EAEjE,CAGIuG,GAAQvE,GACVoD,GAAamB,EAAKsD,UAAU,EAI9B,IAAMC,GAAelD,GAAoBpE,GAAWsD,EAAQS,CAAI,EAGhE,KAAQkB,GAAcqC,GAAaN,SAAQ,GAEzC5B,GAAkBH,EAAW,EAG7BgB,GAAoBhB,EAAW,EAG3BA,GAAY5H,mBAAmBhB,GACjCuK,GAAmB3B,GAAY5H,OAAO,EAK1C,GAAI2C,GACF,OAAOsD,EAIT,GAAI7D,GAAY,CACd,GAAIC,EAGF,IAFAyH,GAAaxJ,EAAuBwG,KAAKJ,EAAKzG,aAAa,EAEpDyG,EAAKsD,YAEVF,GAAWC,YAAYrD,EAAKsD,UAAU,OAGxCF,GAAapD,EAGf,OAAI3F,EAAamJ,YAAcnJ,EAAaoJ,kBAQ1CL,GAAatJ,GAAWsG,KAAKhI,EAAkBgL,GAAY,EAAI,GAG1DA,EACT,CAEA,IAAIM,GAAiBnI,GAAiByE,EAAK2D,UAAY3D,EAAKD,UAG5D,OACExE,IACArB,EAAa,UAAU,GACvB8F,EAAKzG,eACLyG,EAAKzG,cAAcqK,SACnB5D,EAAKzG,cAAcqK,QAAQ3E,MAC3BlN,GAAWkI,GAA0B+F,EAAKzG,cAAcqK,QAAQ3E,IAAI,IAEpEyE,GACE,aAAe1D,EAAKzG,cAAcqK,QAAQ3E,KAAO;EAAQyE,IAIzDrI,IACFlL,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5D4B,GAAiBnS,GAAcmS,GAAgB5B,GAAM,GAAG,CAC1D,CAAC,EAGItI,GAAsBoC,GACzBpC,EAAmB7C,WAAW+M,EAAc,EAC5CA,IAGN9L,EAAUiM,UAAY,UAAkB,CAAA,IAARjG,EAAGnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAG,CAAA,EACpCkL,GAAaC,CAAG,EAChBpC,GAAa,IAGf5D,EAAUkM,YAAc,UAAA,CACtBxG,GAAS,KACT9B,GAAa,IAGf5D,EAAUmM,iBAAmB,SAAUC,EAAKvB,EAAM9O,EAAK,CAEhD2J,IACHK,GAAa,CAAA,CAAE,EAGjB,IAAMqE,EAAQ/O,GAAkB+Q,CAAG,EAC7B/B,GAAShP,GAAkBwP,CAAI,EACrC,OAAOV,GAAkBC,EAAOC,GAAQtO,CAAK,GAG/CiE,EAAUqM,QAAU,SAAUC,EAAYC,EAAY,CAChD,OAAOA,GAAiB,YAI5BvT,GAAUmJ,EAAMmK,CAAU,EAAGC,CAAY,GAG3CvM,EAAUwM,WAAa,SAAUF,EAAYC,EAAY,CACvD,GAAIA,IAAiBxM,OAAW,CAC9B,IAAMrE,EAAQ9C,GAAiBuJ,EAAMmK,CAAU,EAAGC,CAAY,EAE9D,OAAO7Q,IAAU,GACbqE,OACA7G,GAAYiJ,EAAMmK,CAAU,EAAG5Q,EAAO,CAAC,EAAE,CAAC,CAChD,CAEA,OAAO5C,GAASqJ,EAAMmK,CAAU,CAAC,GAGnCtM,EAAUyM,YAAc,SAAUH,EAAU,CAC1CnK,EAAMmK,CAAU,EAAI,CAAA,GAGtBtM,EAAU0M,eAAiB,UAAA,CACzBvK,EAAQ/C,GAAe,GAGlBY,CACT,CAEA,IAAA2M,GAAe7M,GAAe,EC5nD9B,SAAS8M,GACPC,EACAC,EACa,CACb,IAAMC,EAAK,SAAS,cAAcF,CAAQ,EAC1C,OAAW,CAACG,EAAKC,CAAK,IAAK,OAAO,QAAQH,CAAK,EAAG,CAEhD,IAAMI,EAAWF,EAAI,QAAQ,KAAM,GAAG,EAClCC,IAAU,MAAMF,EAAG,aAAaG,EAAUD,CAAK,CACrD,CACA,OAAOF,CACT,CAEA,SAASI,GAAcC,EAA2B,CAGhD,OAFe,IAAI,UAAU,EACP,gBAAgBA,EAAM,eAAe,EAC7C,eAChB,CAGA,IAAMC,GAAN,cAA2BC,EAAW,CACpC,kBAAmB,CACjB,OAAO,IACT,CACF,EAWA,SAASC,GAAuB,CAC9B,SAAAC,EAAW,GACX,QAAAC,EACA,OAAAC,EAAS,SACX,EAA6B,CAC3B,SAAS,cACP,IAAI,YAAY,uBAAwB,CACtC,OAAQ,CAAE,SAAUF,EAAU,QAASC,EAAS,OAAQC,CAAO,CACjE,CAAC,CACH,CACF,CAEA,eAAeC,GAAmBC,EAAgC,CAChE,GAAK,OAAO,OACPA,EAEL,GAAI,CACF,MAAM,OAAO,MAAM,wBAAwBA,CAAI,CACjD,OAASC,EAAa,CACpBN,GAAuB,CACrB,OAAQ,QACR,QAAS,uCAAuCM,CAAW,EAC7D,CAAC,CACH,CACF,CAMA,SAASC,GAAaC,EAAsB,CAC1C,OAAOC,GAAU,SAASD,EAAM,CAE9B,SAAU,CAAC,QAAQ,EAEnB,wBAAyB,CACvB,aAAeE,GACN,OAAO,eAAe,IAAIA,CAAO,IAAM,OAEhD,mBAAqBC,GAAS,GAC9B,+BAAgC,EAClC,CACF,CAAC,CACH,CAKA,IAAMF,GAAYG,GAAU,EAC5BH,GAAU,QAAQ,sBAAuB,CAACI,EAAMC,IAAS,CACvD,GAAID,EAAK,UAAYA,EAAK,WAAa,SAAU,CAE/C,IAAME,EAAUF,EACVG,EACJD,EAAQ,aAAa,MAAM,IAAM,oBACjCA,EAAQ,aAAa,UAAU,IAAM,KAEvCD,EAAK,YAAY,OAAYE,CAC/B,CACF,CAAC,EAEDP,GAAU,QAAQ,0BAA2B,SAAUI,EAAM,CAG3D,GAAI,EADYA,EAAK,UAAY,KAAOA,EAAK,aAAa,MAAM,GAClD,OAEd,IAAMI,EAAOJ,EAAK,aAAa,MAAM,EAEjCI,GAAQ,kBAAkB,KAAKA,CAAI,IACrCJ,EAAK,aAAa,qBAAsB,EAAE,EAC1CA,EAAK,aAAa,SAAU,QAAQ,EACpCA,EAAK,aAAa,MAAO,qBAAqB,EAElD,CAAC,EAQD,IAAMK,GAAqB,IAAI,QAE/BT,GAAU,QAAQ,2BAA4B,SAAUI,EAAMC,EAAM,CAClE,GAAI,CAACD,EAAK,QAAS,OAMnB,GAJwB,CAAC,qBAAsB,mBAAmB,EAAE,SAClEA,EAAK,QAAQ,YAAY,CAC3B,EAEqB,CACnB,IAAMtB,EAAgC,CAAC,EACnCsB,EAAK,aAAa,OAAO,IAAGtB,EAAM,MAAQsB,EAAK,aAAa,OAAO,GAEnE,OAAO,KAAKtB,CAAK,EAAE,OAAS,GAC9B2B,GAAmB,IAAIL,EAAMtB,CAAK,CAEtC,CACF,CAAC,EAEDkB,GAAU,QAAQ,0BAA2B,SAAUI,EAAMC,EAAM,CACjE,GAAII,GAAmB,IAAIL,CAAI,EAAG,CAChC,IAAMtB,EAAQ2B,GAAmB,IAAIL,CAAI,EACzC,OAAO,QAAQtB,CAAK,EAAE,QAAQ,CAAC,CAAC4B,EAAMzB,CAAK,IAAM,CAC/CmB,EAAK,aAAaM,EAAMzB,CAAK,CAC/B,CAAC,EACDwB,GAAmB,OAAOL,CAAI,CAChC,CACF,CAAC,EAOM,SAASO,GAASC,EAAe,CAEtC,OAAO,SACLC,EACAC,EACAC,EACA,CACA,IAAMC,EAAiBD,EAAW,MAC9BE,EAEJ,OAAAF,EAAW,MAAQ,YAAaG,EAAa,CACvCD,GACF,OAAO,aAAaA,CAAO,EAG7BA,EAAU,OAAO,WAAW,IAAM,CAChCD,EAAe,MAAM,KAAME,CAAI,EAC/BD,EAAU,MACZ,EAAGL,CAAK,CACV,EAEOG,CACT,CACF,CCnKA,OAAO,UAAY,OAAO,WAAa,CAAC,EACxC,OAAO,UAAU,mBACf,OAAO,UAAU,oBAAsB,IAAI,IAQ7C,IAAMI,GAAN,cAA4BC,EAAW,CAAvC,kCAyCE,cAAW,GAOX,iBAAsB,GAOtB,UAAe,GASf,mBAAwB,UAExB,kBAAkC,CAChC,OAAO,IACT,CAEAC,GAAgBC,EAAU,CACxBA,EAAE,eAAe,EACjB,KAAK,SAAW,CAAC,KAAK,SACtB,KAAK,cAAc,CACrB,CAMU,aAAc,CACtB,IAAIC,EAAe,KAAK,WAAa,GAAG,KAAK,QAAQ,KACrD,OAAAA,EAAe,iCAAiCA,CAAY,UAC5DA,EAAe,KAAK,cAAc,QAAQ,UAAWA,CAAY,EAC1DC,KAAOC,GAAWF,CAAY,CAAC,EACxC,CAOU,WAAWG,EAA6B,CAChD,IAAMC,EAAW,eAAe,KAAK,SAAS,GACxCC,EAAY,gBAAgB,KAAK,SAAS,GAC1CC,EAAO,KAAK,MAAQC,GAAM,iBAE1BC,EAAgBP;AAAA,8BACI,KAAK,WAAW,KAAKC,GAAWI,CAAI,CAAC;AAAA,+BACpC,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC;AAAA;AAAA,QAE9D,KAAK,OAASL,8BAAgC,KAAK,MAAM,SAAW,EAAE;AAAA,MAG1E,OAAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAMKG,CAAQ;AAAA,oBACJ,KAAKN,EAAe;AAAA,2BACb,KAAK,QAAQ;AAAA,2BACbO,CAAS;AAAA;AAAA,YAExBG,CAAa;AAAA,4CACmBN,GAAWK,GAAM,IAAI,CAAC;AAAA;AAAA;AAAA,iFAGe,KACpE,SACC,GACA,YAAY;AAAA,gBACVF,CAAS;AAAA;AAAA,6BAEID,CAAQ;AAAA,oBACjB,CAAC,KAAK,QAAQ;AAAA;AAAA,YAEtBD,CAAW;AAAA;AAAA;AAAA,KAIrB,CACF,EA7HEM,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GAP/Cd,GAQJ,yBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,WAAY,CAAC,GAf9Cd,GAgBJ,wBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GAvB/Cd,GAwBJ,yBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/BtBd,GAgCJ,sBASAa,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAxCtCd,GAyCJ,wBAOAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/CtBd,GAgDJ,2BAOAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GAtDtBd,GAuDJ,oBASAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/DtBd,GAgEJ,6BA6EK,IAAMe,GAAN,cAA+Bf,EAAc,CAmBlD,aAAc,CACZ,MAAM,EAHR,YAAS,GAsBT,KAAAgB,GAAsBC,GAAuB,CACvCA,EAAM,OAAO,aAAe,KAAK,YACnC,KAAK,OAAS,GAElB,EAtBE,KAAK,cAAgB,kBACrB,KAAK,KAAO,kDACd,CAEA,mBAAoB,CAClB,MAAM,kBAAkB,EACxB,KAAK,OAAS,OAAO,UAAU,mBAAmB,IAAI,KAAK,SAAS,EACpE,OAAO,iBAAiB,0BAA2B,KAAKD,EAAkB,CAC5E,CAEA,sBAAuB,CACrB,MAAM,qBAAqB,EAC3B,OAAO,oBACL,0BACA,KAAKA,EACP,CACF,CAEAA,GAMA,QAAS,CACP,GAAI,KAAK,OACP,OAAOX,KAGT,IAAME,EAAcF;AAAA;AAAA,mBAELa,GAAkB,KAAK,UAAW,MAAM,CAAC;AAAA;AAAA,qBAEvC,EAAK;AAAA;AAAA,MAItB,OAAO,KAAK,WACVb;AAAA,0CACoCE,CAAW;AAAA,aAEjD,CACF,CACF,EAzDEM,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GANfC,GAOX,yBAUAF,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAhB/BC,GAiBX,sBAyDK,IAAMI,GAAN,cAA8BnB,EAAc,CA+CjD,aAAc,CACZ,MAAM,EAvBR,iBAAc,GAwBZ,KAAK,cAAgB,SACvB,CAEA,mBAAoB,CAClB,MAAM,kBAAkB,EAEpB,KAAK,SAAW,UAClB,KAAK,YAAc,cACnB,KAAK,KAAOW,GAAM,sBAClB,KAAK,cAAgB,kBAGvB,OAAO,UAAU,mBAAmB,IAAI,KAAK,SAAS,EACtD,KAAK,cACH,IAAI,YAAY,0BAA2B,CACzC,OAAQ,CAAE,WAAY,KAAK,SAAU,EACrC,QAAS,GACT,WAAY,EACd,CAAC,CACH,CACF,CAKAS,IAAgB,CACd,IAAIC,EAAkC,GAChCC,EAAQ,KAAK,OAAS,iBAoB5B,GAlBI,KAAK,YAAc,OACrBD,EAAShB,KAAOC,GAAWgB,CAAK,CAAC,GACxB,KAAK,YAAc,OAC5BD,EAAShB,QAAUiB,CAAK,QAGpB,KAAK,YAAc,aAErBD,EAASH,GAAkBI,EAAO,MAAM,GAG1CD,EAAShB;AAAA,kBACGgB,GAAUC,CAAK;AAAA;AAAA,qBAEZ,EAAK;AAAA,kCAIlB,CAAC,KAAK,aAAe,KAAK,YAAc,OAC1C,OAAOD,EAGT,IAAME,EAAe,KAAK,YACtBlB,kCACA,GAEJ,OAAOA;AAAA,QACHkB,CAAY,GAAGF,CAAM;AAAA,WAE3B,CAMAG,IAAiB,CACf,GAAI,CAAC,KAAK,aAAe,CAAC,KAAK,YAC7B,MAAO,GAGT,IAAMC,EAAUpB;AAAA,iBACHa,GAAkB,KAAK,YAAa,EAAE,CAAC;AAAA;AAAA,mBAErC,EAAK;AAAA,+BAGdQ,EAAgB,KAAK,YAAY,MAAM;AAAA,CAAI,EAAE,OAAS,EAE5D,OAAOrB;AAAA,QACHqB,EACErB;AAAA;AAAA,cAEIoB,CAAO;AAAA,sBAEXpB,gCAAkCoB,CAAO,EAAE;AAAA,WAEnD,CAEA,QAAS,CACP,IAAMlB,EAAcF,MAAQ,KAAKmB,GAAe,CAAC,IAAI,KAAKJ,GAAc,CAAC,IAEzE,OAAO,KAAK,WAAWb,CAAW,CACpC,CACF,EArIEM,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,CAAC,GAP1CK,GAQX,2BAQAN,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GAffK,GAgBX,sBASAN,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,UAAW,cAAe,CAAC,GAxB3CK,GAyBX,2BAOAN,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/BfK,GAgCX,qBAaAN,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GA5CxCK,GA6CX,yBAkGF,IAAMR,GAAQ,CACZ,sBAAuB;AAAA;AAAA,QAGvB,iBAAkB;AAAA;AAAA;AAAA,QAIlB,KAAM;AAAA;AAAA;AAAA,OAIR,EAWMO,GAAoB,CAACS,EAAiBC,EAAmB,aAAe,CAC5E,IAAMC,EAAY,IAAI,OAAO,CAAC,EAC9B,MAAO,GAAGA,CAAS,GAAGD,CAAQ;AAAA,EAAKD,CAAO;AAAA,EAAKE,CAAS,EAC1D,EAEA,OAAO,OAAO,wBACZ,0BACCC,GAAe,CACd,OAAO,UAAU,mBAAmB,IAAIA,CAAU,EAClD,IAAMb,EAAQ,IAAI,YAAY,0BAA2B,CACvD,OAAQ,CAAE,WAAAa,CAAW,EACrB,QAAS,GACT,WAAY,EACd,CAAC,EACD,OAAO,cAAcb,CAAK,CAC5B,CACF,ECpaO,IAAMc,GAAN,MAAMC,CAAmB,CAc9B,aAAc,CAbd,SAAqB,KAGrB,KAAQ,OAAmC,KAC3C,KAAQ,eAAoD,KAU1D,KAAK,aAAa,CACpB,CAbA,YAAe,SAAsC,KAIrD,OAAO,aAAkC,CACvC,OAAKA,EAAmB,WACtBA,EAAmB,SAAW,IAAIA,GAE7BA,EAAmB,QAC5B,CAWA,MAAM,iBAAiBC,EAA+B,CAEpD,GAAI,OAAO,qCACT,OAAO,QAAQ,QAAQ,EAAI,EAG7B,KAAK,IAAMA,EAGX,IAAMC,EAAiB,KAAK,QAAQ,cAAc,WAAW,EAC7D,OAAIA,IACFA,EAAe,YAAcD,GAGxB,IAAI,QAAkBE,GAAY,CACvC,KAAK,eAAiBA,EAEtB,GAAI,CACF,KAAK,QAAQ,UAAU,CACzB,MAAc,CAEZA,EAAQ,EAAI,CACd,CACF,CAAC,CACH,CAEQ,cAAqB,CAC3B,GAAI,KAAK,OAAQ,OAEjB,KAAK,OAAS,SAAS,cAAc,QAAQ,EAC7C,KAAK,OAAO,GAAK,iCACjB,KAAK,OAAO,UAAY,iCAGxB,KAAK,OAAO,UAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAuBxB,SAAS,KAAK,YAAY,KAAK,MAAM,EAGrC,IAAMC,EAAUC,GACd,KAAK,QAAQ,cAAcA,CAAQ,EAE/BC,EAAO,CACX,MAAOF,EAAO,sBAAsB,EACpC,OAAQA,EAAO,uBAAuB,EACtC,QAASA,EAAO,wBAAwB,EACxC,OAAQA,EAAO,uBAAuB,CACxC,EAEAE,EAAK,MAAM,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAC9DA,EAAK,OAAO,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAC/DA,EAAK,QAAQ,iBAAiB,QAAS,IAAM,KAAK,cAAc,CAAC,EACjEA,EAAK,OAAO,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAG/D,KAAK,OAAO,iBAAiB,QAAUC,GAAM,CACvCA,EAAE,SAAW,KAAK,SACpB,KAAK,aAAa,EAClBA,EAAE,eAAe,EAErB,CAAC,CACH,CAEQ,cAAqB,CAC3B,KAAK,QAAQ,MAAM,EACf,KAAK,iBACP,KAAK,eAAe,EAAK,EACzB,KAAK,eAAiB,KAE1B,CAEQ,eAAsB,CAC5B,KAAK,QAAQ,MAAM,EACf,KAAK,iBACP,KAAK,eAAe,EAAI,EACxB,KAAK,eAAiB,KAE1B,CAEQ,cAAqB,CAC3B,OAAO,qCAAuC,GAC9C,KAAK,cAAc,CACrB,CACF,EAOO,SAASC,GAA6BP,EAA+B,CAE1E,OAAI,OAAO,OAAO,kBAAsB,IACvBF,GAAmB,YAAY,EAChC,iBAAiBE,CAAG,EAI7B,QAAQ,QAAQ,EAAI,CAC7B,CC3FA,IAAMQ,GAAmB,qBACnBC,GAAwB,qBACxBC,GAAoB,sBACpBC,GAAiB,mBACjBC,GAAqB,uBACrBC,GAAwB,qBACxBC,GAAuB,oBAEvBC,GAAQ,CACZ,MACE,y8BAEF,UACE,wfACJ,EAEMC,GAAN,cAA0BC,EAAa,CAAvC,kCACc,aAAU,MACmB,iBAA2B,WACxB,eAAY,GAC5C,UAAO,GACmB,UAA6B,YAEnE,QAAS,CACP,IAAMC,EAAO,KAAKC,GAAa,EAE/B,OAAOC;AAAA,QACHF,CAAI;AAAA;AAAA,kBAEM,KAAK,OAAO;AAAA,uBACP,KAAK,WAAW;AAAA,qBAClB,KAAK,SAAS;AAAA,uBACZ,KAAK,OAAS,WAAW;AAAA,2BACrB,KAAKG,GAAiB,KAAK,IAAI,CAAC;AAAA,uBACpC,KAAKC,GAA2B,KAAK,IAAI,CAAC;AAAA;AAAA,KAG/D,CAEAH,IAAe,CACb,IAAMD,EAAO,KAAKK,GAAS,EAC3B,OAAOL,EACHE,+BAAiCI,GAAWN,CAAI,CAAC,SACjD,IACN,CAEAK,IAAW,CACT,OAAI,KAAK,OAAS,YACT,KAAK,KAIE,KAAK,QAAQ,KAAK,EAAE,SAAW,EAC9BR,GAAM,UAAY,KAAK,MAAQA,GAAM,KACxD,CAEAM,IAAyB,CAClB,KAAK,WAAW,KAAKC,GAA2B,CACvD,CAEAA,IAAmC,CACjC,KAAK,iBAAiB,+BAA+B,EAAE,QAASG,GAAO,CAErE,GADI,EAAEA,aAAc,cAChBA,EAAG,aAAa,UAAU,EAAG,OAEjCA,EAAG,aAAa,WAAY,GAAG,EAC/BA,EAAG,aAAa,OAAQ,QAAQ,EAEhC,IAAMC,EAAaD,EAAG,QAAQ,YAAcA,EAAG,YAC/CA,EAAG,aAAa,aAAc,wBAAwBC,CAAU,EAAE,CACpE,CAAC,CACH,CACF,EAvDcC,EAAA,CAAXC,EAAS,GADNZ,GACQ,uBAC6BW,EAAA,CAAxCC,EAAS,CAAE,UAAW,cAAe,CAAC,GAFnCZ,GAEqC,2BACGW,EAAA,CAA3CC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAHtCZ,GAGwC,yBAChCW,EAAA,CAAXC,EAAS,GAJNZ,GAIQ,oBAC0BW,EAAA,CAArCC,EAAS,CAAE,UAAW,WAAY,CAAC,GALhCZ,GAKkC,oBAqDxC,IAAMa,GAAN,cAA8Bb,EAAY,CACxC,aAAc,CACZ,MAAM,EACN,KAAK,KAAO,OACZ,KAAK,YAAc,eACrB,CACF,EAEMc,GAAN,cAA2Bb,EAAa,CACtC,QAAS,CACP,OAAOG,IACT,CACF,EAOMW,GAAN,cAAwBd,EAAa,CAArC,kCACc,iBAAc,qBAwB1B,KAAQ,UAAY,GACpB,KAAQ,aAAe,GAtBvB,IAAI,UAAW,CACb,OAAO,KAAK,SACd,CAEA,IAAI,SAASe,EAAgB,CAC3B,IAAMC,EAAW,KAAK,UAClBD,IAAUC,IAId,KAAK,UAAYD,EACbA,EACF,KAAK,aAAa,WAAY,EAAE,EAEhC,KAAK,gBAAgB,UAAU,EAGjC,KAAK,cAAc,WAAYC,CAAQ,EACvC,KAAKC,GAAS,EAChB,CAMA,mBAA0B,CACxB,MAAM,kBAAkB,EAExB,KAAK,qBAAuB,IAAI,qBAAsBC,GAAY,CAChEA,EAAQ,QAASC,GAAU,CACrBA,EAAM,gBAAgB,KAAKC,GAAc,CAC/C,CAAC,CACH,CAAC,EAED,KAAK,qBAAqB,QAAQ,IAAI,EACtC,KAAK,iBAAiB,mBAAoB,KAAKC,EAAmB,EAClE,KAAK,iBAAiB,iBAAkB,KAAKC,EAAiB,CAChE,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAK,sBAAsB,WAAW,EACtC,KAAK,qBAAuB,OAC5B,KAAK,oBAAoB,mBAAoB,KAAKD,EAAmB,EACrE,KAAK,oBAAoB,iBAAkB,KAAKC,EAAiB,CACnE,CAEA,yBACEC,EACAC,EACAT,EACA,CACA,MAAM,yBAAyBQ,EAAMC,EAAMT,CAAK,EAC5CQ,IAAS,aACX,KAAK,SAAWR,IAAU,KAE9B,CAEA,IAAY,UAAgC,CAC1C,OAAO,KAAK,cAAc,UAAU,CACtC,CAEA,IAAY,OAAgB,CAC1B,OAAO,KAAK,SAAS,KACvB,CAEA,IAAY,cAAwB,CAClC,OAAO,KAAK,MAAM,KAAK,EAAE,SAAW,CACtC,CAEA,IAAY,QAA4B,CACtC,OAAO,KAAK,cAAc,sBAAsB,CAClD,CAEA,QAAS,CAIP,OAAOZ;AAAA;AAAA,cAEG,KAAK,EAAE;AAAA;AAAA;AAAA,uBAGE,KAAK,WAAW;AAAA,mBACpB,KAAKsB,EAAU;AAAA,iBACjB,KAAKR,EAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAQb,KAAKS,EAAU;AAAA;AAAA,UAEtBnB,GAnBJ,wTAmBmB,CAAC;AAAA;AAAA,KAGxB,CAGAkB,GAAWE,EAAwB,CACjBA,EAAE,OAAS,SAAW,CAACA,EAAE,UAC1B,CAAC,KAAK,cAAgB,CAAC,KAAK,eACzCA,EAAE,eAAe,EACjB,KAAKD,GAAW,EAEpB,CAEAT,IAAiB,CACf,KAAKG,GAAc,EACnB,KAAK,OAAO,SAAW,KAAK,SAAW,GAAO,KAAK,MAAM,KAAK,EAAE,SAAW,CAC7E,CAEAC,IAA4B,CAC1B,KAAK,aAAe,EACtB,CAEAC,IAA0B,CACxB,KAAK,aAAe,EACtB,CAGU,cAAqB,CAC7B,KAAKL,GAAS,CAChB,CAEAS,GAAWE,EAAQ,GAAY,CAE7B,GADI,KAAK,cACL,KAAK,SAAU,OAEnB,OAAO,MAAM,cAAe,KAAK,GAAI,KAAK,MAAO,CAAE,SAAU,OAAQ,CAAC,EAGtE,IAAMC,EAAY,IAAI,YAAY,wBAAyB,CACzD,OAAQ,CAAE,QAAS,KAAK,MAAO,KAAM,MAAO,EAC5C,QAAS,GACT,SAAU,EACZ,CAAC,EACD,KAAK,cAAcA,CAAS,EAE5B,KAAK,cAAc,EAAE,EACrB,KAAK,SAAW,GAEZD,GAAO,KAAK,SAAS,MAAM,CACjC,CAEAR,IAAsB,CACpB,IAAMZ,EAAK,KAAK,SACZA,EAAG,cAAgB,IAGvBA,EAAG,MAAM,OAAS,OAClBA,EAAG,MAAM,OAAS,GAAGA,EAAG,YAAY,KACtC,CAEA,cACEO,EACA,CAAE,OAAAe,EAAS,GAAO,MAAAF,EAAQ,EAAM,EAA8B,CAAC,EACzD,CAEN,IAAMZ,EAAW,KAAK,SAAS,MAE/B,KAAK,SAAS,MAAQD,EAGtB,IAAMgB,EAAa,IAAI,MAAM,QAAS,CAAE,QAAS,GAAM,WAAY,EAAK,CAAC,EACzE,KAAK,SAAS,cAAcA,CAAU,EAElCD,IACF,KAAKJ,GAAW,EAAK,EACjBV,GAAU,KAAK,cAAcA,CAAQ,GAGvCY,GACF,KAAK,SAAS,MAAM,CAExB,CACF,EArLclB,EAAA,CAAXC,EAAS,GADNG,GACQ,2BAGRJ,EAAA,CADHC,EAAS,CAAE,KAAM,OAAQ,CAAC,GAHvBG,GAIA,wBAoLN,IAAMkB,GAAN,cAA4BhC,EAAa,CAAzC,kCAC6C,mBAAgB,GAE3D,sCAAmC,GAGnC,IAAY,OAAmB,CAC7B,OAAO,KAAK,cAAcN,EAAc,CAC1C,CAEA,IAAY,UAAyB,CACnC,OAAO,KAAK,cAAcD,EAAiB,CAC7C,CAEA,IAAY,aAAkC,CAC5C,IAAMwC,EAAO,KAAK,SAAS,iBAC3B,OAAOA,GAA+B,IACxC,CAEA,QAAS,CACP,OAAO9B,IACT,CAEA,mBAA0B,CACxB,MAAM,kBAAkB,EAIxB,IAAI+B,EAAW,KAAK,cAA2B,KAAK,EAC/CA,IACHA,EAAWC,GAAc,MAAO,CAC9B,MAAO,yBACT,CAAC,EACD,KAAK,MAAM,sBAAsB,WAAYD,CAAQ,GAGvD,KAAK,sBAAwB,IAAI,qBAC9BhB,GAAY,CACX,IAAMkB,EAAgB,KAAK,MAAM,cAAc,UAAU,EACzD,GAAI,CAACA,EAAe,OACpB,IAAMC,EAAYnB,EAAQ,CAAC,GAAG,oBAAsB,EACpDkB,EAAc,UAAU,OAAO,SAAUC,CAAS,CACpD,EACA,CACE,UAAW,CAAC,EAAG,CAAC,EAChB,WAAY,KACd,CACF,EAEA,KAAK,sBAAsB,QAAQH,CAAQ,EAC3C,KAAK,0BAA4B,KAAKI,GAAqB,KAAK,IAAI,EAEhE,KAAK,kCACP,KAAKC,GAAmB,CAE5B,CAEA,cAAqB,CAEd,KAAK,UACV,KAAKA,GAAmB,CAC1B,CAEAA,IAA2B,CACzB,KAAK,iCAAmC,GACxC,KAAK,iBAAiB,wBAAyB,KAAKC,EAAY,EAChE,KAAK,iBAAiB,4BAA6B,KAAKC,EAAS,EACjE,KAAK,iBACH,kCACA,KAAKC,EACP,EACA,KAAK,iBAAiB,4BAA6B,KAAKC,EAAQ,EAChE,KAAK,iBACH,+BACA,KAAKC,EACP,EACA,KAAK,iBACH,oCACA,KAAKC,EACP,EACA,KAAK,iBAAiB,QAAS,KAAKC,EAAuB,EAC3D,KAAK,iBAAiB,UAAW,KAAKC,EAAyB,EAE/D,OAAO,iBAAiB,QAAS,KAAK,yBAAyB,CACjE,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAK,iCAAmC,GAExC,KAAK,uBAAuB,WAAW,EACvC,KAAK,sBAAwB,OAE7B,KAAK,oBAAoB,wBAAyB,KAAKP,EAAY,EACnE,KAAK,oBAAoB,4BAA6B,KAAKC,EAAS,EACpE,KAAK,oBACH,kCACA,KAAKC,EACP,EACA,KAAK,oBAAoB,4BAA6B,KAAKC,EAAQ,EACnE,KAAK,oBACH,+BACA,KAAKC,EACP,EACA,KAAK,oBACH,oCACA,KAAKC,EACP,EACA,KAAK,oBAAoB,QAAS,KAAKC,EAAuB,EAC9D,KAAK,oBAAoB,UAAW,KAAKC,EAAyB,EAClE,OAAO,oBAAoB,QAAS,KAAK,yBAAyB,CACpE,CAGAP,GAAaQ,EAAmC,CAC9C,KAAKC,GAAeD,EAAM,MAAM,EAChC,KAAKE,GAAmB,CAC1B,CAGAT,GAAUO,EAAmC,CAC3C,KAAKC,GAAeD,EAAM,MAAM,CAClC,CAEAG,IAAqB,CACnB,KAAKC,GAAsB,EACtB,KAAK,MAAM,WACd,KAAK,MAAM,SAAW,GAE1B,CAEAH,GAAeI,EAAkBC,EAAW,GAAY,CACtD,KAAKH,GAAa,EAElB,IAAMI,EAAWhE,GAEb,KAAK,gBACP8D,EAAQ,KAAOA,EAAQ,MAAQ,KAAK,eAItC,GAAM,CAAE,KAAAG,EAAM,GAAGC,CAAY,EAAIJ,EAC3BK,EAA6B,CAAE,UAAWF,EAAM,GAAGC,CAAY,EAE/DE,EAAMxB,GAAcoB,EAAUG,CAAY,EAChD,KAAK,SAAS,YAAYC,CAAG,EAEzBL,GACF,KAAKM,GAAiB,CAE1B,CAGAV,IAA2B,CAKzB,IAAMG,EAAUlB,GAAc5C,GAJN,CACtB,QAAS,GACT,KAAM,WACR,CAC+D,EAC/D,KAAK,SAAS,YAAY8D,CAAO,CACnC,CAEAD,IAA8B,CACZ,KAAK,aAAa,SACpB,KAAK,aAAa,OAAO,CACzC,CAEAV,GAAeM,EAAmC,CAChD,KAAKa,GAAoBb,EAAM,MAAM,CACvC,CAEAa,GAAoBR,EAAwB,CACtCA,EAAQ,aAAe,iBACzB,KAAKJ,GAAeI,EAAS,EAAK,EAGpC,IAAMS,EAAc,KAAK,YACzB,GAAI,CAACA,EAAa,MAAM,IAAI,MAAM,sCAAsC,EAExE,GAAIT,EAAQ,aAAe,gBAAiB,CAC1CS,EAAY,aAAa,YAAa,EAAE,EACxC,MACF,CAEA,IAAMC,EACJV,EAAQ,YAAc,SAClBS,EAAY,aAAa,SAAS,EAAIT,EAAQ,QAC9CA,EAAQ,QAEdS,EAAY,aAAa,UAAWC,CAAO,EAEvCV,EAAQ,aAAe,gBACzB,KAAK,aAAa,gBAAgB,WAAW,EAC7C,KAAKO,GAAiB,EAE1B,CAEAjB,IAAiB,CACf,KAAK,SAAS,UAAY,EAC5B,CAEAC,GAAmBI,EAA2C,CAC5D,GAAM,CAAE,MAAAjC,EAAO,YAAAiD,EAAa,OAAAlC,EAAQ,MAAAF,CAAM,EAAIoB,EAAM,OAChDjC,IAAU,QACZ,KAAK,MAAM,cAAcA,EAAO,CAAE,OAAAe,EAAQ,MAAAF,CAAM,CAAC,EAE/CoC,IAAgB,SAClB,KAAK,MAAM,YAAcA,EAE7B,CAEAlB,GAAwBnB,EAAqB,CAC3C,KAAKsC,GAAwBtC,CAAC,CAChC,CAEAoB,GAA0BpB,EAAwB,EACzBA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MAGtD,KAAKsC,GAAwBtC,CAAC,CAChC,CAEAsC,GAAwBtC,EAAqC,CAC3D,GAAM,CAAE,WAAAlB,EAAY,OAAAqB,CAAO,EAAI,KAAKoC,GAAevC,EAAE,MAAM,EAC3D,GAAI,CAAClB,EAAY,OAEjBkB,EAAE,eAAe,EAGjB,IAAMwC,EACJxC,EAAE,SAAWA,EAAE,QAAU,GAAOA,EAAE,OAAS,GAAQG,EAErD,KAAK,MAAM,cAAcrB,EAAY,CACnC,OAAQ0D,EACR,MAAO,CAACA,CACV,CAAC,CACH,CAEAD,GAAe/D,EAGb,CACA,GAAI,EAAEA,aAAa,aAAc,MAAO,CAAC,EAEzC,IAAMK,EAAKL,EAAE,QAAQ,gCAAgC,EACrD,OAAMK,aAAc,YAGlBA,EAAG,UAAU,SAAS,YAAY,GAAKA,EAAG,QAAQ,aAAe,OAK5D,CACL,WAHiBA,EAAG,QAAQ,YAAcA,EAAG,aAGnB,OAC1B,OACEA,EAAG,UAAU,SAAS,QAAQ,GAC9BA,EAAG,QAAQ,mBAAqB,IAChCA,EAAG,QAAQ,mBAAqB,MACpC,EAV0B,CAAC,EAJc,CAAC,CAe5C,CAEAqC,IAAgC,CAC9B,KAAKO,GAAsB,EAC3B,KAAKQ,GAAiB,CACxB,CAEAA,IAAyB,CACvB,KAAK,MAAM,SAAW,EACxB,CAEAtB,GAAqBX,EAAqB,CAExC,IAAMyC,EAASzC,EAAE,OACjB,GAAI,CAAC,KAAK,SAASyC,CAAM,EAAG,OAE5B,IAAMC,EAASD,EAAO,QACpB,uBACF,EAEI,CAACC,GAAU,CAACA,EAAO,OAGvB1C,EAAE,eAAe,EAGjB2C,GAA6BD,EAAO,IAAI,EACrC,KAAME,GAAc,CACfA,GACF,OAAO,KAAKF,EAAO,KAAM,SAAU,qBAAqB,CAE5D,CAAC,EACA,MAAM,IAAM,CAEX,OAAO,KAAKA,EAAO,KAAM,SAAU,qBAAqB,CAC1D,CAAC,EACL,CACF,EAxS6C3D,EAAA,CAA1CC,EAAS,CAAE,UAAW,gBAAiB,CAAC,GADrCqB,GACuC,6BA4S7C,IAAMwC,GAAqB,CACzB,CAAE,IAAKjF,GAAkB,UAAWQ,EAAY,EAChD,CAAE,IAAKP,GAAuB,UAAWoB,EAAgB,EACzD,CAAE,IAAKnB,GAAmB,UAAWoB,EAAa,EAClD,CAAE,IAAKnB,GAAgB,UAAWoB,EAAU,EAC5C,CAAE,IAAKnB,GAAoB,UAAWqC,EAAc,EACpD,CAAE,IAAKpC,GAAuB,UAAW6E,EAAiB,EAC1D,CAAE,IAAK5E,GAAsB,UAAW6E,EAAgB,CAC1D,EAEAF,GAAmB,QAAQ,CAAC,CAAE,IAAAG,EAAK,UAAAC,CAAU,IAAM,CAC5C,eAAe,IAAID,CAAG,GACzB,eAAe,OAAOA,EAAKC,CAAS,CAExC,CAAC,EAED,OAAO,OAAO,wBACZ,mBACA,eAAgBvB,EAA2B,CACrCA,EAAQ,KAAK,WACf,MAAMwB,GAAmBxB,EAAQ,IAAI,SAAS,EAGhD,IAAMyB,EAAM,IAAI,YAAYzB,EAAQ,QAAS,CAC3C,OAAQA,EAAQ,GAClB,CAAC,EAEK7C,EAAK,SAAS,eAAe6C,EAAQ,EAAE,EAE7C,GAAI,CAAC7C,EAAI,CACPuE,GAAuB,CACrB,OAAQ,QACR,QAAS;AAAA,YACL1B,EAAQ,EAAE;AAAA,qBACDA,EAAQ,EAAE;AAAA,SAEzB,CAAC,EACD,MACF,CAEA7C,EAAG,cAAcsE,CAAG,CACtB,CACF,ErBjoBA,SAASE,GACPC,EAC+B,CAC/B,MAAO,gBAAiBA,CAC1B,CAGA,IAAMC,GAAgB,sBAChBC,GAAUC,GACd,yEAAyEF,EAAa,mFACxF,EAGMG,GAAmB,IAAIC,GAG7BD,GAAiB,MAAQ,CAACE,EAAgBC,IACjC;AAAA,eACMD,CAAM;AAAA,eACNC,CAAI;AAAA,cAInB,IAAMC,GAA8BJ,GAAiB,KAErDA,GAAiB,KAAO,SACtBK,EACAC,EACAC,EACQ,CACR,OAAID,IAAe,UACVD,EAEFD,GAA4B,KAAK,KAAMC,EAAMC,EAAYC,CAAO,CACzE,EAGA,IAAMC,GAAuB,IAAIP,GAKjCO,GAAqB,KAAQC,GAC3BA,EACG,WAAW,IAAK,OAAO,EACvB,WAAW,IAAK,MAAM,EACtB,WAAW,IAAK,MAAM,EACtB,WAAW,IAAK,QAAQ,EACxB,WAAW,IAAK,QAAQ,EAE7B,SAASC,GAAcC,EAAiBC,EAA2B,CACjE,GAAIA,IAAiB,WAAY,CAC/B,IAAMH,EAAOI,GAAMF,EAAS,CAAE,SAAUX,EAAiB,CAAC,EAC1D,OAAOc,GAAWC,GAAaN,CAAc,CAAC,CAChD,SAAWG,IAAiB,gBAAiB,CAC3C,IAAMH,EAAOI,GAAMF,EAAS,CAAE,SAAUH,EAAqB,CAAC,EAC9D,OAAOM,GAAWC,GAAaN,CAAc,CAAC,CAChD,KAAO,IAAIG,IAAiB,OAC1B,OAAOE,GAAWC,GAAaJ,CAAO,CAAC,EAClC,GAAIC,IAAiB,OAC1B,OAAOD,EAEP,MAAM,IAAI,MAAM,yBAAyBC,CAAY,EAAE,EAE3D,CAEA,IAAMI,GAAN,MAAMA,WAAwBC,EAAa,CAA3C,kCACc,aAAU,GAEtB,kBAA4B,WAE5B,eAAY,GAEZ,iBAAc,GA6Nd,KAAAC,GAAyC,KAEzC,KAAAC,GAAuB,GAEvB,KAAAC,GAAkB,GAElB,KAAAC,GAAY,IAAY,CACjB,KAAKF,KACR,KAAKC,GAAkB,CAAC,KAAKE,GAAc,EAE/C,EAnOA,QAAS,CACP,OAAOC,KAAOb,GAAc,KAAK,QAAS,KAAK,YAAY,CAAC,EAC9D,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAKc,GAAS,CAChB,CAEU,WAAWC,EAAyC,CACxDA,EAAkB,IAAI,SAAS,IACjC,KAAKN,GAAuB,GAE5BH,GAAgBU,GAAU,IAAI,GAEhC,MAAM,WAAWD,CAAiB,CACpC,CAEU,QAAQA,EAA+C,CAC/D,GAAIA,EAAkB,IAAI,SAAS,EAAG,CAEpC,GAAI,CACF,KAAKE,GAAsB,CAC7B,OAASC,EAAO,CACd,QAAQ,KAAK,4BAA6BA,CAAK,CACjD,CAiBA,GAdI,KAAK,WACP,KAAKC,GAAoB,EACzBb,GAAgB,eAAe,IAAI,GAEnCA,GAAgBc,GAAQ,IAAI,EAI9B,KAAKC,GAAyB,EAG9B,KAAKZ,GAAuB,GAC5B,KAAKa,GAAqB,EAEtB,KAAK,gBACP,GAAI,CACF,KAAK,gBAAgB,CACvB,OAASJ,EAAO,CACd,QAAQ,KAAK,2CAA4CA,CAAK,CAChE,CAEJ,CAEA,GAAIH,EAAkB,IAAI,WAAW,GACnC,GAAI,KAAK,UACP,KAAKI,GAAoB,UAEzB,KAAKI,GAAoB,EACrB,KAAK,YACP,GAAI,CACF,KAAK,YAAY,CACnB,OAASL,EAAO,CACd,QAAQ,KAAK,uCAAwCA,CAAK,CAC5D,EAIR,CAEAC,IAA4B,CAM1B,GALA,KAAKI,GAAoB,EAErB,KAAK,QAAQ,KAAK,IAAM,IAGxB,KAAK,kBAAkB,QAAQ,YAAY,IAAM,qBACnD,OAGF,IAAMC,EAAWC,GAAwB,KAAK,KAAKA,EAAK,aAAe,EAAE,EAGnEC,EAAc,IAAI,IAAI,CAAC,IAAK,MAAO,MAAO,KAAM,IAAI,CAAC,EAErDC,EAAmB,IAAI,IAAI,CAC/B,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACF,CAAC,GAMsCC,GAA8B,CACnE,IAAIC,EAAUD,EACVE,EAAQ,EAEZ,KAAOA,EAAQ,GAAG,CAChBA,IACA,IAAMC,EAAWF,EAAQ,WAErBG,EAAmC,KAGvC,QAASC,EAAIF,EAAS,OAAS,EAAGE,GAAK,EAAGA,IAAK,CAC7C,IAAMC,EAAQH,EAASE,CAAC,EACxB,GAAI,CAACC,EAAO,MACZ,GACEA,EAAM,WAAa,KAAK,cACvBA,EAAM,WAAa,KAAK,WAAaV,EAAQU,CAAa,EAC3D,CACAF,EAAsBE,EACtB,KACF,CACF,CAEA,GAAI,CAACF,GAAuB,EAAEA,aAA+B,SAG3D,OAAOH,EAGT,IAAMM,EAAUH,EAAoB,QAAQ,YAAY,EAExD,GAAIN,EAAY,IAAIS,CAAO,EAAG,CAC5BN,EAAUG,EACV,QACF,CAEA,OAAOL,EAAiB,IAAIQ,CAAO,EAAIH,EAAsBH,CAC/D,CAEA,OAAOA,CACT,GAE8B,IAAI,EAAE,YAAYzC,EAAO,CACzD,CAEAmC,IAA4B,CAC1B,KAAK,cAAc,OAAOpC,EAAa,EAAE,GAAG,OAAO,CACrD,CAEA,YAAa6B,GAAUoB,EAAgC,CACrD,GAAK,QAAQ,OAAO,UAEpB,GAAI,CACF,OAAO,MAAM,UAAUA,CAAE,CAC3B,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,0CAA0CD,CAAG,EACxD,CAAC,CACH,CACF,CAEA,YAAajB,GAAQgB,EAAgC,CACnD,GAAK,QAAQ,OAAO,kBACf,QAAQ,OAAO,QAEpB,IAAI,CACF,OAAO,MAAM,iBAAiBA,CAAE,CAClC,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,sCAAsCD,CAAG,EACpD,CAAC,CACH,CAEA,GAAI,CACF,MAAM,OAAO,MAAM,QAAQD,CAAE,CAC/B,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,wCAAwCD,CAAG,EACtD,CAAC,CACH,EACF,CAGA,aAAqB,eAAeD,EAAgC,CAClE,MAAM,KAAKhB,GAAQgB,CAAE,CACvB,CAEAnB,IAA8B,CACjB,KAAK,cAAc,UAAU,GAExC,KAAK,iBAA8B,UAAU,EAAE,QAASmB,GAAO,CAC7D,GAAIA,EAAG,QAAQ,cAAgB,MAAO,OAEtCG,GAAK,iBAAiBH,CAAE,EAGxB,IAAMI,EAAMC,GAAc,SAAU,CAClC,MAAO,mBACP,MAAO,mBACT,CAAC,EACDD,EAAI,UAAY,qBAChBJ,EAAG,QAAQI,CAAG,EAGI,IAAI,GAAAE,QAAYF,EAAK,CAAE,OAAQ,IAAMJ,CAAG,CAAC,EACjD,GAAG,UAAYO,GAAM,CAC7BH,EAAI,UAAU,IAAI,0BAA0B,EAC5C,WAAW,IAAMA,EAAI,UAAU,OAAO,0BAA0B,EAAG,GAAI,EACvEG,EAAE,eAAe,CACnB,CAAC,CACH,CAAC,CACH,CAKAnC,GAEAC,GAEAC,GAEAC,GAMAC,IAAyB,CACvB,IAAMwB,EAAK,KAAK5B,GAChB,OAAK4B,EAEEA,EAAG,cAAgBA,EAAG,UAAYA,EAAG,cAAgB,GAF5C,EAGlB,CAEAf,IAAiC,CAC/B,IAAMe,EAAK,KAAKQ,GAAsB,EAElCR,IAAO,KAAK5B,KACd,KAAKA,IAAoB,oBAAoB,SAAU,KAAKG,EAAS,EACrE,KAAKH,GAAqB4B,EAC1B,KAAK5B,IAAoB,iBAAiB,SAAU,KAAKG,EAAS,EAEtE,CAEAiC,IAA4C,CAC1C,GAAI,CAAC,KAAK,YAAa,OAAO,KAG9B,IAAIR,EAAyB,KAC7B,KAAOA,GAAI,CACT,GAAIA,EAAG,aAAeA,EAAG,aAAc,OAAOA,EAE9C,GADAA,EAAKA,EAAG,cACJA,GAAI,SAAS,YAAY,IAAMS,GAAmB,YAAY,EAIhE,KAEJ,CACA,OAAO,IACT,CAEAvB,IAA6B,CAC3B,IAAMc,EAAK,KAAK5B,GACZ,CAAC4B,GAAM,KAAK1B,IAEhB0B,EAAG,OAAO,CACR,IAAKA,EAAG,aAAeA,EAAG,aAC1B,SAAU,KAAK,UAAY,UAAY,QACzC,CAAC,CACH,CAEAtB,IAAiB,CACf,KAAKN,IAAoB,oBAAoB,SAAU,KAAKG,EAAS,EACrE,KAAKH,GAAqB,KAC1B,KAAKE,GAAkB,EACzB,CACF,EAjScoC,EAAA,CAAXC,EAAS,GADNzC,GACQ,uBAEZwC,EAAA,CADCC,EAAS,CAAE,UAAW,cAAe,CAAC,GAFnCzC,GAGJ,4BAEAwC,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAJtCzC,GAKJ,yBAEAwC,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,GAAM,UAAW,aAAc,CAAC,GANhEzC,GAOJ,2BAC8BwC,EAAA,CAA7BC,EAAS,CAAE,KAAM,QAAS,CAAC,GARxBzC,GAQ0B,+BACAwC,EAAA,CAA7BC,EAAS,CAAE,KAAM,QAAS,CAAC,GATxBzC,GAS0B,2BA0LTwC,EAAA,CADpBE,GAAS,GAAG,GAlMT1C,GAmMiB,oBAnMvB,IAAM2C,GAAN3C,GAsSK,eAAe,IAAI,uBAAuB,GAC7C,eAAe,OAAO,wBAAyB2C,EAAe,EAGhE,eAAeC,GACbhE,EACe,CACf,IAAMkD,EAAK,SAAS,eAAelD,EAAQ,EAAE,EAE7C,GAAI,CAACkD,EAAI,CACPE,GAAuB,CACrB,OAAQ,QACR,QAAS;AAAA,QACPpD,EAAQ,EAAE;AAAA,gCACcA,EAAQ,EAAE,sBACtC,CAAC,EACD,MACF,CAEA,GAAID,GAAmBC,CAAO,EAAG,CAC/BkD,EAAG,UAAYlD,EAAQ,YACvB,MACF,CAMA,GAJIA,EAAQ,WACV,MAAMiE,GAAmBjE,EAAQ,SAAS,EAGxCA,EAAQ,YAAc,UACxBkD,EAAG,aAAa,UAAWlD,EAAQ,OAAO,UACjCA,EAAQ,YAAc,SAAU,CACzC,IAAMe,EAAUmC,EAAG,aAAa,SAAS,EACzCA,EAAG,aAAa,UAAWnC,EAAUf,EAAQ,OAAO,CACtD,KACE,OAAM,IAAI,MAAM,sBAAsBA,EAAQ,SAAS,EAAE,CAE7D,CAEA,OAAO,OAAO,wBACZ,6BACAgE,EACF", - "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#maybeScrollToBottom", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] + "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '
';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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CZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KA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AAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC,EAAaX,EAAM,MAAM,UAAUQ,CAAe,EAIxD,GAAKE,EAAIC,EAAW,MAAM,OAAO,EAAI,CACnCJ,EAAS,YAAY,EACrB,MACF,CAKA,IAAKG,EAAIC,EAAW,MAAM,gBAAgB,IACpCD,EAAE,QAAU,EAAG,CACjBH,EAAS,YAAY,EAErB,MACF,CAEJ,CACF,EACMK,EAAa,CACjB,SAAUxB,GACV,QAASC,GACT,QAASC,GACT,SAAUK,GACV,oBAAqBD,EACvB,EAGMmB,EAAgB,kBAChBC,EAAO,OAAOD,CAAa,IAG3BE,EAAiB,sCACjBC,EAAS,CACb,UAAW,SACX,SAAU,CAER,CAAE,MAAO,QAAQD,CAAc,MAAMD,CAAI,YAAYA,CAAI,eAC1CD,CAAa,MAAO,EACnC,CAAE,MAAO,OAAOE,CAAc,SAASD,CAAI,eAAeA,CAAI,MAAO,EAGrE,CAAE,MAAO,4BAA6B,EAGtC,CAAE,MAAO,0CAA2C,EACpD,CAAE,MAAO,8BAA+B,EACxC,CAAE,MAAO,8BAA+B,EAIxC,CAAE,MAAO,iBAAkB,CAC7B,EACA,UAAW,CACb,EAEMG,EAAQ,CACZ,UAAW,QACX,MAAO,SACP,IAAK,MACL,SAAUL,EACV,SAAU,CAAC,CACb,EACMM,EAAgB,CACpB,MAAO,UACP,IAAK,GACL,OAAQ,CACN,IAAK,IACL,UAAW,GACX,SAAU,CACRrB,EAAK,iBACLoB,CACF,EACA,YAAa,KACf,CACF,EACME,EAAe,CACnB,MAAO,SACP,IAAK,GACL,OAAQ,CACN,IAAK,IACL,UAAW,GACX,SAAU,CACRtB,EAAK,iBACLoB,CACF,EACA,YAAa,KACf,CACF,EACMG,EAAmB,CACvB,MAAO,SACP,IAAK,GACL,OAAQ,CACN,IAAK,IACL,UAAW,GACX,SAAU,CACRvB,EAAK,iBACLoB,CACF,EACA,YAAa,SACf,CACF,EACMI,EAAkB,CACtB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRxB,EAAK,iBACLoB,CACF,CACF,EAwCMK,EAAU,CACd,UAAW,UACX,SAAU,CAzCUzB,EAAK,QACzB,eACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,iBACP,UAAW,EACX,SAAU,CACR,CACE,UAAW,SACX,MAAO,YACT,EACA,CACE,UAAW,OACX,MAAO,MACP,IAAK,MACL,WAAY,GACZ,aAAc,GACd,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAOM,EAAa,gBACpB,WAAY,GACZ,UAAW,CACb,EAGA,CACE,MAAO,cACP,UAAW,CACb,CACF,CACF,CACF,CACF,CACF,EAKIN,EAAK,qBACLA,EAAK,mBACP,CACF,EACM0B,EAAkB,CACtB1B,EAAK,iBACLA,EAAK,kBACLqB,EACAC,EACAC,EACAC,EAEA,CAAE,MAAO,OAAQ,EACjBL,CAIF,EACAC,EAAM,SAAWM,EACd,OAAO,CAGN,MAAO,KACP,IAAK,KACL,SAAUX,EACV,SAAU,CACR,MACF,EAAE,OAAOW,CAAe,CAC1B,CAAC,EACH,IAAMC,EAAqB,CAAC,EAAE,OAAOF,EAASL,EAAM,QAAQ,EACtDQ,EAAkBD,EAAmB,OAAO,CAEhD,CACE,MAAO,UACP,IAAK,KACL,SAAUZ,EACV,SAAU,CAAC,MAAM,EAAE,OAAOY,CAAkB,CAC9C,CACF,CAAC,EACKE,EAAS,CACb,UAAW,SAEX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUd,EACV,SAAUa,CACZ,EAGME,GAAmB,CACvB,SAAU,CAER,CACE,MAAO,CACL,QACA,MACAxB,EACA,MACA,UACA,MACAL,EAAM,OAAOK,EAAY,IAAKL,EAAM,OAAO,KAAMK,CAAU,EAAG,IAAI,CACpE,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,UACH,EAAG,uBACL,CACF,EAEA,CACE,MAAO,CACL,QACA,MACAA,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,aACL,CACF,CAEF,CACF,EAEMyB,EAAkB,CACtB,UAAW,EACX,MACA9B,EAAM,OAEJ,SAEA,iCAEA,6CAEA,kDAKF,EACA,UAAW,cACX,SAAU,CACR,EAAG,CAED,GAAGP,GACH,GAAGC,EACL,CACF,CACF,EAEMqC,EAAa,CACjB,MAAO,aACP,UAAW,OACX,UAAW,GACX,MAAO,8BACT,EAEMC,GAAsB,CAC1B,SAAU,CACR,CACE,MAAO,CACL,WACA,MACA3B,EACA,WACF,CACF,EAEA,CACE,MAAO,CACL,WACA,WACF,CACF,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,EACA,MAAO,WACP,SAAU,CAAEuB,CAAO,EACnB,QAAS,GACX,EAEMK,EAAsB,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EAEA,SAASC,GAAOC,EAAM,CACpB,OAAOnC,EAAM,OAAO,MAAOmC,EAAK,KAAK,GAAG,EAAG,GAAG,CAChD,CAEA,IAAMC,GAAgB,CACpB,MAAOpC,EAAM,OACX,KACAkC,GAAO,CACL,GAAGvC,GACH,QACA,QACF,EAAE,IAAI0C,GAAK,GAAGA,CAAC,SAAS,CAAC,EACzBhC,EAAYL,EAAM,UAAU,OAAO,CAAC,EACtC,UAAW,iBACX,UAAW,CACb,EAEMsC,GAAkB,CACtB,MAAOtC,EAAM,OAAO,KAAMA,EAAM,UAC9BA,EAAM,OAAOK,EAAY,oBAAoB,CAC/C,CAAC,EACD,IAAKA,EACL,aAAc,GACd,SAAU,YACV,UAAW,WACX,UAAW,CACb,EAEMkC,GAAmB,CACvB,MAAO,CACL,UACA,MACAlC,EACA,QACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACR,CACE,MAAO,MACT,EACAuB,CACF,CACF,EAEMY,EAAkB,2DAMbzC,EAAK,oBAAsB,UAEhC0C,EAAoB,CACxB,MAAO,CACL,gBAAiB,MACjBpC,EAAY,MACZ,OACA,cACAL,EAAM,UAAUwC,CAAe,CACjC,EACA,SAAU,QACV,UAAW,CACT,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRZ,CACF,CACF,EAEA,MAAO,CACL,KAAM,aACN,QAAS,CAAC,KAAM,MAAO,MAAO,KAAK,EACnC,SAAUd,EAEV,QAAS,CAAE,gBAAAa,EAAiB,gBAAAG,CAAgB,EAC5C,QAAS,eACT,SAAU,CACR/B,EAAK,QAAQ,CACX,MAAO,UACP,OAAQ,OACR,UAAW,CACb,CAAC,EACDgC,EACAhC,EAAK,iBACLA,EAAK,kBACLqB,EACAC,EACAC,EACAC,EACAC,EAEA,CAAE,MAAO,OAAQ,EACjBN,EACAY,EACA,CACE,MAAO,OACP,MAAOzB,EAAaL,EAAM,UAAU,GAAG,EACvC,UAAW,CACb,EACAyC,EACA,CACE,MAAO,IAAM1C,EAAK,eAAiB,kCACnC,SAAU,oBACV,UAAW,EACX,SAAU,CACRyB,EACAzB,EAAK,YACL,CACE,UAAW,WAIX,MAAOyC,EACP,YAAa,GACb,IAAK,SACL,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAOzC,EAAK,oBACZ,UAAW,CACb,EACA,CACE,UAAW,KACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUe,EACV,SAAUa,CACZ,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,IACP,UAAW,CACb,EACA,CACE,MAAO,MACP,UAAW,CACb,EACA,CACE,SAAU,CACR,CAAE,MAAOrB,EAAS,MAAO,IAAKA,EAAS,GAAI,EAC3C,CAAE,MAAOC,CAAiB,EAC1B,CACE,MAAOC,EAAQ,MAGf,WAAYA,EAAQ,kBACpB,IAAKA,EAAQ,GACf,CACF,EACA,YAAa,MACb,SAAU,CACR,CACE,MAAOA,EAAQ,MACf,IAAKA,EAAQ,IACb,KAAM,GACN,SAAU,CAAC,MAAM,CACnB,CACF,CACF,CACF,CACF,EACAwB,GACA,CAGE,cAAe,2BACjB,EACA,CAIE,MAAO,kBAAoBjC,EAAK,oBAC9B,gEAOF,YAAY,GACZ,MAAO,WACP,SAAU,CACR6B,EACA7B,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAOM,EAAY,UAAW,gBAAiB,CAAC,CAClF,CACF,EAEA,CACE,MAAO,SACP,UAAW,CACb,EACAiC,GAIA,CACE,MAAO,MAAQjC,EACf,UAAW,CACb,EACA,CACE,MAAO,CAAE,wBAAyB,EAClC,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAU,CAAEuB,CAAO,CACrB,EACAQ,GACAH,EACAJ,GACAU,GACA,CACE,MAAO,QACT,CACF,CACF,CACF,CAaA,SAASG,GAAW3C,EAAM,CACxB,IAAMC,EAAQD,EAAK,MACb4C,EAAa7C,GAAWC,CAAI,EAE5BM,EAAaf,GACbG,EAAQ,CACZ,MACA,OACA,SACA,UACA,SACA,SACA,QACA,SACA,SACA,SACF,EACMmD,EAAY,CAChB,MAAO,CACL,YACA,MACA7C,EAAK,QACP,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,CACF,EACM8C,EAAY,CAChB,cAAe,YACf,IAAK,KACL,WAAY,GACZ,SAAU,CACR,QAAS,oBACT,SAAUpD,CACZ,EACA,SAAU,CAAEkD,EAAW,QAAQ,eAAgB,CACjD,EACMZ,EAAa,CACjB,UAAW,OACX,UAAW,GACX,MAAO,wBACT,EACMe,EAAuB,CAC3B,OAEA,YACA,SACA,UACA,YACA,aACA,UACA,WACA,WACA,OACA,WACA,WACF,EAMMhC,EAAa,CACjB,SAAUxB,GACV,QAASC,GAAS,OAAOuD,CAAoB,EAC7C,QAAStD,GACT,SAAUK,GAAU,OAAOJ,CAAK,EAChC,oBAAqBG,EACvB,EAEMmD,EAAY,CAChB,UAAW,OACX,MAAO,IAAM1C,CACf,EAEM2C,EAAW,CAACC,EAAMC,EAAOC,IAAgB,CAC7C,IAAMC,EAAOH,EAAK,SAAS,UAAUrC,GAAKA,EAAE,QAAUsC,CAAK,EAC3D,GAAIE,IAAS,GAAM,MAAM,IAAI,MAAM,8BAA8B,EAEjEH,EAAK,SAAS,OAAOG,EAAM,EAAGD,CAAW,CAC3C,EAKA,OAAO,OAAOR,EAAW,SAAU7B,CAAU,EAE7C6B,EAAW,QAAQ,gBAAgB,KAAKI,CAAS,EAGjD,IAAMM,EAAsBV,EAAW,SAAS,KAAKW,GAAKA,EAAE,QAAU,MAAM,EAGtEC,EAA2B,OAAO,OAAO,CAAC,EAC9CF,EACA,CAAE,MAAOrD,EAAM,OAAOK,EAAYL,EAAM,UAAU,QAAQ,CAAC,CAAE,CAC/D,EACA2C,EAAW,QAAQ,gBAAgB,KAAK,CACtCA,EAAW,QAAQ,gBACnBU,EACAE,CACF,CAAC,EAGDZ,EAAW,SAAWA,EAAW,SAAS,OAAO,CAC/CI,EACAH,EACAC,EACAU,CACF,CAAC,EAGDP,EAASL,EAAY,UAAW5C,EAAK,QAAQ,CAAC,EAE9CiD,EAASL,EAAY,aAAcZ,CAAU,EAE7C,IAAMyB,EAAsBb,EAAW,SAAS,KAAK/B,GAAKA,EAAE,QAAU,UAAU,EAChF,OAAA4C,EAAoB,UAAY,EAEhC,OAAO,OAAOb,EAAY,CACxB,KAAM,aACN,QAAS,CACP,KACA,MACA,MACA,KACF,CACF,CAAC,EAEMA,CACT,CAEAtD,GAAO,QAAUqD,KCh5BjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,IAAMC,EAAQD,EAAK,MAKbE,EAAY,CAChB,UAAW,SACX,MAAO,iBACT,EAEMC,EAAS,CACb,UAAW,SACX,MAAO,IACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAEE,MAAO,IAAK,CAChB,CACF,EAGMC,EAAa,0BACbC,EAAa,wBACbC,EAAW,kCACXC,EAAW,yBACXC,EAAO,CACX,UAAW,UACX,SAAU,CACR,CAEE,MAAOP,EAAM,OAAO,MAAOA,EAAM,OAAOI,EAAYD,CAAU,EAAG,KAAK,CAAE,EAC1E,CAEE,MAAOH,EAAM,OAAO,MAAOM,EAAU,KAAK,CAAE,EAC9C,CAEE,MAAON,EAAM,OAAO,MAAOK,EAAU,KAAK,CAAE,EAC9C,CAEE,MAAOL,EAAM,OACX,MACAA,EAAM,OAAOI,EAAYD,CAAU,EACnC,KACAH,EAAM,OAAOK,EAAUC,CAAQ,EAC/B,KACF,CAAE,CACN,CACF,EAEME,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CAEE,MAAO,+DAAgE,EACzE,CAEE,MAAO,6BAA8B,EACvC,CAEE,MAAO,8BAA+B,EACxC,CAEE,MAAO,4BAA6B,EACtC,CAEE,MAAO,2BAA4B,CACvC,CACF,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,OACT,EAEMC,EAAcX,EAAK,QAAQ,MAAO,IAAK,CAAE,SAAU,CACvD,CACE,UAAW,SACX,MAAO,OACP,IAAK,GACP,CACF,CAAE,CAAC,EAEGY,EAAUZ,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAClD,CAAE,MAAO,GAAI,EACb,CAEE,MAAO,oBAAqB,CAChC,CAAE,CAAC,EAYH,MAAO,CACL,KAAM,oBACN,QAAS,CAAE,IAAK,EAChB,iBAAkB,GAClB,iBAAkB,CAAE,MAAO,QAAS,EACpC,SAAU,CACR,QACE,k2BAWF,SAEE,2OAGF,KAEE,4GACF,QAAS,oBACX,EACA,QACE,4CACF,SAAU,CACRE,EACAC,EACAK,EACAC,EACAC,EACAC,EACAC,EA/Ce,CACjB,UAAW,OAEX,MAAO,2EACP,IAAK,IACL,SAAU,CAAE,QACR,oEAAqE,EACzE,SAAU,CAAEA,CAAQ,CACtB,CAyCE,CACF,CACF,CAEAd,GAAO,QAAUC,KC5JjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClBA,EAAK,MACL,IAAMC,EAAgBD,EAAK,QAAQ,MAAO,KAAK,EAC/CC,EAAc,SAAS,KAAK,MAAM,EAClC,IAAMC,EAAeF,EAAK,QAAQ,KAAM,GAAG,EAErCG,EAAM,CACV,UACA,QACA,KACA,QACA,WACA,OACA,gBACA,OACA,OACA,OACA,OACA,MACA,SACA,OACA,aACA,aACA,YACA,YACA,YACA,aACA,YACA,SACA,KACA,SACA,QACA,OACA,SACA,cACA,cACA,SACA,MACA,MACA,SACA,QACA,SACA,SACA,SACA,aACA,YACA,QACA,QACA,YACA,OACA,OACA,aACF,EAEMC,EAAqB,CACzB,MAAO,CACL,8BACA,MACA,WACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,EAAW,CACf,UAAW,WACX,MAAO,UACT,EAEMC,EAAS,CACb,MAAO,gBACP,UAAW,cACX,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EAEX,MAAO,iNACT,EAEMC,EAAO,CAEX,MAAO,0BACP,UAAW,MACb,EAEMC,EAAkB,CACtB,UAAW,UAEX,MAAO,mZACT,EAcA,MAAO,CACL,KAAM,cACN,SAAU,CACR,SAAU,SACV,QAASN,CACX,EACA,SAAU,CACRD,EACAD,EApBiB,CACnB,MAAO,CACL,mBACA,MACA,GACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACL,CACF,EAYII,EACAC,EACAF,EACAJ,EAAK,kBACLQ,EACAC,EACAF,CACF,CACF,CACF,CAEAT,GAAO,QAAUC,KC1IjB,IAAAW,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAIC,EAAO,KAEXA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,IAAK,IAAwB,EACnDA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,SAAU,IAA6B,EAC7DA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,WAAY,IAA+B,EACjEA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,KAAM,IAAyB,EACrDA,EAAK,iBAAiB,UAAW,IAA8B,EAC/DA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,aAAc,IAAiC,EACrEA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,SAAU,IAA6B,EAC7DA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,WAAY,IAA+B,EACjEA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,aAAc,IAAiC,EACrEA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,eAAgB,IAAmC,EACzEA,EAAK,iBAAiB,YAAa,IAAgC,EACnEA,EAAK,iBAAiB,SAAU,IAA6B,EAC7DA,EAAK,iBAAiB,cAAe,IAAkC,EACvEA,EAAK,iBAAiB,IAAK,IAAwB,EACnDA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,QAAS,IAA4B,EAC3DA,EAAK,iBAAiB,MAAO,IAA0B,EACvDA,EAAK,iBAAiB,QAAS,IAA4B,EAC3DA,EAAK,iBAAiB,OAAQ,IAA2B,EACzDA,EAAK,iBAAiB,aAAc,IAAiC,EACrEA,EAAK,iBAAiB,QAAS,IAA4B,EAC3DA,EAAK,iBAAiB,OAAQ,IAA2B,EAEzDA,EAAK,YAAcA,EACnBA,EAAK,QAAUA,EACfD,GAAO,QAAUC,ICnCjB,IAGMC,GAASC,WAKFC,GACXF,GAAOG,aACNH,GAAOI,WADDD,QAC2BH,GAAOI,SAASC,eAClD,uBAAwBC,SAASC,WACjC,YAAaC,cAAcD,UAkBvBE,GAAoBC,OAAAA,EAEpBC,GAAc,IAAIC,QASXC,GATWD,KASXC,CAOX,YACEC,EACAC,EACAC,EAAAA,CAEA,GAVFC,KAAe,aAAA,GAUTD,IAAcP,GAChB,MAAUS,MACR,mEAAA,EAGJD,KAAKH,QAAUA,EACfG,KAAKE,EAAWJ,CACjB,CAID,IAAA,YAAIK,CAGF,IAAIA,EAAaH,KAAKI,EAChBN,EAAUE,KAAKE,EACrB,GAAIjB,IAA+BkB,IAA/BlB,OAAyD,CAC3D,IAAMoB,EAAYP,IAAZO,QAAqCP,EAAQQ,SAAW,EAC1DD,IACFF,EAAaT,GAAYa,IAAIT,CAAAA,GAE3BK,IAF2BL,UAG5BE,KAAKI,EAAcD,EAAa,IAAIZ,eAAiBiB,YACpDR,KAAKH,OAAAA,EAEHQ,GACFX,GAAYe,IAAIX,EAASK,CAAAA,EAG9B,CACD,OAAOA,CACR,CAED,UAAAO,CACE,OAAOV,KAAKH,OACb,CAAA,EAiCUc,GAAaC,GACxB,IAAKhB,GACc,OAAVgB,GAAU,SAAWA,EAAeA,EAAPC,GAAAA,OAEpCrB,EAAAA,EA1BJ,IAgEasB,GAAc,CACzBC,EACAC,IAAAA,CAEA,GAAIC,GACDF,EAA0BG,mBAAqBF,EAAOG,IAAKC,GAC1DA,aAAaC,cAAgBD,EAAIA,EAAEE,UAAAA,MAGrC,SAAWF,KAAKJ,EAAQ,CACtB,IAAMO,EAAQC,SAASC,cAAc,OAAA,EAE/BC,EAASC,GAAyB,SACpCD,IADoC,QAEtCH,EAAMK,aAAa,QAASF,CAAAA,EAE9BH,EAAMM,YAAeT,EAAgBU,QACrCf,EAAWgB,YAAYR,CAAAA,CACxB,CACF,EAWUS,GACXf,GAEKG,GAAyBA,EACzBA,GACCA,aAAaC,eAbYY,GAAAA,CAC/B,IAAIH,EAAU,GACd,QAAWI,KAAQD,EAAME,SACvBL,GAAWI,EAAKJ,QAElB,OAAOM,GAAUN,CAAAA,CAAQ,GAQkCV,CAAAA,EAAKA,EChKlE,GAAA,CAAMiB,GACJA,GAAEC,eACFA,GAAcC,yBACdA,GAAwBC,oBACxBA,GAAmBC,sBACnBA,GAAqBC,eACrBA,EAAAA,EACEC,OAKEC,GAASC,WAUTC,GAAgBF,GACnBE,aAMGC,GAAiCD,GAClCA,GAAaE,YACd,GAEEC,GAEFL,GAAOM,+BAoGLC,GAA4B,CAChCC,EACAC,IACMD,EA0KKE,GAA8C,CACzD,YAAYC,EAAgBC,EAAAA,CAC1B,OAAQA,EAAAA,CACN,KAAKC,QACHF,EAAQA,EAAQR,GAAiC,KACjD,MACF,KAAKJ,OACL,KAAKe,MAGHH,EAAQA,GAAS,KAAOA,EAAQI,KAAKC,UAAUL,CAAAA,CAAAA,CAGnD,OAAOA,CACR,EAED,cAAcA,EAAsBC,EAAAA,CAClC,IAAIK,EAAqBN,EACzB,OAAQC,EAAAA,CACN,KAAKC,QACHI,EAAYN,IAAU,KACtB,MACF,KAAKO,OACHD,EAAYN,IAAU,KAAO,KAAOO,OAAOP,CAAAA,EAC3C,MACF,KAAKZ,OACL,KAAKe,MAIH,GAAA,CAEEG,EAAYF,KAAKI,MAAMR,CAAAA,CACxB,MAAQS,CACPH,EAAY,IACb,CAAA,CAGL,OAAOA,CACR,CAAA,EAWUI,GAAuB,CAACV,EAAgBW,IAAAA,CAClD7B,GAAGkB,EAAOW,CAAAA,EAEPC,GAAkD,CACtDC,UAAAA,GACAZ,KAAMa,OACNC,UAAWhB,GACXiB,QAAAA,GACAC,WAAAA,GACAC,WAAYR,EAAAA,EAsBbS,OAA8BC,WAAaD,OAAO,UAAA,EAcnD9B,GAAOgC,sBAAwB,IAAIC,QAAAA,IAWbC,GAXaD,cAoBzBE,WAAAA,CAqFR,OAAA,eAAsBC,EAAAA,CACpBC,KAAKC,KAAAA,GACJD,KAAKE,IAAkB,CAAA,GAAIC,KAAKJ,CAAAA,CAClC,CAuGD,WAAA,oBAAWK,CAOT,OALAJ,KAAKK,SAAAA,EAMHL,KAAKM,MAA4B,CAAA,GAAIN,KAAKM,KAAyBC,KAAAA,CAAAA,CAEtE,CA6BD,OAAA,eACEC,EACAC,EAA+BvB,GAAAA,CAc/B,GAXIuB,EAAQC,QACTD,EAAsDtB,UAAAA,IAEzDa,KAAKC,KAAAA,EAGDD,KAAKW,UAAUC,eAAeJ,CAAAA,KAChCC,EAAU/C,OAAOmD,OAAOJ,CAAAA,GAChBK,QAAAA,IAEVd,KAAKe,kBAAkBC,IAAIR,EAAMC,CAAAA,EAAAA,CAC5BA,EAAQQ,WAAY,CACvB,IAAMC,EAIFzB,OAAAA,EACE0B,EAAanB,KAAKoB,sBAAsBZ,EAAMU,EAAKT,CAAAA,EACrDU,IADqDV,QAEvDpD,GAAe2C,KAAKW,UAAWH,EAAMW,CAAAA,CAExC,CACF,CA6BS,OAAA,sBACRX,EACAU,EACAT,EAAAA,CAEA,GAAA,CAAMY,IAACA,EAAGL,IAAEA,CAAAA,EAAO1D,GAAyB0C,KAAKW,UAAWH,CAAAA,GAAS,CACnE,KAAAa,CACE,OAAOrB,KAAKkB,CAAAA,CACb,EACD,IAA2BI,EAAAA,CACxBtB,KAAqDkB,CAAAA,EAAOI,CAC9D,CAAA,EAmBH,MAAO,CACLD,IAAAA,EACA,IAA2B/C,EAAAA,CACzB,IAAMiD,EAAWF,GAAKG,KAAKxB,IAAAA,EAC3BgB,GAAKQ,KAAKxB,KAAM1B,CAAAA,EAChB0B,KAAKyB,cAAcjB,EAAMe,EAAUd,CAAAA,CACpC,EACDiB,aAAAA,GACAC,WAAAA,EAAY,CAEf,CAgBD,OAAA,mBAA0BnB,EAAAA,CACxB,OAAOR,KAAKe,kBAAkBM,IAAIb,CAAAA,GAAStB,EAC5C,CAgBO,OAAA,MAAOe,CACb,GACED,KAAKY,eAAe1C,GAA0B,mBAAA,CAAA,EAG9C,OAGF,IAAM0D,EAAYnE,GAAeuC,IAAAA,EACjC4B,EAAUvB,SAAAA,EAKNuB,EAAU1B,IALJG,SAMRL,KAAKE,EAAgB,CAAA,GAAI0B,EAAU1B,CAAAA,GAGrCF,KAAKe,kBAAoB,IAAIc,IAAID,EAAUb,iBAAAA,CAC5C,CAaS,OAAA,UAAOV,CACf,GAAIL,KAAKY,eAAe1C,GAA0B,WAAA,CAAA,EAChD,OAMF,GAJA8B,KAAK8B,UAAAA,GACL9B,KAAKC,KAAAA,EAGDD,KAAKY,eAAe1C,GAA0B,YAAA,CAAA,EAAsB,CACtE,IAAM6D,EAAQ/B,KAAKgC,WACbC,EAAW,CAAA,GACZ1E,GAAoBwE,CAAAA,EAAAA,GACpBvE,GAAsBuE,CAAAA,CAAAA,EAE3B,QAAWG,KAAKD,EACdjC,KAAKmC,eAAeD,EAAGH,EAAMG,CAAAA,CAAAA,CAEhC,CAGD,IAAMxC,EAAWM,KAAKP,OAAOC,QAAAA,EAC7B,GAAIA,IAAa,KAAM,CACrB,IAAMsC,EAAarC,oBAAoB0B,IAAI3B,CAAAA,EAC3C,GAAIsC,IAAJ,OACE,OAAK,CAAOE,EAAGzB,CAAAA,IAAYuB,EACzBhC,KAAKe,kBAAkBC,IAAIkB,EAAGzB,CAAAA,CAGnC,CAGDT,KAAKM,KAA2B,IAAIuB,IACpC,OAAK,CAAOK,EAAGzB,CAAAA,IAAYT,KAAKe,kBAAmB,CACjD,IAAMqB,EAAOpC,KAAKqC,KAA2BH,EAAGzB,CAAAA,EAC5C2B,IAD4C3B,QAE9CT,KAAKM,KAAyBU,IAAIoB,EAAMF,CAAAA,CAE3C,CAEDlC,KAAKsC,cAAgBtC,KAAKuC,eAAevC,KAAKwC,MAAAA,CAkB/C,CA4BS,OAAA,eACRA,EAAAA,CAEA,IAAMF,EAAgB,CAAA,EACtB,GAAI7D,MAAMgE,QAAQD,CAAAA,EAAS,CAIzB,IAAMxB,EAAM,IAAI0B,IAAKF,EAA0BG,KAAKC,GAAAA,EAAUC,QAAAA,CAAAA,EAE9D,QAAWC,KAAK9B,EACdsB,EAAcS,QAAQC,GAAmBF,CAAAA,CAAAA,CAE5C,MAAUN,IAAV,QACCF,EAAcnC,KAAK6C,GAAmBR,CAAAA,CAAAA,EAExC,OAAOF,CACR,CAaO,OAAA,KACN9B,EACAC,EAAAA,CAEA,IAAMtB,EAAYsB,EAAQtB,UAC1B,OAAOA,IAAP,GAAOA,OAEkB,OAAdA,GAAc,SACnBA,EACgB,OAATqB,GAAS,SACdA,EAAKyC,YAAAA,EAAAA,MAEd,CAiDD,aAAAC,CACEC,MAAAA,EA9WMnD,KAAoBoD,KAAAA,OAuU5BpD,KAAeqD,gBAAAA,GAOfrD,KAAUsD,WAAAA,GAwBFtD,KAAoBuD,KAAuB,KASjDvD,KAAKwD,KAAAA,CACN,CAMO,MAAAA,CACNxD,KAAKyD,KAAkB,IAAIC,QACxBC,GAAS3D,KAAK4D,eAAiBD,CAAAA,EAElC3D,KAAK6D,KAAsB,IAAIhC,IAG/B7B,KAAK8D,KAAAA,EAGL9D,KAAKyB,cAAAA,EACJzB,KAAKkD,YAAuChD,GAAe6D,QAASC,GACnEA,EAAEhE,IAAAA,CAAAA,CAEL,CAWD,cAAciE,EAAAA,EACXjE,KAAKkE,OAAkB,IAAIxB,KAAOyB,IAAIF,CAAAA,EAKnCjE,KAAKoE,aAL8BH,QAKFjE,KAAKqE,aACxCJ,EAAWK,gBAAAA,CAEd,CAMD,iBAAiBL,EAAAA,CACfjE,KAAKkE,MAAeK,OAAON,CAAAA,CAC5B,CAQO,MAAAH,CACN,IAAMU,EAAqB,IAAI3C,IACzBd,EAAqBf,KAAKkD,YAC7BnC,kBACH,QAAWmB,KAAKnB,EAAkBR,KAAAA,EAC5BP,KAAKY,eAAesB,CAAAA,IACtBsC,EAAmBxD,IAAIkB,EAAGlC,KAAKkC,CAAAA,CAAAA,EAAAA,OACxBlC,KAAKkC,CAAAA,GAGZsC,EAAmBC,KAAO,IAC5BzE,KAAKoD,KAAuBoB,EAE/B,CAWS,kBAAAE,CACR,IAAMN,EACJpE,KAAK2E,YACL3E,KAAK4E,aACF5E,KAAKkD,YAAuC2B,iBAAAA,EAMjD,OAJAC,GACEV,EACCpE,KAAKkD,YAAuCZ,aAAAA,EAExC8B,CACR,CAOD,mBAAAW,CAEG/E,KAA4CoE,aAC3CpE,KAAK0E,iBAAAA,EACP1E,KAAK4D,eAAAA,EAAe,EACpB5D,KAAKkE,MAAeH,QAASiB,GAAMA,EAAEV,gBAAAA,CAAAA,CACtC,CAQS,eAAeW,EAAAA,CAA6B,CAQtD,sBAAAC,CACElF,KAAKkE,MAAeH,QAASiB,GAAMA,EAAEG,mBAAAA,CAAAA,CACtC,CAcD,yBACE3E,EACA4E,EACA9G,EAAAA,CAEA0B,KAAKqF,KAAsB7E,EAAMlC,CAAAA,CAClC,CAEO,KAAsBkC,EAAmBlC,EAAAA,CAC/C,IAGMmC,EAFJT,KAAKkD,YACLnC,kBAC6BM,IAAIb,CAAAA,EAC7B4B,EACJpC,KAAKkD,YACLb,KAA2B7B,EAAMC,CAAAA,EACnC,GAAI2B,IAAJ,QAA0B3B,EAAQnB,UAA9B8C,GAAgD,CAClD,IAKMkD,GAJH7E,EAAQpB,WAAyCkG,cAI9CD,OAFC7E,EAAQpB,UACThB,IACsBkH,YAAajH,EAAOmC,EAAQlC,IAAAA,EAwBxDyB,KAAKuD,KAAuB/C,EACxB8E,GAAa,KACftF,KAAKwF,gBAAgBpD,CAAAA,EAErBpC,KAAKyF,aAAarD,EAAMkD,CAAAA,EAG1BtF,KAAKuD,KAAuB,IAC7B,CACF,CAGD,KAAsB/C,EAAclC,EAAAA,CAClC,IAAMoH,EAAO1F,KAAKkD,YAGZyC,EAAYD,EAAKpF,KAA0Ce,IAAIb,CAAAA,EAGrE,GAAImF,IAAJ,QAA8B3F,KAAKuD,OAAyBoC,EAAU,CACpE,IAAMlF,EAAUiF,EAAKE,mBAAmBD,CAAAA,EAClCtG,EACyB,OAAtBoB,EAAQpB,WAAc,WACzB,CAACwG,cAAepF,EAAQpB,SAAAA,EACxBoB,EAAQpB,WAAWwG,gBADKxG,OAEtBoB,EAAQpB,UACRhB,GAER2B,KAAKuD,KAAuBoC,EAC5B3F,KAAK2F,CAAAA,EACHtG,EAAUwG,cAAevH,EAAOmC,EAAQlC,IAAAA,GACxCyB,KAAK8F,MAAiBzE,IAAIsE,CAAAA,GAEzB,KAEH3F,KAAKuD,KAAuB,IAC7B,CACF,CAgBD,cACE/C,EACAe,EACAd,EAAAA,CAGA,GAAID,IAAJ,OAAwB,CAOtB,IAAMkF,EAAO1F,KAAKkD,YACZ6C,EAAW/F,KAAKQ,CAAAA,EActB,GAbAC,IAAYiF,EAAKE,mBAAmBpF,CAAAA,EAAAA,GAEjCC,EAAQjB,YAAcR,IAAU+G,EAAUxE,CAAAA,GAO1Cd,EAAQlB,YACPkB,EAAQnB,SACRyG,IAAa/F,KAAK8F,MAAiBzE,IAAIb,CAAAA,GAAAA,CACtCR,KAAKgG,aAAaN,EAAKrD,KAA2B7B,EAAMC,CAAAA,CAAAA,GAK3D,OAHAT,KAAKiG,EAAiBzF,EAAMe,EAAUd,CAAAA,CAKzC,CACGT,KAAKqD,kBADR,KAECrD,KAAKyD,KAAkBzD,KAAKkG,KAAAA,EAE/B,CAKD,EACE1F,EACAe,EAAAA,CACAhC,WAACA,EAAUD,QAAEA,EAAOwB,QAAEA,CAAAA,EACtBqF,EAAAA,CAII5G,GAAAA,EAAgBS,KAAK8F,OAAoB,IAAIjE,KAAOuE,IAAI5F,CAAAA,IAC1DR,KAAK8F,KAAgB9E,IACnBR,EACA2F,GAAmB5E,GAAYvB,KAAKQ,CAAAA,CAAAA,EAIlCM,IAJkCN,IAId2F,IAApBrF,UAMDd,KAAK6D,KAAoBuC,IAAI5F,CAAAA,IAG3BR,KAAKsD,YAAe/D,IACvBgC,EAAAA,QAEFvB,KAAK6D,KAAoB7C,IAAIR,EAAMe,CAAAA,GAMjCjC,IANiCiC,IAMbvB,KAAKuD,OAAyB/C,IACnDR,KAAKqG,OAA2B,IAAI3D,KAAoByB,IAAI3D,CAAAA,EAEhE,CAKO,MAAA,MAAM0F,CACZlG,KAAKqD,gBAAAA,GACL,GAAA,CAAA,MAGQrD,KAAKyD,IACZ,OAAQ1E,EAAAA,CAKP2E,QAAQ4C,OAAOvH,CAAAA,CAChB,CACD,IAAMwH,EAASvG,KAAKwG,eAAAA,EAOpB,OAHID,GAAU,MAAVA,MACIA,EAAAA,CAEAvG,KAAKqD,eACd,CAmBS,gBAAAmD,CAiBR,OAhBexG,KAAKyG,cAAAA,CAiBrB,CAYS,eAAAA,CAIR,GAAA,CAAKzG,KAAKqD,gBACR,OAGF,GAAA,CAAKrD,KAAKsD,WAAY,CA2BpB,GAxBCtD,KAA4CoE,aAC3CpE,KAAK0E,iBAAAA,EAuBH1E,KAAKoD,KAAsB,CAG7B,OAAK,CAAOlB,EAAG5D,CAAAA,IAAU0B,KAAKoD,KAC5BpD,KAAKkC,CAAAA,EAAmB5D,EAE1B0B,KAAKoD,KAAAA,MACN,CAUD,IAAMrC,EAAqBf,KAAKkD,YAC7BnC,kBACH,GAAIA,EAAkB0D,KAAO,EAC3B,OAAK,CAAOvC,EAAGzB,CAAAA,IAAYM,EAAmB,CAC5C,GAAA,CAAMD,QAACA,CAAAA,EAAWL,EACZnC,EAAQ0B,KAAKkC,CAAAA,EAEjBpB,IAFiBoB,IAGhBlC,KAAK6D,KAAoBuC,IAAIlE,CAAAA,GAC9B5D,IAD8B4D,QAG9BlC,KAAKiG,EAAiB/D,EAAAA,OAAczB,EAASnC,CAAAA,CAEhD,CAEJ,CACD,IAAIoI,EAAAA,GACEC,EAAoB3G,KAAK6D,KAC/B,GAAA,CACE6C,EAAe1G,KAAK0G,aAAaC,CAAAA,EAC7BD,GACF1G,KAAK4G,WAAWD,CAAAA,EAChB3G,KAAKkE,MAAeH,QAASiB,GAAMA,EAAE6B,aAAAA,CAAAA,EACrC7G,KAAK8G,OAAOH,CAAAA,GAEZ3G,KAAK+G,KAAAA,CAER,OAAQhI,EAAAA,CAMP,MAHA2H,EAAAA,GAEA1G,KAAK+G,KAAAA,EACChI,CACP,CAEG2H,GACF1G,KAAKgH,KAAYL,CAAAA,CAEpB,CAuBS,WAAWM,EAAAA,CAA4C,CAIjE,KAAYN,EAAAA,CACV3G,KAAKkE,MAAeH,QAASiB,GAAMA,EAAEkC,cAAAA,CAAAA,EAChClH,KAAKsD,aACRtD,KAAKsD,WAAAA,GACLtD,KAAKmH,aAAaR,CAAAA,GAEpB3G,KAAKoH,QAAQT,CAAAA,CAiBd,CAEO,MAAAI,CACN/G,KAAK6D,KAAsB,IAAIhC,IAC/B7B,KAAKqD,gBAAAA,EACN,CAkBD,IAAA,gBAAIgE,CACF,OAAOrH,KAAKsH,kBAAAA,CACb,CAyBS,mBAAAA,CACR,OAAOtH,KAAKyD,IACb,CAUS,aAAawD,EAAAA,CACrB,MAAA,EACD,CAWS,OAAOA,EAAAA,CAIfjH,KAAKqG,OAA2BrG,KAAKqG,KAAuBtC,QAAS7B,GACnElC,KAAKuH,KAAsBrF,EAAGlC,KAAKkC,CAAAA,CAAAA,CAAAA,EAErClC,KAAK+G,KAAAA,CACN,CAYS,QAAQE,EAAAA,CAAsC,CAkB9C,aAAaA,EAAAA,CAAsC,CAAA,EAliCtDpH,GAAayC,cAA6B,CAAA,EAiT1CzC,GAAAgF,kBAAoC,CAAC2C,KAAM,MAAA,EAsvBnD3H,GACC3B,GAA0B,mBAAA,CAAA,EACxB,IAAI2D,IACPhC,GACC3B,GAA0B,WAAA,CAAA,EACxB,IAAI2D,IAGR7D,KAAkB,CAAC6B,gBAAAA,EAAAA,CAAAA,GAuClBlC,GAAO8J,0BAA4B,CAAA,GAAItH,KAAK,OAAA,ECrrD7C,IAAMuH,GAASC,WA4OTC,GAAgBF,GAAyCE,aAUzDC,GAASD,GACXA,GAAaE,aAAa,WAAY,CACpCC,WAAaC,GAAMA,CAAAA,CAAAA,EAAAA,OA8EnBC,GAAuB,QAMvBC,GAAS,OAAOC,KAAKC,OAAAA,EAASC,QAAQ,CAAA,EAAGC,MAAM,CAAA,CAAA,IAG/CC,GAAc,IAAML,GAIpBM,GAAa,IAAID,EAAAA,IAEjBE,GAOAC,SAGAC,GAAe,IAAMF,GAAEG,cAAc,EAAA,EAIrCC,GAAeC,GACnBA,IAAU,MAAyB,OAATA,GAAS,UAA4B,OAATA,GAAS,WAC3DC,GAAUC,MAAMD,QAChBE,GAAcH,GAClBC,GAAQD,CAAAA,GAEqC,OAArCA,IAAgBI,OAAOC,QAAAA,GAAc,WAEzCC,GAAa;OAkBbC,GAAe,sDAKfC,GAAkB,OAIlBC,GAAmB,KAwBnBC,GAAkBC,OACtB,KAAKL,EAAAA,qBAAgCA,EAAAA,KAAeA,EAAAA;0BACpD,GAAA,EAOIM,GAA0B,KAC1BC,GAA0B,KAO1BC,GAAiB,qCAyGjBC,GACmBC,GACvB,CAACC,KAAkCC,KAwB1B,CAELC,WAAgBH,EAChBC,QAAAA,EACAC,OAAAA,CAAAA,GAiBOE,GAAOL,GArJA,CAAA,EA+KPM,GAAMN,GA9KA,CAAA,EAwMNO,GAASP,GAvMA,CAAA,EA6MTQ,GAAWnB,OAAOoB,IAAI,cAAA,EAqBtBC,GAAUrB,OAAOoB,IAAI,aAAA,EAS5BE,GAAgB,IAAIC,QAqCpBC,GAASjC,GAAEkC,iBACflC,GACA,GAAA,EAqBF,SAASmC,GACPC,EACAC,EAAAA,CAOA,GAAA,CAAK/B,GAAQ8B,CAAAA,GAAAA,CAASA,EAAIE,eAAe,KAAA,EAiBvC,MAAUC,MAhBI,gCAAA,EAkBhB,OAAOnD,KAAP,OACIA,GAAOE,WAAW+C,CAAAA,EACjBA,CACP,CAcA,IAAMG,GAAkB,CACtBlB,EACAD,IAAAA,CAQA,IAAMoB,EAAInB,EAAQoB,OAAS,EAIrBC,EAA2B,CAAA,EAO7BC,EANAnB,EACFJ,IArWe,EAqWO,QAAUA,IApWd,EAoWuC,SAAW,GASlEwB,EAAQjC,GAEZ,QAASkC,EAAI,EAAGA,EAAIL,EAAGK,IAAK,CAC1B,IAAMvD,EAAI+B,EAAQwB,CAAAA,EAOdC,EAEAC,EAHAC,EAAAA,GAEAC,EAAY,EAKhB,KAAOA,EAAY3D,EAAEmD,SAEnBG,EAAMK,UAAYA,EAClBF,EAAQH,EAAMM,KAAK5D,CAAAA,EACfyD,IAAU,OAGdE,EAAYL,EAAMK,UACdL,IAAUjC,GACRoC,EA5bU,CAAA,IA4be,MAC3BH,EAAQhC,GACCmC,EA9bG,CAAA,IA6bJnC,OAGRgC,EAAQ/B,GACCkC,EAhcF,CAAA,IA+bClC,QAEJK,GAAeiC,KAAKJ,EAjcjB,CAAA,CAAA,IAocLJ,EAAsB5B,OAAO,KAAKgC,EApc7B,CAAA,EAocgD,GAAA,GAEvDH,EAAQ9B,IACCiC,EAtcM,CAAA,IAqcPjC,SAQR8B,EAAQ9B,IAED8B,IAAU9B,GACfiC,EA9aS,CAAA,IA8ae,KAG1BH,EAAQD,GAAmBhC,GAG3BqC,EAAAA,IACSD,EApbI,CAAA,IAmbO,OAGpBC,EAAAA,IAEAA,EAAmBJ,EAAMK,UAAYF,EAvbrB,CAAA,EAub8CN,OAC9DK,EAAWC,EAzbE,CAAA,EA0bbH,EACEG,EAzbO,CAAA,IAwbTH,OAEM9B,GACAiC,EA3bG,CAAA,IA2bmB,IACpB9B,GACAD,IAGV4B,IAAU3B,IACV2B,IAAU5B,GAEV4B,EAAQ9B,GACC8B,IAAUhC,IAAmBgC,IAAU/B,GAChD+B,EAAQjC,IAIRiC,EAAQ9B,GACR6B,EAAAA,QA8BJ,IAAMS,EACJR,IAAU9B,IAAeO,EAAQwB,EAAI,CAAA,EAAGQ,WAAW,IAAA,EAAQ,IAAM,GACnE7B,GACEoB,IAAUjC,GACNrB,EAAIQ,GACJkD,GAAoB,GACjBN,EAAUY,KAAKR,CAAAA,EAChBxD,EAAEM,MAAM,EAAGoD,CAAAA,EACTzD,GACAD,EAAEM,MAAMoD,CAAAA,EACVxD,GACA4D,GACA9D,EAAIE,IAAUwD,IAAVxD,GAAoCqD,EAAIO,EACrD,CAQD,MAAO,CAAClB,GAAwBb,EAL9BG,GACCH,EAAQmB,CAAAA,GAAM,QACdpB,IA5ec,EA4eQ,SAAWA,IA3ehB,EA2eyC,UAAY,GAAA,EAGnBsB,CAAAA,CAAU,EAK5Da,GAAN,MAAMA,CAAAA,CAMJ,YAAAC,CAEEnC,QAACA,EAASE,WAAgBH,CAAAA,EAC1BqC,EAAAA,CAEA,IAAIC,EAPNC,KAAKC,MAAwB,CAAA,EAQ3B,IAAIC,EAAY,EACZC,EAAgB,EACdC,EAAY1C,EAAQoB,OAAS,EAC7BmB,EAAQD,KAAKC,MAAAA,CAGZpC,EAAMkB,CAAAA,EAAaH,GAAgBlB,EAASD,CAAAA,EAKnD,GAJAuC,KAAKK,GAAKT,EAASU,cAAczC,EAAMiC,CAAAA,EACvCzB,GAAOkC,YAAcP,KAAKK,GAAGG,QAGzB/C,IA3gBW,GA2gBYA,IA1gBT,EA0gBiC,CACjD,IAAMgD,EAAUT,KAAKK,GAAGG,QAAQE,WAChCD,EAAQE,YAAAA,GAAeF,EAAQG,UAAAA,CAChC,CAGD,MAAQb,EAAO1B,GAAOwC,SAAAA,KAAgB,MAAQZ,EAAMnB,OAASsB,GAAW,CACtE,GAAIL,EAAKe,WAAa,EAAG,CAuBvB,GAAKf,EAAiBgB,cAAAA,EACpB,QAAWC,KAASjB,EAAiBkB,kBAAAA,EACnC,GAAID,EAAKE,SAAStF,EAAAA,EAAuB,CACvC,IAAMuF,EAAWpC,EAAUoB,GAAAA,EAErBiB,EADSrB,EAAiBsB,aAAaL,CAAAA,EACvBM,MAAMzF,EAAAA,EACtB0F,EAAI,eAAehC,KAAK4B,CAAAA,EAC9BlB,EAAMN,KAAK,CACTlC,KA1iBO,EA2iBP+D,MAAOtB,EACPc,KAAMO,EAAE,CAAA,EACR7D,QAAS0D,EACTK,KACEF,EAAE,CAAA,IAAO,IACLG,GACAH,EAAE,CAAA,IAAO,IACPI,GACAJ,EAAE,CAAA,IAAO,IACPK,GACAC,EAAAA,CAAAA,EAEX9B,EAAiB+B,gBAAgBd,CAAAA,CACnC,MAAUA,EAAKtB,WAAW7D,EAAAA,IACzBoE,EAAMN,KAAK,CACTlC,KArjBK,EAsjBL+D,MAAOtB,CAAAA,CAAAA,EAERH,EAAiB+B,gBAAgBd,CAAAA,GAMxC,GAAIzD,GAAeiC,KAAMO,EAAiBgC,OAAAA,EAAU,CAIlD,IAAMrE,EAAWqC,EAAiBiC,YAAaV,MAAMzF,EAAAA,EAC/CyD,EAAY5B,EAAQoB,OAAS,EACnC,GAAIQ,EAAY,EAAG,CAChBS,EAAiBiC,YAAczG,GAC3BA,GAAa0G,YACd,GAGJ,QAAS/C,EAAI,EAAGA,EAAII,EAAWJ,IAC5Ba,EAAiBmC,OAAOxE,EAAQwB,CAAAA,EAAI5C,GAAAA,CAAAA,EAErC+B,GAAOwC,SAAAA,EACPZ,EAAMN,KAAK,CAAClC,KAllBP,EAklByB+D,MAAAA,EAAStB,CAAAA,CAAAA,EAKxCH,EAAiBmC,OAAOxE,EAAQ4B,CAAAA,EAAYhD,GAAAA,CAAAA,CAC9C,CACF,CACF,SAAUyD,EAAKe,WAAa,EAE3B,GADcf,EAAiBoC,OAClBjG,GACX+D,EAAMN,KAAK,CAAClC,KA7lBH,EA6lBqB+D,MAAOtB,CAAAA,CAAAA,MAChC,CACL,IAAIhB,EAAAA,GACJ,MAAQA,EAAKa,EAAiBoC,KAAKC,QAAQvG,GAAQqD,EAAI,CAAA,KAAvD,IAGEe,EAAMN,KAAK,CAAClC,KA9lBH,EA8lBuB+D,MAAOtB,CAAAA,CAAAA,EAEvChB,GAAKrD,GAAOiD,OAAS,CAExB,CAEHoB,GACD,CAkCF,CAID,OAAA,cAAqBrC,EAAmBwE,EAAAA,CACtC,IAAMhC,EAAKjE,GAAEkE,cAAc,UAAA,EAE3B,OADAD,EAAGiC,UAAYzE,EACRwC,CACR,CAAA,EAgBH,SAASkC,GACPC,EACA/F,EACAgG,EAA0BD,EAC1BE,EAAAA,CAIA,GAAIjG,IAAUuB,GACZ,OAAOvB,EAET,IAAIkG,EACFD,IADEC,OAEGF,EAAyBG,OAAeF,CAAAA,EACxCD,EAA+CI,KAChDC,EAA2BtG,GAAYC,CAAAA,EAAAA,OAGxCA,EAA2C,gBAyBhD,OAxBIkG,GAAkB9C,cAAgBiD,IAEpCH,GAAuD,OAAA,EAAI,EACvDG,IADuD,OAEzDH,EAAAA,QAEAA,EAAmB,IAAIG,EAAyBN,CAAAA,EAChDG,EAAiBI,KAAaP,EAAMC,EAAQC,CAAAA,GAE1CA,IAF0CA,QAG1CD,EAAyBG,OAAiB,CAAA,GAAIF,CAAAA,EAC9CC,EAEDF,EAAiCI,KAAcF,GAGhDA,IAHgDA,SAIlDlG,EAAQ8F,GACNC,EACAG,EAAiBK,KAAUR,EAAO/F,EAA0BkB,MAAAA,EAC5DgF,EACAD,CAAAA,GAGGjG,CACT,CAOA,IAAMwG,GAAN,KAAMA,CASJ,YAAYC,EAAoBT,EAAAA,CAPhCzC,KAAOmD,KAA4B,CAAA,EAKnCnD,KAAwBoD,KAAAA,OAGtBpD,KAAKqD,KAAaH,EAClBlD,KAAKsD,KAAWb,CACjB,CAGD,IAAA,YAAIc,CACF,OAAOvD,KAAKsD,KAASC,UACtB,CAGD,IAAA,MAAIC,CACF,OAAOxD,KAAKsD,KAASE,IACtB,CAID,EAAO1D,EAAAA,CACL,GAAA,CACEO,GAAAA,CAAIG,QAACA,CAAAA,EACLP,MAAOA,CAAAA,EACLD,KAAKqD,KACHI,GAAY3D,GAAS4D,eAAiBtH,IAAGuH,WAAWnD,EAAAA,EAAS,EACnEnC,GAAOkC,YAAckD,EAErB,IAAI1D,EAAO1B,GAAOwC,SAAAA,EACdX,EAAY,EACZ0D,EAAY,EACZC,EAAe5D,EAAM,CAAA,EAEzB,KAAO4D,IAAP,QAAmC,CACjC,GAAI3D,IAAc2D,EAAarC,MAAO,CACpC,IAAIgB,EACAqB,EAAapG,OAjwBN,EAkwBT+E,EAAO,IAAIsB,GACT/D,EACAA,EAAKgE,YACL/D,KACAF,CAAAA,EAEO+D,EAAapG,OAzwBT,EA0wBb+E,EAAO,IAAIqB,EAAapC,KACtB1B,EACA8D,EAAa7C,KACb6C,EAAanG,QACbsC,KACAF,CAAAA,EAEO+D,EAAapG,OA5wBX,IA6wBX+E,EAAO,IAAIwB,GAAYjE,EAAqBC,KAAMF,CAAAA,GAEpDE,KAAKmD,KAAQxD,KAAK6C,CAAAA,EAClBqB,EAAe5D,EAAAA,EAAQ2D,CAAAA,CACxB,CACG1D,IAAc2D,GAAcrC,QAC9BzB,EAAO1B,GAAOwC,SAAAA,EACdX,IAEH,CAKD,OADA7B,GAAOkC,YAAcnE,GACdqH,CACR,CAED,EAAQ9F,EAAAA,CACN,IAAIuB,EAAI,EACR,QAAWsD,KAAQxC,KAAKmD,KAClBX,IADkBW,SAWfX,EAAuB9E,UAV1B8E,QAWCA,EAAuByB,KAAWtG,EAAQ6E,EAAuBtD,CAAAA,EAIlEA,GAAMsD,EAAuB9E,QAASoB,OAAS,GAE/C0D,EAAKyB,KAAWtG,EAAOuB,CAAAA,CAAAA,GAG3BA,GAEH,CAAA,EA8CG4E,GAAN,MAAMA,CAAAA,CAwBJ,IAAA,MAAIN,CAIF,OAAOxD,KAAKsD,MAAUE,MAAiBxD,KAAKkE,IAC7C,CAeD,YACEC,EACAC,EACA3B,EACA3C,EAAAA,CA/COE,KAAIvC,KA12BI,EA42BjBuC,KAAgBqE,KAAYnG,GA+B5B8B,KAAwBoD,KAAAA,OAgBtBpD,KAAKsE,KAAcH,EACnBnE,KAAKuE,KAAYH,EACjBpE,KAAKsD,KAAWb,EAChBzC,KAAKF,QAAUA,EAIfE,KAAKkE,KAAgBpE,GAAS0E,aAAAA,EAK/B,CAoBD,IAAA,YAAIjB,CACF,IAAIA,EAAwBvD,KAAKsE,KAAaf,WACxCd,EAASzC,KAAKsD,KAUpB,OAREb,IAQF,QAPEc,GAAYzC,WAAa,KAKzByC,EAAcd,EAAwCc,YAEjDA,CACR,CAMD,IAAA,WAAIY,CACF,OAAOnE,KAAKsE,IACb,CAMD,IAAA,SAAIF,CACF,OAAOpE,KAAKuE,IACb,CAED,KAAW9H,EAAgBgI,EAAmCzE,KAAAA,CAM5DvD,EAAQ8F,GAAiBvC,KAAMvD,EAAOgI,CAAAA,EAClCjI,GAAYC,CAAAA,EAIVA,IAAUyB,IAAWzB,GAAS,MAAQA,IAAU,IAC9CuD,KAAKqE,OAAqBnG,IAS5B8B,KAAK0E,KAAAA,EAEP1E,KAAKqE,KAAmBnG,IACfzB,IAAUuD,KAAKqE,MAAoB5H,IAAUuB,IACtDgC,KAAK2E,EAAYlI,CAAAA,EAGTA,EAAqC,aAH5BA,OAInBuD,KAAK4E,EAAsBnI,CAAAA,EACjBA,EAAeqE,WADErE,OAiB3BuD,KAAK6E,EAAYpI,CAAAA,EACRG,GAAWH,CAAAA,EACpBuD,KAAK8E,EAAgBrI,CAAAA,EAGrBuD,KAAK2E,EAAYlI,CAAAA,CAEpB,CAEO,EAAwBsD,EAAAA,CAC9B,OAAiBC,KAAKsE,KAAaf,WAAawB,aAC9ChF,EACAC,KAAKuE,IAAAA,CAER,CAEO,EAAY9H,EAAAA,CACduD,KAAKqE,OAAqB5H,IAC5BuD,KAAK0E,KAAAA,EAoCL1E,KAAKqE,KAAmBrE,KAAKgF,EAAQvI,CAAAA,EAExC,CAEO,EAAYA,EAAAA,CAKhBuD,KAAKqE,OAAqBnG,IAC1B1B,GAAYwD,KAAKqE,IAAAA,EAECrE,KAAKsE,KAAaP,YAcrB5B,KAAO1F,EAsBpBuD,KAAK6E,EAAYzI,GAAE6I,eAAexI,CAAAA,CAAAA,EAUtCuD,KAAKqE,KAAmB5H,CACzB,CAEO,EACNyI,EAAAA,CAGA,GAAA,CAAMvH,OAACA,EAAQC,WAAgBH,CAAAA,EAAQyH,EAKjChC,EACY,OAATzF,GAAS,SACZuC,KAAKmF,KAAcD,CAAAA,GAClBzH,EAAK4C,KADa6E,SAEhBzH,EAAK4C,GAAKT,GAASU,cAClB/B,GAAwBd,EAAK2H,EAAG3H,EAAK2H,EAAE,CAAA,CAAA,EACvCpF,KAAKF,OAAAA,GAETrC,GAEN,GAAKuC,KAAKqE,MAAuChB,OAAeH,EAU7DlD,KAAKqE,KAAsCgB,EAAQ1H,CAAAA,MAC/C,CACL,IAAM2H,EAAW,IAAIrC,GAAiBC,EAAsBlD,IAAAA,EACtDyD,EAAW6B,EAASC,EAAOvF,KAAKF,OAAAA,EAWtCwF,EAASD,EAAQ1H,CAAAA,EAWjBqC,KAAK6E,EAAYpB,CAAAA,EACjBzD,KAAKqE,KAAmBiB,CACzB,CACF,CAID,KAAcJ,EAAAA,CACZ,IAAIhC,EAAW/E,GAAcqH,IAAIN,EAAOxH,OAAAA,EAIxC,OAHIwF,IAGJ,QAFE/E,GAAcsH,IAAIP,EAAOxH,QAAUwF,EAAW,IAAItD,GAASsF,CAAAA,CAAAA,EAEtDhC,CACR,CAEO,EAAgBzG,EAAAA,CAWjBC,GAAQsD,KAAKqE,IAAAA,IAChBrE,KAAKqE,KAAmB,CAAA,EACxBrE,KAAK0E,KAAAA,GAKP,IAAMgB,EAAY1F,KAAKqE,KAEnBsB,EADA/B,EAAY,EAGhB,QAAWgC,KAAQnJ,EACbmH,IAAc8B,EAAU5G,OAK1B4G,EAAU/F,KACPgG,EAAW,IAAI7B,EACd9D,KAAKgF,EAAQ1I,GAAAA,CAAAA,EACb0D,KAAKgF,EAAQ1I,GAAAA,CAAAA,EACb0D,KACAA,KAAKF,OAAAA,CAAAA,EAKT6F,EAAWD,EAAU9B,CAAAA,EAEvB+B,EAAS1B,KAAW2B,CAAAA,EACpBhC,IAGEA,EAAY8B,EAAU5G,SAExBkB,KAAK0E,KACHiB,GAAiBA,EAASpB,KAAYR,YACtCH,CAAAA,EAGF8B,EAAU5G,OAAS8E,EAEtB,CAaD,KACEiC,EAA+B7F,KAAKsE,KAAaP,YACjD+B,EAAAA,CAGA,IADA9F,KAAK+F,OAAAA,GAA4B,GAAaD,CAAAA,EACvCD,GAASA,IAAU7F,KAAKuE,MAAW,CACxC,IAAMyB,EAASH,EAAQ9B,YACjB8B,EAAoBI,OAAAA,EAC1BJ,EAAQG,CACT,CACF,CAQD,aAAaxB,EAAAA,CACPxE,KAAKsD,OADEkB,SAETxE,KAAKkE,KAAgBM,EACrBxE,KAAK+F,OAA4BvB,CAAAA,EAOpC,CAAA,EA2BG3C,GAAN,KAAMA,CA2BJ,IAAA,SAAIE,CACF,OAAO/B,KAAKkG,QAAQnE,OACrB,CAGD,IAAA,MAAIyB,CACF,OAAOxD,KAAKsD,KAASE,IACtB,CAED,YACE0C,EACAlF,EACAtD,EACA+E,EACA3C,EAAAA,CAxCOE,KAAIvC,KA3zCQ,EA20CrBuC,KAAgBqE,KAA6BnG,GAM7C8B,KAAwBoD,KAAAA,OAoBtBpD,KAAKkG,QAAUA,EACflG,KAAKgB,KAAOA,EACZhB,KAAKsD,KAAWb,EAChBzC,KAAKF,QAAUA,EACXpC,EAAQoB,OAAS,GAAKpB,EAAQ,CAAA,IAAO,IAAMA,EAAQ,CAAA,IAAO,IAC5DsC,KAAKqE,KAAuB1H,MAAMe,EAAQoB,OAAS,CAAA,EAAGqH,KAAK,IAAIC,MAAAA,EAC/DpG,KAAKtC,QAAUA,GAEfsC,KAAKqE,KAAmBnG,EAK3B,CAwBD,KACEzB,EACAgI,EAAmCzE,KACnCqG,EACAC,EAAAA,CAEA,IAAM5I,EAAUsC,KAAKtC,QAGjB6I,EAAAA,GAEJ,GAAI7I,IAAJ,OAEEjB,EAAQ8F,GAAiBvC,KAAMvD,EAAOgI,EAAiB,CAAA,EACvD8B,EAAAA,CACG/J,GAAYC,CAAAA,GACZA,IAAUuD,KAAKqE,MAAoB5H,IAAUuB,GAC5CuI,IACFvG,KAAKqE,KAAmB5H,OAErB,CAEL,IAAMkB,EAASlB,EAGXyC,EAAGsH,EACP,IAHA/J,EAAQiB,EAAQ,CAAA,EAGXwB,EAAI,EAAGA,EAAIxB,EAAQoB,OAAS,EAAGI,IAClCsH,EAAIjE,GAAiBvC,KAAMrC,EAAO0I,EAAcnH,CAAAA,EAAIuF,EAAiBvF,CAAAA,EAEjEsH,IAAMxI,KAERwI,EAAKxG,KAAKqE,KAAoCnF,CAAAA,GAEhDqH,IAAAA,CACG/J,GAAYgK,CAAAA,GAAMA,IAAOxG,KAAKqE,KAAoCnF,CAAAA,EACjEsH,IAAMtI,GACRzB,EAAQyB,GACCzB,IAAUyB,KACnBzB,IAAU+J,GAAK,IAAM9I,EAAQwB,EAAI,CAAA,GAIlCc,KAAKqE,KAAoCnF,CAAAA,EAAKsH,CAElD,CACGD,GAAAA,CAAWD,GACbtG,KAAKyG,EAAahK,CAAAA,CAErB,CAGD,EAAaA,EAAAA,CACPA,IAAUyB,GACN8B,KAAKkG,QAAqBpE,gBAAgB9B,KAAKgB,IAAAA,EAoB/ChB,KAAKkG,QAAqBQ,aAC9B1G,KAAKgB,KACJvE,GAAS,EAAA,CAGf,CAAA,EAIGiF,GAAN,cAA2BG,EAAAA,CAA3B,aAAAhC,CAAAA,MAAAA,GAAAA,SAAAA,EACoBG,KAAIvC,KA39CF,CAo/CrB,CAtBU,EAAahB,EAAAA,CAoBnBuD,KAAKkG,QAAgBlG,KAAKgB,IAAAA,EAAQvE,IAAUyB,GAAAA,OAAsBzB,CACpE,CAAA,EAIGkF,GAAN,cAAmCE,EAAAA,CAAnC,aAAAhC,CAAAA,MAAAA,GAAAA,SAAAA,EACoBG,KAAIvC,KAv/CO,CAwgD9B,CAdU,EAAahB,EAAAA,CASduD,KAAKkG,QAAqBS,gBAC9B3G,KAAKgB,KAAAA,CAAAA,CACHvE,GAASA,IAAUyB,EAAAA,CAExB,CAAA,EAkBG0D,GAAN,cAAwBC,EAAAA,CAGtB,YACEqE,EACAlF,EACAtD,EACA+E,EACA3C,EAAAA,CAEA8G,MAAMV,EAASlF,EAAMtD,EAAS+E,EAAQ3C,CAAAA,EATtBE,KAAIvC,KAzhDL,CA2iDhB,CAKQ,KACPoJ,EACApC,EAAmCzE,KAAAA,CAInC,IAFA6G,EACEtE,GAAiBvC,KAAM6G,EAAapC,EAAiB,CAAA,GAAMvG,MACzCF,GAClB,OAEF,IAAM8I,EAAc9G,KAAKqE,KAInB0C,EACHF,IAAgB3I,IAAW4I,IAAgB5I,IAC3C2I,EAAyCG,UACvCF,EAAyCE,SAC3CH,EAAyCI,OACvCH,EAAyCG,MAC3CJ,EAAyCK,UACvCJ,EAAyCI,QAIxCC,EACJN,IAAgB3I,KACf4I,IAAgB5I,IAAW6I,GAa1BA,GACF/G,KAAKkG,QAAQkB,oBACXpH,KAAKgB,KACLhB,KACA8G,CAAAA,EAGAK,GACFnH,KAAKkG,QAAQmB,iBACXrH,KAAKgB,KACLhB,KACA6G,CAAAA,EAGJ7G,KAAKqE,KAAmBwC,CACzB,CAED,YAAYS,EAAAA,CAC2B,OAA1BtH,KAAKqE,MAAqB,WACnCrE,KAAKqE,KAAiBkD,KAAKvH,KAAKF,SAAS0H,MAAQxH,KAAKkG,QAASoB,CAAAA,EAE9DtH,KAAKqE,KAAyCoD,YAAYH,CAAAA,CAE9D,CAAA,EAIGtD,GAAN,KAAMA,CAiBJ,YACSkC,EACPzD,EACA3C,EAAAA,CAFOE,KAAOkG,QAAPA,EAjBAlG,KAAIvC,KAlnDM,EA8nDnBuC,KAAwBoD,KAAAA,OAStBpD,KAAKsD,KAAWb,EAChBzC,KAAKF,QAAUA,CAChB,CAGD,IAAA,MAAI0D,CACF,OAAOxD,KAAKsD,KAASE,IACtB,CAED,KAAW/G,EAAAA,CAQT8F,GAAiBvC,KAAMvD,CAAAA,CACxB,CAAA,EAqBU,IAoBPiL,GAEFC,GAAOC,uBACXF,KAAkBG,GAAUC,EAAAA,GAI3BH,GAAOI,kBAAoB,CAAA,GAAIC,KAAK,OAAA,EAoCxB,IAAAC,GAAS,CACpBC,EACAC,EACAC,IAAAA,CAUA,IAAMC,EAAgBD,GAASE,cAAgBH,EAG3CI,EAAmBF,EAAkC,WAUzD,GAAIE,IAAJ,OAAwB,CACtB,IAAMC,EAAUJ,GAASE,cAAgB,KAGxCD,EAAkC,WAAIE,EAAO,IAAIT,GAChDK,EAAUM,aAAaC,GAAAA,EAAgBF,CAAAA,EACvCA,EAAAA,OAEAJ,GAAW,CAAE,CAAA,CAEhB,CAWD,OAVAG,EAAKI,KAAWT,CAAAA,EAUTK,CAAgB,ECppEzB,IAOMK,GAASC,WAmCFC,GAAP,cAA0BC,EAAAA,CAAhC,aAAAC,CAAAA,MAAAA,GAAAA,SAAAA,EAOWC,KAAAC,cAA+B,CAACC,KAAMF,IAAAA,EAEvCA,KAAWG,KAAAA,MA8FpB,CAzFoB,kBAAAC,CACjB,IAAMC,EAAaC,MAAMF,iBAAAA,EAOzB,OADAJ,KAAKC,cAAcM,eAAiBF,EAAYG,WACzCH,CACR,CASkB,OAAOI,EAAAA,CAIxB,IAAMC,EAAQV,KAAKW,OAAAA,EACdX,KAAKY,aACRZ,KAAKC,cAAcY,YAAcb,KAAKa,aAExCP,MAAMQ,OAAOL,CAAAA,EACbT,KAAKG,KAAcQ,GAAOD,EAAOV,KAAKK,WAAYL,KAAKC,aAAAA,CACxD,CAsBQ,mBAAAc,CACPT,MAAMS,kBAAAA,EACNf,KAAKG,MAAaa,aAAAA,EAAa,CAChC,CAqBQ,sBAAAC,CACPX,MAAMW,qBAAAA,EACNjB,KAAKG,MAAaa,aAAAA,EAAa,CAChC,CASS,QAAAL,CACR,OAAOO,EACR,CAAA,EApGMrB,GAAgB,cAAA,GA8GxBA,GAC2B,UAAA,GAI5BF,GAAOwB,2BAA2B,CAACtB,WAAAA,EAAAA,CAAAA,EAGnC,IAAMuB,GAEFzB,GAAO0B,0BACXD,KAAkB,CAACvB,WAAAA,EAAAA,CAAAA,GAmClByB,GAAOC,qBAAuB,CAAA,GAAIC,KAAK,OAAA,ECrP3B,IAAAC,GAAW,CACtBC,UAAW,EACXC,MAAO,EACPC,SAAU,EACVC,kBAAmB,EACnBC,MAAO,EACPC,QAAS,CAAA,EAoCEC,GACgBC,GAC3B,IAAIC,KAAsE,CAExEC,gBAAqBF,EACrBC,OAAAA,CAAAA,GAQkBE,GARlBF,KAQkBE,CAkBpB,YAAYC,EAAAA,CAAuB,CAGnC,IAAA,MAAIC,CACF,OAAOC,KAAKC,KAASF,IACtB,CAGD,KACEG,EACAC,EACAC,EAAAA,CAEAJ,KAAKK,KAASH,EACdF,KAAKC,KAAWE,EAChBH,KAAKM,KAAmBF,CACzB,CAED,KAAUF,EAAYK,EAAAA,CACpB,OAAOP,KAAKQ,OAAON,EAAMK,CAAAA,CAC1B,CAID,OAAOE,EAAaF,EAAAA,CAClB,OAAOP,KAAKU,OAAAA,GAAUH,CAAAA,CACvB,CAAA,EClIG,IAAOI,GAAP,cAAmCC,EAAAA,CAOvC,YAAYC,EAAAA,CAEV,GADAC,MAAMD,CAAAA,EAJAE,KAAMC,GAAYC,GAKpBJ,EAASK,OAASC,GAASC,MAC7B,MAAUC,MAELN,KAAKO,YAA2CC,cADnD,uCAAA,CAKL,CAED,OAAOC,EAAAA,CACL,GAAIA,IAAUP,IAAWO,GAAS,KAEhC,OADAT,KAAKU,GAAAA,OACGV,KAAKC,GAASQ,EAExB,GAAIA,IAAUE,GACZ,OAAOF,EAET,GAAoB,OAATA,GAAS,SAClB,MAAUH,MAELN,KAAKO,YAA2CC,cADnD,mCAAA,EAKJ,GAAIC,IAAUT,KAAKC,GACjB,OAAOD,KAAKU,GAEdV,KAAKC,GAASQ,EACd,IAAMG,EAAU,CAACH,CAAAA,EAKjB,OAHCG,EAAgBC,IAAMD,EAGfZ,KAAKU,GAAkB,CAI7BI,WAAiBd,KAAKO,YACnBQ,WACHH,QAAAA,EACAI,OAAQ,CAAA,CAAA,CAEX,CAAA,EAlDMpB,GAAaY,cAAG,aAChBZ,GAAUmB,WAJC,EAAA,IAkEPE,GAAaC,GAAUtB,EAAAA,ECHpC,IAoBMuB,GAAkD,CACtDC,UAAAA,GACAC,KAAMC,OACNC,UAAWC,GACXC,QAAAA,GACAC,WAAYC,EAAAA,EAaDC,GAAmB,CAC9BC,EAA+BV,GAC/BW,EACAC,IAAAA,CAEA,GAAA,CAAMC,KAACA,EAAIC,SAAEA,CAAAA,EAAYF,EAarBG,EAAaC,WAAWC,oBAAoBC,IAAIJ,CAAAA,EAUpD,GATIC,IASJ,QAREC,WAAWC,oBAAoBE,IAAIL,EAAWC,EAAa,IAAIK,GAAAA,EAE7DP,IAAS,YACXH,EAAUW,OAAOC,OAAOZ,CAAAA,GAChBa,QAAAA,IAEVR,EAAWI,IAAIP,EAAQY,KAAMd,CAAAA,EAEzBG,IAAS,WAAY,CAIvB,GAAA,CAAMW,KAACA,CAAAA,EAAQZ,EACf,MAAO,CACL,IAA2Ba,EAAAA,CACzB,IAAMC,EACJf,EACAO,IAAIS,KAAKC,IAAAA,EACVjB,EAA8CQ,IAAIQ,KACjDC,KACAH,CAAAA,EAEFG,KAAKC,cAAcL,EAAME,EAAUhB,CAAAA,CACpC,EACD,KAA4Be,EAAAA,CAI1B,OAHIA,IAGJ,QAFEG,KAAKE,EAAiBN,EAAAA,OAAiBd,EAASe,CAAAA,EAE3CA,CACR,CAAA,CAEJ,CAAM,GAAIZ,IAAS,SAAU,CAC5B,GAAA,CAAMW,KAACA,CAAAA,EAAQZ,EACf,OAAO,SAAiCmB,EAAAA,CACtC,IAAML,EAAWE,KAAKJ,CAAAA,EACrBb,EAA8BgB,KAAKC,KAAMG,CAAAA,EAC1CH,KAAKC,cAAcL,EAAME,EAAUhB,CAAAA,CACrC,CACD,CACD,MAAUsB,MAAM,mCAAmCnB,CAAAA,CAAO,EAmCtD,SAAUoB,EAASvB,EAAAA,CACvB,MAAO,CACLwB,EAIAC,IAO2B,OAAlBA,GAAkB,SACrB1B,GACEC,EACAwB,EAGAC,CAAAA,GAvJW,CACrBzB,EACA0B,EACAZ,IAAAA,CAEA,IAAMa,EAAiBD,EAAMC,eAAeb,CAAAA,EAO5C,OANCY,EAAME,YAAuCC,eAAef,EAAMd,CAAAA,EAM5D2B,EACHhB,OAAOmB,yBAAyBJ,EAAOZ,CAAAA,EAAAA,MAC9B,GA4IHd,EACAwB,EACAC,CAAAA,CAIZ,CCpOA,IAAAM,GAAwB,WCHxB,IAAAC,GAAwB,WAExB,IAAOC,GAAQ,GAAAC,QCAR,SAASC,IAAe,CAC3B,MAAO,CACH,MAAO,GACP,OAAQ,GACR,WAAY,KACZ,IAAK,GACL,MAAO,KACP,SAAU,GACV,SAAU,KACV,OAAQ,GACR,UAAW,KACX,WAAY,IACpB,CACA,CACU,IAACC,GAAYD,GAAY,EAC5B,SAASE,GAAeC,EAAa,CACxCF,GAAYE,CAChB,CCjBA,IAAMC,GAAa,UACbC,GAAgB,IAAI,OAAOD,GAAW,OAAQ,GAAG,EACjDE,GAAqB,oDACrBC,GAAwB,IAAI,OAAOD,GAAmB,OAAQ,GAAG,EACjEE,GAAqB,CACvB,IAAK,QACL,IAAK,OACL,IAAK,OACL,IAAK,SACL,IAAK,OACT,EACMC,GAAwBC,GAAOF,GAAmBE,CAAE,EACnD,SAASC,GAAOC,EAAMC,EAAQ,CACjC,GAAIA,GACA,GAAIT,GAAW,KAAKQ,CAAI,EACpB,OAAOA,EAAK,QAAQP,GAAeI,EAAoB,UAIvDH,GAAmB,KAAKM,CAAI,EAC5B,OAAOA,EAAK,QAAQL,GAAuBE,EAAoB,EAGvE,OAAOG,CACX,CACA,IAAME,GAAe,6CACd,SAASC,GAASH,EAAM,CAE3B,OAAOA,EAAK,QAAQE,GAAc,CAACE,EAAGC,KAClCA,EAAIA,EAAE,YAAW,EACbA,IAAM,QACC,IACPA,EAAE,OAAO,CAAC,IAAM,IACTA,EAAE,OAAO,CAAC,IAAM,IACjB,OAAO,aAAa,SAASA,EAAE,UAAU,CAAC,EAAG,EAAE,CAAC,EAChD,OAAO,aAAa,CAACA,EAAE,UAAU,CAAC,CAAC,EAEtC,GACV,CACL,CACA,IAAMC,GAAQ,eACP,SAASC,GAAKC,EAAOC,EAAK,CAC7B,IAAIC,EAAS,OAAOF,GAAU,SAAWA,EAAQA,EAAM,OACvDC,EAAMA,GAAO,GACb,IAAME,EAAM,CACR,QAAS,CAACC,EAAMC,IAAQ,CACpB,IAAIC,EAAY,OAAOD,GAAQ,SAAWA,EAAMA,EAAI,OACpD,OAAAC,EAAYA,EAAU,QAAQR,GAAO,IAAI,EACzCI,EAASA,EAAO,QAAQE,EAAME,CAAS,EAChCH,CACnB,EACQ,SAAU,IACC,IAAI,OAAOD,EAAQD,CAAG,CAEzC,EACI,OAAOE,CACX,CACO,SAASI,GAASC,EAAM,CAC3B,GAAI,CACAA,EAAO,UAAUA,CAAI,EAAE,QAAQ,OAAQ,GAAG,CAClD,MACc,CACN,OAAO,IACf,CACI,OAAOA,CACX,CACO,IAAMC,GAAW,CAAE,KAAM,IAAM,IAAI,EACnC,SAASC,GAAWC,EAAUC,EAAO,CAGxC,IAAMC,EAAMF,EAAS,QAAQ,MAAO,CAACG,EAAOC,EAAQC,IAAQ,CACxD,IAAIC,EAAU,GACVC,EAAOH,EACX,KAAO,EAAEG,GAAQ,GAAKF,EAAIE,CAAI,IAAM,MAChCD,EAAU,CAACA,EACf,OAAIA,EAGO,IAIA,IAEnB,CAAK,EAAGE,EAAQN,EAAI,MAAM,KAAK,EACvBO,EAAI,EAQR,GANKD,EAAM,CAAC,EAAE,KAAI,GACdA,EAAM,MAAK,EAEXA,EAAM,OAAS,GAAK,CAACA,EAAMA,EAAM,OAAS,CAAC,EAAE,KAAI,GACjDA,EAAM,IAAG,EAETP,EACA,GAAIO,EAAM,OAASP,EACfO,EAAM,OAAOP,CAAK,MAGlB,MAAOO,EAAM,OAASP,GAClBO,EAAM,KAAK,EAAE,EAGzB,KAAOC,EAAID,EAAM,OAAQC,IAErBD,EAAMC,CAAC,EAAID,EAAMC,CAAC,EAAE,KAAI,EAAG,QAAQ,QAAS,GAAG,EAEnD,OAAOD,CACX,CASO,SAASE,GAAML,EAAKM,EAAGC,EAAQ,CAClC,IAAMC,EAAIR,EAAI,OACd,GAAIQ,IAAM,EACN,MAAO,GAGX,IAAIC,EAAU,EAEd,KAAOA,EAAUD,GAAG,CAChB,IAAME,EAAWV,EAAI,OAAOQ,EAAIC,EAAU,CAAC,EAC3C,GAAIC,IAAaJ,GAAK,CAACC,EACnBE,YAEKC,IAAaJ,GAAKC,EACvBE,QAGA,MAEZ,CACI,OAAOT,EAAI,MAAM,EAAGQ,EAAIC,CAAO,CACnC,CACO,SAASE,GAAmBX,EAAKY,EAAG,CACvC,GAAIZ,EAAI,QAAQY,EAAE,CAAC,CAAC,IAAM,GACtB,MAAO,GAEX,IAAIC,EAAQ,EACZ,QAAS,EAAI,EAAG,EAAIb,EAAI,OAAQ,IAC5B,GAAIA,EAAI,CAAC,IAAM,KACX,YAEKA,EAAI,CAAC,IAAMY,EAAE,CAAC,EACnBC,YAEKb,EAAI,CAAC,IAAMY,EAAE,CAAC,IACnBC,IACIA,EAAQ,GACR,OAAO,EAInB,MAAO,EACX,CC/JA,SAASC,GAAWC,EAAKC,EAAMC,EAAKC,EAAO,CACvC,IAAM1B,EAAOwB,EAAK,KACZG,EAAQH,EAAK,MAAQzC,GAAOyC,EAAK,KAAK,EAAI,KAC1CI,EAAOL,EAAI,CAAC,EAAE,QAAQ,cAAe,IAAI,EAC/C,GAAIA,EAAI,CAAC,EAAE,OAAO,CAAC,IAAM,IAAK,CAC1BG,EAAM,MAAM,OAAS,GACrB,IAAMG,EAAQ,CACV,KAAM,OACN,IAAAJ,EACA,KAAAzB,EACA,MAAA2B,EACA,KAAAC,EACA,OAAQF,EAAM,aAAaE,CAAI,CAC3C,EACQ,OAAAF,EAAM,MAAM,OAAS,GACdG,CACf,CACI,MAAO,CACH,KAAM,QACN,IAAAJ,EACA,KAAAzB,EACA,MAAA2B,EACA,KAAM5C,GAAO6C,CAAI,CACzB,CACA,CACA,SAASE,GAAuBL,EAAKG,EAAM,CACvC,IAAMG,EAAoBN,EAAI,MAAM,eAAe,EACnD,GAAIM,IAAsB,KACtB,OAAOH,EAEX,IAAMI,EAAeD,EAAkB,CAAC,EACxC,OAAOH,EACF,MAAM;CAAI,EACV,IAAIK,GAAQ,CACb,IAAMC,EAAoBD,EAAK,MAAM,MAAM,EAC3C,GAAIC,IAAsB,KACtB,OAAOD,EAEX,GAAM,CAACE,CAAY,EAAID,EACvB,OAAIC,EAAa,QAAUH,EAAa,OAC7BC,EAAK,MAAMD,EAAa,MAAM,EAElCC,CACf,CAAK,EACI,KAAK;CAAI,CAClB,CAIO,IAAMG,GAAN,KAAiB,CACpB,QACA,MACA,MACA,YAAYC,EAAS,CACjB,KAAK,QAAUA,GAAWhE,EAClC,CACI,MAAMiE,EAAK,CACP,IAAMf,EAAM,KAAK,MAAM,MAAM,QAAQ,KAAKe,CAAG,EAC7C,GAAIf,GAAOA,EAAI,CAAC,EAAE,OAAS,EACvB,MAAO,CACH,KAAM,QACN,IAAKA,EAAI,CAAC,CAC1B,CAEA,CACI,KAAKe,EAAK,CACN,IAAMf,EAAM,KAAK,MAAM,MAAM,KAAK,KAAKe,CAAG,EAC1C,GAAIf,EAAK,CACL,IAAMK,EAAOL,EAAI,CAAC,EAAE,QAAQ,YAAa,EAAE,EAC3C,MAAO,CACH,KAAM,OACN,IAAKA,EAAI,CAAC,EACV,eAAgB,WAChB,KAAO,KAAK,QAAQ,SAEdK,EADAf,GAAMe,EAAM;CAAI,CAEtC,CACA,CACA,CACI,OAAOU,EAAK,CACR,IAAMf,EAAM,KAAK,MAAM,MAAM,OAAO,KAAKe,CAAG,EAC5C,GAAIf,EAAK,CACL,IAAME,EAAMF,EAAI,CAAC,EACXK,EAAOE,GAAuBL,EAAKF,EAAI,CAAC,GAAK,EAAE,EACrD,MAAO,CACH,KAAM,OACN,IAAAE,EACA,KAAMF,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,KAAI,EAAG,QAAQ,KAAK,MAAM,OAAO,eAAgB,IAAI,EAAIA,EAAI,CAAC,EACpF,KAAAK,CAChB,CACA,CACA,CACI,QAAQU,EAAK,CACT,IAAMf,EAAM,KAAK,MAAM,MAAM,QAAQ,KAAKe,CAAG,EAC7C,GAAIf,EAAK,CACL,IAAIK,EAAOL,EAAI,CAAC,EAAE,KAAI,EAEtB,GAAI,KAAK,KAAKK,CAAI,EAAG,CACjB,IAAMW,EAAU1B,GAAMe,EAAM,GAAG,GAC3B,KAAK,QAAQ,UAGR,CAACW,GAAW,KAAK,KAAKA,CAAO,KAElCX,EAAOW,EAAQ,KAAI,EAEvC,CACY,MAAO,CACH,KAAM,UACN,IAAKhB,EAAI,CAAC,EACV,MAAOA,EAAI,CAAC,EAAE,OACd,KAAAK,EACA,OAAQ,KAAK,MAAM,OAAOA,CAAI,CAC9C,CACA,CACA,CACI,GAAGU,EAAK,CACJ,IAAMf,EAAM,KAAK,MAAM,MAAM,GAAG,KAAKe,CAAG,EACxC,GAAIf,EACA,MAAO,CACH,KAAM,KACN,IAAKA,EAAI,CAAC,CAC1B,CAEA,CACI,WAAWe,EAAK,CACZ,IAAMf,EAAM,KAAK,MAAM,MAAM,WAAW,KAAKe,CAAG,EAChD,GAAIf,EAAK,CAEL,IAAIK,EAAOL,EAAI,CAAC,EAAE,QAAQ,iCAAkC;OAAU,EACtEK,EAAOf,GAAMe,EAAK,QAAQ,eAAgB,EAAE,EAAG;CAAI,EACnD,IAAMY,EAAM,KAAK,MAAM,MAAM,IAC7B,KAAK,MAAM,MAAM,IAAM,GACvB,IAAMC,EAAS,KAAK,MAAM,YAAYb,CAAI,EAC1C,YAAK,MAAM,MAAM,IAAMY,EAChB,CACH,KAAM,aACN,IAAKjB,EAAI,CAAC,EACV,OAAAkB,EACA,KAAAb,CAChB,CACA,CACA,CACI,KAAKU,EAAK,CACN,IAAIf,EAAM,KAAK,MAAM,MAAM,KAAK,KAAKe,CAAG,EACxC,GAAIf,EAAK,CACL,IAAImB,EAAOnB,EAAI,CAAC,EAAE,KAAI,EAChBoB,EAAYD,EAAK,OAAS,EAC1BE,EAAO,CACT,KAAM,OACN,IAAK,GACL,QAASD,EACT,MAAOA,EAAY,CAACD,EAAK,MAAM,EAAG,EAAE,EAAI,GACxC,MAAO,GACP,MAAO,CAAA,CACvB,EACYA,EAAOC,EAAY,aAAaD,EAAK,MAAM,EAAE,CAAC,GAAK,KAAKA,CAAI,GACxD,KAAK,QAAQ,WACbA,EAAOC,EAAYD,EAAO,SAG9B,IAAMG,EAAY,IAAI,OAAO,WAAWH,CAAI,8BAA+B,EACvEjB,EAAM,GACNqB,EAAe,GACfC,EAAoB,GAExB,KAAOT,GAAK,CACR,IAAIU,EAAW,GAIf,GAHI,EAAEzB,EAAMsB,EAAU,KAAKP,CAAG,IAG1B,KAAK,MAAM,MAAM,GAAG,KAAKA,CAAG,EAC5B,MAEJb,EAAMF,EAAI,CAAC,EACXe,EAAMA,EAAI,UAAUb,EAAI,MAAM,EAC9B,IAAIwB,EAAO1B,EAAI,CAAC,EAAE,MAAM;EAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,OAAS2B,GAAM,IAAI,OAAO,EAAIA,EAAE,MAAM,CAAC,EAC/EC,EAAWb,EAAI,MAAM;EAAM,CAAC,EAAE,CAAC,EAC/Bc,EAAS,EACT,KAAK,QAAQ,UACbA,EAAS,EACTN,EAAeG,EAAK,UAAS,IAG7BG,EAAS7B,EAAI,CAAC,EAAE,OAAO,MAAM,EAC7B6B,EAASA,EAAS,EAAI,EAAIA,EAC1BN,EAAeG,EAAK,MAAMG,CAAM,EAChCA,GAAU7B,EAAI,CAAC,EAAE,QAErB,IAAI8B,EAAY,GAMhB,GALI,CAACJ,GAAQ,OAAO,KAAKE,CAAQ,IAC7B1B,GAAO0B,EAAW;EAClBb,EAAMA,EAAI,UAAUa,EAAS,OAAS,CAAC,EACvCH,EAAW,IAEX,CAACA,EAAU,CACX,IAAMM,EAAkB,IAAI,OAAO,QAAQ,KAAK,IAAI,EAAGF,EAAS,CAAC,CAAC,oDAAqD,EACjHG,EAAU,IAAI,OAAO,QAAQ,KAAK,IAAI,EAAGH,EAAS,CAAC,CAAC,oDAAoD,EACxGI,EAAmB,IAAI,OAAO,QAAQ,KAAK,IAAI,EAAGJ,EAAS,CAAC,CAAC,iBAAiB,EAC9EK,EAAoB,IAAI,OAAO,QAAQ,KAAK,IAAI,EAAGL,EAAS,CAAC,CAAC,IAAI,EAExE,KAAOd,GAAK,CACR,IAAMoB,EAAUpB,EAAI,MAAM;EAAM,CAAC,EAAE,CAAC,EAmBpC,GAlBAa,EAAWO,EAEP,KAAK,QAAQ,WACbP,EAAWA,EAAS,QAAQ,0BAA2B,IAAI,GAG3DK,EAAiB,KAAKL,CAAQ,GAI9BM,EAAkB,KAAKN,CAAQ,GAI/BG,EAAgB,KAAKH,CAAQ,GAI7BI,EAAQ,KAAKjB,CAAG,EAChB,MAEJ,GAAIa,EAAS,OAAO,MAAM,GAAKC,GAAU,CAACD,EAAS,KAAI,EACnDL,GAAgB;EAAOK,EAAS,MAAMC,CAAM,MAE3C,CAeD,GAbIC,GAIAJ,EAAK,OAAO,MAAM,GAAK,GAGvBO,EAAiB,KAAKP,CAAI,GAG1BQ,EAAkB,KAAKR,CAAI,GAG3BM,EAAQ,KAAKN,CAAI,EACjB,MAEJH,GAAgB;EAAOK,CACnD,CAC4B,CAACE,GAAa,CAACF,EAAS,KAAI,IAC5BE,EAAY,IAEhB5B,GAAOiC,EAAU;EACjBpB,EAAMA,EAAI,UAAUoB,EAAQ,OAAS,CAAC,EACtCT,EAAOE,EAAS,MAAMC,CAAM,CACpD,CACA,CACqBR,EAAK,QAEFG,EACAH,EAAK,MAAQ,GAER,YAAY,KAAKnB,CAAG,IACzBsB,EAAoB,KAG5B,IAAIY,EAAS,KACTC,EAEA,KAAK,QAAQ,MACbD,EAAS,cAAc,KAAKb,CAAY,EACpCa,IACAC,EAAYD,EAAO,CAAC,IAAM,OAC1Bb,EAAeA,EAAa,QAAQ,eAAgB,EAAE,IAG9DF,EAAK,MAAM,KAAK,CACZ,KAAM,YACN,IAAAnB,EACA,KAAM,CAAC,CAACkC,EACR,QAASC,EACT,MAAO,GACP,KAAMd,EACN,OAAQ,CAAA,CAC5B,CAAiB,EACDF,EAAK,KAAOnB,CAC5B,CAEYmB,EAAK,MAAMA,EAAK,MAAM,OAAS,CAAC,EAAE,IAAMnB,EAAI,QAAO,EAClDmB,EAAK,MAAMA,EAAK,MAAM,OAAS,CAAC,EAAG,KAAOE,EAAa,QAAO,EAC/DF,EAAK,IAAMA,EAAK,IAAI,QAAO,EAE3B,QAAShC,EAAI,EAAGA,EAAIgC,EAAK,MAAM,OAAQhC,IAGnC,GAFA,KAAK,MAAM,MAAM,IAAM,GACvBgC,EAAK,MAAMhC,CAAC,EAAE,OAAS,KAAK,MAAM,YAAYgC,EAAK,MAAMhC,CAAC,EAAE,KAAM,CAAA,CAAE,EAChE,CAACgC,EAAK,MAAO,CAEb,IAAMiB,EAAUjB,EAAK,MAAMhC,CAAC,EAAE,OAAO,OAAOsC,GAAKA,EAAE,OAAS,OAAO,EAC7DY,EAAwBD,EAAQ,OAAS,GAAKA,EAAQ,KAAKX,GAAK,SAAS,KAAKA,EAAE,GAAG,CAAC,EAC1FN,EAAK,MAAQkB,CACjC,CAGY,GAAIlB,EAAK,MACL,QAAShC,EAAI,EAAGA,EAAIgC,EAAK,MAAM,OAAQhC,IACnCgC,EAAK,MAAMhC,CAAC,EAAE,MAAQ,GAG9B,OAAOgC,CACnB,CACA,CACI,KAAKN,EAAK,CACN,IAAMf,EAAM,KAAK,MAAM,MAAM,KAAK,KAAKe,CAAG,EAC1C,GAAIf,EAQA,MAPc,CACV,KAAM,OACN,MAAO,GACP,IAAKA,EAAI,CAAC,EACV,IAAKA,EAAI,CAAC,IAAM,OAASA,EAAI,CAAC,IAAM,UAAYA,EAAI,CAAC,IAAM,QAC3D,KAAMA,EAAI,CAAC,CAC3B,CAGA,CACI,IAAIe,EAAK,CACL,IAAMf,EAAM,KAAK,MAAM,MAAM,IAAI,KAAKe,CAAG,EACzC,GAAIf,EAAK,CACL,IAAMwC,EAAMxC,EAAI,CAAC,EAAE,YAAW,EAAG,QAAQ,OAAQ,GAAG,EAC9CvB,EAAOuB,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,QAAQ,WAAY,IAAI,EAAE,QAAQ,KAAK,MAAM,OAAO,eAAgB,IAAI,EAAI,GACnGI,EAAQJ,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,UAAU,EAAGA,EAAI,CAAC,EAAE,OAAS,CAAC,EAAE,QAAQ,KAAK,MAAM,OAAO,eAAgB,IAAI,EAAIA,EAAI,CAAC,EACrH,MAAO,CACH,KAAM,MACN,IAAAwC,EACA,IAAKxC,EAAI,CAAC,EACV,KAAAvB,EACA,MAAA2B,CAChB,CACA,CACA,CACI,MAAMW,EAAK,CACP,IAAMf,EAAM,KAAK,MAAM,MAAM,MAAM,KAAKe,CAAG,EAI3C,GAHI,CAACf,GAGD,CAAC,OAAO,KAAKA,EAAI,CAAC,CAAC,EAEnB,OAEJ,IAAMyC,EAAU9D,GAAWqB,EAAI,CAAC,CAAC,EAC3B0C,EAAS1C,EAAI,CAAC,EAAE,QAAQ,aAAc,EAAE,EAAE,MAAM,GAAG,EACnD2C,EAAO3C,EAAI,CAAC,GAAKA,EAAI,CAAC,EAAE,KAAI,EAAKA,EAAI,CAAC,EAAE,QAAQ,YAAa,EAAE,EAAE,MAAM;CAAI,EAAI,CAAA,EAC/E4C,EAAO,CACT,KAAM,QACN,IAAK5C,EAAI,CAAC,EACV,OAAQ,CAAA,EACR,MAAO,CAAA,EACP,KAAM,CAAA,CAClB,EACQ,GAAIyC,EAAQ,SAAWC,EAAO,OAI9B,SAAWG,KAASH,EACZ,YAAY,KAAKG,CAAK,EACtBD,EAAK,MAAM,KAAK,OAAO,EAElB,aAAa,KAAKC,CAAK,EAC5BD,EAAK,MAAM,KAAK,QAAQ,EAEnB,YAAY,KAAKC,CAAK,EAC3BD,EAAK,MAAM,KAAK,MAAM,EAGtBA,EAAK,MAAM,KAAK,IAAI,EAG5B,QAAWE,KAAUL,EACjBG,EAAK,OAAO,KAAK,CACb,KAAME,EACN,OAAQ,KAAK,MAAM,OAAOA,CAAM,CAChD,CAAa,EAEL,QAAWhE,KAAO6D,EACdC,EAAK,KAAK,KAAKjE,GAAWG,EAAK8D,EAAK,OAAO,MAAM,EAAE,IAAIG,IAC5C,CACH,KAAMA,EACN,OAAQ,KAAK,MAAM,OAAOA,CAAI,CAClD,EACa,CAAC,EAEN,OAAOH,EACf,CACI,SAAS7B,EAAK,CACV,IAAMf,EAAM,KAAK,MAAM,MAAM,SAAS,KAAKe,CAAG,EAC9C,GAAIf,EACA,MAAO,CACH,KAAM,UACN,IAAKA,EAAI,CAAC,EACV,MAAOA,EAAI,CAAC,EAAE,OAAO,CAAC,IAAM,IAAM,EAAI,EACtC,KAAMA,EAAI,CAAC,EACX,OAAQ,KAAK,MAAM,OAAOA,EAAI,CAAC,CAAC,CAChD,CAEA,CACI,UAAUe,EAAK,CACX,IAAMf,EAAM,KAAK,MAAM,MAAM,UAAU,KAAKe,CAAG,EAC/C,GAAIf,EAAK,CACL,IAAMK,EAAOL,EAAI,CAAC,EAAE,OAAOA,EAAI,CAAC,EAAE,OAAS,CAAC,IAAM;EAC5CA,EAAI,CAAC,EAAE,MAAM,EAAG,EAAE,EAClBA,EAAI,CAAC,EACX,MAAO,CACH,KAAM,YACN,IAAKA,EAAI,CAAC,EACV,KAAAK,EACA,OAAQ,KAAK,MAAM,OAAOA,CAAI,CAC9C,CACA,CACA,CACI,KAAKU,EAAK,CACN,IAAMf,EAAM,KAAK,MAAM,MAAM,KAAK,KAAKe,CAAG,EAC1C,GAAIf,EACA,MAAO,CACH,KAAM,OACN,IAAKA,EAAI,CAAC,EACV,KAAMA,EAAI,CAAC,EACX,OAAQ,KAAK,MAAM,OAAOA,EAAI,CAAC,CAAC,CAChD,CAEA,CACI,OAAOe,EAAK,CACR,IAAMf,EAAM,KAAK,MAAM,OAAO,OAAO,KAAKe,CAAG,EAC7C,GAAIf,EACA,MAAO,CACH,KAAM,SACN,IAAKA,EAAI,CAAC,EACV,KAAMxC,GAAOwC,EAAI,CAAC,CAAC,CACnC,CAEA,CACI,IAAIe,EAAK,CACL,IAAMf,EAAM,KAAK,MAAM,OAAO,IAAI,KAAKe,CAAG,EAC1C,GAAIf,EACA,MAAI,CAAC,KAAK,MAAM,MAAM,QAAU,QAAQ,KAAKA,EAAI,CAAC,CAAC,EAC/C,KAAK,MAAM,MAAM,OAAS,GAErB,KAAK,MAAM,MAAM,QAAU,UAAU,KAAKA,EAAI,CAAC,CAAC,IACrD,KAAK,MAAM,MAAM,OAAS,IAE1B,CAAC,KAAK,MAAM,MAAM,YAAc,iCAAiC,KAAKA,EAAI,CAAC,CAAC,EAC5E,KAAK,MAAM,MAAM,WAAa,GAEzB,KAAK,MAAM,MAAM,YAAc,mCAAmC,KAAKA,EAAI,CAAC,CAAC,IAClF,KAAK,MAAM,MAAM,WAAa,IAE3B,CACH,KAAM,OACN,IAAKA,EAAI,CAAC,EACV,OAAQ,KAAK,MAAM,MAAM,OACzB,WAAY,KAAK,MAAM,MAAM,WAC7B,MAAO,GACP,KAAMA,EAAI,CAAC,CAC3B,CAEA,CACI,KAAKe,EAAK,CACN,IAAMf,EAAM,KAAK,MAAM,OAAO,KAAK,KAAKe,CAAG,EAC3C,GAAIf,EAAK,CACL,IAAMgD,EAAahD,EAAI,CAAC,EAAE,KAAI,EAC9B,GAAI,CAAC,KAAK,QAAQ,UAAY,KAAK,KAAKgD,CAAU,EAAG,CAEjD,GAAI,CAAE,KAAK,KAAKA,CAAU,EACtB,OAGJ,IAAMC,EAAa3D,GAAM0D,EAAW,MAAM,EAAG,EAAE,EAAG,IAAI,EACtD,IAAKA,EAAW,OAASC,EAAW,QAAU,IAAM,EAChD,MAEpB,KACiB,CAED,IAAMC,EAAiBtD,GAAmBI,EAAI,CAAC,EAAG,IAAI,EACtD,GAAIkD,EAAiB,GAAI,CAErB,IAAMC,GADQnD,EAAI,CAAC,EAAE,QAAQ,GAAG,IAAM,EAAI,EAAI,GACtBA,EAAI,CAAC,EAAE,OAASkD,EACxClD,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,UAAU,EAAGkD,CAAc,EAC3ClD,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,UAAU,EAAGmD,CAAO,EAAE,KAAI,EAC1CnD,EAAI,CAAC,EAAI,EAC7B,CACA,CACY,IAAIvB,EAAOuB,EAAI,CAAC,EACZI,EAAQ,GACZ,GAAI,KAAK,QAAQ,SAAU,CAEvB,IAAMH,EAAO,gCAAgC,KAAKxB,CAAI,EAClDwB,IACAxB,EAAOwB,EAAK,CAAC,EACbG,EAAQH,EAAK,CAAC,EAElC,MAEgBG,EAAQJ,EAAI,CAAC,EAAIA,EAAI,CAAC,EAAE,MAAM,EAAG,EAAE,EAAI,GAE3C,OAAAvB,EAAOA,EAAK,KAAI,EACZ,KAAK,KAAKA,CAAI,IACV,KAAK,QAAQ,UAAY,CAAE,KAAK,KAAKuE,CAAU,EAE/CvE,EAAOA,EAAK,MAAM,CAAC,EAGnBA,EAAOA,EAAK,MAAM,EAAG,EAAE,GAGxBsB,GAAWC,EAAK,CACnB,KAAMvB,GAAOA,EAAK,QAAQ,KAAK,MAAM,OAAO,eAAgB,IAAI,EAChE,MAAO2B,GAAQA,EAAM,QAAQ,KAAK,MAAM,OAAO,eAAgB,IAAI,CACnF,EAAeJ,EAAI,CAAC,EAAG,KAAK,KAAK,CACjC,CACA,CACI,QAAQe,EAAKqC,EAAO,CAChB,IAAIpD,EACJ,IAAKA,EAAM,KAAK,MAAM,OAAO,QAAQ,KAAKe,CAAG,KACrCf,EAAM,KAAK,MAAM,OAAO,OAAO,KAAKe,CAAG,GAAI,CAC/C,IAAMsC,GAAcrD,EAAI,CAAC,GAAKA,EAAI,CAAC,GAAG,QAAQ,OAAQ,GAAG,EACnDC,EAAOmD,EAAMC,EAAW,YAAW,CAAE,EAC3C,GAAI,CAACpD,EAAM,CACP,IAAMI,EAAOL,EAAI,CAAC,EAAE,OAAO,CAAC,EAC5B,MAAO,CACH,KAAM,OACN,IAAKK,EACL,KAAAA,CACpB,CACA,CACY,OAAON,GAAWC,EAAKC,EAAMD,EAAI,CAAC,EAAG,KAAK,KAAK,CAC3D,CACA,CACI,SAASe,EAAKuC,EAAWC,EAAW,GAAI,CACpC,IAAIxE,EAAQ,KAAK,MAAM,OAAO,eAAe,KAAKgC,CAAG,EAIrD,GAHI,CAAChC,GAGDA,EAAM,CAAC,GAAKwE,EAAS,MAAM,eAAe,EAC1C,OAEJ,GAAI,EADaxE,EAAM,CAAC,GAAKA,EAAM,CAAC,GAAK,KACxB,CAACwE,GAAY,KAAK,MAAM,OAAO,YAAY,KAAKA,CAAQ,EAAG,CAExE,IAAMC,EAAU,CAAC,GAAGzE,EAAM,CAAC,CAAC,EAAE,OAAS,EACnC0E,EAAQC,EAASC,EAAaH,EAASI,EAAgB,EACrDC,EAAS9E,EAAM,CAAC,EAAE,CAAC,IAAM,IAAM,KAAK,MAAM,OAAO,kBAAoB,KAAK,MAAM,OAAO,kBAI7F,IAHA8E,EAAO,UAAY,EAEnBP,EAAYA,EAAU,MAAM,GAAKvC,EAAI,OAASyC,CAAO,GAC7CzE,EAAQ8E,EAAO,KAAKP,CAAS,IAAM,MAAM,CAE7C,GADAG,EAAS1E,EAAM,CAAC,GAAKA,EAAM,CAAC,GAAKA,EAAM,CAAC,GAAKA,EAAM,CAAC,GAAKA,EAAM,CAAC,GAAKA,EAAM,CAAC,EACxE,CAAC0E,EACD,SAEJ,GADAC,EAAU,CAAC,GAAGD,CAAM,EAAE,OAClB1E,EAAM,CAAC,GAAKA,EAAM,CAAC,EAAG,CACtB4E,GAAcD,EACd,QACpB,UACyB3E,EAAM,CAAC,GAAKA,EAAM,CAAC,IACpByE,EAAU,GAAK,GAAGA,EAAUE,GAAW,GAAI,CAC3CE,GAAiBF,EACjB,QACxB,CAGgB,GADAC,GAAcD,EACVC,EAAa,EACb,SAEJD,EAAU,KAAK,IAAIA,EAASA,EAAUC,EAAaC,CAAa,EAEhE,IAAME,EAAiB,CAAC,GAAG/E,EAAM,CAAC,CAAC,EAAE,CAAC,EAAE,OAClCmB,EAAMa,EAAI,MAAM,EAAGyC,EAAUzE,EAAM,MAAQ+E,EAAiBJ,CAAO,EAEzE,GAAI,KAAK,IAAIF,EAASE,CAAO,EAAI,EAAG,CAChC,IAAMrD,EAAOH,EAAI,MAAM,EAAG,EAAE,EAC5B,MAAO,CACH,KAAM,KACN,IAAAA,EACA,KAAAG,EACA,OAAQ,KAAK,MAAM,aAAaA,CAAI,CAC5D,CACA,CAEgB,IAAMA,EAAOH,EAAI,MAAM,EAAG,EAAE,EAC5B,MAAO,CACH,KAAM,SACN,IAAAA,EACA,KAAAG,EACA,OAAQ,KAAK,MAAM,aAAaA,CAAI,CACxD,CACA,CACA,CACA,CACI,SAASU,EAAK,CACV,IAAMf,EAAM,KAAK,MAAM,OAAO,KAAK,KAAKe,CAAG,EAC3C,GAAIf,EAAK,CACL,IAAIK,EAAOL,EAAI,CAAC,EAAE,QAAQ,MAAO,GAAG,EAC9B+D,EAAmB,OAAO,KAAK1D,CAAI,EACnC2D,EAA0B,KAAK,KAAK3D,CAAI,GAAK,KAAK,KAAKA,CAAI,EACjE,OAAI0D,GAAoBC,IACpB3D,EAAOA,EAAK,UAAU,EAAGA,EAAK,OAAS,CAAC,GAE5CA,EAAO7C,GAAO6C,EAAM,EAAI,EACjB,CACH,KAAM,WACN,IAAKL,EAAI,CAAC,EACV,KAAAK,CAChB,CACA,CACA,CACI,GAAGU,EAAK,CACJ,IAAMf,EAAM,KAAK,MAAM,OAAO,GAAG,KAAKe,CAAG,EACzC,GAAIf,EACA,MAAO,CACH,KAAM,KACN,IAAKA,EAAI,CAAC,CAC1B,CAEA,CACI,IAAIe,EAAK,CACL,IAAMf,EAAM,KAAK,MAAM,OAAO,IAAI,KAAKe,CAAG,EAC1C,GAAIf,EACA,MAAO,CACH,KAAM,MACN,IAAKA,EAAI,CAAC,EACV,KAAMA,EAAI,CAAC,EACX,OAAQ,KAAK,MAAM,aAAaA,EAAI,CAAC,CAAC,CACtD,CAEA,CACI,SAASe,EAAK,CACV,IAAMf,EAAM,KAAK,MAAM,OAAO,SAAS,KAAKe,CAAG,EAC/C,GAAIf,EAAK,CACL,IAAIK,EAAM5B,EACV,OAAIuB,EAAI,CAAC,IAAM,KACXK,EAAO7C,GAAOwC,EAAI,CAAC,CAAC,EACpBvB,EAAO,UAAY4B,IAGnBA,EAAO7C,GAAOwC,EAAI,CAAC,CAAC,EACpBvB,EAAO4B,GAEJ,CACH,KAAM,OACN,IAAKL,EAAI,CAAC,EACV,KAAAK,EACA,KAAA5B,EACA,OAAQ,CACJ,CACI,KAAM,OACN,IAAK4B,EACL,KAAAA,CACxB,CACA,CACA,CACA,CACA,CACI,IAAIU,EAAK,CACL,IAAIf,EACJ,GAAIA,EAAM,KAAK,MAAM,OAAO,IAAI,KAAKe,CAAG,EAAG,CACvC,IAAIV,EAAM5B,EACV,GAAIuB,EAAI,CAAC,IAAM,IACXK,EAAO7C,GAAOwC,EAAI,CAAC,CAAC,EACpBvB,EAAO,UAAY4B,MAElB,CAED,IAAI4D,EACJ,GACIA,EAAcjE,EAAI,CAAC,EACnBA,EAAI,CAAC,EAAI,KAAK,MAAM,OAAO,WAAW,KAAKA,EAAI,CAAC,CAAC,IAAI,CAAC,GAAK,SACtDiE,IAAgBjE,EAAI,CAAC,GAC9BK,EAAO7C,GAAOwC,EAAI,CAAC,CAAC,EAChBA,EAAI,CAAC,IAAM,OACXvB,EAAO,UAAYuB,EAAI,CAAC,EAGxBvB,EAAOuB,EAAI,CAAC,CAEhC,CACY,MAAO,CACH,KAAM,OACN,IAAKA,EAAI,CAAC,EACV,KAAAK,EACA,KAAA5B,EACA,OAAQ,CACJ,CACI,KAAM,OACN,IAAK4B,EACL,KAAAA,CACxB,CACA,CACA,CACA,CACA,CACI,WAAWU,EAAK,CACZ,IAAMf,EAAM,KAAK,MAAM,OAAO,KAAK,KAAKe,CAAG,EAC3C,GAAIf,EAAK,CACL,IAAIK,EACJ,OAAI,KAAK,MAAM,MAAM,WACjBA,EAAOL,EAAI,CAAC,EAGZK,EAAO7C,GAAOwC,EAAI,CAAC,CAAC,EAEjB,CACH,KAAM,OACN,IAAKA,EAAI,CAAC,EACV,KAAAK,CAChB,CACA,CACA,CACA,ECvsBM6D,GAAU,mBACVC,GAAY,uCACZC,GAAS,8GACTC,GAAK,qEACLC,GAAU,uCACVC,GAAS,wBACTC,GAAWxG,GAAK,oJAAoJ,EACrK,QAAQ,QAASuG,EAAM,EACvB,QAAQ,aAAc,MAAM,EAC5B,QAAQ,UAAW,uBAAuB,EAC1C,QAAQ,cAAe,SAAS,EAChC,QAAQ,WAAY,cAAc,EAClC,QAAQ,QAAS,mBAAmB,EACpC,SAAQ,EACPE,GAAa,uFACbC,GAAY,UACZC,GAAc,8BACdC,GAAM5G,GAAK,iGAAiG,EAC7G,QAAQ,QAAS2G,EAAW,EAC5B,QAAQ,QAAS,8DAA8D,EAC/E,SAAQ,EACPtD,GAAOrD,GAAK,sCAAsC,EACnD,QAAQ,QAASuG,EAAM,EACvB,SAAQ,EACPM,GAAO,gWAMPC,GAAW,gCACXrH,GAAOO,GAAK,mdASP,GAAG,EACT,QAAQ,UAAW8G,EAAQ,EAC3B,QAAQ,MAAOD,EAAI,EACnB,QAAQ,YAAa,0EAA0E,EAC/F,SAAQ,EACPE,GAAY/G,GAAKyG,EAAU,EAC5B,QAAQ,KAAMJ,EAAE,EAChB,QAAQ,UAAW,uBAAuB,EAC1C,QAAQ,YAAa,EAAE,EACvB,QAAQ,SAAU,EAAE,EACpB,QAAQ,aAAc,SAAS,EAC/B,QAAQ,SAAU,gDAAgD,EAClE,QAAQ,OAAQ,wBAAwB,EACxC,QAAQ,OAAQ,6DAA6D,EAC7E,QAAQ,MAAOQ,EAAI,EACnB,SAAQ,EACPG,GAAahH,GAAK,yCAAyC,EAC5D,QAAQ,YAAa+G,EAAS,EAC9B,SAAQ,EAIPE,GAAc,CAChB,WAAAD,GACA,KAAMb,GACN,IAAAS,GACA,OAAAR,GACA,QAAAE,GACA,GAAAD,GACA,KAAA5G,GACA,SAAA+G,GACA,KAAAnD,GACA,QAAA6C,GACA,UAAAa,GACA,MAAOrG,GACP,KAAMgG,EACV,EAIMQ,GAAWlH,GAAK,6JAEsE,EACvF,QAAQ,KAAMqG,EAAE,EAChB,QAAQ,UAAW,uBAAuB,EAC1C,QAAQ,aAAc,SAAS,EAC/B,QAAQ,OAAQ,YAAY,EAC5B,QAAQ,SAAU,gDAAgD,EAClE,QAAQ,OAAQ,wBAAwB,EACxC,QAAQ,OAAQ,6DAA6D,EAC7E,QAAQ,MAAOQ,EAAI,EACnB,SAAQ,EACPM,GAAW,CACb,GAAGF,GACH,MAAOC,GACP,UAAWlH,GAAKyG,EAAU,EACrB,QAAQ,KAAMJ,EAAE,EAChB,QAAQ,UAAW,uBAAuB,EAC1C,QAAQ,YAAa,EAAE,EACvB,QAAQ,QAASa,EAAQ,EACzB,QAAQ,aAAc,SAAS,EAC/B,QAAQ,SAAU,gDAAgD,EAClE,QAAQ,OAAQ,wBAAwB,EACxC,QAAQ,OAAQ,6DAA6D,EAC7E,QAAQ,MAAOL,EAAI,EACnB,SAAQ,CACjB,EAIMO,GAAgB,CAClB,GAAGH,GACH,KAAMjH,GAAK,wIAEiE,EACvE,QAAQ,UAAW8G,EAAQ,EAC3B,QAAQ,OAAQ,mKAGgB,EAChC,SAAQ,EACb,IAAK,oEACL,QAAS,yBACT,OAAQpG,GACR,SAAU,mCACV,UAAWV,GAAKyG,EAAU,EACrB,QAAQ,KAAMJ,EAAE,EAChB,QAAQ,UAAW;EAAiB,EACpC,QAAQ,WAAYG,EAAQ,EAC5B,QAAQ,SAAU,EAAE,EACpB,QAAQ,aAAc,SAAS,EAC/B,QAAQ,UAAW,EAAE,EACrB,QAAQ,QAAS,EAAE,EACnB,QAAQ,QAAS,EAAE,EACnB,QAAQ,OAAQ,EAAE,EAClB,SAAQ,CACjB,EAIMhH,GAAS,8CACT6H,GAAa,sCACbC,GAAK,wBACLC,GAAa,8EAEbC,GAAe,eACfC,GAAczH,GAAK,6BAA8B,GAAG,EACrD,QAAQ,eAAgBwH,EAAY,EAAE,SAAQ,EAE7CE,GAAY,gDACZC,GAAiB3H,GAAK,oEAAqE,GAAG,EAC/F,QAAQ,SAAUwH,EAAY,EAC9B,SAAQ,EACPI,GAAoB5H,GAAK,wQAOY,IAAI,EAC1C,QAAQ,SAAUwH,EAAY,EAC9B,SAAQ,EAEPK,GAAoB7H,GAAK,uNAMY,IAAI,EAC1C,QAAQ,SAAUwH,EAAY,EAC9B,SAAQ,EACPM,GAAiB9H,GAAK,cAAe,IAAI,EAC1C,QAAQ,SAAUwH,EAAY,EAC9B,SAAQ,EACPO,GAAW/H,GAAK,qCAAqC,EACtD,QAAQ,SAAU,8BAA8B,EAChD,QAAQ,QAAS,8IAA8I,EAC/J,SAAQ,EACPgI,GAAiBhI,GAAK8G,EAAQ,EAAE,QAAQ,YAAa,KAAK,EAAE,SAAQ,EACpEtC,GAAMxE,GAAK,0JAKuB,EACnC,QAAQ,UAAWgI,EAAc,EACjC,QAAQ,YAAa,6EAA6E,EAClG,SAAQ,EACPC,GAAe,sDACfhG,GAAOjC,GAAK,+CAA+C,EAC5D,QAAQ,QAASiI,EAAY,EAC7B,QAAQ,OAAQ,sCAAsC,EACtD,QAAQ,QAAS,6DAA6D,EAC9E,SAAQ,EACPC,GAAUlI,GAAK,yBAAyB,EACzC,QAAQ,QAASiI,EAAY,EAC7B,QAAQ,MAAOtB,EAAW,EAC1B,SAAQ,EACPwB,GAASnI,GAAK,uBAAuB,EACtC,QAAQ,MAAO2G,EAAW,EAC1B,SAAQ,EACPyB,GAAgBpI,GAAK,wBAAyB,GAAG,EAClD,QAAQ,UAAWkI,EAAO,EAC1B,QAAQ,SAAUC,EAAM,EACxB,SAAQ,EAIPE,GAAe,CACjB,WAAY3H,GACZ,eAAAoH,GACA,SAAAC,GACA,UAAAL,GACA,GAAAJ,GACA,KAAMD,GACN,IAAK3G,GACL,eAAAiH,GACA,kBAAAC,GACA,kBAAAC,GACA,OAAArI,GACA,KAAAyC,GACA,OAAAkG,GACA,YAAAV,GACA,QAAAS,GACA,cAAAE,GACA,IAAA5D,GACA,KAAM+C,GACN,IAAK7G,EACT,EAIM4H,GAAiB,CACnB,GAAGD,GACH,KAAMrI,GAAK,yBAAyB,EAC/B,QAAQ,QAASiI,EAAY,EAC7B,SAAQ,EACb,QAASjI,GAAK,+BAA+B,EACxC,QAAQ,QAASiI,EAAY,EAC7B,SAAQ,CACjB,EAIMM,GAAY,CACd,GAAGF,GACH,OAAQrI,GAAKR,EAAM,EAAE,QAAQ,KAAM,MAAM,EAAE,SAAQ,EACnD,IAAKQ,GAAK,mEAAoE,GAAG,EAC5E,QAAQ,QAAS,2EAA2E,EAC5F,SAAQ,EACb,WAAY,6EACZ,IAAK,+CACL,KAAM,4NACV,EAIMwI,GAAe,CACjB,GAAGD,GACH,GAAIvI,GAAKsH,EAAE,EAAE,QAAQ,OAAQ,GAAG,EAAE,SAAQ,EAC1C,KAAMtH,GAAKuI,GAAU,IAAI,EACpB,QAAQ,OAAQ,eAAe,EAC/B,QAAQ,UAAW,GAAG,EACtB,SAAQ,CACjB,EAIaE,GAAQ,CACjB,OAAQxB,GACR,IAAKE,GACL,SAAUC,EACd,EACasB,GAAS,CAClB,OAAQL,GACR,IAAKE,GACL,OAAQC,GACR,SAAUF,EACd,ECtRaK,GAAN,MAAMC,CAAO,CAChB,OACA,QACA,MACA,UACA,YACA,YAAY9F,EAAS,CAEjB,KAAK,OAAS,CAAA,EACd,KAAK,OAAO,MAAQ,OAAO,OAAO,IAAI,EACtC,KAAK,QAAUA,GAAWhE,GAC1B,KAAK,QAAQ,UAAY,KAAK,QAAQ,WAAa,IAAI+D,GACvD,KAAK,UAAY,KAAK,QAAQ,UAC9B,KAAK,UAAU,QAAU,KAAK,QAC9B,KAAK,UAAU,MAAQ,KACvB,KAAK,YAAc,CAAA,EACnB,KAAK,MAAQ,CACT,OAAQ,GACR,WAAY,GACZ,IAAK,EACjB,EACQ,IAAMgG,EAAQ,CACV,MAAOJ,GAAM,OACb,OAAQC,GAAO,MAC3B,EACY,KAAK,QAAQ,UACbG,EAAM,MAAQJ,GAAM,SACpBI,EAAM,OAASH,GAAO,UAEjB,KAAK,QAAQ,MAClBG,EAAM,MAAQJ,GAAM,IAChB,KAAK,QAAQ,OACbI,EAAM,OAASH,GAAO,OAGtBG,EAAM,OAASH,GAAO,KAG9B,KAAK,UAAU,MAAQG,CAC/B,CAII,WAAW,OAAQ,CACf,MAAO,CACH,MAAAJ,GACA,OAAAC,EACZ,CACA,CAII,OAAO,IAAI3F,EAAKD,EAAS,CAErB,OADc,IAAI8F,EAAO9F,CAAO,EACnB,IAAIC,CAAG,CAC5B,CAII,OAAO,UAAUA,EAAKD,EAAS,CAE3B,OADc,IAAI8F,EAAO9F,CAAO,EACnB,aAAaC,CAAG,CACrC,CAII,IAAIA,EAAK,CACLA,EAAMA,EACD,QAAQ,WAAY;CAAI,EAC7B,KAAK,YAAYA,EAAK,KAAK,MAAM,EACjC,QAAS1B,EAAI,EAAGA,EAAI,KAAK,YAAY,OAAQA,IAAK,CAC9C,IAAMyH,EAAO,KAAK,YAAYzH,CAAC,EAC/B,KAAK,aAAayH,EAAK,IAAKA,EAAK,MAAM,CACnD,CACQ,YAAK,YAAc,CAAA,EACZ,KAAK,MACpB,CACI,YAAY/F,EAAKG,EAAS,CAAA,EAAI,CACtB,KAAK,QAAQ,SACbH,EAAMA,EAAI,QAAQ,MAAO,MAAM,EAAE,QAAQ,SAAU,EAAE,EAGrDA,EAAMA,EAAI,QAAQ,eAAgB,CAAClD,EAAGkJ,EAASC,IACpCD,EAAU,OAAO,OAAOC,EAAK,MAAM,CAC7C,EAEL,IAAI1G,EACA2G,EACAC,EACAC,EACJ,KAAOpG,GACH,GAAI,OAAK,QAAQ,YACV,KAAK,QAAQ,WAAW,OACxB,KAAK,QAAQ,WAAW,MAAM,KAAMqG,IAC/B9G,EAAQ8G,EAAa,KAAK,CAAE,MAAO,IAAI,EAAIrG,EAAKG,CAAM,IACtDH,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACV,IAEJ,EACV,GAIL,IAAIA,EAAQ,KAAK,UAAU,MAAMS,CAAG,EAAG,CACnCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EAChCA,EAAM,IAAI,SAAW,GAAKY,EAAO,OAAS,EAG1CA,EAAOA,EAAO,OAAS,CAAC,EAAE,KAAO;EAGjCA,EAAO,KAAKZ,CAAK,EAErB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,KAAKS,CAAG,EAAG,CAClCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC2G,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAEhC+F,IAAcA,EAAU,OAAS,aAAeA,EAAU,OAAS,SACnEA,EAAU,KAAO;EAAO3G,EAAM,IAC9B2G,EAAU,MAAQ;EAAO3G,EAAM,KAC/B,KAAK,YAAY,KAAK,YAAY,OAAS,CAAC,EAAE,IAAM2G,EAAU,MAG9D/F,EAAO,KAAKZ,CAAK,EAErB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,OAAOS,CAAG,EAAG,CACpCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,QAAQS,CAAG,EAAG,CACrCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,GAAGS,CAAG,EAAG,CAChCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,WAAWS,CAAG,EAAG,CACxCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,KAAKS,CAAG,EAAG,CAClCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,KAAKS,CAAG,EAAG,CAClCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,IAAIS,CAAG,EAAG,CACjCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC2G,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChC+F,IAAcA,EAAU,OAAS,aAAeA,EAAU,OAAS,SACnEA,EAAU,KAAO;EAAO3G,EAAM,IAC9B2G,EAAU,MAAQ;EAAO3G,EAAM,IAC/B,KAAK,YAAY,KAAK,YAAY,OAAS,CAAC,EAAE,IAAM2G,EAAU,MAExD,KAAK,OAAO,MAAM3G,EAAM,GAAG,IACjC,KAAK,OAAO,MAAMA,EAAM,GAAG,EAAI,CAC3B,KAAMA,EAAM,KACZ,MAAOA,EAAM,KACrC,GAEgB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,MAAMS,CAAG,EAAG,CACnCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,SAASS,CAAG,EAAG,CACtCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAIY,GADA4G,EAASnG,EACL,KAAK,QAAQ,YAAc,KAAK,QAAQ,WAAW,WAAY,CAC/D,IAAIsG,EAAa,IACXC,EAAUvG,EAAI,MAAM,CAAC,EACvBwG,EACJ,KAAK,QAAQ,WAAW,WAAW,QAASC,GAAkB,CAC1DD,EAAYC,EAAc,KAAK,CAAE,MAAO,IAAI,EAAIF,CAAO,EACnD,OAAOC,GAAc,UAAYA,GAAa,IAC9CF,EAAa,KAAK,IAAIA,EAAYE,CAAS,EAEnE,CAAiB,EACGF,EAAa,KAAYA,GAAc,IACvCH,EAASnG,EAAI,UAAU,EAAGsG,EAAa,CAAC,EAE5D,CACY,GAAI,KAAK,MAAM,MAAQ/G,EAAQ,KAAK,UAAU,UAAU4G,CAAM,GAAI,CAC9DD,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChCiG,GAAwBF,EAAU,OAAS,aAC3CA,EAAU,KAAO;EAAO3G,EAAM,IAC9B2G,EAAU,MAAQ;EAAO3G,EAAM,KAC/B,KAAK,YAAY,IAAG,EACpB,KAAK,YAAY,KAAK,YAAY,OAAS,CAAC,EAAE,IAAM2G,EAAU,MAG9D/F,EAAO,KAAKZ,CAAK,EAErB6G,EAAwBD,EAAO,SAAWnG,EAAI,OAC9CA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,KAAKS,CAAG,EAAG,CAClCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC2G,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChC+F,GAAaA,EAAU,OAAS,QAChCA,EAAU,KAAO;EAAO3G,EAAM,IAC9B2G,EAAU,MAAQ;EAAO3G,EAAM,KAC/B,KAAK,YAAY,IAAG,EACpB,KAAK,YAAY,KAAK,YAAY,OAAS,CAAC,EAAE,IAAM2G,EAAU,MAG9D/F,EAAO,KAAKZ,CAAK,EAErB,QAChB,CACY,GAAIS,EAAK,CACL,IAAM0G,EAAS,0BAA4B1G,EAAI,WAAW,CAAC,EAC3D,GAAI,KAAK,QAAQ,OAAQ,CACrB,QAAQ,MAAM0G,CAAM,EACpB,KACpB,KAEoB,OAAM,IAAI,MAAMA,CAAM,CAE1C,EAEQ,YAAK,MAAM,IAAM,GACVvG,CACf,CACI,OAAOH,EAAKG,EAAS,CAAA,EAAI,CACrB,YAAK,YAAY,KAAK,CAAE,IAAAH,EAAK,OAAAG,CAAM,CAAE,EAC9BA,CACf,CAII,aAAaH,EAAKG,EAAS,CAAA,EAAI,CAC3B,IAAIZ,EAAO2G,EAAWC,EAElB5D,EAAYvC,EACZhC,EACA2I,EAAcnE,EAElB,GAAI,KAAK,OAAO,MAAO,CACnB,IAAMH,EAAQ,OAAO,KAAK,KAAK,OAAO,KAAK,EAC3C,GAAIA,EAAM,OAAS,EACf,MAAQrE,EAAQ,KAAK,UAAU,MAAM,OAAO,cAAc,KAAKuE,CAAS,IAAM,MACtEF,EAAM,SAASrE,EAAM,CAAC,EAAE,MAAMA,EAAM,CAAC,EAAE,YAAY,GAAG,EAAI,EAAG,EAAE,CAAC,IAChEuE,EAAYA,EAAU,MAAM,EAAGvE,EAAM,KAAK,EAAI,IAAM,IAAI,OAAOA,EAAM,CAAC,EAAE,OAAS,CAAC,EAAI,IAAMuE,EAAU,MAAM,KAAK,UAAU,MAAM,OAAO,cAAc,SAAS,EAIvL,CAEQ,MAAQvE,EAAQ,KAAK,UAAU,MAAM,OAAO,UAAU,KAAKuE,CAAS,IAAM,MACtEA,EAAYA,EAAU,MAAM,EAAGvE,EAAM,KAAK,EAAI,IAAM,IAAI,OAAOA,EAAM,CAAC,EAAE,OAAS,CAAC,EAAI,IAAMuE,EAAU,MAAM,KAAK,UAAU,MAAM,OAAO,UAAU,SAAS,EAG/J,MAAQvE,EAAQ,KAAK,UAAU,MAAM,OAAO,eAAe,KAAKuE,CAAS,IAAM,MAC3EA,EAAYA,EAAU,MAAM,EAAGvE,EAAM,KAAK,EAAI,KAAOuE,EAAU,MAAM,KAAK,UAAU,MAAM,OAAO,eAAe,SAAS,EAE7H,KAAOvC,GAMH,GALK2G,IACDnE,EAAW,IAEfmE,EAAe,GAEX,OAAK,QAAQ,YACV,KAAK,QAAQ,WAAW,QACxB,KAAK,QAAQ,WAAW,OAAO,KAAMN,IAChC9G,EAAQ8G,EAAa,KAAK,CAAE,MAAO,IAAI,EAAIrG,EAAKG,CAAM,IACtDH,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACV,IAEJ,EACV,GAIL,IAAIA,EAAQ,KAAK,UAAU,OAAOS,CAAG,EAAG,CACpCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,IAAIS,CAAG,EAAG,CACjCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC2G,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChC+F,GAAa3G,EAAM,OAAS,QAAU2G,EAAU,OAAS,QACzDA,EAAU,KAAO3G,EAAM,IACvB2G,EAAU,MAAQ3G,EAAM,MAGxBY,EAAO,KAAKZ,CAAK,EAErB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,KAAKS,CAAG,EAAG,CAClCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,QAAQS,EAAK,KAAK,OAAO,KAAK,EAAG,CACxDA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpC2G,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChC+F,GAAa3G,EAAM,OAAS,QAAU2G,EAAU,OAAS,QACzDA,EAAU,KAAO3G,EAAM,IACvB2G,EAAU,MAAQ3G,EAAM,MAGxBY,EAAO,KAAKZ,CAAK,EAErB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,SAASS,EAAKuC,EAAWC,CAAQ,EAAG,CAC3DxC,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,SAASS,CAAG,EAAG,CACtCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,GAAGS,CAAG,EAAG,CAChCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,IAAIS,CAAG,EAAG,CACjCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAIA,EAAQ,KAAK,UAAU,SAASS,CAAG,EAAG,CACtCA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAEY,GAAI,CAAC,KAAK,MAAM,SAAWA,EAAQ,KAAK,UAAU,IAAIS,CAAG,GAAI,CACzDA,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EACpCY,EAAO,KAAKZ,CAAK,EACjB,QAChB,CAIY,GADA4G,EAASnG,EACL,KAAK,QAAQ,YAAc,KAAK,QAAQ,WAAW,YAAa,CAChE,IAAIsG,EAAa,IACXC,EAAUvG,EAAI,MAAM,CAAC,EACvBwG,EACJ,KAAK,QAAQ,WAAW,YAAY,QAASC,GAAkB,CAC3DD,EAAYC,EAAc,KAAK,CAAE,MAAO,IAAI,EAAIF,CAAO,EACnD,OAAOC,GAAc,UAAYA,GAAa,IAC9CF,EAAa,KAAK,IAAIA,EAAYE,CAAS,EAEnE,CAAiB,EACGF,EAAa,KAAYA,GAAc,IACvCH,EAASnG,EAAI,UAAU,EAAGsG,EAAa,CAAC,EAE5D,CACY,GAAI/G,EAAQ,KAAK,UAAU,WAAW4G,CAAM,EAAG,CAC3CnG,EAAMA,EAAI,UAAUT,EAAM,IAAI,MAAM,EAChCA,EAAM,IAAI,MAAM,EAAE,IAAM,MACxBiD,EAAWjD,EAAM,IAAI,MAAM,EAAE,GAEjCoH,EAAe,GACfT,EAAY/F,EAAOA,EAAO,OAAS,CAAC,EAChC+F,GAAaA,EAAU,OAAS,QAChCA,EAAU,KAAO3G,EAAM,IACvB2G,EAAU,MAAQ3G,EAAM,MAGxBY,EAAO,KAAKZ,CAAK,EAErB,QAChB,CACY,GAAIS,EAAK,CACL,IAAM0G,EAAS,0BAA4B1G,EAAI,WAAW,CAAC,EAC3D,GAAI,KAAK,QAAQ,OAAQ,CACrB,QAAQ,MAAM0G,CAAM,EACpB,KACpB,KAEoB,OAAM,IAAI,MAAMA,CAAM,CAE1C,EAEQ,OAAOvG,CACf,CACA,EC5aayG,GAAN,KAAgB,CACnB,QACA,YAAY7G,EAAS,CACjB,KAAK,QAAUA,GAAWhE,EAClC,CACI,KAAK8K,EAAMC,EAAY3I,EAAS,CAC5B,IAAM4I,GAAQD,GAAc,IAAI,MAAM,MAAM,IAAI,CAAC,EAEjD,OADAD,EAAOA,EAAK,QAAQ,MAAO,EAAE,EAAI;EAC5BE,EAKE,8BACDtK,GAAOsK,CAAI,EACX,MACC5I,EAAU0I,EAAOpK,GAAOoK,EAAM,EAAI,GACnC;EARK,eACA1I,EAAU0I,EAAOpK,GAAOoK,EAAM,EAAI,GACnC;CAOlB,CACI,WAAWG,EAAO,CACd,MAAO;EAAiBA,CAAK;CACrC,CACI,KAAKtK,EAAMgJ,EAAO,CACd,OAAOhJ,CACf,CACI,QAAQ4C,EAAMP,EAAOI,EAAK,CAEtB,MAAO,KAAKJ,CAAK,IAAIO,CAAI,MAAMP,CAAK;CAC5C,CACI,IAAK,CACD,MAAO;CACf,CACI,KAAKkI,EAAMC,EAASC,EAAO,CACvB,IAAMC,EAAOF,EAAU,KAAO,KACxBG,EAAYH,GAAWC,IAAU,EAAM,WAAaA,EAAQ,IAAO,GACzE,MAAO,IAAMC,EAAOC,EAAW;EAAQJ,EAAO,KAAOG,EAAO;CACpE,CACI,SAAS9H,EAAMgI,EAAMC,EAAS,CAC1B,MAAO,OAAOjI,CAAI;CAC1B,CACI,SAASiI,EAAS,CACd,MAAO,WACAA,EAAU,cAAgB,IAC3B,8BACd,CACI,UAAUjI,EAAM,CACZ,MAAO,MAAMA,CAAI;CACzB,CACI,MAAMyC,EAAQkF,EAAM,CAChB,OAAIA,IACAA,EAAO,UAAUA,CAAI,YAClB;;EAEDlF,EACA;EACAkF,EACA;CACd,CACI,SAASO,EAAS,CACd,MAAO;EAASA,CAAO;CAC/B,CACI,UAAUA,EAASC,EAAO,CACtB,IAAML,EAAOK,EAAM,OAAS,KAAO,KAInC,OAHYA,EAAM,MACZ,IAAIL,CAAI,WAAWK,EAAM,KAAK,KAC9B,IAAIL,CAAI,KACDI,EAAU,KAAKJ,CAAI;CACxC,CAII,OAAO9H,EAAM,CACT,MAAO,WAAWA,CAAI,WAC9B,CACI,GAAGA,EAAM,CACL,MAAO,OAAOA,CAAI,OAC1B,CACI,SAASA,EAAM,CACX,MAAO,SAASA,CAAI,SAC5B,CACI,IAAK,CACD,MAAO,MACf,CACI,IAAIA,EAAM,CACN,MAAO,QAAQA,CAAI,QAC3B,CACI,KAAK5B,EAAM2B,EAAOC,EAAM,CACpB,IAAMoI,EAAYjK,GAASC,CAAI,EAC/B,GAAIgK,IAAc,KACd,OAAOpI,EAEX5B,EAAOgK,EACP,IAAIC,EAAM,YAAcjK,EAAO,IAC/B,OAAI2B,IACAsI,GAAO,WAAatI,EAAQ,KAEhCsI,GAAO,IAAMrI,EAAO,OACbqI,CACf,CACI,MAAMjK,EAAM2B,EAAOC,EAAM,CACrB,IAAMoI,EAAYjK,GAASC,CAAI,EAC/B,GAAIgK,IAAc,KACd,OAAOpI,EAEX5B,EAAOgK,EACP,IAAIC,EAAM,aAAajK,CAAI,UAAU4B,CAAI,IACzC,OAAID,IACAsI,GAAO,WAAWtI,CAAK,KAE3BsI,GAAO,IACAA,CACf,CACI,KAAKrI,EAAM,CACP,OAAOA,CACf,CACA,ECpHasI,GAAN,KAAoB,CAEvB,OAAOtI,EAAM,CACT,OAAOA,CACf,CACI,GAAGA,EAAM,CACL,OAAOA,CACf,CACI,SAASA,EAAM,CACX,OAAOA,CACf,CACI,IAAIA,EAAM,CACN,OAAOA,CACf,CACI,KAAKA,EAAM,CACP,OAAOA,CACf,CACI,KAAKA,EAAM,CACP,OAAOA,CACf,CACI,KAAK5B,EAAM2B,EAAOC,EAAM,CACpB,MAAO,GAAKA,CACpB,CACI,MAAM5B,EAAM2B,EAAOC,EAAM,CACrB,MAAO,GAAKA,CACpB,CACI,IAAK,CACD,MAAO,EACf,CACA,EC1BauI,GAAN,MAAMC,CAAQ,CACjB,QACA,SACA,aACA,YAAY/H,EAAS,CACjB,KAAK,QAAUA,GAAWhE,GAC1B,KAAK,QAAQ,SAAW,KAAK,QAAQ,UAAY,IAAI6K,GACrD,KAAK,SAAW,KAAK,QAAQ,SAC7B,KAAK,SAAS,QAAU,KAAK,QAC7B,KAAK,aAAe,IAAIgB,EAChC,CAII,OAAO,MAAMzH,EAAQJ,EAAS,CAE1B,OADe,IAAI+H,EAAQ/H,CAAO,EACpB,MAAMI,CAAM,CAClC,CAII,OAAO,YAAYA,EAAQJ,EAAS,CAEhC,OADe,IAAI+H,EAAQ/H,CAAO,EACpB,YAAYI,CAAM,CACxC,CAII,MAAMA,EAAQD,EAAM,GAAM,CACtB,IAAIyH,EAAM,GACV,QAASrJ,EAAI,EAAGA,EAAI6B,EAAO,OAAQ7B,IAAK,CACpC,IAAMiB,EAAQY,EAAO7B,CAAC,EAEtB,GAAI,KAAK,QAAQ,YAAc,KAAK,QAAQ,WAAW,WAAa,KAAK,QAAQ,WAAW,UAAUiB,EAAM,IAAI,EAAG,CAC/G,IAAMwI,EAAexI,EACfyI,EAAM,KAAK,QAAQ,WAAW,UAAUD,EAAa,IAAI,EAAE,KAAK,CAAE,OAAQ,IAAI,EAAIA,CAAY,EACpG,GAAIC,IAAQ,IAAS,CAAC,CAAC,QAAS,KAAM,UAAW,OAAQ,QAAS,aAAc,OAAQ,OAAQ,YAAa,MAAM,EAAE,SAASD,EAAa,IAAI,EAAG,CAC9IJ,GAAOK,GAAO,GACd,QACpB,CACA,CACY,OAAQzI,EAAM,KAAI,CACd,IAAK,QACD,SAEJ,IAAK,KAAM,CACPoI,GAAO,KAAK,SAAS,GAAE,EACvB,QACpB,CACgB,IAAK,UAAW,CACZ,IAAMM,EAAe1I,EACrBoI,GAAO,KAAK,SAAS,QAAQ,KAAK,YAAYM,EAAa,MAAM,EAAGA,EAAa,MAAOpL,GAAS,KAAK,YAAYoL,EAAa,OAAQ,KAAK,YAAY,CAAC,CAAC,EAC1J,QACpB,CACgB,IAAK,OAAQ,CACT,IAAMC,EAAY3I,EAClBoI,GAAO,KAAK,SAAS,KAAKO,EAAU,KAAMA,EAAU,KAAM,CAAC,CAACA,EAAU,OAAO,EAC7E,QACpB,CACgB,IAAK,QAAS,CACV,IAAMC,EAAa5I,EACfwC,EAAS,GAETC,EAAO,GACX,QAASoG,EAAI,EAAGA,EAAID,EAAW,OAAO,OAAQC,IAC1CpG,GAAQ,KAAK,SAAS,UAAU,KAAK,YAAYmG,EAAW,OAAOC,CAAC,EAAE,MAAM,EAAG,CAAE,OAAQ,GAAM,MAAOD,EAAW,MAAMC,CAAC,CAAC,CAAE,EAE/HrG,GAAU,KAAK,SAAS,SAASC,CAAI,EACrC,IAAIiF,EAAO,GACX,QAASmB,EAAI,EAAGA,EAAID,EAAW,KAAK,OAAQC,IAAK,CAC7C,IAAMrK,EAAMoK,EAAW,KAAKC,CAAC,EAC7BpG,EAAO,GACP,QAASqG,EAAI,EAAGA,EAAItK,EAAI,OAAQsK,IAC5BrG,GAAQ,KAAK,SAAS,UAAU,KAAK,YAAYjE,EAAIsK,CAAC,EAAE,MAAM,EAAG,CAAE,OAAQ,GAAO,MAAOF,EAAW,MAAME,CAAC,CAAC,CAAE,EAElHpB,GAAQ,KAAK,SAAS,SAASjF,CAAI,CAC3D,CACoB2F,GAAO,KAAK,SAAS,MAAM5F,EAAQkF,CAAI,EACvC,QACpB,CACgB,IAAK,aAAc,CACf,IAAMqB,EAAkB/I,EAClB0H,EAAO,KAAK,MAAMqB,EAAgB,MAAM,EAC9CX,GAAO,KAAK,SAAS,WAAWV,CAAI,EACpC,QACpB,CACgB,IAAK,OAAQ,CACT,IAAMsB,EAAYhJ,EACZ2H,EAAUqB,EAAU,QACpBpB,EAAQoB,EAAU,MAClBC,EAAQD,EAAU,MACpBtB,EAAO,GACX,QAASmB,EAAI,EAAGA,EAAIG,EAAU,MAAM,OAAQH,IAAK,CAC7C,IAAMvG,EAAO0G,EAAU,MAAMH,CAAC,EACxBb,EAAU1F,EAAK,QACfyF,EAAOzF,EAAK,KACd4G,EAAW,GACf,GAAI5G,EAAK,KAAM,CACX,IAAM6G,EAAW,KAAK,SAAS,SAAS,CAAC,CAACnB,CAAO,EAC7CiB,EACI3G,EAAK,OAAO,OAAS,GAAKA,EAAK,OAAO,CAAC,EAAE,OAAS,aAClDA,EAAK,OAAO,CAAC,EAAE,KAAO6G,EAAW,IAAM7G,EAAK,OAAO,CAAC,EAAE,KAClDA,EAAK,OAAO,CAAC,EAAE,QAAUA,EAAK,OAAO,CAAC,EAAE,OAAO,OAAS,GAAKA,EAAK,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,OAAS,SAC/FA,EAAK,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,KAAO6G,EAAW,IAAM7G,EAAK,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,OAI9EA,EAAK,OAAO,QAAQ,CAChB,KAAM,OACN,KAAM6G,EAAW,GACzD,CAAqC,EAILD,GAAYC,EAAW,GAEvD,CACwBD,GAAY,KAAK,MAAM5G,EAAK,OAAQ2G,CAAK,EACzCvB,GAAQ,KAAK,SAAS,SAASwB,EAAUnB,EAAM,CAAC,CAACC,CAAO,CAChF,CACoBI,GAAO,KAAK,SAAS,KAAKV,EAAMC,EAASC,CAAK,EAC9C,QACpB,CACgB,IAAK,OAAQ,CACT,IAAMwB,EAAYpJ,EAClBoI,GAAO,KAAK,SAAS,KAAKgB,EAAU,KAAMA,EAAU,KAAK,EACzD,QACpB,CACgB,IAAK,YAAa,CACd,IAAMC,EAAiBrJ,EACvBoI,GAAO,KAAK,SAAS,UAAU,KAAK,YAAYiB,EAAe,MAAM,CAAC,EACtE,QACpB,CACgB,IAAK,OAAQ,CACT,IAAIC,EAAYtJ,EACZ0H,EAAO4B,EAAU,OAAS,KAAK,YAAYA,EAAU,MAAM,EAAIA,EAAU,KAC7E,KAAOvK,EAAI,EAAI6B,EAAO,QAAUA,EAAO7B,EAAI,CAAC,EAAE,OAAS,QACnDuK,EAAY1I,EAAO,EAAE7B,CAAC,EACtB2I,GAAQ;GAAQ4B,EAAU,OAAS,KAAK,YAAYA,EAAU,MAAM,EAAIA,EAAU,MAEtFlB,GAAOzH,EAAM,KAAK,SAAS,UAAU+G,CAAI,EAAIA,EAC7C,QACpB,CACgB,QAAS,CACL,IAAMP,EAAS,eAAiBnH,EAAM,KAAO,wBAC7C,GAAI,KAAK,QAAQ,OACb,eAAQ,MAAMmH,CAAM,EACb,GAGP,MAAM,IAAI,MAAMA,CAAM,CAE9C,CACA,CACA,CACQ,OAAOiB,CACf,CAII,YAAYxH,EAAQ2I,EAAU,CAC1BA,EAAWA,GAAY,KAAK,SAC5B,IAAInB,EAAM,GACV,QAASrJ,EAAI,EAAGA,EAAI6B,EAAO,OAAQ7B,IAAK,CACpC,IAAMiB,EAAQY,EAAO7B,CAAC,EAEtB,GAAI,KAAK,QAAQ,YAAc,KAAK,QAAQ,WAAW,WAAa,KAAK,QAAQ,WAAW,UAAUiB,EAAM,IAAI,EAAG,CAC/G,IAAMyI,EAAM,KAAK,QAAQ,WAAW,UAAUzI,EAAM,IAAI,EAAE,KAAK,CAAE,OAAQ,IAAI,EAAIA,CAAK,EACtF,GAAIyI,IAAQ,IAAS,CAAC,CAAC,SAAU,OAAQ,OAAQ,QAAS,SAAU,KAAM,WAAY,KAAM,MAAO,MAAM,EAAE,SAASzI,EAAM,IAAI,EAAG,CAC7HoI,GAAOK,GAAO,GACd,QACpB,CACA,CACY,OAAQzI,EAAM,KAAI,CACd,IAAK,SAAU,CACX,IAAMwJ,EAAcxJ,EACpBoI,GAAOmB,EAAS,KAAKC,EAAY,IAAI,EACrC,KACpB,CACgB,IAAK,OAAQ,CACT,IAAMC,EAAWzJ,EACjBoI,GAAOmB,EAAS,KAAKE,EAAS,IAAI,EAClC,KACpB,CACgB,IAAK,OAAQ,CACT,IAAMC,EAAY1J,EAClBoI,GAAOmB,EAAS,KAAKG,EAAU,KAAMA,EAAU,MAAO,KAAK,YAAYA,EAAU,OAAQH,CAAQ,CAAC,EAClG,KACpB,CACgB,IAAK,QAAS,CACV,IAAMI,EAAa3J,EACnBoI,GAAOmB,EAAS,MAAMI,EAAW,KAAMA,EAAW,MAAOA,EAAW,IAAI,EACxE,KACpB,CACgB,IAAK,SAAU,CACX,IAAMC,EAAc5J,EACpBoI,GAAOmB,EAAS,OAAO,KAAK,YAAYK,EAAY,OAAQL,CAAQ,CAAC,EACrE,KACpB,CACgB,IAAK,KAAM,CACP,IAAMM,EAAU7J,EAChBoI,GAAOmB,EAAS,GAAG,KAAK,YAAYM,EAAQ,OAAQN,CAAQ,CAAC,EAC7D,KACpB,CACgB,IAAK,WAAY,CACb,IAAMO,EAAgB9J,EACtBoI,GAAOmB,EAAS,SAASO,EAAc,IAAI,EAC3C,KACpB,CACgB,IAAK,KAAM,CACP1B,GAAOmB,EAAS,GAAE,EAClB,KACpB,CACgB,IAAK,MAAO,CACR,IAAMQ,EAAW/J,EACjBoI,GAAOmB,EAAS,IAAI,KAAK,YAAYQ,EAAS,OAAQR,CAAQ,CAAC,EAC/D,KACpB,CACgB,IAAK,OAAQ,CACT,IAAMD,EAAYtJ,EAClBoI,GAAOmB,EAAS,KAAKD,EAAU,IAAI,EACnC,KACpB,CACgB,QAAS,CACL,IAAMnC,EAAS,eAAiBnH,EAAM,KAAO,wBAC7C,GAAI,KAAK,QAAQ,OACb,eAAQ,MAAMmH,CAAM,EACb,GAGP,MAAM,IAAI,MAAMA,CAAM,CAE9C,CACA,CACA,CACQ,OAAOiB,CACf,CACA,ECnPa4B,GAAN,KAAa,CAChB,QACA,YAAYxJ,EAAS,CACjB,KAAK,QAAUA,GAAWhE,EAClC,CACI,OAAO,iBAAmB,IAAI,IAAI,CAC9B,aACA,cACA,kBACR,CAAK,EAID,WAAWyN,EAAU,CACjB,OAAOA,CACf,CAII,YAAY9M,EAAM,CACd,OAAOA,CACf,CAII,iBAAiByD,EAAQ,CACrB,OAAOA,CACf,CACA,ECrBasJ,GAAN,KAAa,CAChB,SAAW3N,GAAY,EACvB,QAAU,KAAK,WACf,MAAQ,KAAK4N,GAAe9D,GAAO,IAAKiC,GAAQ,KAAK,EACrD,YAAc,KAAK6B,GAAe9D,GAAO,UAAWiC,GAAQ,WAAW,EACvE,OAASA,GACT,SAAWjB,GACX,aAAegB,GACf,MAAQhC,GACR,UAAY9F,GACZ,MAAQyJ,GACR,eAAeI,EAAM,CACjB,KAAK,IAAI,GAAGA,CAAI,CACxB,CAII,WAAWxJ,EAAQyJ,EAAU,CACzB,IAAIC,EAAS,CAAA,EACb,QAAWtK,KAASY,EAEhB,OADA0J,EAASA,EAAO,OAAOD,EAAS,KAAK,KAAMrK,CAAK,CAAC,EACzCA,EAAM,KAAI,CACd,IAAK,QAAS,CACV,IAAM4I,EAAa5I,EACnB,QAAWyC,KAAQmG,EAAW,OAC1B0B,EAASA,EAAO,OAAO,KAAK,WAAW7H,EAAK,OAAQ4H,CAAQ,CAAC,EAEjE,QAAW7L,KAAOoK,EAAW,KACzB,QAAWnG,KAAQjE,EACf8L,EAASA,EAAO,OAAO,KAAK,WAAW7H,EAAK,OAAQ4H,CAAQ,CAAC,EAGrE,KACpB,CACgB,IAAK,OAAQ,CACT,IAAMrB,EAAYhJ,EAClBsK,EAASA,EAAO,OAAO,KAAK,WAAWtB,EAAU,MAAOqB,CAAQ,CAAC,EACjE,KACpB,CACgB,QAAS,CACL,IAAM7B,EAAexI,EACjB,KAAK,SAAS,YAAY,cAAcwI,EAAa,IAAI,EACzD,KAAK,SAAS,WAAW,YAAYA,EAAa,IAAI,EAAE,QAAS+B,GAAgB,CAC7E,IAAM3J,EAAS4H,EAAa+B,CAAW,EAAE,KAAK,GAAQ,EACtDD,EAASA,EAAO,OAAO,KAAK,WAAW1J,EAAQyJ,CAAQ,CAAC,CACpF,CAAyB,EAEI7B,EAAa,SAClB8B,EAASA,EAAO,OAAO,KAAK,WAAW9B,EAAa,OAAQ6B,CAAQ,CAAC,EAE7F,CACA,CAEQ,OAAOC,CACf,CACI,OAAOF,EAAM,CACT,IAAMI,EAAa,KAAK,SAAS,YAAc,CAAE,UAAW,CAAA,EAAI,YAAa,CAAA,CAAE,EAC/E,OAAAJ,EAAK,QAASK,GAAS,CAEnB,IAAMC,EAAO,CAAE,GAAGD,CAAI,EA8DtB,GA5DAC,EAAK,MAAQ,KAAK,SAAS,OAASA,EAAK,OAAS,GAE9CD,EAAK,aACLA,EAAK,WAAW,QAASE,GAAQ,CAC7B,GAAI,CAACA,EAAI,KACL,MAAM,IAAI,MAAM,yBAAyB,EAE7C,GAAI,aAAcA,EAAK,CACnB,IAAMC,EAAeJ,EAAW,UAAUG,EAAI,IAAI,EAC9CC,EAEAJ,EAAW,UAAUG,EAAI,IAAI,EAAI,YAAaP,EAAM,CAChD,IAAI3B,EAAMkC,EAAI,SAAS,MAAM,KAAMP,CAAI,EACvC,OAAI3B,IAAQ,KACRA,EAAMmC,EAAa,MAAM,KAAMR,CAAI,GAEhC3B,CACvC,EAG4B+B,EAAW,UAAUG,EAAI,IAAI,EAAIA,EAAI,QAEjE,CACoB,GAAI,cAAeA,EAAK,CACpB,GAAI,CAACA,EAAI,OAAUA,EAAI,QAAU,SAAWA,EAAI,QAAU,SACtD,MAAM,IAAI,MAAM,6CAA6C,EAEjE,IAAME,EAAWL,EAAWG,EAAI,KAAK,EACjCE,EACAA,EAAS,QAAQF,EAAI,SAAS,EAG9BH,EAAWG,EAAI,KAAK,EAAI,CAACA,EAAI,SAAS,EAEtCA,EAAI,QACAA,EAAI,QAAU,QACVH,EAAW,WACXA,EAAW,WAAW,KAAKG,EAAI,KAAK,EAGpCH,EAAW,WAAa,CAACG,EAAI,KAAK,EAGjCA,EAAI,QAAU,WACfH,EAAW,YACXA,EAAW,YAAY,KAAKG,EAAI,KAAK,EAGrCH,EAAW,YAAc,CAACG,EAAI,KAAK,GAIvE,CACwB,gBAAiBA,GAAOA,EAAI,cAC5BH,EAAW,YAAYG,EAAI,IAAI,EAAIA,EAAI,YAE/D,CAAiB,EACDD,EAAK,WAAaF,GAGlBC,EAAK,SAAU,CACf,IAAMlB,EAAW,KAAK,SAAS,UAAY,IAAIlC,GAAU,KAAK,QAAQ,EACtE,QAAWyD,KAAQL,EAAK,SAAU,CAC9B,GAAI,EAAEK,KAAQvB,GACV,MAAM,IAAI,MAAM,aAAauB,CAAI,kBAAkB,EAEvD,GAAIA,IAAS,UAET,SAEJ,IAAMC,EAAeD,EACfE,EAAeP,EAAK,SAASM,CAAY,EACzCH,EAAerB,EAASwB,CAAY,EAE1CxB,EAASwB,CAAY,EAAI,IAAIX,IAAS,CAClC,IAAI3B,EAAMuC,EAAa,MAAMzB,EAAUa,CAAI,EAC3C,OAAI3B,IAAQ,KACRA,EAAMmC,EAAa,MAAMrB,EAAUa,CAAI,GAEpC3B,GAAO,EACtC,CACA,CACgBiC,EAAK,SAAWnB,CAChC,CACY,GAAIkB,EAAK,UAAW,CAChB,IAAMQ,EAAY,KAAK,SAAS,WAAa,IAAI1K,GAAW,KAAK,QAAQ,EACzE,QAAWuK,KAAQL,EAAK,UAAW,CAC/B,GAAI,EAAEK,KAAQG,GACV,MAAM,IAAI,MAAM,cAAcH,CAAI,kBAAkB,EAExD,GAAI,CAAC,UAAW,QAAS,OAAO,EAAE,SAASA,CAAI,EAE3C,SAEJ,IAAMI,EAAgBJ,EAChBK,EAAgBV,EAAK,UAAUS,CAAa,EAC5CE,EAAgBH,EAAUC,CAAa,EAG7CD,EAAUC,CAAa,EAAI,IAAId,IAAS,CACpC,IAAI3B,EAAM0C,EAAc,MAAMF,EAAWb,CAAI,EAC7C,OAAI3B,IAAQ,KACRA,EAAM2C,EAAc,MAAMH,EAAWb,CAAI,GAEtC3B,CAC/B,CACA,CACgBiC,EAAK,UAAYO,CACjC,CAEY,GAAIR,EAAK,MAAO,CACZ,IAAMY,EAAQ,KAAK,SAAS,OAAS,IAAIrB,GACzC,QAAWc,KAAQL,EAAK,MAAO,CAC3B,GAAI,EAAEK,KAAQO,GACV,MAAM,IAAI,MAAM,SAASP,CAAI,kBAAkB,EAEnD,GAAIA,IAAS,UAET,SAEJ,IAAMQ,EAAYR,EACZS,EAAYd,EAAK,MAAMa,CAAS,EAChCE,EAAWH,EAAMC,CAAS,EAC5BtB,GAAO,iBAAiB,IAAIc,CAAI,EAEhCO,EAAMC,CAAS,EAAKG,GAAQ,CACxB,GAAI,KAAK,SAAS,MACd,OAAO,QAAQ,QAAQF,EAAU,KAAKF,EAAOI,CAAG,CAAC,EAAE,KAAKhD,GAC7C+C,EAAS,KAAKH,EAAO5C,CAAG,CAClC,EAEL,IAAMA,EAAM8C,EAAU,KAAKF,EAAOI,CAAG,EACrC,OAAOD,EAAS,KAAKH,EAAO5C,CAAG,CAC3D,EAIwB4C,EAAMC,CAAS,EAAI,IAAIlB,IAAS,CAC5B,IAAI3B,EAAM8C,EAAU,MAAMF,EAAOjB,CAAI,EACrC,OAAI3B,IAAQ,KACRA,EAAM+C,EAAS,MAAMH,EAAOjB,CAAI,GAE7B3B,CACnC,CAEA,CACgBiC,EAAK,MAAQW,CAC7B,CAEY,GAAIZ,EAAK,WAAY,CACjB,IAAMiB,EAAa,KAAK,SAAS,WAC3BC,EAAiBlB,EAAK,WAC5BC,EAAK,WAAa,SAAU1K,EAAO,CAC/B,IAAIsK,EAAS,CAAA,EACb,OAAAA,EAAO,KAAKqB,EAAe,KAAK,KAAM3L,CAAK,CAAC,EACxC0L,IACApB,EAASA,EAAO,OAAOoB,EAAW,KAAK,KAAM1L,CAAK,CAAC,GAEhDsK,CAC3B,CACA,CACY,KAAK,SAAW,CAAE,GAAG,KAAK,SAAU,GAAGI,CAAI,CACvD,CAAS,EACM,IACf,CACI,WAAW9M,EAAK,CACZ,YAAK,SAAW,CAAE,GAAG,KAAK,SAAU,GAAGA,CAAG,EACnC,IACf,CACI,MAAM6C,EAAKD,EAAS,CAChB,OAAO6F,GAAO,IAAI5F,EAAKD,GAAW,KAAK,QAAQ,CACvD,CACI,OAAOI,EAAQJ,EAAS,CACpB,OAAO8H,GAAQ,MAAM1H,EAAQJ,GAAW,KAAK,QAAQ,CAC7D,CACI2J,GAAetK,EAAO+L,EAAQ,CAC1B,MAAO,CAACnL,EAAKD,IAAY,CACrB,IAAMqL,EAAU,CAAE,GAAGrL,CAAO,EACtB5C,EAAM,CAAE,GAAG,KAAK,SAAU,GAAGiO,CAAO,EAEtC,KAAK,SAAS,QAAU,IAAQA,EAAQ,QAAU,KAC7CjO,EAAI,QACL,QAAQ,KAAK,oHAAoH,EAErIA,EAAI,MAAQ,IAEhB,IAAMkO,EAAa,KAAKC,GAAS,CAAC,CAACnO,EAAI,OAAQ,CAAC,CAACA,EAAI,KAAK,EAE1D,GAAI,OAAO6C,EAAQ,KAAeA,IAAQ,KACtC,OAAOqL,EAAW,IAAI,MAAM,gDAAgD,CAAC,EAEjF,GAAI,OAAOrL,GAAQ,SACf,OAAOqL,EAAW,IAAI,MAAM,wCACtB,OAAO,UAAU,SAAS,KAAKrL,CAAG,EAAI,mBAAmB,CAAC,EAKpE,GAHI7C,EAAI,QACJA,EAAI,MAAM,QAAUA,GAEpBA,EAAI,MACJ,OAAO,QAAQ,QAAQA,EAAI,MAAQA,EAAI,MAAM,WAAW6C,CAAG,EAAIA,CAAG,EAC7D,KAAKA,GAAOZ,EAAMY,EAAK7C,CAAG,CAAC,EAC3B,KAAKgD,GAAUhD,EAAI,MAAQA,EAAI,MAAM,iBAAiBgD,CAAM,EAAIA,CAAM,EACtE,KAAKA,GAAUhD,EAAI,WAAa,QAAQ,IAAI,KAAK,WAAWgD,EAAQhD,EAAI,UAAU,CAAC,EAAE,KAAK,IAAMgD,CAAM,EAAIA,CAAM,EAChH,KAAKA,GAAUgL,EAAOhL,EAAQhD,CAAG,CAAC,EAClC,KAAKT,GAAQS,EAAI,MAAQA,EAAI,MAAM,YAAYT,CAAI,EAAIA,CAAI,EAC3D,MAAM2O,CAAU,EAEzB,GAAI,CACIlO,EAAI,QACJ6C,EAAM7C,EAAI,MAAM,WAAW6C,CAAG,GAElC,IAAIG,EAASf,EAAMY,EAAK7C,CAAG,EACvBA,EAAI,QACJgD,EAAShD,EAAI,MAAM,iBAAiBgD,CAAM,GAE1ChD,EAAI,YACJ,KAAK,WAAWgD,EAAQhD,EAAI,UAAU,EAE1C,IAAIT,EAAOyO,EAAOhL,EAAQhD,CAAG,EAC7B,OAAIA,EAAI,QACJT,EAAOS,EAAI,MAAM,YAAYT,CAAI,GAE9BA,CACvB,OACmB6O,EAAG,CACN,OAAOF,EAAWE,CAAC,CACnC,CACA,CACA,CACID,GAASE,EAAQC,EAAO,CACpB,OAAQF,GAAM,CAEV,GADAA,EAAE,SAAW;2DACTC,EAAQ,CACR,IAAME,EAAM,iCACNjP,GAAO8O,EAAE,QAAU,GAAI,EAAI,EAC3B,SACN,OAAIE,EACO,QAAQ,QAAQC,CAAG,EAEvBA,CACvB,CACY,GAAID,EACA,OAAO,QAAQ,OAAOF,CAAC,EAE3B,MAAMA,CAClB,CACA,CACA,ECpTMI,GAAiB,IAAIlC,GACpB,SAASmC,EAAO5L,EAAK7C,EAAK,CAC7B,OAAOwO,GAAe,MAAM3L,EAAK7C,CAAG,CACxC,CAMAyO,EAAO,QACHA,EAAO,WAAa,SAAU7L,EAAS,CACnC,OAAA4L,GAAe,WAAW5L,CAAO,EACjC6L,EAAO,SAAWD,GAAe,SACjC3P,GAAe4P,EAAO,QAAQ,EACvBA,CACf,EAIAA,EAAO,YAAc9P,GACrB8P,EAAO,SAAW7P,GAIlB6P,EAAO,IAAM,YAAajC,EAAM,CAC5B,OAAAgC,GAAe,IAAI,GAAGhC,CAAI,EAC1BiC,EAAO,SAAWD,GAAe,SACjC3P,GAAe4P,EAAO,QAAQ,EACvBA,CACX,EAIAA,EAAO,WAAa,SAAUzL,EAAQyJ,EAAU,CAC5C,OAAO+B,GAAe,WAAWxL,EAAQyJ,CAAQ,CACrD,EAQAgC,EAAO,YAAcD,GAAe,YAIpCC,EAAO,OAAS/D,GAChB+D,EAAO,OAAS/D,GAAQ,MACxB+D,EAAO,SAAWhF,GAClBgF,EAAO,aAAehE,GACtBgE,EAAO,MAAQhG,GACfgG,EAAO,MAAQhG,GAAO,IACtBgG,EAAO,UAAY9L,GACnB8L,EAAO,MAAQrC,GACfqC,EAAO,MAAQA,EACH,IAAC7L,GAAU6L,EAAO,QACjBC,GAAaD,EAAO,WACpBE,GAAMF,EAAO,IACbX,GAAaW,EAAO,WACpBG,GAAcH,EAAO,YACrBI,GAAQJ,EACRT,GAAStD,GAAQ,MACjBzI,GAAQwG,GAAO,ICvE5B,GAAM,CACJqG,QAAAA,GACAC,eAAAA,GACAC,SAAAA,GACAC,eAAAA,GACAC,yBAAAA,EACD,EAAGC,OAEA,CAAEC,OAAAA,GAAQC,KAAAA,GAAMC,OAAAA,EAAM,EAAKH,OAC3B,CAAEI,MAAAA,GAAOC,UAAAA,EAAW,EAAG,OAAOC,QAAY,KAAeA,QAExDL,KACHA,GAAS,SAAUM,EAAC,CAClB,OAAOA,IAINL,KACHA,GAAO,SAAUK,EAAC,CAChB,OAAOA,IAINH,KACHA,GAAQ,SAAUI,EAAKC,EAAWC,EAAI,CACpC,OAAOF,EAAIJ,MAAMK,EAAWC,CAAI,IAI/BL,KACHA,GAAY,SAAUM,EAAMD,EAAI,CAC9B,OAAO,IAAIC,EAAK,GAAGD,CAAI,IAI3B,IAAME,GAAeC,GAAQC,MAAMC,UAAUC,OAAO,EAE9CC,GAAmBJ,GAAQC,MAAMC,UAAUG,WAAW,EACtDC,GAAWN,GAAQC,MAAMC,UAAUK,GAAG,EACtCC,GAAYR,GAAQC,MAAMC,UAAUO,IAAI,EAExCC,GAAcV,GAAQC,MAAMC,UAAUS,MAAM,EAE5CC,GAAoBZ,GAAQa,OAAOX,UAAUY,WAAW,EACxDC,GAAiBf,GAAQa,OAAOX,UAAUc,QAAQ,EAClDC,GAAcjB,GAAQa,OAAOX,UAAUgB,KAAK,EAC5CC,GAAgBnB,GAAQa,OAAOX,UAAUkB,OAAO,EAChDC,GAAgBrB,GAAQa,OAAOX,UAAUoB,OAAO,EAChDC,GAAavB,GAAQa,OAAOX,UAAUsB,IAAI,EAE1CC,GAAuBzB,GAAQb,OAAOe,UAAUwB,cAAc,EAE9DC,GAAa3B,GAAQ4B,OAAO1B,UAAU2B,IAAI,EAE1CC,GAAkBC,GAAYC,SAAS,EAQ7C,SAAShC,GACPiC,EAAyC,CAEzC,OAAO,SAACC,EAAmC,CACrCA,aAAmBN,SACrBM,EAAQC,UAAY,GACrB,QAAAC,EAAAC,UAAAC,OAHsBzC,EAAW,IAAAI,MAAAmC,EAAAA,EAAAA,EAAA,EAAA,CAAA,EAAAG,EAAA,EAAAA,EAAAH,EAAAG,IAAX1C,EAAW0C,EAAAF,CAAAA,EAAAA,UAAAE,CAAA,EAKlC,OAAOhD,GAAM0C,EAAMC,EAASrC,CAAI,EAEpC,CAQA,SAASkC,GAAeE,EAA2B,CACjD,OAAO,UAAA,CAAA,QAAAO,EAAAH,UAAAC,OAAIzC,EAAWI,IAAAA,MAAAuC,CAAA,EAAAC,EAAA,EAAAA,EAAAD,EAAAC,IAAX5C,EAAW4C,CAAA,EAAAJ,UAAAI,CAAA,EAAA,OAAQjD,GAAUyC,EAAMpC,CAAI,CAAC,CACrD,CAUA,SAAS6C,EACPC,EACAC,EACyE,CAAA,IAAzEC,EAAAA,UAAAA,OAAAA,GAAAA,UAAAA,CAAAA,IAAAA,OAAAA,UAAAA,CAAAA,EAAwDjC,GAEpD7B,IAIFA,GAAe4D,EAAK,IAAI,EAG1B,IAAIG,EAAIF,EAAMN,OACd,KAAOQ,KAAK,CACV,IAAIC,EAAUH,EAAME,CAAC,EACrB,GAAI,OAAOC,GAAY,SAAU,CAC/B,IAAMC,EAAYH,EAAkBE,CAAO,EACvCC,IAAcD,IAEX/D,GAAS4D,CAAK,IAChBA,EAAgBE,CAAC,EAAIE,GAGxBD,EAAUC,EAEd,CAEAL,EAAII,CAAO,EAAI,EACjB,CAEA,OAAOJ,CACT,CAQA,SAASM,GAAcL,EAAU,CAC/B,QAASM,EAAQ,EAAGA,EAAQN,EAAMN,OAAQY,IAChBzB,GAAqBmB,EAAOM,CAAK,IAGvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,GAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,GAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,GAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,GAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,GAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,GAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,C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", + "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "#onMaybeScrollToBottom", "#maybeScrollToBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] } diff --git a/js/src/chat/chat-tools.ts b/js/src/chat/chat-tools.ts index b9127110..84288c9d 100644 --- a/js/src/chat/chat-tools.ts +++ b/js/src/chat/chat-tools.ts @@ -103,6 +103,10 @@ class ShinyToolCard extends LitElement { this.requestUpdate() } + firstUpdated() { + this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom")) + } + /** * Formats the title for display in the card header. Uses the `titleTemplate`, * replacing `{title}` with the actual title or name of the tool. diff --git a/js/src/markdown-stream/markdown-stream.ts b/js/src/markdown-stream/markdown-stream.ts index e86a733e..4150f6f9 100644 --- a/js/src/markdown-stream/markdown-stream.ts +++ b/js/src/markdown-stream/markdown-stream.ts @@ -116,6 +116,14 @@ class MarkdownElement extends LightElement { return html`${contentToHTML(this.content, this.content_type)}` } + connectedCallback(): void { + super.connectedCallback() + this.addEventListener( + "shiny-chat-maybe-scroll-to-bottom", + this.#onMaybeScrollToBottom, + ) + } + disconnectedCallback(): void { super.disconnectedCallback() this.#cleanup() @@ -376,6 +384,10 @@ class MarkdownElement extends LightElement { return null } + #onMaybeScrollToBottom = (): void => { + this.#maybeScrollToBottom() + } + #maybeScrollToBottom(): void { const el = this.#scrollableElement if (!el || this.#isUserScrolled) return @@ -390,6 +402,10 @@ class MarkdownElement extends LightElement { this.#scrollableElement?.removeEventListener("scroll", this.#onScroll) this.#scrollableElement = null this.#isUserScrolled = false + this.removeEventListener( + "shiny-chat-maybe-scroll-to-bottom", + this.#onMaybeScrollToBottom, + ) } } diff --git a/pkg-py/src/shinychat/www/GIT_VERSION b/pkg-py/src/shinychat/www/GIT_VERSION index 1b0df1ad..6ab64461 100644 --- a/pkg-py/src/shinychat/www/GIT_VERSION +++ b/pkg-py/src/shinychat/www/GIT_VERSION @@ -1 +1 @@ -ec8feb87cb2a78c497d8ee66edd6f1e50faf1d48 +ec204acc3563226e4bcba3d48fc5b19418a9a360 diff --git a/pkg-py/src/shinychat/www/chat/chat.js b/pkg-py/src/shinychat/www/chat/chat.js index 0bda64f7..585bc2b3 100644 --- a/pkg-py/src/shinychat/www/chat/chat.js +++ b/pkg-py/src/shinychat/www/chat/chat.js @@ -1,7 +1,7 @@ var ys=Object.defineProperty;var vs=Object.getOwnPropertyDescriptor;var g=(i,t,e,n)=>{for(var o=n>1?void 0:n?vs(t,e):t,r=i.length-1,l;r>=0;r--)(l=i[r])&&(o=(n?l(t,e,o):l(o))||o);return n&&o&&ys(t,e,o),o};var qt=globalThis,Bt=qt.ShadowRoot&&(qt.ShadyCSS===void 0||qt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,fn=Symbol(),mn=new WeakMap,Ft=class{constructor(t,e,n){if(this._$cssResult$=!0,n!==fn)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(Bt&&t===void 0){let n=e!==void 0&&e.length===1;n&&(t=mn.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),n&&mn.set(e,t))}return t}toString(){return this.cssText}},gn=i=>new Ft(typeof i=="string"?i:i+"",void 0,fn);var _n=(i,t)=>{if(Bt)i.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let n=document.createElement("style"),o=qt.litNonce;o!==void 0&&n.setAttribute("nonce",o),n.textContent=e.cssText,i.appendChild(n)}},_e=Bt?i=>i:i=>i instanceof CSSStyleSheet?(t=>{let e="";for(let n of t.cssRules)e+=n.cssText;return gn(e)})(i):i;var{is:As,defineProperty:bs,getOwnPropertyDescriptor:Ts,getOwnPropertyNames:Ss,getOwnPropertySymbols:ws,getPrototypeOf:Cs}=Object,Gt=globalThis,En=Gt.trustedTypes,$s=En?En.emptyScript:"",xs=Gt.reactiveElementPolyfillSupport,yt=(i,t)=>i,vt={toAttribute(i,t){switch(t){case Boolean:i=i?$s:null;break;case Object:case Array:i=i==null?i:JSON.stringify(i)}return i},fromAttribute(i,t){let e=i;switch(t){case Boolean:e=i!==null;break;case Number:e=i===null?null:Number(i);break;case Object:case Array:try{e=JSON.parse(i)}catch{e=null}}return e}},Wt=(i,t)=>!As(i,t),yn={attribute:!0,type:String,converter:vt,reflect:!1,useDefault:!1,hasChanged:Wt};Symbol.metadata??=Symbol("metadata"),Gt.litPropertyMetadata??=new WeakMap;var j=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=yn){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let n=Symbol(),o=this.getPropertyDescriptor(t,n,e);o!==void 0&&bs(this.prototype,t,o)}}static getPropertyDescriptor(t,e,n){let{get:o,set:r}=Ts(this.prototype,t)??{get(){return this[e]},set(l){this[e]=l}};return{get:o,set(l){let p=o?.call(this);r?.call(this,l),this.requestUpdate(t,p,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??yn}static _$Ei(){if(this.hasOwnProperty(yt("elementProperties")))return;let t=Cs(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(yt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(yt("properties"))){let e=this.properties,n=[...Ss(e),...ws(e)];for(let o of n)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[n,o]of e)this.elementProperties.set(n,o)}this._$Eh=new Map;for(let[e,n]of this.elementProperties){let o=this._$Eu(e,n);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let n=new Set(t.flat(1/0).reverse());for(let o of n)e.unshift(_e(o))}else t!==void 0&&e.push(_e(t));return e}static _$Eu(t,e){let n=e.attribute;return n===!1?void 0:typeof n=="string"?n:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let n of e.keys())this.hasOwnProperty(n)&&(t.set(n,this[n]),delete this[n]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return _n(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,n){this._$AK(t,n)}_$ET(t,e){let n=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,n);if(o!==void 0&&n.reflect===!0){let r=(n.converter?.toAttribute!==void 0?n.converter:vt).toAttribute(e,n.type);this._$Em=t,r==null?this.removeAttribute(o):this.setAttribute(o,r),this._$Em=null}}_$AK(t,e){let n=this.constructor,o=n._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let r=n.getPropertyOptions(o),l=typeof r.converter=="function"?{fromAttribute:r.converter}:r.converter?.fromAttribute!==void 0?r.converter:vt;this._$Em=o,this[o]=l.fromAttribute(e,r.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,n){if(t!==void 0){let o=this.constructor,r=this[t];if(n??=o.getPropertyOptions(t),!((n.hasChanged??Wt)(r,e)||n.useDefault&&n.reflect&&r===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,n))))return;this.C(t,e,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:n,reflect:o,wrapped:r},l){n&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,l??e??this[t]),r!==!0||l!==void 0)||(this._$AL.has(t)||(this.hasUpdated||n||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,r]of this._$Ep)this[o]=r;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[o,r]of n){let{wrapped:l}=r,p=this[o];l!==!0||this._$AL.has(o)||p===void 0||this.C(o,void 0,r,p)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(e)):this._$EM()}catch(n){throw t=!1,this._$EM(),n}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};j.elementStyles=[],j.shadowRootOptions={mode:"open"},j[yt("elementProperties")]=new Map,j[yt("finalized")]=new Map,xs?.({ReactiveElement:j}),(Gt.reactiveElementVersions??=[]).push("2.1.0");var Se=globalThis,jt=Se.trustedTypes,vn=jt?jt.createPolicy("lit-html",{createHTML:i=>i}):void 0,Cn="$lit$",Z=`lit$${Math.random().toFixed(9).slice(2)}$`,$n="?"+Z,Ls=`<${$n}>`,nt=document,bt=()=>nt.createComment(""),Tt=i=>i===null||typeof i!="object"&&typeof i!="function",we=Array.isArray,Ms=i=>we(i)||typeof i?.[Symbol.iterator]=="function",Ee=`[ \f\r]`,At=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,An=/-->/g,bn=/>/g,tt=RegExp(`>|${Ee}(?:([^\\s"'>=/]+)(${Ee}*=${Ee}*(?:[^ \f\r"'\`<>=]|("|')|))|$)`,"g"),Tn=/'/g,Sn=/"/g,xn=/^(?:script|style|textarea|title)$/i,Ce=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),y=Ce(1),mi=Ce(2),fi=Ce(3),V=Symbol.for("lit-noChange"),A=Symbol.for("lit-nothing"),wn=new WeakMap,et=nt.createTreeWalker(nt,129);function Ln(i,t){if(!we(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return vn!==void 0?vn.createHTML(t):t}var Os=(i,t)=>{let e=i.length-1,n=[],o,r=t===2?"":t===3?"":"",l=At;for(let p=0;p"?(l=o??At,m=-1):T[1]===void 0?m=-2:(m=l.lastIndex-T[2].length,_=T[1],l=T[3]===void 0?tt:T[3]==='"'?Sn:Tn):l===Sn||l===Tn?l=tt:l===An||l===bn?l=At:(l=tt,o=void 0);let I=l===tt&&i[p+1].startsWith("/>")?" ":"";r+=l===At?h+Ls:m>=0?(n.push(_),h.slice(0,m)+Cn+h.slice(m)+Z+I):h+Z+(m===-2?p:I)}return[Ln(i,r+(i[e]||"")+(t===2?"":t===3?"":"")),n]},St=class i{constructor({strings:t,_$litType$:e},n){let o;this.parts=[];let r=0,l=0,p=t.length-1,h=this.parts,[_,T]=Os(t,e);if(this.el=i.createElement(_,n),et.currentNode=this.el.content,e===2||e===3){let m=this.el.content.firstChild;m.replaceWith(...m.childNodes)}for(;(o=et.nextNode())!==null&&h.length0){o.textContent=jt?jt.emptyScript:"";for(let I=0;I2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=A}_$AI(t,e=this,n,o){let r=this.strings,l=!1;if(r===void 0)t=ht(this,t,e,0),l=!Tt(t)||t!==this._$AH&&t!==V,l&&(this._$AH=t);else{let p=t,h,_;for(t=r[0],h=0;h{let n=e?.renderBefore??t,o=n._$litPart$;if(o===void 0){let r=e?.renderBefore??null;n._$litPart$=o=new wt(t.insertBefore(bt(),r),r,void 0,e??{})}return o._$AI(i),o};var $e=globalThis,F=class extends j{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Mn(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return V}};F._$litElement$=!0,F.finalized=!0,$e.litElementHydrateSupport?.({LitElement:F});var ks=$e.litElementPolyfillSupport;ks?.({LitElement:F});($e.litElementVersions??=[]).push("4.2.0");var On={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Rn=i=>(...t)=>({_$litDirective$:i,values:t}),Vt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,n){this._$Ct=t,this._$AM=e,this._$Ci=n}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var Ct=class extends Vt{constructor(t){if(super(t),this.it=A,t.type!==On.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===A||t==null)return this._t=void 0,this.it=t;if(t===V)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;let e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}};Ct.directiveName="unsafeHTML",Ct.resultType=1;var J=Rn(Ct);var Ns={attribute:!0,type:String,converter:vt,reflect:!1,hasChanged:Wt},Is=(i=Ns,t,e)=>{let{kind:n,metadata:o}=e,r=globalThis.litPropertyMetadata.get(o);if(r===void 0&&globalThis.litPropertyMetadata.set(o,r=new Map),n==="setter"&&((i=Object.create(i)).wrapped=!0),r.set(e.name,i),n==="accessor"){let{name:l}=e;return{set(p){let h=t.get.call(this);t.set.call(this,p),this.requestUpdate(l,h,i)},init(p){return p!==void 0&&this.C(l,void 0,i,p),p}}}if(n==="setter"){let{name:l}=e;return function(p){let h=this[l];t.call(this,p),this.requestUpdate(l,h,i)}}throw Error("Unsupported decorator location: "+n)};function f(i){return(t,e)=>typeof e=="object"?Is(i,t,e):((n,o,r)=>{let l=o.hasOwnProperty(r);return o.constructor.createProperty(r,n),l?Object.getOwnPropertyDescriptor(o,r):void 0})(i,t,e)}var{entries:Fn,setPrototypeOf:kn,isFrozen:Ds,getPrototypeOf:Ps,getOwnPropertyDescriptor:Us}=Object,{freeze:R,seal:D,create:Bn}=Object,{apply:ke,construct:Ne}=typeof Reflect<"u"&&Reflect;R||(R=function(t){return t});D||(D=function(t){return t});ke||(ke=function(t,e,n){return t.apply(e,n)});Ne||(Ne=function(t,e){return new t(...e)});var Kt=k(Array.prototype.forEach),Hs=k(Array.prototype.lastIndexOf),Nn=k(Array.prototype.pop),$t=k(Array.prototype.push),zs=k(Array.prototype.splice),Zt=k(String.prototype.toLowerCase),xe=k(String.prototype.toString),In=k(String.prototype.match),xt=k(String.prototype.replace),qs=k(String.prototype.indexOf),Fs=k(String.prototype.trim),H=k(Object.prototype.hasOwnProperty),O=k(RegExp.prototype.test),Lt=Bs(TypeError);function k(i){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var e=arguments.length,n=new Array(e>1?e-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:Zt;kn&&kn(i,null);let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let r=e(o);r!==o&&(Ds(t)||(t[n]=r),o=r)}i[o]=!0}return i}function Gs(i){for(let t=0;t/gm),Ks=D(/\$\{[\w\W]*/gm),Xs=D(/^data-[\-\w.\u00B7-\uFFFF]+$/),Zs=D(/^aria-[\-\w]+$/),Gn=D(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Js=D(/^(?:\w+script|data):/i),Qs=D(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=D(/^html$/i),ti=D(/^[a-z][.\w]*(-[.\w]+)+$/i),zn=Object.freeze({__proto__:null,ARIA_ATTR:Zs,ATTR_WHITESPACE:Qs,CUSTOM_ELEMENT:ti,DATA_ATTR:Xs,DOCTYPE_NAME:Wn,ERB_EXPR:Ys,IS_ALLOWED_URI:Gn,IS_SCRIPT_OR_DATA:Js,MUSTACHE_EXPR:Vs,TMPLIT_EXPR:Ks}),Ot={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},ei=function(){return typeof window>"u"?null:window},ni=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";e&&e.hasAttribute(o)&&(n=e.getAttribute(o));let r="dompurify"+(n?"#"+n:"");try{return t.createPolicy(r,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+r+" could not be created."),null}},qn=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function jn(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ei(),t=u=>jn(u);if(t.version="3.2.6",t.removed=[],!i||!i.document||i.document.nodeType!==Ot.document||!i.Element)return t.isSupported=!1,t;let{document:e}=i,n=e,o=n.currentScript,{DocumentFragment:r,HTMLTemplateElement:l,Node:p,Element:h,NodeFilter:_,NamedNodeMap:T=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:m,DOMParser:U,trustedTypes:I}=i,z=h.prototype,Qn=Mt(z,"cloneNode"),ts=Mt(z,"remove"),es=Mt(z,"nextSibling"),ns=Mt(z,"childNodes"),kt=Mt(z,"parentNode");if(typeof l=="function"){let u=e.createElement("template");u.content&&u.content.ownerDocument&&(e=u.content.ownerDocument)}let L,mt="",{implementation:ne,createNodeIterator:ss,createDocumentFragment:is,getElementsByTagName:os}=e,{importNode:rs}=n,M=qn();t.isSupported=typeof Fn=="function"&&typeof kt=="function"&&ne&&ne.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:se,ERB_EXPR:ie,TMPLIT_EXPR:oe,DATA_ATTR:as,ARIA_ATTR:ls,IS_SCRIPT_OR_DATA:cs,ATTR_WHITESPACE:Fe,CUSTOM_ELEMENT:us}=zn,{IS_ALLOWED_URI:Be}=zn,S=null,Ge=d({},[...Dn,...Le,...Me,...Oe,...Pn]),C=null,We=d({},[...Un,...Re,...Hn,...Xt]),v=Object.seal(Bn(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ft=null,re=null,je=!0,ae=!0,Ve=!1,Ye=!0,it=!1,Nt=!0,Q=!1,le=!1,ce=!1,ot=!1,It=!1,Dt=!1,Ke=!0,Xe=!1,hs="user-content-",ue=!0,gt=!1,rt={},at=null,Ze=d({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Je=null,Qe=d({},["audio","video","img","source","image","track"]),he=null,tn=d({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Pt="http://www.w3.org/1998/Math/MathML",Ut="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",lt=B,de=!1,pe=null,ds=d({},[Pt,Ut,B],xe),Ht=d({},["mi","mo","mn","ms","mtext"]),zt=d({},["annotation-xml"]),ps=d({},["title","style","font","a","script"]),_t=null,ms=["application/xhtml+xml","text/html"],fs="text/html",w=null,ct=null,gs=e.createElement("form"),en=function(s){return s instanceof RegExp||s instanceof Function},me=function(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ct&&ct===s)){if((!s||typeof s!="object")&&(s={}),s=Y(s),_t=ms.indexOf(s.PARSER_MEDIA_TYPE)===-1?fs:s.PARSER_MEDIA_TYPE,w=_t==="application/xhtml+xml"?xe:Zt,S=H(s,"ALLOWED_TAGS")?d({},s.ALLOWED_TAGS,w):Ge,C=H(s,"ALLOWED_ATTR")?d({},s.ALLOWED_ATTR,w):We,pe=H(s,"ALLOWED_NAMESPACES")?d({},s.ALLOWED_NAMESPACES,xe):ds,he=H(s,"ADD_URI_SAFE_ATTR")?d(Y(tn),s.ADD_URI_SAFE_ATTR,w):tn,Je=H(s,"ADD_DATA_URI_TAGS")?d(Y(Qe),s.ADD_DATA_URI_TAGS,w):Qe,at=H(s,"FORBID_CONTENTS")?d({},s.FORBID_CONTENTS,w):Ze,ft=H(s,"FORBID_TAGS")?d({},s.FORBID_TAGS,w):Y({}),re=H(s,"FORBID_ATTR")?d({},s.FORBID_ATTR,w):Y({}),rt=H(s,"USE_PROFILES")?s.USE_PROFILES:!1,je=s.ALLOW_ARIA_ATTR!==!1,ae=s.ALLOW_DATA_ATTR!==!1,Ve=s.ALLOW_UNKNOWN_PROTOCOLS||!1,Ye=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,it=s.SAFE_FOR_TEMPLATES||!1,Nt=s.SAFE_FOR_XML!==!1,Q=s.WHOLE_DOCUMENT||!1,ot=s.RETURN_DOM||!1,It=s.RETURN_DOM_FRAGMENT||!1,Dt=s.RETURN_TRUSTED_TYPE||!1,ce=s.FORCE_BODY||!1,Ke=s.SANITIZE_DOM!==!1,Xe=s.SANITIZE_NAMED_PROPS||!1,ue=s.KEEP_CONTENT!==!1,gt=s.IN_PLACE||!1,Be=s.ALLOWED_URI_REGEXP||Gn,lt=s.NAMESPACE||B,Ht=s.MATHML_TEXT_INTEGRATION_POINTS||Ht,zt=s.HTML_INTEGRATION_POINTS||zt,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),it&&(ae=!1),It&&(ot=!0),rt&&(S=d({},Pn),C=[],rt.html===!0&&(d(S,Dn),d(C,Un)),rt.svg===!0&&(d(S,Le),d(C,Re),d(C,Xt)),rt.svgFilters===!0&&(d(S,Me),d(C,Re),d(C,Xt)),rt.mathMl===!0&&(d(S,Oe),d(C,Hn),d(C,Xt))),s.ADD_TAGS&&(S===Ge&&(S=Y(S)),d(S,s.ADD_TAGS,w)),s.ADD_ATTR&&(C===We&&(C=Y(C)),d(C,s.ADD_ATTR,w)),s.ADD_URI_SAFE_ATTR&&d(he,s.ADD_URI_SAFE_ATTR,w),s.FORBID_CONTENTS&&(at===Ze&&(at=Y(at)),d(at,s.FORBID_CONTENTS,w)),ue&&(S["#text"]=!0),Q&&d(S,["html","head","body"]),S.table&&(d(S,["tbody"]),delete ft.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');L=s.TRUSTED_TYPES_POLICY,mt=L.createHTML("")}else L===void 0&&(L=ni(I,o)),L!==null&&typeof mt=="string"&&(mt=L.createHTML(""));R&&R(s),ct=s}},nn=d({},[...Le,...Me,...Ws]),sn=d({},[...Oe,...js]),_s=function(s){let a=kt(s);(!a||!a.tagName)&&(a={namespaceURI:lt,tagName:"template"});let c=Zt(s.tagName),E=Zt(a.tagName);return pe[s.namespaceURI]?s.namespaceURI===Ut?a.namespaceURI===B?c==="svg":a.namespaceURI===Pt?c==="svg"&&(E==="annotation-xml"||Ht[E]):!!nn[c]:s.namespaceURI===Pt?a.namespaceURI===B?c==="math":a.namespaceURI===Ut?c==="math"&&zt[E]:!!sn[c]:s.namespaceURI===B?a.namespaceURI===Ut&&!zt[E]||a.namespaceURI===Pt&&!Ht[E]?!1:!sn[c]&&(ps[c]||!nn[c]):!!(_t==="application/xhtml+xml"&&pe[s.namespaceURI]):!1},q=function(s){$t(t.removed,{element:s});try{kt(s).removeChild(s)}catch{ts(s)}},ut=function(s,a){try{$t(t.removed,{attribute:a.getAttributeNode(s),from:a})}catch{$t(t.removed,{attribute:null,from:a})}if(a.removeAttribute(s),s==="is")if(ot||It)try{q(a)}catch{}else try{a.setAttribute(s,"")}catch{}},on=function(s){let a=null,c=null;if(ce)s=""+s;else{let b=In(s,/^[\r\n\t ]+/);c=b&&b[0]}_t==="application/xhtml+xml"&<===B&&(s=''+s+"");let E=L?L.createHTML(s):s;if(lt===B)try{a=new U().parseFromString(E,_t)}catch{}if(!a||!a.documentElement){a=ne.createDocument(lt,"template",null);try{a.documentElement.innerHTML=de?mt:E}catch{}}let $=a.body||a.documentElement;return s&&c&&$.insertBefore(e.createTextNode(c),$.childNodes[0]||null),lt===B?os.call(a,Q?"html":"body")[0]:Q?a.documentElement:$},rn=function(s){return ss.call(s.ownerDocument||s,s,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT|_.SHOW_PROCESSING_INSTRUCTION|_.SHOW_CDATA_SECTION,null)},fe=function(s){return s instanceof m&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof T)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},an=function(s){return typeof p=="function"&&s instanceof p};function G(u,s,a){Kt(u,c=>{c.call(t,s,a,ct)})}let ln=function(s){let a=null;if(G(M.beforeSanitizeElements,s,null),fe(s))return q(s),!0;let c=w(s.nodeName);if(G(M.uponSanitizeElement,s,{tagName:c,allowedTags:S}),Nt&&s.hasChildNodes()&&!an(s.firstElementChild)&&O(/<[/\w!]/g,s.innerHTML)&&O(/<[/\w!]/g,s.textContent)||s.nodeType===Ot.progressingInstruction||Nt&&s.nodeType===Ot.comment&&O(/<[/\w]/g,s.data))return q(s),!0;if(!S[c]||ft[c]){if(!ft[c]&&un(c)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c)))return!1;if(ue&&!at[c]){let E=kt(s)||s.parentNode,$=ns(s)||s.childNodes;if($&&E){let b=$.length;for(let N=b-1;N>=0;--N){let W=Qn($[N],!0);W.__removalCount=(s.__removalCount||0)+1,E.insertBefore(W,es(s))}}}return q(s),!0}return s instanceof h&&!_s(s)||(c==="noscript"||c==="noembed"||c==="noframes")&&O(/<\/no(script|embed|frames)/i,s.innerHTML)?(q(s),!0):(it&&s.nodeType===Ot.text&&(a=s.textContent,Kt([se,ie,oe],E=>{a=xt(a,E," ")}),s.textContent!==a&&($t(t.removed,{element:s.cloneNode()}),s.textContent=a)),G(M.afterSanitizeElements,s,null),!1)},cn=function(s,a,c){if(Ke&&(a==="id"||a==="name")&&(c in e||c in gs))return!1;if(!(ae&&!re[a]&&O(as,a))){if(!(je&&O(ls,a))){if(!C[a]||re[a]){if(!(un(s)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&O(v.attributeNameCheck,a)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(a))||a==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c))))return!1}else if(!he[a]){if(!O(Be,xt(c,Fe,""))){if(!((a==="src"||a==="xlink:href"||a==="href")&&s!=="script"&&qs(c,"data:")===0&&Je[s])){if(!(Ve&&!O(cs,xt(c,Fe,"")))){if(c)return!1}}}}}}return!0},un=function(s){return s!=="annotation-xml"&&In(s,us)},hn=function(s){G(M.beforeSanitizeAttributes,s,null);let{attributes:a}=s;if(!a||fe(s))return;let c={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:C,forceKeepAttr:void 0},E=a.length;for(;E--;){let $=a[E],{name:b,namespaceURI:N,value:W}=$,Et=w(b),ge=W,x=b==="value"?ge:Fs(ge);if(c.attrName=Et,c.attrValue=x,c.keepAttr=!0,c.forceKeepAttr=void 0,G(M.uponSanitizeAttribute,s,c),x=c.attrValue,Xe&&(Et==="id"||Et==="name")&&(ut(b,s),x=hs+x),Nt&&O(/((--!?|])>)|<\/(style|title)/i,x)){ut(b,s);continue}if(c.forceKeepAttr)continue;if(!c.keepAttr){ut(b,s);continue}if(!Ye&&O(/\/>/i,x)){ut(b,s);continue}it&&Kt([se,ie,oe],pn=>{x=xt(x,pn," ")});let dn=w(s.nodeName);if(!cn(dn,Et,x)){ut(b,s);continue}if(L&&typeof I=="object"&&typeof I.getAttributeType=="function"&&!N)switch(I.getAttributeType(dn,Et)){case"TrustedHTML":{x=L.createHTML(x);break}case"TrustedScriptURL":{x=L.createScriptURL(x);break}}if(x!==ge)try{N?s.setAttributeNS(N,b,x):s.setAttribute(b,x),fe(s)?q(s):Nn(t.removed)}catch{ut(b,s)}}G(M.afterSanitizeAttributes,s,null)},Es=function u(s){let a=null,c=rn(s);for(G(M.beforeSanitizeShadowDOM,s,null);a=c.nextNode();)G(M.uponSanitizeShadowNode,a,null),ln(a),hn(a),a.content instanceof r&&u(a.content);G(M.afterSanitizeShadowDOM,s,null)};return t.sanitize=function(u){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=null,c=null,E=null,$=null;if(de=!u,de&&(u=""),typeof u!="string"&&!an(u))if(typeof u.toString=="function"){if(u=u.toString(),typeof u!="string")throw Lt("dirty is not a string, aborting")}else throw Lt("toString is not a function");if(!t.isSupported)return u;if(le||me(s),t.removed=[],typeof u=="string"&&(gt=!1),gt){if(u.nodeName){let W=w(u.nodeName);if(!S[W]||ft[W])throw Lt("root node is forbidden and cannot be sanitized in-place")}}else if(u instanceof p)a=on(""),c=a.ownerDocument.importNode(u,!0),c.nodeType===Ot.element&&c.nodeName==="BODY"||c.nodeName==="HTML"?a=c:a.appendChild(c);else{if(!ot&&!it&&!Q&&u.indexOf("<")===-1)return L&&Dt?L.createHTML(u):u;if(a=on(u),!a)return ot?null:Dt?mt:""}a&&ce&&q(a.firstChild);let b=rn(gt?u:a);for(;E=b.nextNode();)ln(E),hn(E),E.content instanceof r&&Es(E.content);if(gt)return u;if(ot){if(It)for($=is.call(a.ownerDocument);a.firstChild;)$.appendChild(a.firstChild);else $=a;return(C.shadowroot||C.shadowrootmode)&&($=rs.call(n,$,!0)),$}let N=Q?a.outerHTML:a.innerHTML;return Q&&S["!doctype"]&&a.ownerDocument&&a.ownerDocument.doctype&&a.ownerDocument.doctype.name&&O(Wn,a.ownerDocument.doctype.name)&&(N=" -`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y` +`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y`
${J(r)}
${this.formatTitle()}
diff --git a/pkg-py/src/shinychat/www/chat/chat.js.map b/pkg-py/src/shinychat/www/chat/chat.js.map index 80518076..87aa3063 100644 --- a/pkg-py/src/shinychat/www/chat/chat.js.map +++ b/pkg-py/src/shinychat/www/chat/chat.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", + "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", "names": ["global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizer", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "attrs", "name", "value", "ShinyToolCard", "i", "#toggleCollapse", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage"] } diff --git a/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js b/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js index 84fc2783..c14629b2 100644 --- a/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js +++ b/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js @@ -1,25 +1,25 @@ -var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var fr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var f=function(m){var E=g()(m);return p("cut"),E},b=f;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function h(w){return h=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},h(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,f,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,f,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,f,b)}))}function u(c,g,p,f){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&f.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,f,b){if(!p&&!f&&!b)throw new Error("Missing required arguments");if(!s.string(f))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,f,b);if(s.nodeList(p))return c(p,f,b);if(s.string(p))return g(p,f,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,f,b){return p.addEventListener(f,b),{destroy:function(){p.removeEventListener(f,b)}}}function c(p,f,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(f,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(f,b)})}}}function g(p,f,b){return a(document.body,p,f,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var fn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="
",hr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!hr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){hr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var fl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},hl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return hl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},hn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),hn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),hn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),hn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),hn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,fl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(h){return a.noHighlightRe.test(h)}function u(h){let S=h.className+" ";S+=h.parentNode?h.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",h)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(h,S,N){let $="",w="";typeof S=="object"?($=h,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(h,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=he.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ht]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ft+=ht),ke.startsWith("_"))z+=x[0];else{let mt=he.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=f(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ft+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=he.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(he.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,he.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new fn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new fn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ft+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==he;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${h})`);throw Y.languageName=h,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` -`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let he=q(h);if(!he)throw lt(o.replace("{}",h)),new Error('Unknown language: "'+h+'"');let Z=Tl(he),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ft=0,Ie=0,He=0,$e=!1;try{if(he.__emitTokens)he.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:h,value:_e,relevance:ft,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:h,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:h,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(h){let S={value:ei(h),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(h),S}function f(h,S){S=S||a.languages||Object.keys(e);let N=p(h),$=S.filter(q).filter(de).map(R=>g(R,h,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(h,S,N){let $=S&&t[S]||N;h.classList.add("hljs"),h.classList.add(`language-${$}`)}function v(h){let S=null,N=u(h);if(l(N))return;if(te("before:highlightElement",{el:h,language:N}),h.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",h);return}if(h.children.length>0&&(a.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(h)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",h.innerHTML);S=h;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):f($);h.innerHTML=w.value,h.dataset.highlighted="yes",b(h,N,w.language),h.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(h.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:h,result:w,text:$})}function k(h){a=Er(a,h)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function h(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",h,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(h,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",h)),r)lt($);else throw $;N=s}N.name||(N.name=h),e[h]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:h})}function D(h){delete e[h];for(let S of Object.keys(t))t[S]===h&&delete t[S]}function oe(){return Object.keys(e)}function q(h){return h=(h||"").toLowerCase(),e[h]||e[t[h]]}function J(h,{languageName:S}){typeof h=="string"&&(h=[h]),h.forEach(N=>{t[N.toLowerCase()]=S})}function de(h){let S=q(h);return S&&!S.disableAutodetect}function V(h){h["before:highlightBlock"]&&!h["before:highlightElement"]&&(h["before:highlightElement"]=S=>{h["before:highlightBlock"](Object.assign({block:S.el},S))}),h["after:highlightBlock"]&&!h["after:highlightElement"]&&(h["after:highlightElement"]=S=>{h["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(h){V(h),i.push(h)}function fe(h){let S=i.indexOf(h);S!==-1&&i.splice(S,1)}function te(h,S){let N=h;i.forEach(function($){$[N]&&$[N](S)})}function se(h){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(h)}Object.assign(n,{highlight:c,highlightAuto:f,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:fe}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let h in gn)typeof gn[h]=="object"&&vr(gn[h]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],f=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[f,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:f,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:f,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},f=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,f]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},f]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],f.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let f=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(f)}),f=f.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:f},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:f}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:f,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",f="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${f}))?([eE][+-]?(${f})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var fs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,hs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}hs.exports=jl});var _s=H((fp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` -`},u]}}bs.exports=tc});var ws=H((hp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),f={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,f,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,f,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},f=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:f("(?:m|qr)?",/\//,/\//)},{begin:f("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:f("m|qr",/\(/,/\)/)},{begin:f("m|qr",/\[/,/\]/)},{begin:f("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function fc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),f=`[ -]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(h=>{se.push(h),h.toLowerCase()===h?se.push(h.toUpperCase()):se.push(h.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(f,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(f,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],fe={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[fe,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",fe,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=fc});var Ls=H((vp,Is)=>{function hc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=hc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",f=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${f}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${f})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],f=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...f),/\s*\(/),relevance:0,keywords:{built_in:f}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},f=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},fe={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},h={className:"variable",match:`\\$${wn}+`},S=[te,se,h],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,fe,...c,...f,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},he={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...f,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,he,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},fe,...c,...f,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),f.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],fo=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ho=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:ho,"variable.language":fo},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:ho.concat(r),"variable.language":fo},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),f=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,f]),t.contains=t.contains.concat([c,o,s,f]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",fs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ +var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var hr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var h=function(m){var E=g()(m);return p("cut"),E},b=h;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function f(w){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},f(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,h,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,h,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,h,b)}))}function u(c,g,p,h){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&h.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,h,b){if(!p&&!h&&!b)throw new Error("Missing required arguments");if(!s.string(h))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,h,b);if(s.nodeList(p))return c(p,h,b);if(s.string(p))return g(p,h,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,h,b){return p.addEventListener(h,b),{destroy:function(){p.removeEventListener(h,b)}}}function c(p,h,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(h,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(h,b)})}}}function g(p,h,b){return a(document.body,p,h,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var hn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="",fr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!fr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){fr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var hl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},fl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return fl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},fn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),fn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),fn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,hl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(f){return a.noHighlightRe.test(f)}function u(f){let S=f.className+" ";S+=f.parentNode?f.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",f)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(f,S,N){let $="",w="";typeof S=="object"?($=f,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),w=f,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(f,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=fe.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ft]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ht+=ft),ke.startsWith("_"))z+=x[0];else{let mt=fe.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=h(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ht+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=fe.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(fe.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,fe.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new hn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new hn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ht+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==fe;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${f})`);throw Y.languageName=f,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` +`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let fe=q(f);if(!fe)throw lt(o.replace("{}",f)),new Error('Unknown language: "'+f+'"');let Z=Tl(fe),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ht=0,Ie=0,He=0,$e=!1;try{if(fe.__emitTokens)fe.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:f,value:_e,relevance:ht,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:f,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:f,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(f){let S={value:ei(f),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(f),S}function h(f,S){S=S||a.languages||Object.keys(e);let N=p(f),$=S.filter(q).filter(de).map(R=>g(R,f,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(f,S,N){let $=S&&t[S]||N;f.classList.add("hljs"),f.classList.add(`language-${$}`)}function v(f){let S=null,N=u(f);if(l(N))return;if(te("before:highlightElement",{el:f,language:N}),f.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",f);return}if(f.children.length>0&&(a.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(f)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",f.innerHTML);S=f;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):h($);f.innerHTML=w.value,f.dataset.highlighted="yes",b(f,N,w.language),f.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(f.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:f,result:w,text:$})}function k(f){a=Er(a,f)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function f(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",f,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(f,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",f)),r)lt($);else throw $;N=s}N.name||(N.name=f),e[f]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:f})}function D(f){delete e[f];for(let S of Object.keys(t))t[S]===f&&delete t[S]}function oe(){return Object.keys(e)}function q(f){return f=(f||"").toLowerCase(),e[f]||e[t[f]]}function J(f,{languageName:S}){typeof f=="string"&&(f=[f]),f.forEach(N=>{t[N.toLowerCase()]=S})}function de(f){let S=q(f);return S&&!S.disableAutodetect}function V(f){f["before:highlightBlock"]&&!f["before:highlightElement"]&&(f["before:highlightElement"]=S=>{f["before:highlightBlock"](Object.assign({block:S.el},S))}),f["after:highlightBlock"]&&!f["after:highlightElement"]&&(f["after:highlightElement"]=S=>{f["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(f){V(f),i.push(f)}function he(f){let S=i.indexOf(f);S!==-1&&i.splice(S,1)}function te(f,S){let N=f;i.forEach(function($){$[N]&&$[N](S)})}function se(f){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(f)}Object.assign(n,{highlight:c,highlightAuto:h,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:he}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let f in gn)typeof gn[f]=="object"&&vr(gn[f]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],h=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[h,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:h,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:h,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},h=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,h]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},h]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],h.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let h=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(h)}),h=h.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:h},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:h}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:h,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",h="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${h}))?([eE][+-]?(${h})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var hs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,fs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}fs.exports=jl});var _s=H((hp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` +`},u]}}bs.exports=tc});var ws=H((fp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),h={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,h,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,h,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},h=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:h("(?:m|qr)?",/\//,/\//)},{begin:h("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:h("m|qr",/\(/,/\)/)},{begin:h("m|qr",/\[/,/\]/)},{begin:h("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function hc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),h=`[ +]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(f=>{se.push(f),f.toLowerCase()===f?se.push(f.toUpperCase()):se.push(f.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(h,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(h,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],he={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[he,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",he,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=hc});var Ls=H((vp,Is)=>{function fc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=fc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",h=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${h}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${h})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],h=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...h),/\s*\(/),relevance:0,keywords:{built_in:h}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},h=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},he={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},f={className:"variable",match:`\\$${wn}+`},S=[te,se,f],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,he,...c,...h,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},fe={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...h,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,fe,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},he,...c,...h,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},h={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[h],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[h],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),h.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],ho=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fo=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:fo,"variable.language":ho},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:fo.concat(r),"variable.language":ho},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),h=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,h]),t.contains=t.contains.concat([c,o,s,h]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",hs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ \f\r]`,Lt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,nr=/-->/g,ir=/>/g,st=RegExp(`>|${Gn}(?:([^\\s"'>=/]+)(${Gn}*=${Gn}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let f=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+f):l+tt+(g===-2?a:f)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let f=0;f2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(fr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let h=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+h):l+tt+(g===-2?a:h)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let h=0;h2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(hr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length{let o=r.match(/^\s+/);if(o===null)return r;let[s]=o;return s.length>=i.length?r.slice(i.length):r}).join(` `)}var kt=class{options;rules;lexer;constructor(e){this.options=e||dt}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let i=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:An(i,` `)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let i=t[0],r=Jc(i,t[3]||"");return{type:"code",raw:i,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let i=t[2].trim();if(/#$/.test(i)){let r=An(i,"#");(this.options.pedantic||!r||/ $/.test(r))&&(i=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let i=t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` $1`);i=An(i.replace(/^ *>[ \t]?/gm,""),` `);let r=this.lexer.state.top;this.lexer.state.top=!0;let o=this.lexer.blockTokens(i);return this.lexer.state.top=r,{type:"blockquote",raw:t[0],tokens:o,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let i=t[1].trim(),r=i.length>1,o={type:"list",raw:"",ordered:r,start:r?+i.slice(0,-1):"",loose:!1,items:[]};i=r?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=r?i:"[*+-]");let s=new RegExp(`^( {0,3}${i})((?:[ ][^\\n]*)?(?:\\n|$))`),a="",l="",u=!1;for(;e;){let c=!1;if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;a=t[0],e=e.substring(a.length);let g=t[2].split(` `,1)[0].replace(/^\t+/,M=>" ".repeat(3*M.length)),p=e.split(` -`,1)[0],f=0;this.options.pedantic?(f=2,l=g.trimStart()):(f=t[2].search(/[^ ]/),f=f>4?1:f,l=g.slice(f),f+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` -`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,f-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,f-1)}}#`);for(;e;){let B=e.split(` -`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=f||!p.trim())l+=` -`+p.slice(f);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` +`,1)[0],h=0;this.options.pedantic?(h=2,l=g.trimStart()):(h=t[2].search(/[^ ]/),h=h>4?1:h,l=g.slice(h),h+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` +`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,h-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,h-1)}}#`);for(;e;){let B=e.split(` +`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=h||!p.trim())l+=` +`+p.slice(h);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` `+p}!b&&!p.trim()&&(b=!0),a+=B+` -`,e=e.substring(B.length+1),g=p.slice(f)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;cf.type==="space"),p=g.length>0&&g.some(f=>/\n.*\n/.test(f.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`,e=e.substring(B.length+1),g=p.slice(h)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;ch.type==="space"),p=g.length>0&&g.some(h=>/\n.*\n/.test(h.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` `):[],s={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===r.length){for(let a of r)/^ *-+: *$/.test(a)?s.align.push("right"):/^ *:-+: *$/.test(a)?s.align.push("center"):/^ *:-+ *$/.test(a)?s.align.push("left"):s.align.push(null);for(let a of i)s.header.push({text:a,tokens:this.lexer.inline(a)});for(let a of o)s.rows.push(xo(a,s.header.length).map(l=>({text:l,tokens:this.lexer.inline(l)})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let i=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:i,tokens:this.lexer.inline(i)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Se(t[1])}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^
/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,f=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=f.slice(1,-1);return{type:"em",raw:f,text:v,tokens:this.lexer.inlineTokens(v)}}let b=f.slice(2,-2);return{type:"strong",raw:f,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),fi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,hi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",hi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(fi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,fu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),hu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",hi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",hi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:fu,emStrongRDelimAst:hu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,h=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=h.slice(1,-1);return{type:"em",raw:h,text:v,tokens:this.lexer.inlineTokens(v)}}let b=h.slice(2,-2);return{type:"strong",raw:h,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),hi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,fi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",fi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(hi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,hu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),fu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",fi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",fi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:hu,emStrongRDelimAst:fu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\l+" ".repeat(u.length));let i,r,o,s;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(a=>(i=a.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.raw.length===1&&t.length>0?t[t.length-1].raw+=` `:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=` `+i.raw,r.text+=` @@ -29,7 +29,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&( `+i.raw,r.text+=` `+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i),s=o.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&r.type==="text"?(r.raw+=` `+i.raw,r.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(f=>{p=f.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` +`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(h=>{p=h.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` `,r?'
'+(i?e:Se(e,!0))+`
`:"
"+(i?e:Se(e,!0))+`
`}blockquote(e){return`
@@ -47,10 +47,10 @@ ${e}
`}tablerow(e){return` ${e} `}tablecell(e,t){let i=t.header?"th":"td";return(t.align?`<${i} align="${t.align}">`:`<${i}>`)+e+` -`}strong(e){return`${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!f)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!h)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1{let a=o[s].flat(1/0);i=i.concat(this.walkTokens(a,t))}):o.tokens&&(i=i.concat(this.walkTokens(o.tokens,t)))}}return i}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(i=>{let r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(o=>{if(!o.name)throw new Error("extension name required");if("renderer"in o){let s=t.renderers[o.name];s?t.renderers[o.name]=function(...a){let l=o.renderer.apply(this,a);return l===!1&&(l=s.apply(this,a)),l}:t.renderers[o.name]=o.renderer}if("tokenizer"in o){if(!o.level||o.level!=="block"&&o.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=t[o.level];s?s.unshift(o.tokenizer):t[o.level]=[o.tokenizer],o.start&&(o.level==="block"?t.startBlock?t.startBlock.push(o.start):t.startBlock=[o.start]:o.level==="inline"&&(t.startInline?t.startInline.push(o.start):t.startInline=[o.start]))}"childTokens"in o&&o.childTokens&&(t.childTokens[o.name]=o.childTokens)}),r.extensions=t),i.renderer){let o=this.defaults.renderer||new Xe(this.defaults);for(let s in i.renderer){if(!(s in o))throw new Error(`renderer '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.renderer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g||""}}r.renderer=o}if(i.tokenizer){let o=this.defaults.tokenizer||new kt(this.defaults);for(let s in i.tokenizer){if(!(s in o))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let a=s,l=i.tokenizer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.tokenizer=o}if(i.hooks){let o=this.defaults.hooks||new Nt;for(let s in i.hooks){if(!(s in o))throw new Error(`hook '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.hooks[a],u=o[a];Nt.passThroughHooks.has(s)?o[a]=c=>{if(this.defaults.async)return Promise.resolve(l.call(o,c)).then(p=>u.call(o,p));let g=l.call(o,c);return u.call(o,g)}:o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.hooks=o}if(i.walkTokens){let o=this.defaults.walkTokens,s=i.walkTokens;r.walkTokens=function(a){let l=[];return l.push(s.call(this,a)),o&&(l=l.concat(o.call(this,a))),l}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Ye.lex(e,t??this.defaults)}parser(e,t){return Ve.parse(e,t??this.defaults)}#e(e,t){return(i,r)=>{let o={...r},s={...this.defaults,...o};this.defaults.async===!0&&o.async===!1&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);let a=this.#t(!!s.silent,!!s.async);if(typeof i>"u"||i===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof i!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(i):i).then(l=>e(l,s)).then(l=>s.hooks?s.hooks.processAllTokens(l):l).then(l=>s.walkTokens?Promise.all(this.walkTokens(l,s.walkTokens)).then(()=>l):l).then(l=>t(l,s)).then(l=>s.hooks?s.hooks.postprocess(l):l).catch(a);try{s.hooks&&(i=s.hooks.preprocess(i));let l=e(i,s);s.hooks&&(l=s.hooks.processAllTokens(l)),s.walkTokens&&this.walkTokens(l,s.walkTokens);let u=t(l,s);return s.hooks&&(u=s.hooks.postprocess(u)),u}catch(l){return a(l)}}}#t(e,t){return i=>{if(i.message+=` -Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:f}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:fe,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:h,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,he=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ft="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ht="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ht,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],fa="text/html",ge=null,_t=null,ha=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?fa:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(f,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ht?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ht?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ht&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,fe,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in ha))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(h,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ft+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,fe,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Te)switch(f.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(he||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" -`+Te),De&&xn([pe,fe,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),he=!0},e.clearConfig=function(){_t=null,he=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne` +Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:h}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:he,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:f,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,fe=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ht="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ft,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],ha="text/html",ge=null,_t=null,fa=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?ha:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(h,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ft?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ft?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ft&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,he,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in fa))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(f,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ht+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,he,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!Te)switch(h.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(fe||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" +`+Te),De&&xn([pe,he,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),fe=!0},e.clearConfig=function(){_t=null,fe=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne`
${xe(o)}
${this.formatTitle()}
@@ -163,13 +163,13 @@ ${t}`};window.Shiny?.addCustomMessageHandler("shiny-tool-request-hide",n=>{windo > ${xe('')} - `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#c),this.addEventListener("shiny-chat-update-user-input",this.#u),this.addEventListener("shiny-chat-remove-loading-message",this.#h),this.addEventListener("click",this.#d),this.addEventListener("keydown",this.#p),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#c),this.removeEventListener("shiny-chat-update-user-input",this.#u),this.removeEventListener("shiny-chat-remove-loading-message",this.#h),this.removeEventListener("click",this.#d),this.removeEventListener("keydown",this.#p),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#c(){this.messages.innerHTML=""}#u(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#d(t){this.#g(t)}#p(t){(t.key==="Enter"||t.key===" ")&&this.#g(t)}#g(t){let{suggestion:i,submit:r}=this.#m(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#m(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#h(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id + `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#d),this.addEventListener("shiny-chat-update-user-input",this.#p),this.addEventListener("shiny-chat-remove-loading-message",this.#m),this.addEventListener("click",this.#g),this.addEventListener("keydown",this.#c),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#d),this.removeEventListener("shiny-chat-update-user-input",this.#p),this.removeEventListener("shiny-chat-remove-loading-message",this.#m),this.removeEventListener("click",this.#g),this.removeEventListener("keydown",this.#c),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#d(){this.messages.innerHTML=""}#p(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#g(t){this.#u(t)}#c(t){(t.key==="Enter"||t.key===" ")&&this.#u(t)}#u(t){let{suggestion:i,submit:r}=this.#h(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#h(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#m(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a chat_ui('${n.id}') in the UI (Core)? `});return}t.dispatchEvent(e)});function Xu(n){return"isStreaming"in n}var ca="markdown-stream-dot",Qu=na(``),Dn=new Xe;Dn.table=(n,e)=>`${n}${e} -
`;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#c())}}render(){return ne`${ju(this.content,this.content_type)}`}disconnectedCallback(){super.disconnectedCallback(),this.#g()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#u(),this.#o=!1,this.#p(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let f=u[p];if(!f)break;if(f.nodeType===Node.ELEMENT_NODE||f.nodeType===Node.TEXT_NODE&&t(f)){c=f;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#c(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#u(){let t=this.#d();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#d(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#p(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#g(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id + `;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#d())};this.#c=()=>{this.#u()}}render(){return ne`${ju(this.content,this.content_type)}`}connectedCallback(){super.connectedCallback(),this.addEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}disconnectedCallback(){super.disconnectedCallback(),this.#h()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#p(),this.#o=!1,this.#u(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let h=u[p];if(!h)break;if(h.nodeType===Node.ELEMENT_NODE||h.nodeType===Node.TEXT_NODE&&t(h)){c=h;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#d(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#p(){let t=this.#g();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#g(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#c;#u(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#h(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1,this.removeEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a output_markdown_stream('${n.id}') in the UI (Core)?`});return}if(Xu(n)){e.streaming=n.isStreaming;return}if(n.html_deps&&await Mn(n.html_deps),n.operation==="replace")e.setAttribute("content",n.content);else if(n.operation==="append"){let t=e.getAttribute("content");e.setAttribute("content",t+n.content)}else throw new Error(`Unknown operation: ${n.operation}`)}window.Shiny?.addCustomMessageHandler("shinyMarkdownStreamMessage",ed);export{Li as MarkdownElement,ju as contentToHTML}; /*! Bundled license information: diff --git a/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js.map b/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js.map index 20145126..4614afb8 100644 --- a/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js.map +++ b/pkg-py/src/shinychat/www/markdown-stream/markdown-stream.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/clipboard/dist/clipboard.js", "../../node_modules/highlight.js/lib/core.js", "../../node_modules/highlight.js/lib/languages/xml.js", "../../node_modules/highlight.js/lib/languages/bash.js", "../../node_modules/highlight.js/lib/languages/c.js", "../../node_modules/highlight.js/lib/languages/cpp.js", "../../node_modules/highlight.js/lib/languages/csharp.js", "../../node_modules/highlight.js/lib/languages/css.js", "../../node_modules/highlight.js/lib/languages/markdown.js", "../../node_modules/highlight.js/lib/languages/diff.js", "../../node_modules/highlight.js/lib/languages/ruby.js", "../../node_modules/highlight.js/lib/languages/go.js", "../../node_modules/highlight.js/lib/languages/graphql.js", "../../node_modules/highlight.js/lib/languages/ini.js", "../../node_modules/highlight.js/lib/languages/java.js", "../../node_modules/highlight.js/lib/languages/javascript.js", "../../node_modules/highlight.js/lib/languages/json.js", "../../node_modules/highlight.js/lib/languages/kotlin.js", "../../node_modules/highlight.js/lib/languages/less.js", "../../node_modules/highlight.js/lib/languages/lua.js", "../../node_modules/highlight.js/lib/languages/makefile.js", "../../node_modules/highlight.js/lib/languages/perl.js", "../../node_modules/highlight.js/lib/languages/objectivec.js", "../../node_modules/highlight.js/lib/languages/php.js", "../../node_modules/highlight.js/lib/languages/php-template.js", "../../node_modules/highlight.js/lib/languages/plaintext.js", "../../node_modules/highlight.js/lib/languages/python.js", "../../node_modules/highlight.js/lib/languages/python-repl.js", "../../node_modules/highlight.js/lib/languages/r.js", "../../node_modules/highlight.js/lib/languages/rust.js", "../../node_modules/highlight.js/lib/languages/scss.js", "../../node_modules/highlight.js/lib/languages/shell.js", "../../node_modules/highlight.js/lib/languages/sql.js", "../../node_modules/highlight.js/lib/languages/swift.js", "../../node_modules/highlight.js/lib/languages/yaml.js", "../../node_modules/highlight.js/lib/languages/typescript.js", "../../node_modules/highlight.js/lib/languages/vbnet.js", "../../node_modules/highlight.js/lib/languages/wasm.js", "../../node_modules/highlight.js/lib/common.js", "../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../src/markdown-stream/markdown-stream.ts", "../../node_modules/highlight.js/es/common.js", "../../node_modules/marked/src/defaults.ts", "../../node_modules/marked/src/helpers.ts", "../../node_modules/marked/src/Tokenizer.ts", "../../node_modules/marked/src/rules.ts", "../../node_modules/marked/src/Lexer.ts", "../../node_modules/marked/src/Renderer.ts", "../../node_modules/marked/src/TextRenderer.ts", "../../node_modules/marked/src/Parser.ts", "../../node_modules/marked/src/Hooks.ts", "../../node_modules/marked/src/Instance.ts", "../../node_modules/marked/src/marked.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "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CZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAU,CACd,UAAW,SACX,UAAW,EACX,SAAU,CACR,CAAE,MAAO,sBAAuB,EAChC,CAAE,MAAOF,EAAK,SAAU,CAC1B,CACF,EACMG,EAAWH,EAAK,QAAQ,EAC9BG,EAAS,SAAW,CAClB,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,CACF,EACA,IAAMC,EAAY,CAChB,UAAW,WACX,SAAU,CACR,CAAE,MAAO,mBAAoB,EAC7B,CAAE,MAAO,aAAc,CACzB,CACF,EACMC,EAAW,CACf,UAAW,UACX,MAAO,8BACT,EACMC,EAAU,CACd,UAAW,SACX,SAAU,CAAEN,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,MACP,IAAK,MACL,UAAW,EACb,EACA,CACE,MAAO,MACP,IAAK,MACL,UAAW,EACb,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACMO,EAAQ,CACZ,MAAO,KACP,IAAK,KACL,SAAU,CACRJ,EACAE,EACAD,EACAE,EACAJ,EACA,MACF,EACA,UAAW,CACb,EAEMM,EAAW,iBACXC,EAA0B,gBAC1BC,EAA0B,UAC1BC,EAAUV,EAAM,OACpBO,EAAUC,EAAyBC,CACrC,EACME,EAAaX,EAAM,OACvBU,EAAS,eAAgBA,EAAS,KAClCV,EAAM,UAAU,eAAe,CACjC,EAEA,MAAO,CACL,KAAM,iBACN,QAAS,CAAE,MAAO,EAClB,iBAAkB,GAClB,QAAS,KACT,SAAU,CACRE,EACA,CACE,UAAW,UACX,MAAO,MACP,IAAK,KACP,EACA,CACE,MAAOS,EACP,UAAW,OACX,OAAQ,CACN,IAAK,IACL,SAAU,CACRT,EACAI,EACAF,EACAD,EACAE,EACAJ,CACF,CACF,CACF,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxHjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CACA,IAAIC,GAAgB,kBAChBC,GAAO,OAAOD,EAAa,IAC3BE,GAAY,8BACZC,GAAU,CACZ,UAAW,SACX,SAAU,CAGR,CAAE,MAAO,QAAQH,EAAa,MAAMC,EAAI,YAAYA,EAAI,eACzCD,EAAa,aAAc,EAE1C,CAAE,MAAO,OAAOA,EAAa,MAAMC,EAAI,8BAA+B,EACtE,CAAE,MAAO,IAAIA,EAAI,aAAc,EAC/B,CAAE,MAAO,OAAOD,EAAa,YAAa,EAG1C,CAAE,MAAO,aAAaE,EAAS,UAAUA,EAAS,SAASA,EAAS,eACrDF,EAAa,aAAc,EAG1C,CAAE,MAAO,gCAAiC,EAG1C,CAAE,MAAO,YAAYE,EAAS,WAAY,EAG1C,CAAE,MAAO,wBAAyB,EAGlC,CAAE,MAAO,+BAAgC,CAC3C,EACA,UAAW,CACb,EAqBA,SAASE,GAAWC,EAAIC,EAAcC,EAAO,CAC3C,OAAIA,IAAU,GAAW,GAElBF,EAAG,QAAQC,EAAcE,GACvBJ,GAAWC,EAAIC,EAAcC,EAAQ,CAAC,CAC9C,CACH,CAGA,SAASE,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAgB,iDAChBC,EAAmBD,EACrBR,GAAW,OAASQ,EAAgB,kBAAoBA,EAAgB,WAAY,OAAQ,CAAC,EAsE3FE,EAAW,CACf,QAtEoB,CACpB,eACA,WACA,UACA,MACA,SACA,KACA,SACA,MACA,QACA,WACA,UACA,YACA,SACA,SACA,QACA,OACA,OACA,OACA,QACA,YACA,QACA,aACA,WACA,OACA,SACA,UACA,UACA,SACA,MACA,SACA,WACA,SACA,YACA,SACA,UACA,SACA,WACA,UACA,KACA,SACA,QACA,UACA,OACA,MACF,EA0BE,QAnBe,CACf,QACA,OACA,MACF,EAgBE,KAdY,CACZ,OACA,UACA,OACA,QACA,MACA,OACA,QACA,QACF,EAME,SA1BgB,CAChB,QACA,MACF,CAwBA,EAEMC,EAAa,CACjB,UAAW,OACX,MAAO,IAAMH,EACb,SAAU,CACR,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAE,MAAO,CACrB,CACF,CACF,EACMI,EAAS,CACb,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,UAAW,EACX,SAAU,CAAEJ,EAAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UA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WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,C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", - "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#maybeScrollToBottom", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] + "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '
';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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CZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KA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AAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UA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WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EAAS,IAE1D,GAAI,CACF,OAAOH,EAAaE,aAAaK,EAAY,CAC3CC,WAAWxC,EAAI,CACb,OAAOA,GAETyC,gBAAgBC,EAAS,CACvB,OAAOA,CACT,CACD,CAAA,OACS,CAIVC,eAAQC,KACN,uBAAyBL,EAAa,wBAAwB,EAEzD,IACT,CACF,EAEMM,GAAkB,UAAA,CACtB,MAAO,CACLC,wBAAyB,CAAA,EACzBC,sBAAuB,CAAA,EACvBC,uBAAwB,CAAA,EACxBC,yBAA0B,CAAA,EAC1BC,uBAAwB,CAAA,EACxBC,wBAAyB,CAAA,EACzBC,sBAAuB,CAAA,EACvBC,oBAAqB,CAAA,EACrBC,uBAAwB,CAAA,EAE5B,EAEA,SAASC,IAAgD,CAAA,IAAhCzB,EAAqBxD,UAAAC,OAAAD,GAAAA,UAAAkF,CAAAA,IAAAA,OAAAlF,UAAAuD,CAAAA,EAAAA,GAAS,EAC/C4B,EAAwBC,GAAqBH,GAAgBG,CAAI,EAMvE,GAJAD,EAAUE,QAAUC,QAEpBH,EAAUI,QAAU,CAAA,EAGlB,CAAC/B,GACD,CAACA,EAAOL,UACRK,EAAOL,SAASqC,WAAa5C,GAAUO,UACvC,CAACK,EAAOiC,QAIRN,OAAAA,EAAUO,YAAc,GAEjBP,EAGT,GAAI,CAAEhC,SAAAA,CAAU,EAAGK,EAEbmC,EAAmBxC,EACnByC,EACJD,EAAiBC,cACb,CACJC,iBAAAA,EACAC,oBAAAA,EACAC,KAAAA,EACAN,QAAAA,EACAO,WAAAA,EACAC,aAAAA,EAAezC,EAAOyC,cAAiBzC,EAAe0C,gBACtDC,gBAAAA,EACAC,UAAAA,EACA1C,aAAAA,CACD,EAAGF,EAEE6C,EAAmBZ,EAAQ5H,UAE3ByI,EAAYjF,GAAagF,EAAkB,WAAW,EACtDE,EAASlF,GAAagF,EAAkB,QAAQ,EAChDG,EAAiBnF,GAAagF,EAAkB,aAAa,EAC7DI,EAAgBpF,GAAagF,EAAkB,YAAY,EAC3DK,EAAgBrF,GAAagF,EAAkB,YAAY,EAQjE,GAAI,OAAOP,GAAwB,WAAY,CAC7C,IAAMa,EAAWxD,EAASyD,cAAc,UAAU,EAC9CD,EAASE,SAAWF,EAASE,QAAQC,gBACvC3D,EAAWwD,EAASE,QAAQC,cAEhC,CAEA,IAAIC,EACAC,EAAY,GAEV,CACJC,eAAAA,EACAC,mBAAAA,GACAC,uBAAAA,EACAC,qBAAAA,CAAoB,EAClBjE,EACE,CAAEkE,WAAAA,EAAY,EAAG1B,EAEnB2B,EAAQ/C,GAAe,EAK3BY,EAAUO,YACR,OAAOjJ,IAAY,YACnB,OAAOiK,GAAkB,YACzBO,GACAA,EAAeM,qBAAuBrC,OAExC,GAAM,CACJhD,cAAAA,GACAC,SAAAA,GACAC,YAAAA,GACAC,UAAAA,GACAC,UAAAA,EACAE,kBAAAA,EACAC,gBAAAA,EACAE,eAAAA,CACD,EAAG6E,GAEA,CAAEjF,eAAAA,CAAgB,EAAGiF,GAQrBC,EAAe,KACbC,EAAuBrH,EAAS,CAAA,EAAI,CACxC,GAAGsH,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,EAAS,CACb,EAGGC,EAAe,KACbC,EAAuBxH,EAAS,CAAA,EAAI,CACxC,GAAGyH,GACH,GAAGA,GACH,GAAGA,GACH,GAAGA,EAAS,CACb,EAQGC,EAA0BjL,OAAOE,KACnCC,GAAO,KAAM,CACX+K,aAAc,CACZC,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,MAETkH,mBAAoB,CAClBH,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,MAETmH,+BAAgC,CAC9BJ,SAAU,GACVC,aAAc,GACdC,WAAY,GACZjH,MAAO,EACR,CACF,CAAA,CAAC,EAIAoH,GAAc,KAGdC,GAAc,KAGdC,GAAkB,GAGlBC,GAAkB,GAGlBC,GAA0B,GAI1BC,GAA2B,GAK3BC,GAAqB,GAKrBC,GAAe,GAGfC,GAAiB,GAGjBC,GAAa,GAIbC,EAAa,GAMbC,GAAa,GAIbC,EAAsB,GAItBC,GAAsB,GAKtBC,GAAe,GAefC,EAAuB,GACrBC,GAA8B,gBAGhCC,GAAe,GAIfC,GAAW,GAGXC,GAA0C,CAAA,EAG1CC,EAAkB,KAChBC,EAA0BtJ,EAAS,CAAA,EAAI,CAC3C,iBACA,QACA,WACA,OACA,gBACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,QACA,UACA,WACA,WACA,YACA,SACA,QACA,MACA,WACA,QACA,QACA,QACA,KAAK,CACN,EAGGuJ,EAAgB,KACdC,EAAwBxJ,EAAS,CAAA,EAAI,CACzC,QACA,QACA,MACA,SACA,QACA,OAAO,CACR,EAGGyJ,GAAsB,KACpBC,GAA8B1J,EAAS,CAAA,EAAI,CAC/C,MACA,QACA,MACA,KACA,QACA,OACA,UACA,cACA,OACA,UACA,QACA,QACA,QACA,OAAO,CACR,EAEK2J,GAAmB,qCACnBC,GAAgB,6BAChBC,GAAiB,+BAEnBC,GAAYD,GACZE,GAAiB,GAGjBC,GAAqB,KACnBC,GAA6BjK,EACjC,CAAA,EACA,CAAC2J,GAAkBC,GAAeC,EAAc,EAChDxL,EAAc,EAGZ6L,GAAiClK,EAAS,CAAA,EAAI,CAChD,KACA,KACA,KACA,KACA,OAAO,CACR,EAEGmK,GAA0BnK,EAAS,CAAA,EAAI,CAAC,gBAAgB,CAAC,EAMvDoK,GAA+BpK,EAAS,CAAA,EAAI,CAChD,QACA,QACA,OACA,IACA,QAAQ,CACT,EAGGqK,GAAmD,KACjDC,GAA+B,CAAC,wBAAyB,WAAW,EACpEC,GAA4B,YAC9BpK,GAA2D,KAG3DqK,GAAwB,KAKtBC,GAAc3H,EAASyD,cAAc,MAAM,EAE3CmE,GAAoB,SACxBC,EAAkB,CAElB,OAAOA,aAAqBzL,QAAUyL,aAAqBC,UASvDC,GAAe,UAA0B,CAAA,IAAhBC,EAAAnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAc,CAAA,EAC3C,GAAI6K,EAAAA,IAAUA,KAAWM,GA6LzB,KAxLI,CAACA,GAAO,OAAOA,GAAQ,YACzBA,EAAM,CAAA,GAIRA,EAAMrK,GAAMqK,CAAG,EAEfT,GAEEC,GAA6B1L,QAAQkM,EAAIT,iBAAiB,IAAM,GAC5DE,GACAO,EAAIT,kBAGVlK,GACEkK,KAAsB,wBAClBhM,GACAH,GAGNkJ,EAAerI,GAAqB+L,EAAK,cAAc,EACnD9K,EAAS,CAAA,EAAI8K,EAAI1D,aAAcjH,EAAiB,EAChDkH,EACJE,EAAexI,GAAqB+L,EAAK,cAAc,EACnD9K,EAAS,CAAA,EAAI8K,EAAIvD,aAAcpH,EAAiB,EAChDqH,EACJwC,GAAqBjL,GAAqB+L,EAAK,oBAAoB,EAC/D9K,EAAS,CAAA,EAAI8K,EAAId,mBAAoB3L,EAAc,EACnD4L,GACJR,GAAsB1K,GAAqB+L,EAAK,mBAAmB,EAC/D9K,EACES,GAAMiJ,EAA2B,EACjCoB,EAAIC,kBACJ5K,EAAiB,EAEnBuJ,GACJH,EAAgBxK,GAAqB+L,EAAK,mBAAmB,EACzD9K,EACES,GAAM+I,CAAqB,EAC3BsB,EAAIE,kBACJ7K,EAAiB,EAEnBqJ,EACJH,EAAkBtK,GAAqB+L,EAAK,iBAAiB,EACzD9K,EAAS,CAAA,EAAI8K,EAAIzB,gBAAiBlJ,EAAiB,EACnDmJ,EACJrB,GAAclJ,GAAqB+L,EAAK,aAAa,EACjD9K,EAAS,CAAA,EAAI8K,EAAI7C,YAAa9H,EAAiB,EAC/CM,GAAM,CAAA,CAAE,EACZyH,GAAcnJ,GAAqB+L,EAAK,aAAa,EACjD9K,EAAS,CAAA,EAAI8K,EAAI5C,YAAa/H,EAAiB,EAC/CM,GAAM,CAAA,CAAE,EACZ2I,GAAerK,GAAqB+L,EAAK,cAAc,EACnDA,EAAI1B,aACJ,GACJjB,GAAkB2C,EAAI3C,kBAAoB,GAC1CC,GAAkB0C,EAAI1C,kBAAoB,GAC1CC,GAA0ByC,EAAIzC,yBAA2B,GACzDC,GAA2BwC,EAAIxC,2BAA6B,GAC5DC,GAAqBuC,EAAIvC,oBAAsB,GAC/CC,GAAesC,EAAItC,eAAiB,GACpCC,GAAiBqC,EAAIrC,gBAAkB,GACvCG,GAAakC,EAAIlC,YAAc,GAC/BC,EAAsBiC,EAAIjC,qBAAuB,GACjDC,GAAsBgC,EAAIhC,qBAAuB,GACjDH,EAAamC,EAAInC,YAAc,GAC/BI,GAAe+B,EAAI/B,eAAiB,GACpCC,EAAuB8B,EAAI9B,sBAAwB,GACnDE,GAAe4B,EAAI5B,eAAiB,GACpCC,GAAW2B,EAAI3B,UAAY,GAC3BjH,EAAiB4I,EAAIG,oBAAsB9D,GAC3C2C,GAAYgB,EAAIhB,WAAaD,GAC7BK,GACEY,EAAIZ,gCAAkCA,GACxCC,GACEW,EAAIX,yBAA2BA,GAEjCzC,EAA0BoD,EAAIpD,yBAA2B,CAAA,EAEvDoD,EAAIpD,yBACJgD,GAAkBI,EAAIpD,wBAAwBC,YAAY,IAE1DD,EAAwBC,aACtBmD,EAAIpD,wBAAwBC,cAI9BmD,EAAIpD,yBACJgD,GAAkBI,EAAIpD,wBAAwBK,kBAAkB,IAEhEL,EAAwBK,mBACtB+C,EAAIpD,wBAAwBK,oBAI9B+C,EAAIpD,yBACJ,OAAOoD,EAAIpD,wBAAwBM,gCACjC,YAEFN,EAAwBM,+BACtB8C,EAAIpD,wBAAwBM,gCAG5BO,KACFH,GAAkB,IAGhBS,IACFD,GAAa,IAIXQ,KACFhC,EAAepH,EAAS,CAAA,EAAIsH,EAAS,EACrCC,EAAe,CAAA,EACX6B,GAAa/H,OAAS,KACxBrB,EAASoH,EAAcE,EAAS,EAChCtH,EAASuH,EAAcE,EAAU,GAG/B2B,GAAa9H,MAAQ,KACvBtB,EAASoH,EAAcE,EAAQ,EAC/BtH,EAASuH,EAAcE,EAAS,EAChCzH,EAASuH,EAAcE,EAAS,GAG9B2B,GAAa7H,aAAe,KAC9BvB,EAASoH,EAAcE,EAAe,EACtCtH,EAASuH,EAAcE,EAAS,EAChCzH,EAASuH,EAAcE,EAAS,GAG9B2B,GAAa3H,SAAW,KAC1BzB,EAASoH,EAAcE,EAAW,EAClCtH,EAASuH,EAAcE,EAAY,EACnCzH,EAASuH,EAAcE,EAAS,IAKhCqD,EAAII,WACF9D,IAAiBC,IACnBD,EAAe3G,GAAM2G,CAAY,GAGnCpH,EAASoH,EAAc0D,EAAII,SAAU/K,EAAiB,GAGpD2K,EAAIK,WACF5D,IAAiBC,IACnBD,EAAe9G,GAAM8G,CAAY,GAGnCvH,EAASuH,EAAcuD,EAAIK,SAAUhL,EAAiB,GAGpD2K,EAAIC,mBACN/K,EAASyJ,GAAqBqB,EAAIC,kBAAmB5K,EAAiB,EAGpE2K,EAAIzB,kBACFA,IAAoBC,IACtBD,EAAkB5I,GAAM4I,CAAe,GAGzCrJ,EAASqJ,EAAiByB,EAAIzB,gBAAiBlJ,EAAiB,GAI9D+I,KACF9B,EAAa,OAAO,EAAI,IAItBqB,IACFzI,EAASoH,EAAc,CAAC,OAAQ,OAAQ,MAAM,CAAC,EAI7CA,EAAagE,QACfpL,EAASoH,EAAc,CAAC,OAAO,CAAC,EAChC,OAAOa,GAAYoD,OAGjBP,EAAIQ,qBAAsB,CAC5B,GAAI,OAAOR,EAAIQ,qBAAqBzH,YAAe,WACjD,MAAMzE,GACJ,6EAA6E,EAIjF,GAAI,OAAO0L,EAAIQ,qBAAqBxH,iBAAoB,WACtD,MAAM1E,GACJ,kFAAkF,EAKtFsH,EAAqBoE,EAAIQ,qBAGzB3E,EAAYD,EAAmB7C,WAAW,EAAE,CAC9C,MAEM6C,IAAuB7B,SACzB6B,EAAqBtD,GACnBC,EACAkC,CAAa,GAKbmB,IAAuB,MAAQ,OAAOC,GAAc,WACtDA,EAAYD,EAAmB7C,WAAW,EAAE,GAM5CnH,IACFA,GAAOoO,CAAG,EAGZN,GAASM,IAMLS,GAAevL,EAAS,CAAA,EAAI,CAChC,GAAGsH,GACH,GAAGA,GACH,GAAGA,EAAkB,CACtB,EACKkE,GAAkBxL,EAAS,CAAA,EAAI,CACnC,GAAGsH,GACH,GAAGA,EAAqB,CACzB,EAQKmE,GAAuB,SAAUpL,EAAgB,CACrD,IAAIqL,EAASrF,EAAchG,CAAO,GAI9B,CAACqL,GAAU,CAACA,EAAOC,WACrBD,EAAS,CACPE,aAAc9B,GACd6B,QAAS,aAIb,IAAMA,EAAUzN,GAAkBmC,EAAQsL,OAAO,EAC3CE,GAAgB3N,GAAkBwN,EAAOC,OAAO,EAEtD,OAAK3B,GAAmB3J,EAAQuL,YAAY,EAIxCvL,EAAQuL,eAAiBhC,GAIvB8B,EAAOE,eAAiB/B,GACnB8B,IAAY,MAMjBD,EAAOE,eAAiBjC,GAExBgC,IAAY,QACXE,KAAkB,kBACjB3B,GAA+B2B,EAAa,GAM3CC,EAAQP,GAAaI,CAAO,EAGjCtL,EAAQuL,eAAiBjC,GAIvB+B,EAAOE,eAAiB/B,GACnB8B,IAAY,OAKjBD,EAAOE,eAAiBhC,GACnB+B,IAAY,QAAUxB,GAAwB0B,EAAa,EAK7DC,EAAQN,GAAgBG,CAAO,EAGpCtL,EAAQuL,eAAiB/B,GAKzB6B,EAAOE,eAAiBhC,IACxB,CAACO,GAAwB0B,EAAa,GAMtCH,EAAOE,eAAiBjC,IACxB,CAACO,GAA+B2B,EAAa,EAEtC,GAMP,CAACL,GAAgBG,CAAO,IACvBvB,GAA6BuB,CAAO,GAAK,CAACJ,GAAaI,CAAO,GAMjEtB,GAAAA,KAAsB,yBACtBL,GAAmB3J,EAAQuL,YAAY,GA3EhC,IA4FLG,GAAe,SAAUC,EAAU,CACvClO,GAAUgH,EAAUI,QAAS,CAAE7E,QAAS2L,CAAM,CAAA,EAE9C,GAAI,CAEF3F,EAAc2F,CAAI,EAAEC,YAAYD,CAAI,OAC1B,CACV9F,EAAO8F,CAAI,CACb,GASIE,GAAmB,SAAUC,EAAc9L,EAAgB,CAC/D,GAAI,CACFvC,GAAUgH,EAAUI,QAAS,CAC3B1C,UAAWnC,EAAQ+L,iBAAiBD,CAAI,EACxCE,KAAMhM,CACP,CAAA,OACS,CACVvC,GAAUgH,EAAUI,QAAS,CAC3B1C,UAAW,KACX6J,KAAMhM,CACP,CAAA,CACH,CAKA,GAHAA,EAAQiM,gBAAgBH,CAAI,EAGxBA,IAAS,KACX,GAAIvD,IAAcC,EAChB,GAAI,CACFkD,GAAa1L,CAAO,CACtB,MAAY,CAAA,KAEZ,IAAI,CACFA,EAAQkM,aAAaJ,EAAM,EAAE,CAC/B,MAAY,CAAA,GAWZK,GAAgB,SAAUC,EAAa,CAE3C,IAAIC,EAAM,KACNC,EAAoB,KAExB,GAAIhE,EACF8D,EAAQ,oBAAsBA,MACzB,CAEL,IAAMG,GAAUrO,GAAYkO,EAAO,aAAa,EAChDE,EAAoBC,IAAWA,GAAQ,CAAC,CAC1C,CAGEvC,KAAsB,yBACtBP,KAAcD,KAGd4C,EACE,iEACAA,EACA,kBAGJ,IAAMI,GAAenG,EACjBA,EAAmB7C,WAAW4I,CAAK,EACnCA,EAKJ,GAAI3C,KAAcD,GAChB,GAAI,CACF6C,EAAM,IAAI3G,EAAS,EAAG+G,gBAAgBD,GAAcxC,EAAiB,CACvE,MAAY,CAAA,CAId,GAAI,CAACqC,GAAO,CAACA,EAAIK,gBAAiB,CAChCL,EAAM9F,EAAeoG,eAAelD,GAAW,WAAY,IAAI,EAC/D,GAAI,CACF4C,EAAIK,gBAAgBE,UAAYlD,GAC5BpD,EACAkG,QACM,CACV,CAEJ,CAEA,IAAMK,GAAOR,EAAIQ,MAAQR,EAAIK,gBAU7B,OARIN,GAASE,GACXO,GAAKC,aACHrK,EAASsK,eAAeT,CAAiB,EACzCO,GAAKG,WAAW,CAAC,GAAK,IAAI,EAK1BvD,KAAcD,GACT9C,EAAqBuG,KAC1BZ,EACAjE,GAAiB,OAAS,MAAM,EAChC,CAAC,EAGEA,GAAiBiE,EAAIK,gBAAkBG,IAS1CK,GAAsB,SAAUxI,EAAU,CAC9C,OAAO8B,GAAmByG,KACxBvI,EAAK0B,eAAiB1B,EACtBA,EAEAY,EAAW6H,aACT7H,EAAW8H,aACX9H,EAAW+H,UACX/H,EAAWgI,4BACXhI,EAAWiI,mBACb,IAAI,GAUFC,GAAe,SAAUxN,EAAgB,CAC7C,OACEA,aAAmByF,IAClB,OAAOzF,EAAQyN,UAAa,UAC3B,OAAOzN,EAAQ0N,aAAgB,UAC/B,OAAO1N,EAAQ4L,aAAgB,YAC/B,EAAE5L,EAAQ2N,sBAAsBpI,IAChC,OAAOvF,EAAQiM,iBAAoB,YACnC,OAAOjM,EAAQkM,cAAiB,YAChC,OAAOlM,EAAQuL,cAAiB,UAChC,OAAOvL,EAAQ8M,cAAiB,YAChC,OAAO9M,EAAQ4N,eAAkB,aAUjCC,GAAU,SAAUrN,EAAc,CACtC,OAAO,OAAO6E,GAAS,YAAc7E,aAAiB6E,GAGxD,SAASyI,GAOPlH,EAAYmH,EAA+BC,EAAsB,CACjEhR,GAAa4J,EAAQqH,GAAQ,CAC3BA,EAAKhB,KAAKxI,EAAWsJ,EAAaC,EAAM7D,EAAM,CAChD,CAAC,CACH,CAWA,IAAM+D,GAAoB,SAAUH,EAAgB,CAClD,IAAI5H,EAAU,KAMd,GAHA2H,GAAclH,EAAM1C,uBAAwB6J,EAAa,IAAI,EAGzDP,GAAaO,CAAW,EAC1BrC,OAAAA,GAAaqC,CAAW,EACjB,GAIT,IAAMzC,EAAUxL,GAAkBiO,EAAYN,QAAQ,EA2BtD,GAxBAK,GAAclH,EAAMvC,oBAAqB0J,EAAa,CACpDzC,QAAAA,EACA6C,YAAapH,CACd,CAAA,EAICoB,IACA4F,EAAYH,cAAa,GACzB,CAACC,GAAQE,EAAYK,iBAAiB,GACtCxP,GAAW,WAAYmP,EAAYnB,SAAS,GAC5ChO,GAAW,WAAYmP,EAAYL,WAAW,GAO5CK,EAAYjJ,WAAa5C,GAAUK,wBAOrC4F,IACA4F,EAAYjJ,WAAa5C,GAAUM,SACnC5D,GAAW,UAAWmP,EAAYC,IAAI,EAEtCtC,OAAAA,GAAaqC,CAAW,EACjB,GAIT,GAAI,CAAChH,EAAauE,CAAO,GAAK1D,GAAY0D,CAAO,EAAG,CAElD,GAAI,CAAC1D,GAAY0D,CAAO,GAAK+C,GAAsB/C,CAAO,IAEtDjE,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAcgE,CAAO,GAMxDjE,EAAwBC,wBAAwBiD,UAChDlD,EAAwBC,aAAagE,CAAO,GAE5C,MAAO,GAKX,GAAIzC,IAAgB,CAACG,EAAgBsC,CAAO,EAAG,CAC7C,IAAMgD,GAAatI,EAAc+H,CAAW,GAAKA,EAAYO,WACvDtB,GAAajH,EAAcgI,CAAW,GAAKA,EAAYf,WAE7D,GAAIA,IAAcsB,GAAY,CAC5B,IAAMC,GAAavB,GAAWzN,OAE9B,QAASiP,GAAID,GAAa,EAAGC,IAAK,EAAG,EAAEA,GAAG,CACxC,IAAMC,GAAa7I,EAAUoH,GAAWwB,EAAC,EAAG,EAAI,EAChDC,GAAWC,gBAAkBX,EAAYW,gBAAkB,GAAK,EAChEJ,GAAWxB,aAAa2B,GAAY3I,EAAeiI,CAAW,CAAC,CACjE,CACF,CACF,CAEArC,OAAAA,GAAaqC,CAAW,EACjB,EACT,CASA,OANIA,aAAuBhJ,GAAW,CAACqG,GAAqB2C,CAAW,IAOpEzC,IAAY,YACXA,IAAY,WACZA,IAAY,aACd1M,GAAW,8BAA+BmP,EAAYnB,SAAS,GAE/DlB,GAAaqC,CAAW,EACjB,KAIL7F,IAAsB6F,EAAYjJ,WAAa5C,GAAUZ,OAE3D6E,EAAU4H,EAAYL,YAEtB1Q,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5DxI,EAAU/H,GAAc+H,EAASwI,GAAM,GAAG,CAC5C,CAAC,EAEGZ,EAAYL,cAAgBvH,IAC9B1I,GAAUgH,EAAUI,QAAS,CAAE7E,QAAS+N,EAAYnI,UAAS,CAAE,CAAE,EACjEmI,EAAYL,YAAcvH,IAK9B2H,GAAclH,EAAM7C,sBAAuBgK,EAAa,IAAI,EAErD,KAYHa,GAAoB,SACxBC,EACAC,EACAtO,EAAa,CAGb,GACEkI,KACCoG,IAAW,MAAQA,IAAW,UAC9BtO,KAASiC,GAAYjC,KAAS4J,IAE/B,MAAO,GAOT,GACErC,EAAAA,IACA,CAACF,GAAYiH,CAAM,GACnBlQ,GAAW+C,GAAWmN,CAAM,IAGvB,GAAIhH,EAAAA,IAAmBlJ,GAAWgD,EAAWkN,CAAM,IAGnD,GAAI,CAAC5H,EAAa4H,CAAM,GAAKjH,GAAYiH,CAAM,GACpD,GAIGT,EAAAA,GAAsBQ,CAAK,IACxBxH,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAcuH,CAAK,GACrDxH,EAAwBC,wBAAwBiD,UAC/ClD,EAAwBC,aAAauH,CAAK,KAC5CxH,EAAwBK,8BAA8B7I,QACtDD,GAAWyI,EAAwBK,mBAAoBoH,CAAM,GAC5DzH,EAAwBK,8BAA8B6C,UACrDlD,EAAwBK,mBAAmBoH,CAAM,IAGtDA,IAAW,MACVzH,EAAwBM,iCACtBN,EAAwBC,wBAAwBzI,QAChDD,GAAWyI,EAAwBC,aAAc9G,CAAK,GACrD6G,EAAwBC,wBAAwBiD,UAC/ClD,EAAwBC,aAAa9G,CAAK,IAKhD,MAAO,WAGA4I,CAAAA,GAAoB0F,CAAM,GAI9B,GACLlQ,CAAAA,GAAWiD,EAAgBzD,GAAcoC,EAAOuB,EAAiB,EAAE,CAAC,GAK/D,GACJ+M,GAAAA,IAAW,OAASA,IAAW,cAAgBA,IAAW,SAC3DD,IAAU,UACVvQ,GAAckC,EAAO,OAAO,IAAM,GAClC0I,EAAc2F,CAAK,IAMd,GACL7G,EAAAA,IACA,CAACpJ,GAAWkD,EAAmB1D,GAAcoC,EAAOuB,EAAiB,EAAE,CAAC,IAInE,GAAIvB,EACT,MAAO,QAMT,MAAO,IAWH6N,GAAwB,SAAU/C,EAAe,CACrD,OAAOA,IAAY,kBAAoBpN,GAAYoN,EAASrJ,CAAc,GAatE8M,GAAsB,SAAUhB,EAAoB,CAExDD,GAAclH,EAAM3C,yBAA0B8J,EAAa,IAAI,EAE/D,GAAM,CAAEJ,WAAAA,CAAY,EAAGI,EAGvB,GAAI,CAACJ,GAAcH,GAAaO,CAAW,EACzC,OAGF,IAAMiB,EAAY,CAChBC,SAAU,GACVC,UAAW,GACXC,SAAU,GACVC,kBAAmBlI,EACnBmI,cAAe7K,QAEbzE,GAAI4N,EAAWpO,OAGnB,KAAOQ,MAAK,CACV,IAAMuP,GAAO3B,EAAW5N,EAAC,EACnB,CAAE+L,KAAAA,GAAMP,aAAAA,GAAc/K,MAAO0O,EAAS,EAAKI,GAC3CR,GAAShP,GAAkBgM,EAAI,EAE/ByD,GAAYL,GACd1O,GAAQsL,KAAS,QAAUyD,GAAY/Q,GAAW+Q,EAAS,EAsB/D,GAnBAP,EAAUC,SAAWH,GACrBE,EAAUE,UAAY1O,GACtBwO,EAAUG,SAAW,GACrBH,EAAUK,cAAgB7K,OAC1BsJ,GAAclH,EAAMxC,sBAAuB2J,EAAaiB,CAAS,EACjExO,GAAQwO,EAAUE,UAKdvG,IAAyBmG,KAAW,MAAQA,KAAW,UAEzDjD,GAAiBC,GAAMiC,CAAW,EAGlCvN,GAAQoI,GAA8BpI,IAIpC2H,IAAgBvJ,GAAW,gCAAiC4B,EAAK,EAAG,CACtEqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GAAIiB,EAAUK,cACZ,SAIF,GAAI,CAACL,EAAUG,SAAU,CACvBtD,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GAAI,CAAC9F,IAA4BrJ,GAAW,OAAQ4B,EAAK,EAAG,CAC1DqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGI7F,IACFlL,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5DnO,GAAQpC,GAAcoC,GAAOmO,GAAM,GAAG,CACxC,CAAC,EAIH,IAAME,GAAQ/O,GAAkBiO,EAAYN,QAAQ,EACpD,GAAI,CAACmB,GAAkBC,GAAOC,GAAQtO,EAAK,EAAG,CAC5CqL,GAAiBC,GAAMiC,CAAW,EAClC,QACF,CAGA,GACE1H,GACA,OAAOrD,GAAiB,UACxB,OAAOA,EAAawM,kBAAqB,YAErCjE,CAAAA,GAGF,OAAQvI,EAAawM,iBAAiBX,GAAOC,EAAM,EAAC,CAClD,IAAK,cAAe,CAClBtO,GAAQ6F,EAAmB7C,WAAWhD,EAAK,EAC3C,KACF,CAEA,IAAK,mBAAoB,CACvBA,GAAQ6F,EAAmB5C,gBAAgBjD,EAAK,EAChD,KACF,CAKF,CAKJ,GAAIA,KAAU+O,GACZ,GAAI,CACEhE,GACFwC,EAAY0B,eAAelE,GAAcO,GAAMtL,EAAK,EAGpDuN,EAAY7B,aAAaJ,GAAMtL,EAAK,EAGlCgN,GAAaO,CAAW,EAC1BrC,GAAaqC,CAAW,EAExBxQ,GAASkH,EAAUI,OAAO,OAElB,CACVgH,GAAiBC,GAAMiC,CAAW,CACpC,CAEJ,CAGAD,GAAclH,EAAM9C,wBAAyBiK,EAAa,IAAI,GAQ1D2B,GAAqB,SAArBA,EAA+BC,EAA0B,CAC7D,IAAIC,EAAa,KACXC,EAAiB3C,GAAoByC,CAAQ,EAKnD,IAFA7B,GAAclH,EAAMzC,wBAAyBwL,EAAU,IAAI,EAEnDC,EAAaC,EAAeC,SAAQ,GAE1ChC,GAAclH,EAAMtC,uBAAwBsL,EAAY,IAAI,EAG5D1B,GAAkB0B,CAAU,EAG5Bb,GAAoBa,CAAU,EAG1BA,EAAWzJ,mBAAmBhB,GAChCuK,EAAmBE,EAAWzJ,OAAO,EAKzC2H,GAAclH,EAAM5C,uBAAwB2L,EAAU,IAAI,GAI5DlL,OAAAA,EAAUsL,SAAW,SAAU3D,EAAe,CAAA,IAAR3B,EAAGnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAG,CAAA,EACtCuN,EAAO,KACPmD,EAAe,KACfjC,GAAc,KACdkC,GAAa,KAUjB,GANAvG,GAAiB,CAAC0C,EACd1C,KACF0C,EAAQ,SAIN,OAAOA,GAAU,UAAY,CAACyB,GAAQzB,CAAK,EAC7C,GAAI,OAAOA,EAAMnO,UAAa,YAE5B,GADAmO,EAAQA,EAAMnO,SAAQ,EAClB,OAAOmO,GAAU,SACnB,MAAMrN,GAAgB,iCAAiC,MAGzD,OAAMA,GAAgB,4BAA4B,EAKtD,GAAI,CAAC0F,EAAUO,YACb,OAAOoH,EAgBT,GAZK/D,IACHmC,GAAaC,CAAG,EAIlBhG,EAAUI,QAAU,CAAA,EAGhB,OAAOuH,GAAU,WACnBtD,GAAW,IAGTA,IAEF,GAAKsD,EAAeqB,SAAU,CAC5B,IAAMnC,GAAUxL,GAAmBsM,EAAeqB,QAAQ,EAC1D,GAAI,CAAC1G,EAAauE,EAAO,GAAK1D,GAAY0D,EAAO,EAC/C,MAAMvM,GACJ,yDAAyD,CAG/D,UACSqN,aAAiB/G,EAG1BwH,EAAOV,GAAc,SAAS,EAC9B6D,EAAenD,EAAKzG,cAAcO,WAAWyF,EAAO,EAAI,EAEtD4D,EAAalL,WAAa5C,GAAUlC,SACpCgQ,EAAavC,WAAa,QAIjBuC,EAAavC,WAAa,OADnCZ,EAAOmD,EAKPnD,EAAKqD,YAAYF,CAAY,MAE1B,CAEL,GACE,CAACzH,IACD,CAACL,IACD,CAACE,IAEDgE,EAAM7N,QAAQ,GAAG,IAAM,GAEvB,OAAO8H,GAAsBoC,GACzBpC,EAAmB7C,WAAW4I,CAAK,EACnCA,EAON,GAHAS,EAAOV,GAAcC,CAAK,EAGtB,CAACS,EACH,OAAOtE,GAAa,KAAOE,GAAsBnC,EAAY,EAEjE,CAGIuG,GAAQvE,GACVoD,GAAamB,EAAKsD,UAAU,EAI9B,IAAMC,GAAelD,GAAoBpE,GAAWsD,EAAQS,CAAI,EAGhE,KAAQkB,GAAcqC,GAAaN,SAAQ,GAEzC5B,GAAkBH,EAAW,EAG7BgB,GAAoBhB,EAAW,EAG3BA,GAAY5H,mBAAmBhB,GACjCuK,GAAmB3B,GAAY5H,OAAO,EAK1C,GAAI2C,GACF,OAAOsD,EAIT,GAAI7D,GAAY,CACd,GAAIC,EAGF,IAFAyH,GAAaxJ,EAAuBwG,KAAKJ,EAAKzG,aAAa,EAEpDyG,EAAKsD,YAEVF,GAAWC,YAAYrD,EAAKsD,UAAU,OAGxCF,GAAapD,EAGf,OAAI3F,EAAamJ,YAAcnJ,EAAaoJ,kBAQ1CL,GAAatJ,GAAWsG,KAAKhI,EAAkBgL,GAAY,EAAI,GAG1DA,EACT,CAEA,IAAIM,GAAiBnI,GAAiByE,EAAK2D,UAAY3D,EAAKD,UAG5D,OACExE,IACArB,EAAa,UAAU,GACvB8F,EAAKzG,eACLyG,EAAKzG,cAAcqK,SACnB5D,EAAKzG,cAAcqK,QAAQ3E,MAC3BlN,GAAWkI,GAA0B+F,EAAKzG,cAAcqK,QAAQ3E,IAAI,IAEpEyE,GACE,aAAe1D,EAAKzG,cAAcqK,QAAQ3E,KAAO;EAAQyE,IAIzDrI,IACFlL,GAAa,CAACwE,GAAeC,GAAUC,EAAW,EAAIiN,IAAQ,CAC5D4B,GAAiBnS,GAAcmS,GAAgB5B,GAAM,GAAG,CAC1D,CAAC,EAGItI,GAAsBoC,GACzBpC,EAAmB7C,WAAW+M,EAAc,EAC5CA,IAGN9L,EAAUiM,UAAY,UAAkB,CAAA,IAARjG,EAAGnL,UAAAC,OAAA,GAAAD,UAAA,CAAA,IAAAkF,OAAAlF,UAAA,CAAA,EAAG,CAAA,EACpCkL,GAAaC,CAAG,EAChBpC,GAAa,IAGf5D,EAAUkM,YAAc,UAAA,CACtBxG,GAAS,KACT9B,GAAa,IAGf5D,EAAUmM,iBAAmB,SAAUC,EAAKvB,EAAM9O,EAAK,CAEhD2J,IACHK,GAAa,CAAA,CAAE,EAGjB,IAAMqE,EAAQ/O,GAAkB+Q,CAAG,EAC7B/B,GAAShP,GAAkBwP,CAAI,EACrC,OAAOV,GAAkBC,EAAOC,GAAQtO,CAAK,GAG/CiE,EAAUqM,QAAU,SAAUC,EAAYC,EAAY,CAChD,OAAOA,GAAiB,YAI5BvT,GAAUmJ,EAAMmK,CAAU,EAAGC,CAAY,GAG3CvM,EAAUwM,WAAa,SAAUF,EAAYC,EAAY,CACvD,GAAIA,IAAiBxM,OAAW,CAC9B,IAAMrE,EAAQ9C,GAAiBuJ,EAAMmK,CAAU,EAAGC,CAAY,EAE9D,OAAO7Q,IAAU,GACbqE,OACA7G,GAAYiJ,EAAMmK,CAAU,EAAG5Q,EAAO,CAAC,EAAE,CAAC,CAChD,CAEA,OAAO5C,GAASqJ,EAAMmK,CAAU,CAAC,GAGnCtM,EAAUyM,YAAc,SAAUH,EAAU,CAC1CnK,EAAMmK,CAAU,EAAI,CAAA,GAGtBtM,EAAU0M,eAAiB,UAAA,CACzBvK,EAAQ/C,GAAe,GAGlBY,CACT,CAEA,IAAA2M,GAAe7M,GAAe,EC5nD9B,SAAS8M,GACPC,EACAC,EACa,CACb,IAAMC,EAAK,SAAS,cAAcF,CAAQ,EAC1C,OAAW,CAACG,EAAKC,CAAK,IAAK,OAAO,QAAQH,CAAK,EAAG,CAEhD,IAAMI,EAAWF,EAAI,QAAQ,KAAM,GAAG,EAClCC,IAAU,MAAMF,EAAG,aAAaG,EAAUD,CAAK,CACrD,CACA,OAAOF,CACT,CAEA,SAASI,GAAcC,EAA2B,CAGhD,OAFe,IAAI,UAAU,EACP,gBAAgBA,EAAM,eAAe,EAC7C,eAChB,CAGA,IAAMC,GAAN,cAA2BC,EAAW,CACpC,kBAAmB,CACjB,OAAO,IACT,CACF,EAWA,SAASC,GAAuB,CAC9B,SAAAC,EAAW,GACX,QAAAC,EACA,OAAAC,EAAS,SACX,EAA6B,CAC3B,SAAS,cACP,IAAI,YAAY,uBAAwB,CACtC,OAAQ,CAAE,SAAUF,EAAU,QAASC,EAAS,OAAQC,CAAO,CACjE,CAAC,CACH,CACF,CAEA,eAAeC,GAAmBC,EAAgC,CAChE,GAAK,OAAO,OACPA,EAEL,GAAI,CACF,MAAM,OAAO,MAAM,wBAAwBA,CAAI,CACjD,OAASC,EAAa,CACpBN,GAAuB,CACrB,OAAQ,QACR,QAAS,uCAAuCM,CAAW,EAC7D,CAAC,CACH,CACF,CAMA,SAASC,GAAaC,EAAsB,CAC1C,OAAOC,GAAU,SAASD,EAAM,CAE9B,SAAU,CAAC,QAAQ,EAEnB,wBAAyB,CACvB,aAAeE,GACN,OAAO,eAAe,IAAIA,CAAO,IAAM,OAEhD,mBAAqBC,GAAS,GAC9B,+BAAgC,EAClC,CACF,CAAC,CACH,CAKA,IAAMF,GAAYG,GAAU,EAC5BH,GAAU,QAAQ,sBAAuB,CAACI,EAAMC,IAAS,CACvD,GAAID,EAAK,UAAYA,EAAK,WAAa,SAAU,CAE/C,IAAME,EAAUF,EACVG,EACJD,EAAQ,aAAa,MAAM,IAAM,oBACjCA,EAAQ,aAAa,UAAU,IAAM,KAEvCD,EAAK,YAAY,OAAYE,CAC/B,CACF,CAAC,EAEDP,GAAU,QAAQ,0BAA2B,SAAUI,EAAM,CAG3D,GAAI,EADYA,EAAK,UAAY,KAAOA,EAAK,aAAa,MAAM,GAClD,OAEd,IAAMI,EAAOJ,EAAK,aAAa,MAAM,EAEjCI,GAAQ,kBAAkB,KAAKA,CAAI,IACrCJ,EAAK,aAAa,qBAAsB,EAAE,EAC1CA,EAAK,aAAa,SAAU,QAAQ,EACpCA,EAAK,aAAa,MAAO,qBAAqB,EAElD,CAAC,EAQD,IAAMK,GAAqB,IAAI,QAE/BT,GAAU,QAAQ,2BAA4B,SAAUI,EAAMC,EAAM,CAClE,GAAI,CAACD,EAAK,QAAS,OAMnB,GAJwB,CAAC,qBAAsB,mBAAmB,EAAE,SAClEA,EAAK,QAAQ,YAAY,CAC3B,EAEqB,CACnB,IAAMtB,EAAgC,CAAC,EACnCsB,EAAK,aAAa,OAAO,IAAGtB,EAAM,MAAQsB,EAAK,aAAa,OAAO,GAEnE,OAAO,KAAKtB,CAAK,EAAE,OAAS,GAC9B2B,GAAmB,IAAIL,EAAMtB,CAAK,CAEtC,CACF,CAAC,EAEDkB,GAAU,QAAQ,0BAA2B,SAAUI,EAAMC,EAAM,CACjE,GAAII,GAAmB,IAAIL,CAAI,EAAG,CAChC,IAAMtB,EAAQ2B,GAAmB,IAAIL,CAAI,EACzC,OAAO,QAAQtB,CAAK,EAAE,QAAQ,CAAC,CAAC4B,EAAMzB,CAAK,IAAM,CAC/CmB,EAAK,aAAaM,EAAMzB,CAAK,CAC/B,CAAC,EACDwB,GAAmB,OAAOL,CAAI,CAChC,CACF,CAAC,EAOM,SAASO,GAASC,EAAe,CAEtC,OAAO,SACLC,EACAC,EACAC,EACA,CACA,IAAMC,EAAiBD,EAAW,MAC9BE,EAEJ,OAAAF,EAAW,MAAQ,YAAaG,EAAa,CACvCD,GACF,OAAO,aAAaA,CAAO,EAG7BA,EAAU,OAAO,WAAW,IAAM,CAChCD,EAAe,MAAM,KAAME,CAAI,EAC/BD,EAAU,MACZ,EAAGL,CAAK,CACV,EAEOG,CACT,CACF,CCnKA,OAAO,UAAY,OAAO,WAAa,CAAC,EACxC,OAAO,UAAU,mBACf,OAAO,UAAU,oBAAsB,IAAI,IAQ7C,IAAMI,GAAN,cAA4BC,EAAW,CAAvC,kCAyCE,cAAW,GAOX,iBAAsB,GAOtB,UAAe,GASf,mBAAwB,UAExB,kBAAkC,CAChC,OAAO,IACT,CAEAC,GAAgBC,EAAU,CACxBA,EAAE,eAAe,EACjB,KAAK,SAAW,CAAC,KAAK,SACtB,KAAK,cAAc,CACrB,CAEA,cAAe,CACb,KAAK,cAAc,IAAI,YAAY,mCAAmC,CAAC,CACzE,CAMU,aAAc,CACtB,IAAIC,EAAe,KAAK,WAAa,GAAG,KAAK,QAAQ,KACrD,OAAAA,EAAe,iCAAiCA,CAAY,UAC5DA,EAAe,KAAK,cAAc,QAAQ,UAAWA,CAAY,EAC1DC,KAAOC,GAAWF,CAAY,CAAC,EACxC,CAOU,WAAWG,EAA6B,CAChD,IAAMC,EAAW,eAAe,KAAK,SAAS,GACxCC,EAAY,gBAAgB,KAAK,SAAS,GAC1CC,EAAO,KAAK,MAAQC,GAAM,iBAE1BC,EAAgBP;AAAA,8BACI,KAAK,WAAW,KAAKC,GAAWI,CAAI,CAAC;AAAA,+BACpC,KAAK,WAAW,KAAK,KAAK,YAAY,CAAC;AAAA;AAAA,QAE9D,KAAK,OAASL,8BAAgC,KAAK,MAAM,SAAW,EAAE;AAAA,MAG1E,OAAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAMKG,CAAQ;AAAA,oBACJ,KAAKN,EAAe;AAAA,2BACb,KAAK,QAAQ;AAAA,2BACbO,CAAS;AAAA;AAAA,YAExBG,CAAa;AAAA,4CACmBN,GAAWK,GAAM,IAAI,CAAC;AAAA;AAAA;AAAA,iFAGe,KACpE,SACC,GACA,YAAY;AAAA,gBACVF,CAAS;AAAA;AAAA,6BAEID,CAAQ;AAAA,oBACjB,CAAC,KAAK,QAAQ;AAAA;AAAA,YAEtBD,CAAW;AAAA;AAAA;AAAA,KAIrB,CACF,EAjIEM,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GAP/Cd,GAQJ,yBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,WAAY,CAAC,GAf9Cd,GAgBJ,wBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GAvB/Cd,GAwBJ,yBAQAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/BtBd,GAgCJ,sBASAa,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAxCtCd,GAyCJ,wBAOAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/CtBd,GAgDJ,2BAOAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GAtDtBd,GAuDJ,oBASAa,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/DtBd,GAgEJ,6BAiFK,IAAMe,GAAN,cAA+Bf,EAAc,CAmBlD,aAAc,CACZ,MAAM,EAHR,YAAS,GAsBT,KAAAgB,GAAsBC,GAAuB,CACvCA,EAAM,OAAO,aAAe,KAAK,YACnC,KAAK,OAAS,GAElB,EAtBE,KAAK,cAAgB,kBACrB,KAAK,KAAO,kDACd,CAEA,mBAAoB,CAClB,MAAM,kBAAkB,EACxB,KAAK,OAAS,OAAO,UAAU,mBAAmB,IAAI,KAAK,SAAS,EACpE,OAAO,iBAAiB,0BAA2B,KAAKD,EAAkB,CAC5E,CAEA,sBAAuB,CACrB,MAAM,qBAAqB,EAC3B,OAAO,oBACL,0BACA,KAAKA,EACP,CACF,CAEAA,GAMA,QAAS,CACP,GAAI,KAAK,OACP,OAAOX,KAGT,IAAME,EAAcF;AAAA;AAAA,mBAELa,GAAkB,KAAK,UAAW,MAAM,CAAC;AAAA;AAAA,qBAEvC,EAAK;AAAA;AAAA,MAItB,OAAO,KAAK,WACVb;AAAA,0CACoCE,CAAW;AAAA,aAEjD,CACF,CACF,EAzDEM,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GANfC,GAOX,yBAUAF,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAhB/BC,GAiBX,sBAyDK,IAAMI,GAAN,cAA8BnB,EAAc,CA+CjD,aAAc,CACZ,MAAM,EAvBR,iBAAc,GAwBZ,KAAK,cAAgB,SACvB,CAEA,mBAAoB,CAClB,MAAM,kBAAkB,EAEpB,KAAK,SAAW,UAClB,KAAK,YAAc,cACnB,KAAK,KAAOW,GAAM,sBAClB,KAAK,cAAgB,kBAGvB,OAAO,UAAU,mBAAmB,IAAI,KAAK,SAAS,EACtD,KAAK,cACH,IAAI,YAAY,0BAA2B,CACzC,OAAQ,CAAE,WAAY,KAAK,SAAU,EACrC,QAAS,GACT,WAAY,EACd,CAAC,CACH,CACF,CAKAS,IAAgB,CACd,IAAIC,EAAkC,GAChCC,EAAQ,KAAK,OAAS,iBAoB5B,GAlBI,KAAK,YAAc,OACrBD,EAAShB,KAAOC,GAAWgB,CAAK,CAAC,GACxB,KAAK,YAAc,OAC5BD,EAAShB,QAAUiB,CAAK,QAGpB,KAAK,YAAc,aAErBD,EAASH,GAAkBI,EAAO,MAAM,GAG1CD,EAAShB;AAAA,kBACGgB,GAAUC,CAAK;AAAA;AAAA,qBAEZ,EAAK;AAAA,kCAIlB,CAAC,KAAK,aAAe,KAAK,YAAc,OAC1C,OAAOD,EAGT,IAAME,EAAe,KAAK,YACtBlB,kCACA,GAEJ,OAAOA;AAAA,QACHkB,CAAY,GAAGF,CAAM;AAAA,WAE3B,CAMAG,IAAiB,CACf,GAAI,CAAC,KAAK,aAAe,CAAC,KAAK,YAC7B,MAAO,GAGT,IAAMC,EAAUpB;AAAA,iBACHa,GAAkB,KAAK,YAAa,EAAE,CAAC;AAAA;AAAA,mBAErC,EAAK;AAAA,+BAGdQ,EAAgB,KAAK,YAAY,MAAM;AAAA,CAAI,EAAE,OAAS,EAE5D,OAAOrB;AAAA,QACHqB,EACErB;AAAA;AAAA,cAEIoB,CAAO;AAAA,sBAEXpB,gCAAkCoB,CAAO,EAAE;AAAA,WAEnD,CAEA,QAAS,CACP,IAAMlB,EAAcF,MAAQ,KAAKmB,GAAe,CAAC,IAAI,KAAKJ,GAAc,CAAC,IAEzE,OAAO,KAAK,WAAWb,CAAW,CACpC,CACF,EArIEM,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,cAAe,CAAC,GAP1CK,GAQX,2BAQAN,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GAffK,GAgBX,sBASAN,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,UAAW,cAAe,CAAC,GAxB3CK,GAyBX,2BAOAN,EAAA,CADCC,EAAS,CAAE,KAAM,MAAO,CAAC,GA/BfK,GAgCX,qBAaAN,EAAA,CADCC,EAAS,CAAE,KAAM,OAAQ,UAAW,YAAa,CAAC,GA5CxCK,GA6CX,yBAkGF,IAAMR,GAAQ,CACZ,sBAAuB;AAAA;AAAA,QAGvB,iBAAkB;AAAA;AAAA;AAAA,QAIlB,KAAM;AAAA;AAAA;AAAA,OAIR,EAWMO,GAAoB,CAACS,EAAiBC,EAAmB,aAAe,CAC5E,IAAMC,EAAY,IAAI,OAAO,CAAC,EAC9B,MAAO,GAAGA,CAAS,GAAGD,CAAQ;AAAA,EAAKD,CAAO;AAAA,EAAKE,CAAS,EAC1D,EAEA,OAAO,OAAO,wBACZ,0BACCC,GAAe,CACd,OAAO,UAAU,mBAAmB,IAAIA,CAAU,EAClD,IAAMb,EAAQ,IAAI,YAAY,0BAA2B,CACvD,OAAQ,CAAE,WAAAa,CAAW,EACrB,QAAS,GACT,WAAY,EACd,CAAC,EACD,OAAO,cAAcb,CAAK,CAC5B,CACF,ECxaO,IAAMc,GAAN,MAAMC,CAAmB,CAc9B,aAAc,CAbd,SAAqB,KAGrB,KAAQ,OAAmC,KAC3C,KAAQ,eAAoD,KAU1D,KAAK,aAAa,CACpB,CAbA,YAAe,SAAsC,KAIrD,OAAO,aAAkC,CACvC,OAAKA,EAAmB,WACtBA,EAAmB,SAAW,IAAIA,GAE7BA,EAAmB,QAC5B,CAWA,MAAM,iBAAiBC,EAA+B,CAEpD,GAAI,OAAO,qCACT,OAAO,QAAQ,QAAQ,EAAI,EAG7B,KAAK,IAAMA,EAGX,IAAMC,EAAiB,KAAK,QAAQ,cAAc,WAAW,EAC7D,OAAIA,IACFA,EAAe,YAAcD,GAGxB,IAAI,QAAkBE,GAAY,CACvC,KAAK,eAAiBA,EAEtB,GAAI,CACF,KAAK,QAAQ,UAAU,CACzB,MAAc,CAEZA,EAAQ,EAAI,CACd,CACF,CAAC,CACH,CAEQ,cAAqB,CAC3B,GAAI,KAAK,OAAQ,OAEjB,KAAK,OAAS,SAAS,cAAc,QAAQ,EAC7C,KAAK,OAAO,GAAK,iCACjB,KAAK,OAAO,UAAY,iCAGxB,KAAK,OAAO,UAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAuBxB,SAAS,KAAK,YAAY,KAAK,MAAM,EAGrC,IAAMC,EAAUC,GACd,KAAK,QAAQ,cAAcA,CAAQ,EAE/BC,EAAO,CACX,MAAOF,EAAO,sBAAsB,EACpC,OAAQA,EAAO,uBAAuB,EACtC,QAASA,EAAO,wBAAwB,EACxC,OAAQA,EAAO,uBAAuB,CACxC,EAEAE,EAAK,MAAM,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAC9DA,EAAK,OAAO,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAC/DA,EAAK,QAAQ,iBAAiB,QAAS,IAAM,KAAK,cAAc,CAAC,EACjEA,EAAK,OAAO,iBAAiB,QAAS,IAAM,KAAK,aAAa,CAAC,EAG/D,KAAK,OAAO,iBAAiB,QAAUC,GAAM,CACvCA,EAAE,SAAW,KAAK,SACpB,KAAK,aAAa,EAClBA,EAAE,eAAe,EAErB,CAAC,CACH,CAEQ,cAAqB,CAC3B,KAAK,QAAQ,MAAM,EACf,KAAK,iBACP,KAAK,eAAe,EAAK,EACzB,KAAK,eAAiB,KAE1B,CAEQ,eAAsB,CAC5B,KAAK,QAAQ,MAAM,EACf,KAAK,iBACP,KAAK,eAAe,EAAI,EACxB,KAAK,eAAiB,KAE1B,CAEQ,cAAqB,CAC3B,OAAO,qCAAuC,GAC9C,KAAK,cAAc,CACrB,CACF,EAOO,SAASC,GAA6BP,EAA+B,CAE1E,OAAI,OAAO,OAAO,kBAAsB,IACvBF,GAAmB,YAAY,EAChC,iBAAiBE,CAAG,EAI7B,QAAQ,QAAQ,EAAI,CAC7B,CC3FA,IAAMQ,GAAmB,qBACnBC,GAAwB,qBACxBC,GAAoB,sBACpBC,GAAiB,mBACjBC,GAAqB,uBACrBC,GAAwB,qBACxBC,GAAuB,oBAEvBC,GAAQ,CACZ,MACE,y8BAEF,UACE,wfACJ,EAEMC,GAAN,cAA0BC,EAAa,CAAvC,kCACc,aAAU,MACmB,iBAA2B,WACxB,eAAY,GAC5C,UAAO,GACmB,UAA6B,YAEnE,QAAS,CACP,IAAMC,EAAO,KAAKC,GAAa,EAE/B,OAAOC;AAAA,QACHF,CAAI;AAAA;AAAA,kBAEM,KAAK,OAAO;AAAA,uBACP,KAAK,WAAW;AAAA,qBAClB,KAAK,SAAS;AAAA,uBACZ,KAAK,OAAS,WAAW;AAAA,2BACrB,KAAKG,GAAiB,KAAK,IAAI,CAAC;AAAA,uBACpC,KAAKC,GAA2B,KAAK,IAAI,CAAC;AAAA;AAAA,KAG/D,CAEAH,IAAe,CACb,IAAMD,EAAO,KAAKK,GAAS,EAC3B,OAAOL,EACHE,+BAAiCI,GAAWN,CAAI,CAAC,SACjD,IACN,CAEAK,IAAW,CACT,OAAI,KAAK,OAAS,YACT,KAAK,KAIE,KAAK,QAAQ,KAAK,EAAE,SAAW,EAC9BR,GAAM,UAAY,KAAK,MAAQA,GAAM,KACxD,CAEAM,IAAyB,CAClB,KAAK,WAAW,KAAKC,GAA2B,CACvD,CAEAA,IAAmC,CACjC,KAAK,iBAAiB,+BAA+B,EAAE,QAASG,GAAO,CAErE,GADI,EAAEA,aAAc,cAChBA,EAAG,aAAa,UAAU,EAAG,OAEjCA,EAAG,aAAa,WAAY,GAAG,EAC/BA,EAAG,aAAa,OAAQ,QAAQ,EAEhC,IAAMC,EAAaD,EAAG,QAAQ,YAAcA,EAAG,YAC/CA,EAAG,aAAa,aAAc,wBAAwBC,CAAU,EAAE,CACpE,CAAC,CACH,CACF,EAvDcC,EAAA,CAAXC,EAAS,GADNZ,GACQ,uBAC6BW,EAAA,CAAxCC,EAAS,CAAE,UAAW,cAAe,CAAC,GAFnCZ,GAEqC,2BACGW,EAAA,CAA3CC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAHtCZ,GAGwC,yBAChCW,EAAA,CAAXC,EAAS,GAJNZ,GAIQ,oBAC0BW,EAAA,CAArCC,EAAS,CAAE,UAAW,WAAY,CAAC,GALhCZ,GAKkC,oBAqDxC,IAAMa,GAAN,cAA8Bb,EAAY,CACxC,aAAc,CACZ,MAAM,EACN,KAAK,KAAO,OACZ,KAAK,YAAc,eACrB,CACF,EAEMc,GAAN,cAA2Bb,EAAa,CACtC,QAAS,CACP,OAAOG,IACT,CACF,EAOMW,GAAN,cAAwBd,EAAa,CAArC,kCACc,iBAAc,qBAwB1B,KAAQ,UAAY,GACpB,KAAQ,aAAe,GAtBvB,IAAI,UAAW,CACb,OAAO,KAAK,SACd,CAEA,IAAI,SAASe,EAAgB,CAC3B,IAAMC,EAAW,KAAK,UAClBD,IAAUC,IAId,KAAK,UAAYD,EACbA,EACF,KAAK,aAAa,WAAY,EAAE,EAEhC,KAAK,gBAAgB,UAAU,EAGjC,KAAK,cAAc,WAAYC,CAAQ,EACvC,KAAKC,GAAS,EAChB,CAMA,mBAA0B,CACxB,MAAM,kBAAkB,EAExB,KAAK,qBAAuB,IAAI,qBAAsBC,GAAY,CAChEA,EAAQ,QAASC,GAAU,CACrBA,EAAM,gBAAgB,KAAKC,GAAc,CAC/C,CAAC,CACH,CAAC,EAED,KAAK,qBAAqB,QAAQ,IAAI,EACtC,KAAK,iBAAiB,mBAAoB,KAAKC,EAAmB,EAClE,KAAK,iBAAiB,iBAAkB,KAAKC,EAAiB,CAChE,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAK,sBAAsB,WAAW,EACtC,KAAK,qBAAuB,OAC5B,KAAK,oBAAoB,mBAAoB,KAAKD,EAAmB,EACrE,KAAK,oBAAoB,iBAAkB,KAAKC,EAAiB,CACnE,CAEA,yBACEC,EACAC,EACAT,EACA,CACA,MAAM,yBAAyBQ,EAAMC,EAAMT,CAAK,EAC5CQ,IAAS,aACX,KAAK,SAAWR,IAAU,KAE9B,CAEA,IAAY,UAAgC,CAC1C,OAAO,KAAK,cAAc,UAAU,CACtC,CAEA,IAAY,OAAgB,CAC1B,OAAO,KAAK,SAAS,KACvB,CAEA,IAAY,cAAwB,CAClC,OAAO,KAAK,MAAM,KAAK,EAAE,SAAW,CACtC,CAEA,IAAY,QAA4B,CACtC,OAAO,KAAK,cAAc,sBAAsB,CAClD,CAEA,QAAS,CAIP,OAAOZ;AAAA;AAAA,cAEG,KAAK,EAAE;AAAA;AAAA;AAAA,uBAGE,KAAK,WAAW;AAAA,mBACpB,KAAKsB,EAAU;AAAA,iBACjB,KAAKR,EAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAQb,KAAKS,EAAU;AAAA;AAAA,UAEtBnB,GAnBJ,wTAmBmB,CAAC;AAAA;AAAA,KAGxB,CAGAkB,GAAWE,EAAwB,CACjBA,EAAE,OAAS,SAAW,CAACA,EAAE,UAC1B,CAAC,KAAK,cAAgB,CAAC,KAAK,eACzCA,EAAE,eAAe,EACjB,KAAKD,GAAW,EAEpB,CAEAT,IAAiB,CACf,KAAKG,GAAc,EACnB,KAAK,OAAO,SAAW,KAAK,SAAW,GAAO,KAAK,MAAM,KAAK,EAAE,SAAW,CAC7E,CAEAC,IAA4B,CAC1B,KAAK,aAAe,EACtB,CAEAC,IAA0B,CACxB,KAAK,aAAe,EACtB,CAGU,cAAqB,CAC7B,KAAKL,GAAS,CAChB,CAEAS,GAAWE,EAAQ,GAAY,CAE7B,GADI,KAAK,cACL,KAAK,SAAU,OAEnB,OAAO,MAAM,cAAe,KAAK,GAAI,KAAK,MAAO,CAAE,SAAU,OAAQ,CAAC,EAGtE,IAAMC,EAAY,IAAI,YAAY,wBAAyB,CACzD,OAAQ,CAAE,QAAS,KAAK,MAAO,KAAM,MAAO,EAC5C,QAAS,GACT,SAAU,EACZ,CAAC,EACD,KAAK,cAAcA,CAAS,EAE5B,KAAK,cAAc,EAAE,EACrB,KAAK,SAAW,GAEZD,GAAO,KAAK,SAAS,MAAM,CACjC,CAEAR,IAAsB,CACpB,IAAMZ,EAAK,KAAK,SACZA,EAAG,cAAgB,IAGvBA,EAAG,MAAM,OAAS,OAClBA,EAAG,MAAM,OAAS,GAAGA,EAAG,YAAY,KACtC,CAEA,cACEO,EACA,CAAE,OAAAe,EAAS,GAAO,MAAAF,EAAQ,EAAM,EAA8B,CAAC,EACzD,CAEN,IAAMZ,EAAW,KAAK,SAAS,MAE/B,KAAK,SAAS,MAAQD,EAGtB,IAAMgB,EAAa,IAAI,MAAM,QAAS,CAAE,QAAS,GAAM,WAAY,EAAK,CAAC,EACzE,KAAK,SAAS,cAAcA,CAAU,EAElCD,IACF,KAAKJ,GAAW,EAAK,EACjBV,GAAU,KAAK,cAAcA,CAAQ,GAGvCY,GACF,KAAK,SAAS,MAAM,CAExB,CACF,EArLclB,EAAA,CAAXC,EAAS,GADNG,GACQ,2BAGRJ,EAAA,CADHC,EAAS,CAAE,KAAM,OAAQ,CAAC,GAHvBG,GAIA,wBAoLN,IAAMkB,GAAN,cAA4BhC,EAAa,CAAzC,kCAC6C,mBAAgB,GAE3D,sCAAmC,GAGnC,IAAY,OAAmB,CAC7B,OAAO,KAAK,cAAcN,EAAc,CAC1C,CAEA,IAAY,UAAyB,CACnC,OAAO,KAAK,cAAcD,EAAiB,CAC7C,CAEA,IAAY,aAAkC,CAC5C,IAAMwC,EAAO,KAAK,SAAS,iBAC3B,OAAOA,GAA+B,IACxC,CAEA,QAAS,CACP,OAAO9B,IACT,CAEA,mBAA0B,CACxB,MAAM,kBAAkB,EAIxB,IAAI+B,EAAW,KAAK,cAA2B,KAAK,EAC/CA,IACHA,EAAWC,GAAc,MAAO,CAC9B,MAAO,yBACT,CAAC,EACD,KAAK,MAAM,sBAAsB,WAAYD,CAAQ,GAGvD,KAAK,sBAAwB,IAAI,qBAC9BhB,GAAY,CACX,IAAMkB,EAAgB,KAAK,MAAM,cAAc,UAAU,EACzD,GAAI,CAACA,EAAe,OACpB,IAAMC,EAAYnB,EAAQ,CAAC,GAAG,oBAAsB,EACpDkB,EAAc,UAAU,OAAO,SAAUC,CAAS,CACpD,EACA,CACE,UAAW,CAAC,EAAG,CAAC,EAChB,WAAY,KACd,CACF,EAEA,KAAK,sBAAsB,QAAQH,CAAQ,EAC3C,KAAK,0BAA4B,KAAKI,GAAqB,KAAK,IAAI,EAEhE,KAAK,kCACP,KAAKC,GAAmB,CAE5B,CAEA,cAAqB,CAEd,KAAK,UACV,KAAKA,GAAmB,CAC1B,CAEAA,IAA2B,CACzB,KAAK,iCAAmC,GACxC,KAAK,iBAAiB,wBAAyB,KAAKC,EAAY,EAChE,KAAK,iBAAiB,4BAA6B,KAAKC,EAAS,EACjE,KAAK,iBACH,kCACA,KAAKC,EACP,EACA,KAAK,iBAAiB,4BAA6B,KAAKC,EAAQ,EAChE,KAAK,iBACH,+BACA,KAAKC,EACP,EACA,KAAK,iBACH,oCACA,KAAKC,EACP,EACA,KAAK,iBAAiB,QAAS,KAAKC,EAAuB,EAC3D,KAAK,iBAAiB,UAAW,KAAKC,EAAyB,EAE/D,OAAO,iBAAiB,QAAS,KAAK,yBAAyB,CACjE,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAK,iCAAmC,GAExC,KAAK,uBAAuB,WAAW,EACvC,KAAK,sBAAwB,OAE7B,KAAK,oBAAoB,wBAAyB,KAAKP,EAAY,EACnE,KAAK,oBAAoB,4BAA6B,KAAKC,EAAS,EACpE,KAAK,oBACH,kCACA,KAAKC,EACP,EACA,KAAK,oBAAoB,4BAA6B,KAAKC,EAAQ,EACnE,KAAK,oBACH,+BACA,KAAKC,EACP,EACA,KAAK,oBACH,oCACA,KAAKC,EACP,EACA,KAAK,oBAAoB,QAAS,KAAKC,EAAuB,EAC9D,KAAK,oBAAoB,UAAW,KAAKC,EAAyB,EAClE,OAAO,oBAAoB,QAAS,KAAK,yBAAyB,CACpE,CAGAP,GAAaQ,EAAmC,CAC9C,KAAKC,GAAeD,EAAM,MAAM,EAChC,KAAKE,GAAmB,CAC1B,CAGAT,GAAUO,EAAmC,CAC3C,KAAKC,GAAeD,EAAM,MAAM,CAClC,CAEAG,IAAqB,CACnB,KAAKC,GAAsB,EACtB,KAAK,MAAM,WACd,KAAK,MAAM,SAAW,GAE1B,CAEAH,GAAeI,EAAkBC,EAAW,GAAY,CACtD,KAAKH,GAAa,EAElB,IAAMI,EAAWhE,GAEb,KAAK,gBACP8D,EAAQ,KAAOA,EAAQ,MAAQ,KAAK,eAItC,GAAM,CAAE,KAAAG,EAAM,GAAGC,CAAY,EAAIJ,EAC3BK,EAA6B,CAAE,UAAWF,EAAM,GAAGC,CAAY,EAE/DE,EAAMxB,GAAcoB,EAAUG,CAAY,EAChD,KAAK,SAAS,YAAYC,CAAG,EAEzBL,GACF,KAAKM,GAAiB,CAE1B,CAGAV,IAA2B,CAKzB,IAAMG,EAAUlB,GAAc5C,GAJN,CACtB,QAAS,GACT,KAAM,WACR,CAC+D,EAC/D,KAAK,SAAS,YAAY8D,CAAO,CACnC,CAEAD,IAA8B,CACZ,KAAK,aAAa,SACpB,KAAK,aAAa,OAAO,CACzC,CAEAV,GAAeM,EAAmC,CAChD,KAAKa,GAAoBb,EAAM,MAAM,CACvC,CAEAa,GAAoBR,EAAwB,CACtCA,EAAQ,aAAe,iBACzB,KAAKJ,GAAeI,EAAS,EAAK,EAGpC,IAAMS,EAAc,KAAK,YACzB,GAAI,CAACA,EAAa,MAAM,IAAI,MAAM,sCAAsC,EAExE,GAAIT,EAAQ,aAAe,gBAAiB,CAC1CS,EAAY,aAAa,YAAa,EAAE,EACxC,MACF,CAEA,IAAMC,EACJV,EAAQ,YAAc,SAClBS,EAAY,aAAa,SAAS,EAAIT,EAAQ,QAC9CA,EAAQ,QAEdS,EAAY,aAAa,UAAWC,CAAO,EAEvCV,EAAQ,aAAe,gBACzB,KAAK,aAAa,gBAAgB,WAAW,EAC7C,KAAKO,GAAiB,EAE1B,CAEAjB,IAAiB,CACf,KAAK,SAAS,UAAY,EAC5B,CAEAC,GAAmBI,EAA2C,CAC5D,GAAM,CAAE,MAAAjC,EAAO,YAAAiD,EAAa,OAAAlC,EAAQ,MAAAF,CAAM,EAAIoB,EAAM,OAChDjC,IAAU,QACZ,KAAK,MAAM,cAAcA,EAAO,CAAE,OAAAe,EAAQ,MAAAF,CAAM,CAAC,EAE/CoC,IAAgB,SAClB,KAAK,MAAM,YAAcA,EAE7B,CAEAlB,GAAwBnB,EAAqB,CAC3C,KAAKsC,GAAwBtC,CAAC,CAChC,CAEAoB,GAA0BpB,EAAwB,EACzBA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MAGtD,KAAKsC,GAAwBtC,CAAC,CAChC,CAEAsC,GAAwBtC,EAAqC,CAC3D,GAAM,CAAE,WAAAlB,EAAY,OAAAqB,CAAO,EAAI,KAAKoC,GAAevC,EAAE,MAAM,EAC3D,GAAI,CAAClB,EAAY,OAEjBkB,EAAE,eAAe,EAGjB,IAAMwC,EACJxC,EAAE,SAAWA,EAAE,QAAU,GAAOA,EAAE,OAAS,GAAQG,EAErD,KAAK,MAAM,cAAcrB,EAAY,CACnC,OAAQ0D,EACR,MAAO,CAACA,CACV,CAAC,CACH,CAEAD,GAAe/D,EAGb,CACA,GAAI,EAAEA,aAAa,aAAc,MAAO,CAAC,EAEzC,IAAMK,EAAKL,EAAE,QAAQ,gCAAgC,EACrD,OAAMK,aAAc,YAGlBA,EAAG,UAAU,SAAS,YAAY,GAAKA,EAAG,QAAQ,aAAe,OAK5D,CACL,WAHiBA,EAAG,QAAQ,YAAcA,EAAG,aAGnB,OAC1B,OACEA,EAAG,UAAU,SAAS,QAAQ,GAC9BA,EAAG,QAAQ,mBAAqB,IAChCA,EAAG,QAAQ,mBAAqB,MACpC,EAV0B,CAAC,EAJc,CAAC,CAe5C,CAEAqC,IAAgC,CAC9B,KAAKO,GAAsB,EAC3B,KAAKQ,GAAiB,CACxB,CAEAA,IAAyB,CACvB,KAAK,MAAM,SAAW,EACxB,CAEAtB,GAAqBX,EAAqB,CAExC,IAAMyC,EAASzC,EAAE,OACjB,GAAI,CAAC,KAAK,SAASyC,CAAM,EAAG,OAE5B,IAAMC,EAASD,EAAO,QACpB,uBACF,EAEI,CAACC,GAAU,CAACA,EAAO,OAGvB1C,EAAE,eAAe,EAGjB2C,GAA6BD,EAAO,IAAI,EACrC,KAAME,GAAc,CACfA,GACF,OAAO,KAAKF,EAAO,KAAM,SAAU,qBAAqB,CAE5D,CAAC,EACA,MAAM,IAAM,CAEX,OAAO,KAAKA,EAAO,KAAM,SAAU,qBAAqB,CAC1D,CAAC,EACL,CACF,EAxS6C3D,EAAA,CAA1CC,EAAS,CAAE,UAAW,gBAAiB,CAAC,GADrCqB,GACuC,6BA4S7C,IAAMwC,GAAqB,CACzB,CAAE,IAAKjF,GAAkB,UAAWQ,EAAY,EAChD,CAAE,IAAKP,GAAuB,UAAWoB,EAAgB,EACzD,CAAE,IAAKnB,GAAmB,UAAWoB,EAAa,EAClD,CAAE,IAAKnB,GAAgB,UAAWoB,EAAU,EAC5C,CAAE,IAAKnB,GAAoB,UAAWqC,EAAc,EACpD,CAAE,IAAKpC,GAAuB,UAAW6E,EAAiB,EAC1D,CAAE,IAAK5E,GAAsB,UAAW6E,EAAgB,CAC1D,EAEAF,GAAmB,QAAQ,CAAC,CAAE,IAAAG,EAAK,UAAAC,CAAU,IAAM,CAC5C,eAAe,IAAID,CAAG,GACzB,eAAe,OAAOA,EAAKC,CAAS,CAExC,CAAC,EAED,OAAO,OAAO,wBACZ,mBACA,eAAgBvB,EAA2B,CACrCA,EAAQ,KAAK,WACf,MAAMwB,GAAmBxB,EAAQ,IAAI,SAAS,EAGhD,IAAMyB,EAAM,IAAI,YAAYzB,EAAQ,QAAS,CAC3C,OAAQA,EAAQ,GAClB,CAAC,EAEK7C,EAAK,SAAS,eAAe6C,EAAQ,EAAE,EAE7C,GAAI,CAAC7C,EAAI,CACPuE,GAAuB,CACrB,OAAQ,QACR,QAAS;AAAA,YACL1B,EAAQ,EAAE;AAAA,qBACDA,EAAQ,EAAE;AAAA,SAEzB,CAAC,EACD,MACF,CAEA7C,EAAG,cAAcsE,CAAG,CACtB,CACF,ErBjoBA,SAASE,GACPC,EAC+B,CAC/B,MAAO,gBAAiBA,CAC1B,CAGA,IAAMC,GAAgB,sBAChBC,GAAUC,GACd,yEAAyEF,EAAa,mFACxF,EAGMG,GAAmB,IAAIC,GAG7BD,GAAiB,MAAQ,CAACE,EAAgBC,IACjC;AAAA,eACMD,CAAM;AAAA,eACNC,CAAI;AAAA,cAInB,IAAMC,GAA8BJ,GAAiB,KAErDA,GAAiB,KAAO,SACtBK,EACAC,EACAC,EACQ,CACR,OAAID,IAAe,UACVD,EAEFD,GAA4B,KAAK,KAAMC,EAAMC,EAAYC,CAAO,CACzE,EAGA,IAAMC,GAAuB,IAAIP,GAKjCO,GAAqB,KAAQC,GAC3BA,EACG,WAAW,IAAK,OAAO,EACvB,WAAW,IAAK,MAAM,EACtB,WAAW,IAAK,MAAM,EACtB,WAAW,IAAK,QAAQ,EACxB,WAAW,IAAK,QAAQ,EAE7B,SAASC,GAAcC,EAAiBC,EAA2B,CACjE,GAAIA,IAAiB,WAAY,CAC/B,IAAMH,EAAOI,GAAMF,EAAS,CAAE,SAAUX,EAAiB,CAAC,EAC1D,OAAOc,GAAWC,GAAaN,CAAc,CAAC,CAChD,SAAWG,IAAiB,gBAAiB,CAC3C,IAAMH,EAAOI,GAAMF,EAAS,CAAE,SAAUH,EAAqB,CAAC,EAC9D,OAAOM,GAAWC,GAAaN,CAAc,CAAC,CAChD,KAAO,IAAIG,IAAiB,OAC1B,OAAOE,GAAWC,GAAaJ,CAAO,CAAC,EAClC,GAAIC,IAAiB,OAC1B,OAAOD,EAEP,MAAM,IAAI,MAAM,yBAAyBC,CAAY,EAAE,EAE3D,CAEA,IAAMI,GAAN,MAAMA,WAAwBC,EAAa,CAA3C,kCACc,aAAU,GAEtB,kBAA4B,WAE5B,eAAY,GAEZ,iBAAc,GAqOd,KAAAC,GAAyC,KAEzC,KAAAC,GAAuB,GAEvB,KAAAC,GAAkB,GAElB,KAAAC,GAAY,IAAY,CACjB,KAAKF,KACR,KAAKC,GAAkB,CAAC,KAAKE,GAAc,EAE/C,EAqCA,KAAAC,GAAyB,IAAY,CACnC,KAAKC,GAAqB,CAC5B,EAlRA,QAAS,CACP,OAAOC,KAAOf,GAAc,KAAK,QAAS,KAAK,YAAY,CAAC,EAC9D,CAEA,mBAA0B,CACxB,MAAM,kBAAkB,EACxB,KAAK,iBACH,oCACA,KAAKa,EACP,CACF,CAEA,sBAA6B,CAC3B,MAAM,qBAAqB,EAC3B,KAAKG,GAAS,CAChB,CAEU,WAAWC,EAAyC,CACxDA,EAAkB,IAAI,SAAS,IACjC,KAAKR,GAAuB,GAE5BH,GAAgBY,GAAU,IAAI,GAEhC,MAAM,WAAWD,CAAiB,CACpC,CAEU,QAAQA,EAA+C,CAC/D,GAAIA,EAAkB,IAAI,SAAS,EAAG,CAEpC,GAAI,CACF,KAAKE,GAAsB,CAC7B,OAASC,EAAO,CACd,QAAQ,KAAK,4BAA6BA,CAAK,CACjD,CAiBA,GAdI,KAAK,WACP,KAAKC,GAAoB,EACzBf,GAAgB,eAAe,IAAI,GAEnCA,GAAgBgB,GAAQ,IAAI,EAI9B,KAAKC,GAAyB,EAG9B,KAAKd,GAAuB,GAC5B,KAAKK,GAAqB,EAEtB,KAAK,gBACP,GAAI,CACF,KAAK,gBAAgB,CACvB,OAASM,EAAO,CACd,QAAQ,KAAK,2CAA4CA,CAAK,CAChE,CAEJ,CAEA,GAAIH,EAAkB,IAAI,WAAW,GACnC,GAAI,KAAK,UACP,KAAKI,GAAoB,UAEzB,KAAKG,GAAoB,EACrB,KAAK,YACP,GAAI,CACF,KAAK,YAAY,CACnB,OAASJ,EAAO,CACd,QAAQ,KAAK,uCAAwCA,CAAK,CAC5D,EAIR,CAEAC,IAA4B,CAM1B,GALA,KAAKG,GAAoB,EAErB,KAAK,QAAQ,KAAK,IAAM,IAGxB,KAAK,kBAAkB,QAAQ,YAAY,IAAM,qBACnD,OAGF,IAAMC,EAAWC,GAAwB,KAAK,KAAKA,EAAK,aAAe,EAAE,EAGnEC,EAAc,IAAI,IAAI,CAAC,IAAK,MAAO,MAAO,KAAM,IAAI,CAAC,EAErDC,EAAmB,IAAI,IAAI,CAC/B,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACF,CAAC,GAMsCC,GAA8B,CACnE,IAAIC,EAAUD,EACVE,EAAQ,EAEZ,KAAOA,EAAQ,GAAG,CAChBA,IACA,IAAMC,EAAWF,EAAQ,WAErBG,EAAmC,KAGvC,QAASC,EAAIF,EAAS,OAAS,EAAGE,GAAK,EAAGA,IAAK,CAC7C,IAAMC,EAAQH,EAASE,CAAC,EACxB,GAAI,CAACC,EAAO,MACZ,GACEA,EAAM,WAAa,KAAK,cACvBA,EAAM,WAAa,KAAK,WAAaV,EAAQU,CAAa,EAC3D,CACAF,EAAsBE,EACtB,KACF,CACF,CAEA,GAAI,CAACF,GAAuB,EAAEA,aAA+B,SAG3D,OAAOH,EAGT,IAAMM,EAAUH,EAAoB,QAAQ,YAAY,EAExD,GAAIN,EAAY,IAAIS,CAAO,EAAG,CAC5BN,EAAUG,EACV,QACF,CAEA,OAAOL,EAAiB,IAAIQ,CAAO,EAAIH,EAAsBH,CAC/D,CAEA,OAAOA,CACT,GAE8B,IAAI,EAAE,YAAY1C,EAAO,CACzD,CAEAoC,IAA4B,CAC1B,KAAK,cAAc,OAAOrC,EAAa,EAAE,GAAG,OAAO,CACrD,CAEA,YAAa+B,GAAUmB,EAAgC,CACrD,GAAK,QAAQ,OAAO,UAEpB,GAAI,CACF,OAAO,MAAM,UAAUA,CAAE,CAC3B,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,0CAA0CD,CAAG,EACxD,CAAC,CACH,CACF,CAEA,YAAahB,GAAQe,EAAgC,CACnD,GAAK,QAAQ,OAAO,kBACf,QAAQ,OAAO,QAEpB,IAAI,CACF,OAAO,MAAM,iBAAiBA,CAAE,CAClC,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,sCAAsCD,CAAG,EACpD,CAAC,CACH,CAEA,GAAI,CACF,MAAM,OAAO,MAAM,QAAQD,CAAE,CAC/B,OAASC,EAAK,CACZC,GAAuB,CACrB,OAAQ,QACR,QAAS,wCAAwCD,CAAG,EACtD,CAAC,CACH,EACF,CAGA,aAAqB,eAAeD,EAAgC,CAClE,MAAM,KAAKf,GAAQe,CAAE,CACvB,CAEAlB,IAA8B,CACjB,KAAK,cAAc,UAAU,GAExC,KAAK,iBAA8B,UAAU,EAAE,QAASkB,GAAO,CAC7D,GAAIA,EAAG,QAAQ,cAAgB,MAAO,OAEtCG,GAAK,iBAAiBH,CAAE,EAGxB,IAAMI,EAAMC,GAAc,SAAU,CAClC,MAAO,mBACP,MAAO,mBACT,CAAC,EACDD,EAAI,UAAY,qBAChBJ,EAAG,QAAQI,CAAG,EAGI,IAAI,GAAAE,QAAYF,EAAK,CAAE,OAAQ,IAAMJ,CAAG,CAAC,EACjD,GAAG,UAAYO,GAAM,CAC7BH,EAAI,UAAU,IAAI,0BAA0B,EAC5C,WAAW,IAAMA,EAAI,UAAU,OAAO,0BAA0B,EAAG,GAAI,EACvEG,EAAE,eAAe,CACnB,CAAC,CACH,CAAC,CACH,CAKApC,GAEAC,GAEAC,GAEAC,GAMAC,IAAyB,CACvB,IAAMyB,EAAK,KAAK7B,GAChB,OAAK6B,EAEEA,EAAG,cAAgBA,EAAG,UAAYA,EAAG,cAAgB,GAF5C,EAGlB,CAEAd,IAAiC,CAC/B,IAAMc,EAAK,KAAKQ,GAAsB,EAElCR,IAAO,KAAK7B,KACd,KAAKA,IAAoB,oBAAoB,SAAU,KAAKG,EAAS,EACrE,KAAKH,GAAqB6B,EAC1B,KAAK7B,IAAoB,iBAAiB,SAAU,KAAKG,EAAS,EAEtE,CAEAkC,IAA4C,CAC1C,GAAI,CAAC,KAAK,YAAa,OAAO,KAG9B,IAAIR,EAAyB,KAC7B,KAAOA,GAAI,CACT,GAAIA,EAAG,aAAeA,EAAG,aAAc,OAAOA,EAE9C,GADAA,EAAKA,EAAG,cACJA,GAAI,SAAS,YAAY,IAAMS,GAAmB,YAAY,EAIhE,KAEJ,CACA,OAAO,IACT,CAEAjC,GAIAC,IAA6B,CAC3B,IAAMuB,EAAK,KAAK7B,GACZ,CAAC6B,GAAM,KAAK3B,IAEhB2B,EAAG,OAAO,CACR,IAAKA,EAAG,aAAeA,EAAG,aAC1B,SAAU,KAAK,UAAY,UAAY,QACzC,CAAC,CACH,CAEArB,IAAiB,CACf,KAAKR,IAAoB,oBAAoB,SAAU,KAAKG,EAAS,EACrE,KAAKH,GAAqB,KAC1B,KAAKE,GAAkB,GACvB,KAAK,oBACH,oCACA,KAAKG,EACP,CACF,CACF,EAjTckC,EAAA,CAAXC,EAAS,GADN1C,GACQ,uBAEZyC,EAAA,CADCC,EAAS,CAAE,UAAW,cAAe,CAAC,GAFnC1C,GAGJ,4BAEAyC,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GAJtC1C,GAKJ,yBAEAyC,EAAA,CADCC,EAAS,CAAE,KAAM,QAAS,QAAS,GAAM,UAAW,aAAc,CAAC,GANhE1C,GAOJ,2BAC8ByC,EAAA,CAA7BC,EAAS,CAAE,KAAM,QAAS,CAAC,GARxB1C,GAQ0B,+BACAyC,EAAA,CAA7BC,EAAS,CAAE,KAAM,QAAS,CAAC,GATxB1C,GAS0B,2BAkMTyC,EAAA,CADpBE,GAAS,GAAG,GA1MT3C,GA2MiB,oBA3MvB,IAAM4C,GAAN5C,GAsTK,eAAe,IAAI,uBAAuB,GAC7C,eAAe,OAAO,wBAAyB4C,EAAe,EAGhE,eAAeC,GACbjE,EACe,CACf,IAAMmD,EAAK,SAAS,eAAenD,EAAQ,EAAE,EAE7C,GAAI,CAACmD,EAAI,CACPE,GAAuB,CACrB,OAAQ,QACR,QAAS;AAAA,QACPrD,EAAQ,EAAE;AAAA,gCACcA,EAAQ,EAAE,sBACtC,CAAC,EACD,MACF,CAEA,GAAID,GAAmBC,CAAO,EAAG,CAC/BmD,EAAG,UAAYnD,EAAQ,YACvB,MACF,CAMA,GAJIA,EAAQ,WACV,MAAMkE,GAAmBlE,EAAQ,SAAS,EAGxCA,EAAQ,YAAc,UACxBmD,EAAG,aAAa,UAAWnD,EAAQ,OAAO,UACjCA,EAAQ,YAAc,SAAU,CACzC,IAAMe,EAAUoC,EAAG,aAAa,SAAS,EACzCA,EAAG,aAAa,UAAWpC,EAAUf,EAAQ,OAAO,CACtD,KACE,OAAM,IAAI,MAAM,sBAAsBA,EAAQ,SAAS,EAAE,CAE7D,CAEA,OAAO,OAAO,wBACZ,6BACAiE,EACF", + "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "#onMaybeScrollToBottom", "#maybeScrollToBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] } diff --git a/pkg-r/inst/lib/shiny/GIT_VERSION b/pkg-r/inst/lib/shiny/GIT_VERSION index 1b0df1ad..6ab64461 100644 --- a/pkg-r/inst/lib/shiny/GIT_VERSION +++ b/pkg-r/inst/lib/shiny/GIT_VERSION @@ -1 +1 @@ -ec8feb87cb2a78c497d8ee66edd6f1e50faf1d48 +ec204acc3563226e4bcba3d48fc5b19418a9a360 diff --git a/pkg-r/inst/lib/shiny/chat/chat.js b/pkg-r/inst/lib/shiny/chat/chat.js index 0bda64f7..585bc2b3 100644 --- a/pkg-r/inst/lib/shiny/chat/chat.js +++ b/pkg-r/inst/lib/shiny/chat/chat.js @@ -1,7 +1,7 @@ var ys=Object.defineProperty;var vs=Object.getOwnPropertyDescriptor;var g=(i,t,e,n)=>{for(var o=n>1?void 0:n?vs(t,e):t,r=i.length-1,l;r>=0;r--)(l=i[r])&&(o=(n?l(t,e,o):l(o))||o);return n&&o&&ys(t,e,o),o};var qt=globalThis,Bt=qt.ShadowRoot&&(qt.ShadyCSS===void 0||qt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,fn=Symbol(),mn=new WeakMap,Ft=class{constructor(t,e,n){if(this._$cssResult$=!0,n!==fn)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(Bt&&t===void 0){let n=e!==void 0&&e.length===1;n&&(t=mn.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),n&&mn.set(e,t))}return t}toString(){return this.cssText}},gn=i=>new Ft(typeof i=="string"?i:i+"",void 0,fn);var _n=(i,t)=>{if(Bt)i.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let n=document.createElement("style"),o=qt.litNonce;o!==void 0&&n.setAttribute("nonce",o),n.textContent=e.cssText,i.appendChild(n)}},_e=Bt?i=>i:i=>i instanceof CSSStyleSheet?(t=>{let e="";for(let n of t.cssRules)e+=n.cssText;return gn(e)})(i):i;var{is:As,defineProperty:bs,getOwnPropertyDescriptor:Ts,getOwnPropertyNames:Ss,getOwnPropertySymbols:ws,getPrototypeOf:Cs}=Object,Gt=globalThis,En=Gt.trustedTypes,$s=En?En.emptyScript:"",xs=Gt.reactiveElementPolyfillSupport,yt=(i,t)=>i,vt={toAttribute(i,t){switch(t){case Boolean:i=i?$s:null;break;case Object:case Array:i=i==null?i:JSON.stringify(i)}return i},fromAttribute(i,t){let e=i;switch(t){case Boolean:e=i!==null;break;case Number:e=i===null?null:Number(i);break;case Object:case Array:try{e=JSON.parse(i)}catch{e=null}}return e}},Wt=(i,t)=>!As(i,t),yn={attribute:!0,type:String,converter:vt,reflect:!1,useDefault:!1,hasChanged:Wt};Symbol.metadata??=Symbol("metadata"),Gt.litPropertyMetadata??=new WeakMap;var j=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=yn){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let n=Symbol(),o=this.getPropertyDescriptor(t,n,e);o!==void 0&&bs(this.prototype,t,o)}}static getPropertyDescriptor(t,e,n){let{get:o,set:r}=Ts(this.prototype,t)??{get(){return this[e]},set(l){this[e]=l}};return{get:o,set(l){let p=o?.call(this);r?.call(this,l),this.requestUpdate(t,p,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??yn}static _$Ei(){if(this.hasOwnProperty(yt("elementProperties")))return;let t=Cs(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(yt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(yt("properties"))){let e=this.properties,n=[...Ss(e),...ws(e)];for(let o of n)this.createProperty(o,e[o])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[n,o]of e)this.elementProperties.set(n,o)}this._$Eh=new Map;for(let[e,n]of this.elementProperties){let o=this._$Eu(e,n);o!==void 0&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let n=new Set(t.flat(1/0).reverse());for(let o of n)e.unshift(_e(o))}else t!==void 0&&e.push(_e(t));return e}static _$Eu(t,e){let n=e.attribute;return n===!1?void 0:typeof n=="string"?n:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let n of e.keys())this.hasOwnProperty(n)&&(t.set(n,this[n]),delete this[n]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return _n(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,n){this._$AK(t,n)}_$ET(t,e){let n=this.constructor.elementProperties.get(t),o=this.constructor._$Eu(t,n);if(o!==void 0&&n.reflect===!0){let r=(n.converter?.toAttribute!==void 0?n.converter:vt).toAttribute(e,n.type);this._$Em=t,r==null?this.removeAttribute(o):this.setAttribute(o,r),this._$Em=null}}_$AK(t,e){let n=this.constructor,o=n._$Eh.get(t);if(o!==void 0&&this._$Em!==o){let r=n.getPropertyOptions(o),l=typeof r.converter=="function"?{fromAttribute:r.converter}:r.converter?.fromAttribute!==void 0?r.converter:vt;this._$Em=o,this[o]=l.fromAttribute(e,r.type)??this._$Ej?.get(o)??null,this._$Em=null}}requestUpdate(t,e,n){if(t!==void 0){let o=this.constructor,r=this[t];if(n??=o.getPropertyOptions(t),!((n.hasChanged??Wt)(r,e)||n.useDefault&&n.reflect&&r===this._$Ej?.get(t)&&!this.hasAttribute(o._$Eu(t,n))))return;this.C(t,e,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:n,reflect:o,wrapped:r},l){n&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,l??e??this[t]),r!==!0||l!==void 0)||(this._$AL.has(t)||(this.hasUpdated||n||(e=void 0),this._$AL.set(t,e)),o===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[o,r]of this._$Ep)this[o]=r;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[o,r]of n){let{wrapped:l}=r,p=this[o];l!==!0||this._$AL.has(o)||p===void 0||this.C(o,void 0,r,p)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(e)):this._$EM()}catch(n){throw t=!1,this._$EM(),n}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};j.elementStyles=[],j.shadowRootOptions={mode:"open"},j[yt("elementProperties")]=new Map,j[yt("finalized")]=new Map,xs?.({ReactiveElement:j}),(Gt.reactiveElementVersions??=[]).push("2.1.0");var Se=globalThis,jt=Se.trustedTypes,vn=jt?jt.createPolicy("lit-html",{createHTML:i=>i}):void 0,Cn="$lit$",Z=`lit$${Math.random().toFixed(9).slice(2)}$`,$n="?"+Z,Ls=`<${$n}>`,nt=document,bt=()=>nt.createComment(""),Tt=i=>i===null||typeof i!="object"&&typeof i!="function",we=Array.isArray,Ms=i=>we(i)||typeof i?.[Symbol.iterator]=="function",Ee=`[ \f\r]`,At=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,An=/-->/g,bn=/>/g,tt=RegExp(`>|${Ee}(?:([^\\s"'>=/]+)(${Ee}*=${Ee}*(?:[^ \f\r"'\`<>=]|("|')|))|$)`,"g"),Tn=/'/g,Sn=/"/g,xn=/^(?:script|style|textarea|title)$/i,Ce=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),y=Ce(1),mi=Ce(2),fi=Ce(3),V=Symbol.for("lit-noChange"),A=Symbol.for("lit-nothing"),wn=new WeakMap,et=nt.createTreeWalker(nt,129);function Ln(i,t){if(!we(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return vn!==void 0?vn.createHTML(t):t}var Os=(i,t)=>{let e=i.length-1,n=[],o,r=t===2?"":t===3?"":"",l=At;for(let p=0;p"?(l=o??At,m=-1):T[1]===void 0?m=-2:(m=l.lastIndex-T[2].length,_=T[1],l=T[3]===void 0?tt:T[3]==='"'?Sn:Tn):l===Sn||l===Tn?l=tt:l===An||l===bn?l=At:(l=tt,o=void 0);let I=l===tt&&i[p+1].startsWith("/>")?" ":"";r+=l===At?h+Ls:m>=0?(n.push(_),h.slice(0,m)+Cn+h.slice(m)+Z+I):h+Z+(m===-2?p:I)}return[Ln(i,r+(i[e]||"")+(t===2?"":t===3?"":"")),n]},St=class i{constructor({strings:t,_$litType$:e},n){let o;this.parts=[];let r=0,l=0,p=t.length-1,h=this.parts,[_,T]=Os(t,e);if(this.el=i.createElement(_,n),et.currentNode=this.el.content,e===2||e===3){let m=this.el.content.firstChild;m.replaceWith(...m.childNodes)}for(;(o=et.nextNode())!==null&&h.length0){o.textContent=jt?jt.emptyScript:"";for(let I=0;I2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=A}_$AI(t,e=this,n,o){let r=this.strings,l=!1;if(r===void 0)t=ht(this,t,e,0),l=!Tt(t)||t!==this._$AH&&t!==V,l&&(this._$AH=t);else{let p=t,h,_;for(t=r[0],h=0;h{let n=e?.renderBefore??t,o=n._$litPart$;if(o===void 0){let r=e?.renderBefore??null;n._$litPart$=o=new wt(t.insertBefore(bt(),r),r,void 0,e??{})}return o._$AI(i),o};var $e=globalThis,F=class extends j{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Mn(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return V}};F._$litElement$=!0,F.finalized=!0,$e.litElementHydrateSupport?.({LitElement:F});var ks=$e.litElementPolyfillSupport;ks?.({LitElement:F});($e.litElementVersions??=[]).push("4.2.0");var On={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Rn=i=>(...t)=>({_$litDirective$:i,values:t}),Vt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,n){this._$Ct=t,this._$AM=e,this._$Ci=n}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var Ct=class extends Vt{constructor(t){if(super(t),this.it=A,t.type!==On.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===A||t==null)return this._t=void 0,this.it=t;if(t===V)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;let e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}};Ct.directiveName="unsafeHTML",Ct.resultType=1;var J=Rn(Ct);var Ns={attribute:!0,type:String,converter:vt,reflect:!1,hasChanged:Wt},Is=(i=Ns,t,e)=>{let{kind:n,metadata:o}=e,r=globalThis.litPropertyMetadata.get(o);if(r===void 0&&globalThis.litPropertyMetadata.set(o,r=new Map),n==="setter"&&((i=Object.create(i)).wrapped=!0),r.set(e.name,i),n==="accessor"){let{name:l}=e;return{set(p){let h=t.get.call(this);t.set.call(this,p),this.requestUpdate(l,h,i)},init(p){return p!==void 0&&this.C(l,void 0,i,p),p}}}if(n==="setter"){let{name:l}=e;return function(p){let h=this[l];t.call(this,p),this.requestUpdate(l,h,i)}}throw Error("Unsupported decorator location: "+n)};function f(i){return(t,e)=>typeof e=="object"?Is(i,t,e):((n,o,r)=>{let l=o.hasOwnProperty(r);return o.constructor.createProperty(r,n),l?Object.getOwnPropertyDescriptor(o,r):void 0})(i,t,e)}var{entries:Fn,setPrototypeOf:kn,isFrozen:Ds,getPrototypeOf:Ps,getOwnPropertyDescriptor:Us}=Object,{freeze:R,seal:D,create:Bn}=Object,{apply:ke,construct:Ne}=typeof Reflect<"u"&&Reflect;R||(R=function(t){return t});D||(D=function(t){return t});ke||(ke=function(t,e,n){return t.apply(e,n)});Ne||(Ne=function(t,e){return new t(...e)});var Kt=k(Array.prototype.forEach),Hs=k(Array.prototype.lastIndexOf),Nn=k(Array.prototype.pop),$t=k(Array.prototype.push),zs=k(Array.prototype.splice),Zt=k(String.prototype.toLowerCase),xe=k(String.prototype.toString),In=k(String.prototype.match),xt=k(String.prototype.replace),qs=k(String.prototype.indexOf),Fs=k(String.prototype.trim),H=k(Object.prototype.hasOwnProperty),O=k(RegExp.prototype.test),Lt=Bs(TypeError);function k(i){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var e=arguments.length,n=new Array(e>1?e-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:Zt;kn&&kn(i,null);let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let r=e(o);r!==o&&(Ds(t)||(t[n]=r),o=r)}i[o]=!0}return i}function Gs(i){for(let t=0;t/gm),Ks=D(/\$\{[\w\W]*/gm),Xs=D(/^data-[\-\w.\u00B7-\uFFFF]+$/),Zs=D(/^aria-[\-\w]+$/),Gn=D(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Js=D(/^(?:\w+script|data):/i),Qs=D(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wn=D(/^html$/i),ti=D(/^[a-z][.\w]*(-[.\w]+)+$/i),zn=Object.freeze({__proto__:null,ARIA_ATTR:Zs,ATTR_WHITESPACE:Qs,CUSTOM_ELEMENT:ti,DATA_ATTR:Xs,DOCTYPE_NAME:Wn,ERB_EXPR:Ys,IS_ALLOWED_URI:Gn,IS_SCRIPT_OR_DATA:Js,MUSTACHE_EXPR:Vs,TMPLIT_EXPR:Ks}),Ot={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},ei=function(){return typeof window>"u"?null:window},ni=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";e&&e.hasAttribute(o)&&(n=e.getAttribute(o));let r="dompurify"+(n?"#"+n:"");try{return t.createPolicy(r,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+r+" could not be created."),null}},qn=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function jn(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ei(),t=u=>jn(u);if(t.version="3.2.6",t.removed=[],!i||!i.document||i.document.nodeType!==Ot.document||!i.Element)return t.isSupported=!1,t;let{document:e}=i,n=e,o=n.currentScript,{DocumentFragment:r,HTMLTemplateElement:l,Node:p,Element:h,NodeFilter:_,NamedNodeMap:T=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:m,DOMParser:U,trustedTypes:I}=i,z=h.prototype,Qn=Mt(z,"cloneNode"),ts=Mt(z,"remove"),es=Mt(z,"nextSibling"),ns=Mt(z,"childNodes"),kt=Mt(z,"parentNode");if(typeof l=="function"){let u=e.createElement("template");u.content&&u.content.ownerDocument&&(e=u.content.ownerDocument)}let L,mt="",{implementation:ne,createNodeIterator:ss,createDocumentFragment:is,getElementsByTagName:os}=e,{importNode:rs}=n,M=qn();t.isSupported=typeof Fn=="function"&&typeof kt=="function"&&ne&&ne.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:se,ERB_EXPR:ie,TMPLIT_EXPR:oe,DATA_ATTR:as,ARIA_ATTR:ls,IS_SCRIPT_OR_DATA:cs,ATTR_WHITESPACE:Fe,CUSTOM_ELEMENT:us}=zn,{IS_ALLOWED_URI:Be}=zn,S=null,Ge=d({},[...Dn,...Le,...Me,...Oe,...Pn]),C=null,We=d({},[...Un,...Re,...Hn,...Xt]),v=Object.seal(Bn(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ft=null,re=null,je=!0,ae=!0,Ve=!1,Ye=!0,it=!1,Nt=!0,Q=!1,le=!1,ce=!1,ot=!1,It=!1,Dt=!1,Ke=!0,Xe=!1,hs="user-content-",ue=!0,gt=!1,rt={},at=null,Ze=d({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Je=null,Qe=d({},["audio","video","img","source","image","track"]),he=null,tn=d({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Pt="http://www.w3.org/1998/Math/MathML",Ut="http://www.w3.org/2000/svg",B="http://www.w3.org/1999/xhtml",lt=B,de=!1,pe=null,ds=d({},[Pt,Ut,B],xe),Ht=d({},["mi","mo","mn","ms","mtext"]),zt=d({},["annotation-xml"]),ps=d({},["title","style","font","a","script"]),_t=null,ms=["application/xhtml+xml","text/html"],fs="text/html",w=null,ct=null,gs=e.createElement("form"),en=function(s){return s instanceof RegExp||s instanceof Function},me=function(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ct&&ct===s)){if((!s||typeof s!="object")&&(s={}),s=Y(s),_t=ms.indexOf(s.PARSER_MEDIA_TYPE)===-1?fs:s.PARSER_MEDIA_TYPE,w=_t==="application/xhtml+xml"?xe:Zt,S=H(s,"ALLOWED_TAGS")?d({},s.ALLOWED_TAGS,w):Ge,C=H(s,"ALLOWED_ATTR")?d({},s.ALLOWED_ATTR,w):We,pe=H(s,"ALLOWED_NAMESPACES")?d({},s.ALLOWED_NAMESPACES,xe):ds,he=H(s,"ADD_URI_SAFE_ATTR")?d(Y(tn),s.ADD_URI_SAFE_ATTR,w):tn,Je=H(s,"ADD_DATA_URI_TAGS")?d(Y(Qe),s.ADD_DATA_URI_TAGS,w):Qe,at=H(s,"FORBID_CONTENTS")?d({},s.FORBID_CONTENTS,w):Ze,ft=H(s,"FORBID_TAGS")?d({},s.FORBID_TAGS,w):Y({}),re=H(s,"FORBID_ATTR")?d({},s.FORBID_ATTR,w):Y({}),rt=H(s,"USE_PROFILES")?s.USE_PROFILES:!1,je=s.ALLOW_ARIA_ATTR!==!1,ae=s.ALLOW_DATA_ATTR!==!1,Ve=s.ALLOW_UNKNOWN_PROTOCOLS||!1,Ye=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,it=s.SAFE_FOR_TEMPLATES||!1,Nt=s.SAFE_FOR_XML!==!1,Q=s.WHOLE_DOCUMENT||!1,ot=s.RETURN_DOM||!1,It=s.RETURN_DOM_FRAGMENT||!1,Dt=s.RETURN_TRUSTED_TYPE||!1,ce=s.FORCE_BODY||!1,Ke=s.SANITIZE_DOM!==!1,Xe=s.SANITIZE_NAMED_PROPS||!1,ue=s.KEEP_CONTENT!==!1,gt=s.IN_PLACE||!1,Be=s.ALLOWED_URI_REGEXP||Gn,lt=s.NAMESPACE||B,Ht=s.MATHML_TEXT_INTEGRATION_POINTS||Ht,zt=s.HTML_INTEGRATION_POINTS||zt,v=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(v.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&en(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(v.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(v.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),it&&(ae=!1),It&&(ot=!0),rt&&(S=d({},Pn),C=[],rt.html===!0&&(d(S,Dn),d(C,Un)),rt.svg===!0&&(d(S,Le),d(C,Re),d(C,Xt)),rt.svgFilters===!0&&(d(S,Me),d(C,Re),d(C,Xt)),rt.mathMl===!0&&(d(S,Oe),d(C,Hn),d(C,Xt))),s.ADD_TAGS&&(S===Ge&&(S=Y(S)),d(S,s.ADD_TAGS,w)),s.ADD_ATTR&&(C===We&&(C=Y(C)),d(C,s.ADD_ATTR,w)),s.ADD_URI_SAFE_ATTR&&d(he,s.ADD_URI_SAFE_ATTR,w),s.FORBID_CONTENTS&&(at===Ze&&(at=Y(at)),d(at,s.FORBID_CONTENTS,w)),ue&&(S["#text"]=!0),Q&&d(S,["html","head","body"]),S.table&&(d(S,["tbody"]),delete ft.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Lt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');L=s.TRUSTED_TYPES_POLICY,mt=L.createHTML("")}else L===void 0&&(L=ni(I,o)),L!==null&&typeof mt=="string"&&(mt=L.createHTML(""));R&&R(s),ct=s}},nn=d({},[...Le,...Me,...Ws]),sn=d({},[...Oe,...js]),_s=function(s){let a=kt(s);(!a||!a.tagName)&&(a={namespaceURI:lt,tagName:"template"});let c=Zt(s.tagName),E=Zt(a.tagName);return pe[s.namespaceURI]?s.namespaceURI===Ut?a.namespaceURI===B?c==="svg":a.namespaceURI===Pt?c==="svg"&&(E==="annotation-xml"||Ht[E]):!!nn[c]:s.namespaceURI===Pt?a.namespaceURI===B?c==="math":a.namespaceURI===Ut?c==="math"&&zt[E]:!!sn[c]:s.namespaceURI===B?a.namespaceURI===Ut&&!zt[E]||a.namespaceURI===Pt&&!Ht[E]?!1:!sn[c]&&(ps[c]||!nn[c]):!!(_t==="application/xhtml+xml"&&pe[s.namespaceURI]):!1},q=function(s){$t(t.removed,{element:s});try{kt(s).removeChild(s)}catch{ts(s)}},ut=function(s,a){try{$t(t.removed,{attribute:a.getAttributeNode(s),from:a})}catch{$t(t.removed,{attribute:null,from:a})}if(a.removeAttribute(s),s==="is")if(ot||It)try{q(a)}catch{}else try{a.setAttribute(s,"")}catch{}},on=function(s){let a=null,c=null;if(ce)s=""+s;else{let b=In(s,/^[\r\n\t ]+/);c=b&&b[0]}_t==="application/xhtml+xml"&<===B&&(s=''+s+"");let E=L?L.createHTML(s):s;if(lt===B)try{a=new U().parseFromString(E,_t)}catch{}if(!a||!a.documentElement){a=ne.createDocument(lt,"template",null);try{a.documentElement.innerHTML=de?mt:E}catch{}}let $=a.body||a.documentElement;return s&&c&&$.insertBefore(e.createTextNode(c),$.childNodes[0]||null),lt===B?os.call(a,Q?"html":"body")[0]:Q?a.documentElement:$},rn=function(s){return ss.call(s.ownerDocument||s,s,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT|_.SHOW_PROCESSING_INSTRUCTION|_.SHOW_CDATA_SECTION,null)},fe=function(s){return s instanceof m&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof T)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},an=function(s){return typeof p=="function"&&s instanceof p};function G(u,s,a){Kt(u,c=>{c.call(t,s,a,ct)})}let ln=function(s){let a=null;if(G(M.beforeSanitizeElements,s,null),fe(s))return q(s),!0;let c=w(s.nodeName);if(G(M.uponSanitizeElement,s,{tagName:c,allowedTags:S}),Nt&&s.hasChildNodes()&&!an(s.firstElementChild)&&O(/<[/\w!]/g,s.innerHTML)&&O(/<[/\w!]/g,s.textContent)||s.nodeType===Ot.progressingInstruction||Nt&&s.nodeType===Ot.comment&&O(/<[/\w]/g,s.data))return q(s),!0;if(!S[c]||ft[c]){if(!ft[c]&&un(c)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c)))return!1;if(ue&&!at[c]){let E=kt(s)||s.parentNode,$=ns(s)||s.childNodes;if($&&E){let b=$.length;for(let N=b-1;N>=0;--N){let W=Qn($[N],!0);W.__removalCount=(s.__removalCount||0)+1,E.insertBefore(W,es(s))}}}return q(s),!0}return s instanceof h&&!_s(s)||(c==="noscript"||c==="noembed"||c==="noframes")&&O(/<\/no(script|embed|frames)/i,s.innerHTML)?(q(s),!0):(it&&s.nodeType===Ot.text&&(a=s.textContent,Kt([se,ie,oe],E=>{a=xt(a,E," ")}),s.textContent!==a&&($t(t.removed,{element:s.cloneNode()}),s.textContent=a)),G(M.afterSanitizeElements,s,null),!1)},cn=function(s,a,c){if(Ke&&(a==="id"||a==="name")&&(c in e||c in gs))return!1;if(!(ae&&!re[a]&&O(as,a))){if(!(je&&O(ls,a))){if(!C[a]||re[a]){if(!(un(s)&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,s)||v.tagNameCheck instanceof Function&&v.tagNameCheck(s))&&(v.attributeNameCheck instanceof RegExp&&O(v.attributeNameCheck,a)||v.attributeNameCheck instanceof Function&&v.attributeNameCheck(a))||a==="is"&&v.allowCustomizedBuiltInElements&&(v.tagNameCheck instanceof RegExp&&O(v.tagNameCheck,c)||v.tagNameCheck instanceof Function&&v.tagNameCheck(c))))return!1}else if(!he[a]){if(!O(Be,xt(c,Fe,""))){if(!((a==="src"||a==="xlink:href"||a==="href")&&s!=="script"&&qs(c,"data:")===0&&Je[s])){if(!(Ve&&!O(cs,xt(c,Fe,"")))){if(c)return!1}}}}}}return!0},un=function(s){return s!=="annotation-xml"&&In(s,us)},hn=function(s){G(M.beforeSanitizeAttributes,s,null);let{attributes:a}=s;if(!a||fe(s))return;let c={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:C,forceKeepAttr:void 0},E=a.length;for(;E--;){let $=a[E],{name:b,namespaceURI:N,value:W}=$,Et=w(b),ge=W,x=b==="value"?ge:Fs(ge);if(c.attrName=Et,c.attrValue=x,c.keepAttr=!0,c.forceKeepAttr=void 0,G(M.uponSanitizeAttribute,s,c),x=c.attrValue,Xe&&(Et==="id"||Et==="name")&&(ut(b,s),x=hs+x),Nt&&O(/((--!?|])>)|<\/(style|title)/i,x)){ut(b,s);continue}if(c.forceKeepAttr)continue;if(!c.keepAttr){ut(b,s);continue}if(!Ye&&O(/\/>/i,x)){ut(b,s);continue}it&&Kt([se,ie,oe],pn=>{x=xt(x,pn," ")});let dn=w(s.nodeName);if(!cn(dn,Et,x)){ut(b,s);continue}if(L&&typeof I=="object"&&typeof I.getAttributeType=="function"&&!N)switch(I.getAttributeType(dn,Et)){case"TrustedHTML":{x=L.createHTML(x);break}case"TrustedScriptURL":{x=L.createScriptURL(x);break}}if(x!==ge)try{N?s.setAttributeNS(N,b,x):s.setAttribute(b,x),fe(s)?q(s):Nn(t.removed)}catch{ut(b,s)}}G(M.afterSanitizeAttributes,s,null)},Es=function u(s){let a=null,c=rn(s);for(G(M.beforeSanitizeShadowDOM,s,null);a=c.nextNode();)G(M.uponSanitizeShadowNode,a,null),ln(a),hn(a),a.content instanceof r&&u(a.content);G(M.afterSanitizeShadowDOM,s,null)};return t.sanitize=function(u){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=null,c=null,E=null,$=null;if(de=!u,de&&(u=""),typeof u!="string"&&!an(u))if(typeof u.toString=="function"){if(u=u.toString(),typeof u!="string")throw Lt("dirty is not a string, aborting")}else throw Lt("toString is not a function");if(!t.isSupported)return u;if(le||me(s),t.removed=[],typeof u=="string"&&(gt=!1),gt){if(u.nodeName){let W=w(u.nodeName);if(!S[W]||ft[W])throw Lt("root node is forbidden and cannot be sanitized in-place")}}else if(u instanceof p)a=on(""),c=a.ownerDocument.importNode(u,!0),c.nodeType===Ot.element&&c.nodeName==="BODY"||c.nodeName==="HTML"?a=c:a.appendChild(c);else{if(!ot&&!it&&!Q&&u.indexOf("<")===-1)return L&&Dt?L.createHTML(u):u;if(a=on(u),!a)return ot?null:Dt?mt:""}a&&ce&&q(a.firstChild);let b=rn(gt?u:a);for(;E=b.nextNode();)ln(E),hn(E),E.content instanceof r&&Es(E.content);if(gt)return u;if(ot){if(It)for($=is.call(a.ownerDocument);a.firstChild;)$.appendChild(a.firstChild);else $=a;return(C.shadowroot||C.shadowrootmode)&&($=rs.call(n,$,!0)),$}let N=Q?a.outerHTML:a.innerHTML;return Q&&S["!doctype"]&&a.ownerDocument&&a.ownerDocument.doctype&&a.ownerDocument.doctype.name&&O(Wn,a.ownerDocument.doctype.name)&&(N=" -`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y` +`+N),it&&Kt([se,ie,oe],W=>{N=xt(N,W," ")}),L&&Dt?L.createHTML(N):N},t.setConfig=function(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};me(u),le=!0},t.clearConfig=function(){ct=null,le=!1},t.isValidAttribute=function(u,s,a){ct||me({});let c=w(u),E=w(s);return cn(c,E,a)},t.addHook=function(u,s){typeof s=="function"&&$t(M[u],s)},t.removeHook=function(u,s){if(s!==void 0){let a=Hs(M[u],s);return a===-1?void 0:zs(M[u],a,1)[0]}return Nn(M[u])},t.removeHooks=function(u){M[u]=[]},t.removeAllHooks=function(){M=qn()},t}var Vn=jn();function Qt(i,t){let e=document.createElement(i);for(let[n,o]of Object.entries(t)){let r=n.replace(/_/g,"-");o!==null&&e.setAttribute(r,o)}return e}var st=class extends F{createRenderRoot(){return this}};function Ie({headline:i="",message:t,status:e="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:i,message:t,status:e}}))}async function Yn(i){if(window.Shiny&&i)try{await window.Shiny.renderDependenciesAsync(i)}catch(t){Ie({status:"error",message:`Failed to render HTML dependencies: ${t}`})}}var te=Vn();te.addHook("uponSanitizeElement",(i,t)=>{if(i.nodeName&&i.nodeName==="SCRIPT"){let e=i,n=e.getAttribute("type")==="application/json"&&e.getAttribute("data-for")!==null;t.allowedTags.script=n}});te.addHook("afterSanitizeAttributes",function(i){if(!(i.tagName==="A"&&i.hasAttribute("href")))return;let e=i.getAttribute("href");e&&/^(https?:)?\/\//.test(e)&&(i.setAttribute("data-external-link",""),i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"))});var Jt=new WeakMap;te.addHook("beforeSanitizeAttributes",function(i,t){if(!i.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(i.tagName.toLowerCase())){let n={};i.hasAttribute("value")&&(n.value=i.getAttribute("value")),Object.keys(n).length>0&&Jt.set(i,n)}});te.addHook("afterSanitizeAttributes",function(i,t){if(Jt.has(i)){let e=Jt.get(i);Object.entries(e).forEach(([n,o])=>{i.setAttribute(n,o)}),Jt.delete(i)}});window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var P=class extends F{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#t(e){e.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let e=this.toolTitle||`${this.toolName}()`;return e=`${e}`,e=this.titleTemplate.replace("{title}",e),y`${J(e)}`}renderCard(e){let n=`tool-header-${this.requestId}`,o=`tool-content-${this.requestId}`,r=this.icon||De.wrenchAdjustable,l=y`
${J(r)}
${this.formatTitle()}
diff --git a/pkg-r/inst/lib/shiny/chat/chat.js.map b/pkg-r/inst/lib/shiny/chat/chat.js.map index 80518076..87aa3063 100644 --- a/pkg-r/inst/lib/shiny/chat/chat.js.map +++ b/pkg-r/inst/lib/shiny/chat/chat.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", + "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic the native feature](https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n global.litIssuedWarnings ??= new Set();\n\n /**\n * Issue a warning if we haven't already, based either on `code` or `warning`.\n * Warnings are disabled automatically only by `warning`; disabling via `code`\n * can be done by users.\n */\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (\n !global.litIssuedWarnings!.has(warning) &&\n !global.litIssuedWarnings!.has(code)\n ) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n queueMicrotask(() => {\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n });\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n\n /**\n * When `true`, uses the initial value of the property as the default value,\n * which changes how attributes are handled:\n * - The initial value does *not* reflect, even if the `reflect` option is `true`.\n * Subsequent changes to the property will reflect, even if they are equal to the\n * default value.\n * - When the attribute is removed, the property is set to the default value\n * - The initial value will not trigger an old value in the `changedProperties` map\n * argument to update lifecycle methods.\n *\n * When set, properties must be initialized, either with a field initializer, or an\n * assignment in the constructor. Not initializing the property may lead to\n * improper handling of subsequent property assignments.\n *\n * While this behavior is opt-in, most properties that reflect to attributes should\n * use `useDefault: true` so that their initial values do not reflect.\n */\n useDefault?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n useDefault: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`

${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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GvDN,EAAMM,CAAK,EAAI,MAInB,OAAON,CACT,CAQA,SAASO,EAAqCC,EAAS,CACrD,IAAMC,EAAY/D,GAAO,IAAI,EAE7B,OAAW,CAACgE,EAAUC,CAAK,IAAKzE,GAAQsE,CAAM,EACpB3B,EAAqB2B,EAAQE,CAAQ,IAGvDrD,MAAMuD,QAAQD,CAAK,EACrBF,EAAUC,CAAQ,EAAIL,GAAWM,CAAK,EAEtCA,GACA,OAAOA,GAAU,UACjBA,EAAME,cAAgBtE,OAEtBkE,EAAUC,CAAQ,EAAIH,EAAMI,CAAK,EAEjCF,EAAUC,CAAQ,EAAIC,GAK5B,OAAOF,CACT,CASA,SAASK,GACPN,EACAO,EAAY,CAEZ,KAAOP,IAAW,MAAM,CACtB,IAAMQ,EAAO1E,GAAyBkE,EAAQO,CAAI,EAElD,GAAIC,EAAM,CACR,GAAIA,EAAKC,IACP,OAAO7D,EAAQ4D,EAAKC,GAAG,EAGzB,GAAI,OAAOD,EAAKL,OAAU,WACxB,OAAOvD,EAAQ4D,EAAKL,KAAK,CAE7B,CAEAH,EAASnE,GAAemE,CAAM,CAChC,CAEA,SAASU,GAAa,CACpB,OAAO,IACT,CAEA,OAAOA,CACT,CC3MO,IAAMC,GAAO3E,EAAO,CACzB,IACA,OACA,UACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,MACA,QACA,aACA,OACA,KACA,SACA,SACA,UACA,SACA,OACA,OACA,MACA,WACA,UACA,OACA,WACA,KACA,YACA,MACA,UACA,MACA,SACA,MACA,MACA,KACA,KACA,UACA,KACA,WACA,aACA,SACA,OACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,UACA,OACA,WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,EAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,EAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,EAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,EAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,EAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,EAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,EAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,EAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,EAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,EAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,EAAK,2BAA2B,EAChDmF,GAAWnF,EAAK,uBAAuB,EACvCoF,GAAcpF,EAAK,eAAe,EAClCqF,GAAYrF,EAAK,8BAA8B,EAC/CsF,GAAYtF,EAAK,gBAAgB,EACjCuF,GAAiBvF,EAC5B,oGAEWwF,GAAoBxF,EAAK,uBAAuB,EAChDyF,GAAkBzF,EAC7B,+DAEW0F,GAAe1F,EAAK,SAAS,EAC7B2F,GAAiB3F,EAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,CAEpC,GACE,OAAOD,GAAiB,UACxB,OAAOA,EAAaE,cAAiB,WAErC,OAAO,KAMT,IAAIC,EAAS,KACPC,EAAY,wBACdH,GAAqBA,EAAkBI,aAAaD,CAAS,IAC/DD,EAASF,EAAkBK,aAAaF,CAAS,GAGnD,IAAMG,EAAa,aAAeJ,EAAS,IAAMA,EA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", "names": ["global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizer", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "attrs", "name", "value", "ShinyToolCard", "i", "#toggleCollapse", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage"] } diff --git a/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js b/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js index 84fc2783..c14629b2 100644 --- a/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js +++ b/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js @@ -1,25 +1,25 @@ -var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var fr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var f=function(m){var E=g()(m);return p("cut"),E},b=f;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function h(w){return h=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},h(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,f,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,f,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,f,b)}))}function u(c,g,p,f){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&f.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,f,b){if(!p&&!f&&!b)throw new Error("Missing required arguments");if(!s.string(f))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,f,b);if(s.nodeList(p))return c(p,f,b);if(s.string(p))return g(p,f,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,f,b){return p.addEventListener(f,b),{destroy:function(){p.removeEventListener(f,b)}}}function c(p,f,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(f,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(f,b)})}}}function g(p,f,b){return a(document.body,p,f,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var fn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="
",hr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!hr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){hr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var fl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},hl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return hl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},hn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),hn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),hn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),hn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),hn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,fl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(h){return a.noHighlightRe.test(h)}function u(h){let S=h.className+" ";S+=h.parentNode?h.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",h)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(h,S,N){let $="",w="";typeof S=="object"?($=h,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(h,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=he.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ht]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ft+=ht),ke.startsWith("_"))z+=x[0];else{let mt=he.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=f(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ft+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=he.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(he.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,he.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new fn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new fn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ft+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==he;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${h})`);throw Y.languageName=h,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` -`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let he=q(h);if(!he)throw lt(o.replace("{}",h)),new Error('Unknown language: "'+h+'"');let Z=Tl(he),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ft=0,Ie=0,He=0,$e=!1;try{if(he.__emitTokens)he.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:h,value:_e,relevance:ft,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:h,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:h,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(h){let S={value:ei(h),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(h),S}function f(h,S){S=S||a.languages||Object.keys(e);let N=p(h),$=S.filter(q).filter(de).map(R=>g(R,h,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(h,S,N){let $=S&&t[S]||N;h.classList.add("hljs"),h.classList.add(`language-${$}`)}function v(h){let S=null,N=u(h);if(l(N))return;if(te("before:highlightElement",{el:h,language:N}),h.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",h);return}if(h.children.length>0&&(a.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(h)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",h.innerHTML);S=h;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):f($);h.innerHTML=w.value,h.dataset.highlighted="yes",b(h,N,w.language),h.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(h.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:h,result:w,text:$})}function k(h){a=Er(a,h)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function h(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",h,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(h,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",h)),r)lt($);else throw $;N=s}N.name||(N.name=h),e[h]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:h})}function D(h){delete e[h];for(let S of Object.keys(t))t[S]===h&&delete t[S]}function oe(){return Object.keys(e)}function q(h){return h=(h||"").toLowerCase(),e[h]||e[t[h]]}function J(h,{languageName:S}){typeof h=="string"&&(h=[h]),h.forEach(N=>{t[N.toLowerCase()]=S})}function de(h){let S=q(h);return S&&!S.disableAutodetect}function V(h){h["before:highlightBlock"]&&!h["before:highlightElement"]&&(h["before:highlightElement"]=S=>{h["before:highlightBlock"](Object.assign({block:S.el},S))}),h["after:highlightBlock"]&&!h["after:highlightElement"]&&(h["after:highlightElement"]=S=>{h["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(h){V(h),i.push(h)}function fe(h){let S=i.indexOf(h);S!==-1&&i.splice(S,1)}function te(h,S){let N=h;i.forEach(function($){$[N]&&$[N](S)})}function se(h){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(h)}Object.assign(n,{highlight:c,highlightAuto:f,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:fe}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let h in gn)typeof gn[h]=="object"&&vr(gn[h]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],f=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[f,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:f,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},f=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+f,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:f,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},f=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,f]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},f]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],f.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let f=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(f)}),f=f.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:f},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:f}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:f,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",f="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${f}))?([eE][+-]?(${f})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var fs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,hs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}hs.exports=jl});var _s=H((fp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` -`},u]}}bs.exports=tc});var ws=H((hp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),f={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,f,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,f,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},f=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:f("(?:m|qr)?",/\//,/\//)},{begin:f("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:f("m|qr",/\(/,/\)/)},{begin:f("m|qr",/\[/,/\]/)},{begin:f("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function fc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),f=`[ -]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(h=>{se.push(h),h.toLowerCase()===h?se.push(h.toUpperCase()):se.push(h.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(f,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(f,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],fe={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[fe,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",fe,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=fc});var Ls=H((vp,Is)=>{function hc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=hc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",f=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${f}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${f})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],f=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...f),/\s*\(/),relevance:0,keywords:{built_in:f}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},f=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},fe={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},h={className:"variable",match:`\\$${wn}+`},S=[te,se,h],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,fe,...c,...f,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},he={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...f,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,he,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},fe,...c,...f,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),f.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],fo=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ho=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:ho,"variable.language":fo},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},f={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let fe={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},h="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(h)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,f,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:h,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},fe,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:ho.concat(r),"variable.language":fo},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),f=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,f]),t.contains=t.contains.concat([c,o,s,f]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",fs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ +var _a=Object.create;var Fn=Object.defineProperty;var Zi=Object.getOwnPropertyDescriptor;var Ea=Object.getOwnPropertyNames;var ya=Object.getPrototypeOf,va=Object.prototype.hasOwnProperty;var H=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var wa=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ea(e))!va.call(n,r)&&r!==t&&Fn(n,r,{get:()=>e[r],enumerable:!(i=Zi(e,r))||i.enumerable});return n};var Yi=(n,e,t)=>(t=n!=null?_a(ya(n)):{},wa(e||!n||!n.__esModule?Fn(t,"default",{value:n,enumerable:!0}):t,n));var K=(n,e,t,i)=>{for(var r=i>1?void 0:i?Zi(e,t):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(i?s(e,t,r):s(r))||r);return i&&r&&Fn(e,t,r),r};var hr=H((zt,jn)=>{(function(e,t){typeof zt=="object"&&typeof jn=="object"?jn.exports=t():typeof define=="function"&&define.amd?define([],t):typeof zt=="object"?zt.ClipboardJS=t():e.ClipboardJS=t()})(zt,function(){return function(){var n={686:function(i,r,o){"use strict";o.d(r,{default:function(){return $}});var s=o(279),a=o.n(s),l=o(370),u=o.n(l),c=o(817),g=o.n(c);function p(w){try{return document.execCommand(w)}catch{return!1}}var h=function(m){var E=g()(m);return p("cut"),E},b=h;function v(w){var m=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[m?"right":"left"]="-9999px";var T=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(T,"px"),E.setAttribute("readonly",""),E.value=w,E}var k=function(m,E){var T=v(m);E.container.appendChild(T);var R=g()(T);return p("copy"),T.remove(),R},M=function(m){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},T="";return typeof m=="string"?T=k(m,E):m instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(m?.type)?T=k(m.value,E):(T=g()(m),p("copy")),T},P=M;function U(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?U=function(E){return typeof E}:U=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},U(w)}var C=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=m.action,T=E===void 0?"copy":E,R=m.container,A=m.target,ie=m.text;if(T!=="copy"&&T!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(A!==void 0)if(A&&U(A)==="object"&&A.nodeType===1){if(T==="copy"&&A.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(T==="cut"&&(A.hasAttribute("readonly")||A.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ie)return P(ie,{container:R});if(A)return T==="cut"?b(A):P(A,{container:R})},B=C;function D(w){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?D=function(E){return typeof E}:D=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},D(w)}function oe(w,m){if(!(w instanceof m))throw new TypeError("Cannot call a class as a function")}function q(w,m){for(var E=0;E"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function f(w){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)},f(w)}function S(w,m){var E="data-clipboard-".concat(w);if(m.hasAttribute(E))return m.getAttribute(E)}var N=function(w){de(E,w);var m=pe(E);function E(T,R){var A;return oe(this,E),A=m.call(this),A.resolveOptions(R),A.listenClick(T),A}return J(E,[{key:"resolveOptions",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof R.action=="function"?R.action:this.defaultAction,this.target=typeof R.target=="function"?R.target:this.defaultTarget,this.text=typeof R.text=="function"?R.text:this.defaultText,this.container=D(R.container)==="object"?R.container:document.body}},{key:"listenClick",value:function(R){var A=this;this.listener=u()(R,"click",function(ie){return A.onClick(ie)})}},{key:"onClick",value:function(R){var A=R.delegateTarget||R.currentTarget,ie=this.action(A)||"copy",Ae=B({action:ie,container:this.container,target:this.target(A),text:this.text(A)});this.emit(Ae?"success":"error",{action:ie,text:Ae,trigger:A,clearSelection:function(){A&&A.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(R){return S("action",R)}},{key:"defaultTarget",value:function(R){var A=S("target",R);if(A)return document.querySelector(A)}},{key:"defaultText",value:function(R){return S("text",R)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(R){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return P(R,A)}},{key:"cut",value:function(R){return b(R)}},{key:"isSupported",value:function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],A=typeof R=="string"?[R]:R,ie=!!document.queryCommandSupported;return A.forEach(function(Ae){ie=ie&&!!document.queryCommandSupported(Ae)}),ie}}]),E}(a()),$=N},828:function(i){var r=9;if(typeof Element<"u"&&!Element.prototype.matches){var o=Element.prototype;o.matches=o.matchesSelector||o.mozMatchesSelector||o.msMatchesSelector||o.oMatchesSelector||o.webkitMatchesSelector}function s(a,l){for(;a&&a.nodeType!==r;){if(typeof a.matches=="function"&&a.matches(l))return a;a=a.parentNode}}i.exports=s},438:function(i,r,o){var s=o(828);function a(c,g,p,h,b){var v=u.apply(this,arguments);return c.addEventListener(p,v,b),{destroy:function(){c.removeEventListener(p,v,b)}}}function l(c,g,p,h,b){return typeof c.addEventListener=="function"?a.apply(null,arguments):typeof p=="function"?a.bind(null,document).apply(null,arguments):(typeof c=="string"&&(c=document.querySelectorAll(c)),Array.prototype.map.call(c,function(v){return a(v,g,p,h,b)}))}function u(c,g,p,h){return function(b){b.delegateTarget=s(b.target,g),b.delegateTarget&&h.call(c,b)}}i.exports=l},879:function(i,r){r.node=function(o){return o!==void 0&&o instanceof HTMLElement&&o.nodeType===1},r.nodeList=function(o){var s=Object.prototype.toString.call(o);return o!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in o&&(o.length===0||r.node(o[0]))},r.string=function(o){return typeof o=="string"||o instanceof String},r.fn=function(o){var s=Object.prototype.toString.call(o);return s==="[object Function]"}},370:function(i,r,o){var s=o(879),a=o(438);function l(p,h,b){if(!p&&!h&&!b)throw new Error("Missing required arguments");if(!s.string(h))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(p))return u(p,h,b);if(s.nodeList(p))return c(p,h,b);if(s.string(p))return g(p,h,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function u(p,h,b){return p.addEventListener(h,b),{destroy:function(){p.removeEventListener(h,b)}}}function c(p,h,b){return Array.prototype.forEach.call(p,function(v){v.addEventListener(h,b)}),{destroy:function(){Array.prototype.forEach.call(p,function(v){v.removeEventListener(h,b)})}}}function g(p,h,b){return a(document.body,p,h,b)}i.exports=l},817:function(i){function r(o){var s;if(o.nodeName==="SELECT")o.focus(),s=o.value;else if(o.nodeName==="INPUT"||o.nodeName==="TEXTAREA"){var a=o.hasAttribute("readonly");a||o.setAttribute("readonly",""),o.select(),o.setSelectionRange(0,o.value.length),a||o.removeAttribute("readonly"),s=o.value}else{o.hasAttribute("contenteditable")&&o.focus();var l=window.getSelection(),u=document.createRange();u.selectNodeContents(o),l.removeAllRanges(),l.addRange(u),s=l.toString()}return s}i.exports=r},279:function(i){function r(){}r.prototype={on:function(o,s,a){var l=this.e||(this.e={});return(l[o]||(l[o]=[])).push({fn:s,ctx:a}),this},once:function(o,s,a){var l=this;function u(){l.off(o,u),s.apply(a,arguments)}return u._=s,this.on(o,u,a)},emit:function(o){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[o]||[]).slice(),l=0,u=a.length;for(l;l{function vr(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{let t=n[e],i=typeof t;(i==="object"||i==="function")&&!Object.isFrozen(t)&&vr(t)}),n}var hn=class{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function wr(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function nt(n,...e){let t=Object.create(null);for(let i in n)t[i]=n[i];return e.forEach(function(i){for(let r in i)t[r]=i[r]}),t}var Ua="",fr=n=>!!n.scope,Ba=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){let t=n.split(".");return[`${e}${t.shift()}`,...t.map((i,r)=>`${i}${"_".repeat(r+1)}`)].join(" ")}return`${e}${n}`},ti=class{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=wr(e)}openNode(e){if(!fr(e))return;let t=Ba(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){fr(e)&&(this.buffer+=Ua)}value(){return this.buffer}span(e){this.buffer+=``}},mr=(n={})=>{let e={children:[]};return Object.assign(e,n),e},ni=class n{constructor(){this.rootNode=mr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){let t=mr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(i=>this._walk(e,i)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{n._collapse(t)}))}},ii=class extends ni{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){let i=e.root;t&&(i.scope=`language:${t}`),this.add(i)}toHTML(){return new ti(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}};function Ft(n){return n?typeof n=="string"?n:n.source:null}function Tr(n){return ct("(?=",n,")")}function za(n){return ct("(?:",n,")*")}function Fa(n){return ct("(?:",n,")?")}function ct(...n){return n.map(t=>Ft(t)).join("")}function Ha(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function si(...n){return"("+(Ha(n).capture?"":"?:")+n.map(i=>Ft(i)).join("|")+")"}function Ar(n){return new RegExp(n.toString()+"|").exec("").length-1}function Ga(n,e){let t=n&&n.exec(e);return t&&t.index===0}var qa=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function oi(n,{joinWith:e}){let t=0;return n.map(i=>{t+=1;let r=t,o=Ft(i),s="";for(;o.length>0;){let a=qa.exec(o);if(!a){s+=o;break}s+=o.substring(0,a.index),o=o.substring(a.index+a[0].length),a[0][0]==="\\"&&a[1]?s+="\\"+String(Number(a[1])+r):(s+=a[0],a[0]==="("&&t++)}return s}).map(i=>`(${i})`).join(e)}var Ka=/\b\B/,Sr="[a-zA-Z]\\w*",ai="[a-zA-Z_]\\w*",Nr="\\b\\d+(\\.\\d+)?",kr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",xr="\\b(0b[01]+)",Wa="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Za=(n={})=>{let e=/^#![ ]*\//;return n.binary&&(n.begin=ct(e,/.*\b/,n.binary,/\b.*/)),nt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,i)=>{t.index!==0&&i.ignoreMatch()}},n)},Ht={begin:"\\\\[\\s\\S]",relevance:0},Ya={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ht]},Va={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ht]},Xa={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/},mn=function(n,e,t={}){let i=nt({scope:"comment",begin:n,end:e,contains:[]},t);i.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});let r=si("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return i.contains.push({begin:ct(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i},Qa=mn("//","$"),Ja=mn("/\\*","\\*/"),ja=mn("#","$"),el={scope:"number",begin:Nr,relevance:0},tl={scope:"number",begin:kr,relevance:0},nl={scope:"number",begin:xr,relevance:0},il={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Ht,{begin:/\[/,end:/\]/,relevance:0,contains:[Ht]}]},rl={scope:"title",begin:Sr,relevance:0},sl={scope:"title",begin:ai,relevance:0},ol={begin:"\\.\\s*"+ai,relevance:0},al=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},gn=Object.freeze({__proto__:null,APOS_STRING_MODE:Ya,BACKSLASH_ESCAPE:Ht,BINARY_NUMBER_MODE:nl,BINARY_NUMBER_RE:xr,COMMENT:mn,C_BLOCK_COMMENT_MODE:Ja,C_LINE_COMMENT_MODE:Qa,C_NUMBER_MODE:tl,C_NUMBER_RE:kr,END_SAME_AS_BEGIN:al,HASH_COMMENT_MODE:ja,IDENT_RE:Sr,MATCH_NOTHING_RE:Ka,METHOD_GUARD:ol,NUMBER_MODE:el,NUMBER_RE:Nr,PHRASAL_WORDS_MODE:Xa,QUOTE_STRING_MODE:Va,REGEXP_MODE:il,RE_STARTERS_RE:Wa,SHEBANG:Za,TITLE_MODE:rl,UNDERSCORE_IDENT_RE:ai,UNDERSCORE_TITLE_MODE:sl});function ll(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function cl(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function ul(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=ll,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function dl(n,e){Array.isArray(n.illegal)&&(n.illegal=si(...n.illegal))}function pl(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function gl(n,e){n.relevance===void 0&&(n.relevance=1)}var hl=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");let t=Object.assign({},n);Object.keys(n).forEach(i=>{delete n[i]}),n.keywords=t.keywords,n.begin=ct(t.beforeMatch,Tr(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},fl=["of","and","for","in","not","or","if","then","parent","list","value"],ml="keyword";function Or(n,e,t=ml){let i=Object.create(null);return typeof n=="string"?r(t,n.split(" ")):Array.isArray(n)?r(t,n):Object.keys(n).forEach(function(o){Object.assign(i,Or(n[o],e,o))}),i;function r(o,s){e&&(s=s.map(a=>a.toLowerCase())),s.forEach(function(a){let l=a.split("|");i[l[0]]=[o,bl(l[0],l[1])]})}}function bl(n,e){return e?Number(e):_l(n)?0:1}function _l(n){return fl.includes(n.toLowerCase())}var br={},lt=n=>{console.error(n)},_r=(n,...e)=>{console.log(`WARN: ${n}`,...e)},wt=(n,e)=>{br[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),br[`${n}/${e}`]=!0)},fn=new Error;function Rr(n,e,{key:t}){let i=0,r=n[t],o={},s={};for(let a=1;a<=e.length;a++)s[a+i]=r[a],o[a+i]=!0,i+=Ar(e[a-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function El(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw lt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fn;if(typeof n.beginScope!="object"||n.beginScope===null)throw lt("beginScope must be object"),fn;Rr(n,n.begin,{key:"beginScope"}),n.begin=oi(n.begin,{joinWith:""})}}function yl(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw lt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fn;if(typeof n.endScope!="object"||n.endScope===null)throw lt("endScope must be object"),fn;Rr(n,n.end,{key:"endScope"}),n.end=oi(n.end,{joinWith:""})}}function vl(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function wl(n){vl(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),El(n),yl(n)}function Tl(n){function e(s,a){return new RegExp(Ft(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(a?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(a,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,a]),this.matchAt+=Ar(a)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);let a=this.regexes.map(l=>l[1]);this.matcherRe=e(oi(a,{joinWith:"|"}),!0),this.lastIndex=0}exec(a){this.matcherRe.lastIndex=this.lastIndex;let l=this.matcherRe.exec(a);if(!l)return null;let u=l.findIndex((g,p)=>p>0&&g!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class i{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(a){if(this.multiRegexes[a])return this.multiRegexes[a];let l=new t;return this.rules.slice(a).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[a]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(a,l){this.rules.push([a,l]),l.type==="begin"&&this.count++}exec(a){let l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(a);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){let c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(a)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function r(s){let a=new i;return s.contains.forEach(l=>a.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&a.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&a.addRule(s.illegal,{type:"illegal"}),a}function o(s,a){let l=s;if(s.isCompiled)return l;[cl,pl,wl,hl].forEach(c=>c(s,a)),n.compilerExtensions.forEach(c=>c(s,a)),s.__beforeBegin=null,[ul,dl,gl].forEach(c=>c(s,a)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=Or(s.keywords,n.case_insensitive)),l.keywordPatternRe=e(u,!0),a&&(s.begin||(s.begin=/\B|\b/),l.beginRe=e(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=e(l.end)),l.terminatorEnd=Ft(l.end)||"",s.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+a.terminatorEnd)),s.illegal&&(l.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return Al(c==="self"?s:c)})),s.contains.forEach(function(c){o(c,l)}),s.starts&&o(s.starts,a),l.matcher=r(l),l}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=nt(n.classNameAliases||{}),o(n)}function Cr(n){return n?n.endsWithParent||Cr(n.starts):!1}function Al(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return nt(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Cr(n)?nt(n,{starts:n.starts?nt(n.starts):null}):Object.isFrozen(n)?nt(n):n}var Sl="11.11.1",ri=class extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}},ei=wr,Er=nt,yr=Symbol("nomatch"),Nl=7,Mr=function(n){let e=Object.create(null),t=Object.create(null),i=[],r=!0,o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]},a={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:ii};function l(f){return a.noHighlightRe.test(f)}function u(f){let S=f.className+" ";S+=f.parentNode?f.parentNode.className:"";let N=a.languageDetectRe.exec(S);if(N){let $=q(N[1]);return $||(_r(o.replace("{}",N[1])),_r("Falling back to no-highlight mode for this block.",f)),$?N[1]:"no-highlight"}return S.split(/\s+/).find($=>l($)||q($))}function c(f,S,N){let $="",w="";typeof S=="object"?($=f,N=S.ignoreIllegals,w=S.language):(wt("10.7.0","highlight(lang, code, ...args) has been deprecated."),wt("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),w=f,$=S),N===void 0&&(N=!0);let m={code:$,language:w};te("before:highlight",m);let E=m.result?m.result:g(m.language,m.code,N);return E.code=m.code,te("after:highlight",E),E}function g(f,S,N,$){let w=Object.create(null);function m(y,x){return y.keywords[x]}function E(){if(!L.keywords){le.addText(X);return}let y=0;L.keywordPatternRe.lastIndex=0;let x=L.keywordPatternRe.exec(X),z="";for(;x;){z+=X.substring(y,x.index);let Y=fe.case_insensitive?x[0].toLowerCase():x[0],ce=m(L,Y);if(ce){let[ke,ft]=ce;if(le.addText(z),z="",w[Y]=(w[Y]||0)+1,w[Y]<=Nl&&(ht+=ft),ke.startsWith("_"))z+=x[0];else{let mt=fe.classNameAliases[ke]||ke;A(x[0],mt)}}else z+=x[0];y=L.keywordPatternRe.lastIndex,x=L.keywordPatternRe.exec(X)}z+=X.substring(y),le.addText(z)}function T(){if(X==="")return;let y=null;if(typeof L.subLanguage=="string"){if(!e[L.subLanguage]){le.addText(X);return}y=g(L.subLanguage,X,!0,Fe[L.subLanguage]),Fe[L.subLanguage]=y._top}else y=h(X,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(ht+=y.relevance),le.__addSublanguage(y._emitter,y.language)}function R(){L.subLanguage!=null?T():E(),X=""}function A(y,x){y!==""&&(le.startScope(x),le.addText(y),le.endScope())}function ie(y,x){let z=1,Y=x.length-1;for(;z<=Y;){if(!y._emit[z]){z++;continue}let ce=fe.classNameAliases[y[z]]||y[z],ke=x[z];ce?A(ke,ce):(X=ke,E(),X=""),z++}}function Ae(y,x){return y.scope&&typeof y.scope=="string"&&le.openNode(fe.classNameAliases[y.scope]||y.scope),y.beginScope&&(y.beginScope._wrap?(A(X,fe.classNameAliases[y.beginScope._wrap]||y.beginScope._wrap),X=""):y.beginScope._multi&&(ie(y.beginScope,x),X="")),L=Object.create(y,{parent:{value:L}}),L}function ze(y,x,z){let Y=Ga(y.endRe,z);if(Y){if(y["on:end"]){let ce=new hn(y);y["on:end"](x,ce),ce.isMatchIgnored&&(Y=!1)}if(Y){for(;y.endsParent&&y.parent;)y=y.parent;return y}}if(y.endsWithParent)return ze(y.parent,x,z)}function rt(y){return L.matcher.regexIndex===0?(X+=y[0],1):($e=!0,0)}function pt(y){let x=y[0],z=y.rule,Y=new hn(z),ce=[z.__beforeBegin,z["on:begin"]];for(let ke of ce)if(ke&&(ke(y,Y),Y.isMatchIgnored))return rt(x);return z.skip?X+=x:(z.excludeBegin&&(X+=x),R(),!z.returnBegin&&!z.excludeBegin&&(X=x)),Ae(z,y),z.returnBegin?0:x.length}function gt(y){let x=y[0],z=S.substring(y.index),Y=ze(L,y,z);if(!Y)return yr;let ce=L;L.endScope&&L.endScope._wrap?(R(),A(x,L.endScope._wrap)):L.endScope&&L.endScope._multi?(R(),ie(L.endScope,y)):ce.skip?X+=x:(ce.returnEnd||ce.excludeEnd||(X+=x),R(),ce.excludeEnd&&(X=x));do L.scope&&le.closeNode(),!L.skip&&!L.subLanguage&&(ht+=L.relevance),L=L.parent;while(L!==Y.parent);return Y.starts&&Ae(Y.starts,y),ce.returnEnd?0:x.length}function De(){let y=[];for(let x=L;x!==fe;x=x.parent)x.scope&&y.unshift(x.scope);y.forEach(x=>le.openNode(x))}let Me={};function Ne(y,x){let z=x&&x[0];if(X+=y,z==null)return R(),0;if(Me.type==="begin"&&x.type==="end"&&Me.index===x.index&&z===""){if(X+=S.slice(x.index,x.index+1),!r){let Y=new Error(`0 width match regex (${f})`);throw Y.languageName=f,Y.badRule=Me.rule,Y}return 1}if(Me=x,x.type==="begin")return pt(x);if(x.type==="illegal"&&!N){let Y=new Error('Illegal lexeme "'+z+'" for mode "'+(L.scope||"")+'"');throw Y.mode=L,Y}else if(x.type==="end"){let Y=gt(x);if(Y!==yr)return Y}if(x.type==="illegal"&&z==="")return X+=` +`,1;if(He>1e5&&He>x.index*3)throw new Error("potential infinite loop, way more iterations than matches");return X+=z,z.length}let fe=q(f);if(!fe)throw lt(o.replace("{}",f)),new Error('Unknown language: "'+f+'"');let Z=Tl(fe),_e="",L=$||Z,Fe={},le=new a.__emitter(a);De();let X="",ht=0,Ie=0,He=0,$e=!1;try{if(fe.__emitTokens)fe.__emitTokens(S,le);else{for(L.matcher.considerAll();;){He++,$e?$e=!1:L.matcher.considerAll(),L.matcher.lastIndex=Ie;let y=L.matcher.exec(S);if(!y)break;let x=S.substring(Ie,y.index),z=Ne(x,y);Ie=y.index+z}Ne(S.substring(Ie))}return le.finalize(),_e=le.toHTML(),{language:f,value:_e,relevance:ht,illegal:!1,_emitter:le,_top:L}}catch(y){if(y.message&&y.message.includes("Illegal"))return{language:f,value:ei(S),illegal:!0,relevance:0,_illegalBy:{message:y.message,index:Ie,context:S.slice(Ie-100,Ie+100),mode:y.mode,resultSoFar:_e},_emitter:le};if(r)return{language:f,value:ei(S),illegal:!1,relevance:0,errorRaised:y,_emitter:le,_top:L};throw y}}function p(f){let S={value:ei(f),illegal:!1,relevance:0,_top:s,_emitter:new a.__emitter(a)};return S._emitter.addText(f),S}function h(f,S){S=S||a.languages||Object.keys(e);let N=p(f),$=S.filter(q).filter(de).map(R=>g(R,f,!1));$.unshift(N);let w=$.sort((R,A)=>{if(R.relevance!==A.relevance)return A.relevance-R.relevance;if(R.language&&A.language){if(q(R.language).supersetOf===A.language)return 1;if(q(A.language).supersetOf===R.language)return-1}return 0}),[m,E]=w,T=m;return T.secondBest=E,T}function b(f,S,N){let $=S&&t[S]||N;f.classList.add("hljs"),f.classList.add(`language-${$}`)}function v(f){let S=null,N=u(f);if(l(N))return;if(te("before:highlightElement",{el:f,language:N}),f.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",f);return}if(f.children.length>0&&(a.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(f)),a.throwUnescapedHTML))throw new ri("One of your code blocks includes unescaped HTML.",f.innerHTML);S=f;let $=S.textContent,w=N?c($,{language:N,ignoreIllegals:!0}):h($);f.innerHTML=w.value,f.dataset.highlighted="yes",b(f,N,w.language),f.result={language:w.language,re:w.relevance,relevance:w.relevance},w.secondBest&&(f.secondBest={language:w.secondBest.language,relevance:w.secondBest.relevance}),te("after:highlightElement",{el:f,result:w,text:$})}function k(f){a=Er(a,f)}let M=()=>{C(),wt("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function P(){C(),wt("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let U=!1;function C(){function f(){C()}if(document.readyState==="loading"){U||window.addEventListener("DOMContentLoaded",f,!1),U=!0;return}document.querySelectorAll(a.cssSelector).forEach(v)}function B(f,S){let N=null;try{N=S(n)}catch($){if(lt("Language definition for '{}' could not be registered.".replace("{}",f)),r)lt($);else throw $;N=s}N.name||(N.name=f),e[f]=N,N.rawDefinition=S.bind(null,n),N.aliases&&J(N.aliases,{languageName:f})}function D(f){delete e[f];for(let S of Object.keys(t))t[S]===f&&delete t[S]}function oe(){return Object.keys(e)}function q(f){return f=(f||"").toLowerCase(),e[f]||e[t[f]]}function J(f,{languageName:S}){typeof f=="string"&&(f=[f]),f.forEach(N=>{t[N.toLowerCase()]=S})}function de(f){let S=q(f);return S&&!S.disableAutodetect}function V(f){f["before:highlightBlock"]&&!f["before:highlightElement"]&&(f["before:highlightElement"]=S=>{f["before:highlightBlock"](Object.assign({block:S.el},S))}),f["after:highlightBlock"]&&!f["after:highlightElement"]&&(f["after:highlightElement"]=S=>{f["after:highlightBlock"](Object.assign({block:S.el},S))})}function pe(f){V(f),i.push(f)}function he(f){let S=i.indexOf(f);S!==-1&&i.splice(S,1)}function te(f,S){let N=f;i.forEach(function($){$[N]&&$[N](S)})}function se(f){return wt("10.7.0","highlightBlock will be removed entirely in v12.0"),wt("10.7.0","Please use highlightElement now."),v(f)}Object.assign(n,{highlight:c,highlightAuto:h,highlightAll:C,highlightElement:v,highlightBlock:se,configure:k,initHighlighting:M,initHighlightingOnLoad:P,registerLanguage:B,unregisterLanguage:D,listLanguages:oe,getLanguage:q,registerAliases:J,autoDetection:de,inherit:Er,addPlugin:pe,removePlugin:he}),n.debugMode=function(){r=!1},n.safeMode=function(){r=!0},n.versionString=Sl,n.regex={concat:ct,lookahead:Tr,either:si,optional:Fa,anyNumberOfTimes:za};for(let f in gn)typeof gn[f]=="object"&&vr(gn[f]);return Object.assign(n,gn),n},Tt=Mr({});Tt.newInstance=()=>Mr({});Ir.exports=Tt;Tt.HighlightJS=Tt;Tt.default=Tt});var $r=H((jd,Dr)=>{function kl(n){let e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),i=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),a=n.inherit(n.APOS_STRING_MODE,{className:"string"}),l=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),u={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:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,l,a]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:u}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}Dr.exports=kl});var Ur=H((ep,Pr)=>{function xl(n){let e=n.regex,t={},i={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},i]});let r={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,r]};r.contains.push(a);let l={match:/\\"/},u={className:"string",begin:/'/,end:/'/},c={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],h=n.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],M={match:/(\/[a-z._-]+)+/},P=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],U=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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"],B=["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:v,literal:k,built_in:[...P,...U,"set","shopt",...C,...B]},contains:[h,n.SHEBANG(),b,g,o,s,M,a,l,u,c,t]}}Pr.exports=xl});var zr=H((tp,Br)=>{function Ol(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",k={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"},M=[g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],P={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:k,contains:M.concat([{begin:/\(/,end:/\)/,keywords:k,contains:M.concat(["self"]),relevance:0}]),relevance:0},U={begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:k,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:k,relevance:0},{begin:h,returnBegin:!0,contains:[n.inherit(p,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:k,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C",aliases:["h"],keywords:k,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:g,strings:u,keywords:k}}}Br.exports=Ol});var Hr=H((np,Fr)=>{function Rl(n){let e=n.regex,t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),i="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",s="(?!struct)("+i+"|"+e.optional(r)+"[a-zA-Z_]\\w*"+e.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.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:"."},n.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},c={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},g={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},n.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},p={className:"title",begin:e.optional(r)+n.IDENT_RE,relevance:0},h=e.optional(r)+n.IDENT_RE+"\\s*\\(",b=["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"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],k=["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"],M=["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"],C={type:v,keyword:b,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:k},B={className:"function.dispatch",relevance:0,keywords:{_hint:M},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,n.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))},D=[B,g,a,t,n.C_BLOCK_COMMENT_MODE,c,u],oe={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:C,contains:D.concat([{begin:/\(/,end:/\)/,keywords:C,contains:D.concat(["self"]),relevance:0}]),relevance:0},q={className:"function",begin:"("+s+"[\\*&\\s]+)+"+h,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:C,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:i,keywords:C,relevance:0},{begin:h,returnBegin:!0,contains:[p],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,c]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:[t,n.C_BLOCK_COMMENT_MODE,u,c,a,{begin:/\(/,end:/\)/,keywords:C,relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,u,c,a]}]},a,t,n.C_BLOCK_COMMENT_MODE,g]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:C,illegal:"",keywords:C,contains:["self",a]},{begin:n.IDENT_RE+"::",keywords:C},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}Fr.exports=Rl});var qr=H((ip,Gr)=>{function Cl(n){let e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],t=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],i=["default","false","null","true"],r=["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"],o=["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"],s={keyword:r.concat(o),built_in:e,literal:i},a=n.inherit(n.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},g=n.inherit(c,{illegal:/\n/}),p={className:"subst",begin:/\{/,end:/\}/,keywords:s},h=n.inherit(p,{illegal:/\n/}),b={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},n.BACKSLASH_ESCAPE,h]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]},k=n.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},h]});p.contains=[v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.C_BLOCK_COMMENT_MODE],h.contains=[k,b,g,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,l,n.inherit(n.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];let M={variants:[u,v,b,c,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},P={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},U=n.IDENT_RE+"(<"+n.IDENT_RE+"(\\s*,\\s*"+n.IDENT_RE+")*>)?(\\[\\])?",C={begin:"@"+n.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[n.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:""},{begin:""}]}]}),n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},M,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,P,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,P,n.C_LINE_COMMENT_MODE,n.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:"("+U+"\\s+)+"+n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:t.join(" "),relevance:0},{begin:n.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[n.TITLE_MODE,P],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[M,l,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},C]}}Gr.exports=Cl});var Wr=H((rp,Kr)=>{var Ml=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),Il=["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"],Ll=["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"],Dl=[...Il,...Ll],$l=["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(),Pl=["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(),Ul=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Bl=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function zl(n){let e=n.regex,t=Ml(n),i={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,i,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Pl.join("|")+")"},{begin:":(:)?("+Ul.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Bl.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:$l.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Dl.join("|")+")\\b"}]}}Kr.exports=zl});var Yr=H((sp,Zr)=>{function Fl(n){let e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},i={begin:"^[-\\*]{3,}",end:"$"},r={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}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},c={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(u,{contains:[]}),p=n.inherit(c,{contains:[]});u.contains.push(p),c.contains.push(g);let h=[t,l];return[u,c,g,p].forEach(M=>{M.contains=M.contains.concat(h)}),h=h.concat(u,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:h},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:h}]}]},t,o,u,c,{className:"quote",begin:"^>\\s+",contains:h,end:"$"},r,i,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}Zr.exports=Fl});var Xr=H((op,Vr)=>{function Hl(n){let e=n.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}Vr.exports=Hl});var Jr=H((ap,Qr)=>{function Gl(n){let e=n.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),r=e.concat(i,/(::\w+)*/),s={"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"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},u=[n.COMMENT("#","$",{contains:[a]}),n.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),n.COMMENT("^__END__",n.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:s},g={className:"string",contains:[n.BACKSLASH_ESCAPE,c],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:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[n.BACKSLASH_ESCAPE,c]})]}]},p="[1-9](_?[0-9])*|0",h="[0-9](_?[0-9])*",b={className:"number",relevance:0,variants:[{begin:`\\b(${p})(\\.(${h}))?([eE][+-]?(${h})|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"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},D=[g,{variants:[{match:[/class\s+/,r,/\s+<\s+/,r]},{match:[/\b(class|module)\s+/,r]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,r],scope:{2:"title.class"},keywords:s},{relevance:0,match:[r,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:i,scope:"title.class"},{match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:n.IDENT_RE+"::"},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[g,{begin:t}],relevance:0},b,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],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(l,u),relevance:0}].concat(l,u);c.contains=D,v.contains=D;let de=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:D}}];return u.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[n.SHEBANG({binary:"ruby"})].concat(de).concat(u).concat(D)}}Qr.exports=Gl});var es=H((lp,jr)=>{function ql(n){let o={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:o,illegal:"{function Kl(n){let e=n.regex,t=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[n.HASH_COMMENT_MODE,n.QUOTE_STRING_MODE,n.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:e.concat(t,e.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}ts.exports=Kl});var rs=H((up,is)=>{function Wl(n){let e=n.regex,t={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:n.NUMBER_RE}]},i=n.COMMENT();i.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];let r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[i,o,r,s,t,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,g=e.either(l,u,c),p=e.concat(g,"(\\s*\\.\\s*",g,")*",e.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[i,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[i,a,o,r,s,t]}}]}}is.exports=Wl});var ls=H((dp,as)=>{var At="[0-9](_*[0-9])*",bn=`\\.(${At})`,_n="[0-9a-fA-F](_*[0-9a-fA-F])*",ss={className:"number",variants:[{begin:`(\\b(${At})((${bn})|\\.)?|(${bn}))[eE][+-]?(${At})[fFdD]?\\b`},{begin:`\\b(${At})((${bn})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${bn})[fFdD]?\\b`},{begin:`\\b(${At})[fFdD]\\b`},{begin:`\\b0[xX]((${_n})\\.?|(${_n})?\\.(${_n}))[pP][+-]?(${At})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${_n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function os(n,e,t){return t===-1?"":n.replace(e,i=>os(n,e,t-1))}function Zl(n){let e=n.regex,t="[\xC0-\u02B8a-zA-Z_$][\xC0-\u02B8a-zA-Z_$0-9]*",i=t+os("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),l={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"]},u={className:"meta",begin:"@"+t,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[n.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[n.BACKSLASH_ESCAPE]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",3:"title.class"},contains:[c,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",n.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,ss,n.C_BLOCK_COMMENT_MODE]},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},ss,u]}}as.exports=Zl});var hs=H((pp,gs)=>{var cs="[A-Za-z$_][0-9A-Za-z$_]*",Yl=["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"],Vl=["true","false","null","undefined","NaN","Infinity"],us=["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"],ds=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ps=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xl=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Ql=[].concat(ps,us,ds);function Jl(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:cs,keyword:Yl,literal:Vl,built_in:Ql,"variable.language":Xl},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...us,...ds]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...ps,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}gs.exports=Jl});var ms=H((gp,fs)=>{function jl(n){let e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},i=["true","false","null"],r={scope:"literal",beginKeywords:i.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:i},contains:[e,t,n.QUOTE_STRING_MODE,r,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}fs.exports=jl});var _s=H((hp,bs)=>{var St="[0-9](_*[0-9])*",En=`\\.(${St})`,yn="[0-9a-fA-F](_*[0-9a-fA-F])*",ec={className:"number",variants:[{begin:`(\\b(${St})((${En})|\\.)?|(${En}))[eE][+-]?(${St})[fFdD]?\\b`},{begin:`\\b(${St})((${En})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${En})[fFdD]?\\b`},{begin:`\\b(${St})[fFdD]\\b`},{begin:`\\b0[xX]((${yn})\\.?|(${yn})?\\.(${yn}))[pP][+-]?(${St})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${yn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tc(n){let e={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"},t={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},i={className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"@"},r={className:"subst",begin:/\$\{/,end:/\}/,contains:[n.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+n.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,r]},{begin:"'",end:"'",illegal:/\n/,contains:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[n.BACKSLASH_ESCAPE,o,r]}]};r.contains.push(s);let a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+n.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+n.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[n.inherit(s,{className:"string"}),"self"]}]},u=ec,c=n.COMMENT("/\\*","\\*/",{contains:[n.C_BLOCK_COMMENT_MODE]}),g={variants:[{className:"type",begin:n.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=g;return p.variants[1].contains=[g],g.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[n.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),n.C_LINE_COMMENT_MODE,c,t,i,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:e,relevance:5,contains:[{begin:n.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[n.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[g,n.C_LINE_COMMENT_MODE,c],relevance:0},n.C_LINE_COMMENT_MODE,c,a,l,s,n.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,n.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},n.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:` +`},u]}}bs.exports=tc});var ws=H((fp,vs)=>{var nc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),ic=["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"],rc=["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"],sc=[...ic,...rc],oc=["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(),Es=["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(),ys=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ac=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),lc=Es.concat(ys).sort().reverse();function cc(n){let e=nc(n),t=lc,i="and or not only",r="[\\w-]+",o="("+r+"|@\\{"+r+"\\})",s=[],a=[],l=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},u=function(U,C,B){return{className:U,begin:C,relevance:B}},c={$pattern:/[a-z-]+/,keyword:i,attribute:oc.join(" ")},g={begin:"\\(",end:"\\)",contains:a,keywords:c,relevance:0};a.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,l("'"),l('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},e.HEXCOLOR,g,u("variable","@@?"+r,10),u("variable","@\\{"+r+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:r+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);let p=a.concat({begin:/\{/,end:/\}/,contains:s}),h={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},b={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ac.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:c,returnEnd:!0,contains:a,relevance:0}},k={className:"variable",variants:[{begin:"@"+r+"\\s*:",relevance:15},{begin:"@"+r}],starts:{end:"[;}]",returnEnd:!0,contains:p}},M={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,h,u("keyword","all\\b"),u("variable","@\\{"+r+"\\}"),{begin:"\\b("+sc.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,u("selector-tag",o,0),u("selector-id","#"+o),u("selector-class","\\."+o,0),u("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+Es.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ys.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:p},{begin:"!important"},e.FUNCTION_DISPATCH]},P={begin:r+`:(:)?(${t.join("|")})`,returnBegin:!0,contains:[M]};return s.push(n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,v,k,P,b,M,h,e.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}vs.exports=cc});var As=H((mp,Ts)=>{function uc(n){let e="\\[=*\\[",t="\\]=*\\]",i={begin:e,end:t,contains:["self"]},r=[n.COMMENT("--(?!"+e+")","$"),n.COMMENT("--"+e,t,{contains:[i],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:n.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:r.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[n.inherit(n.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:r}].concat(r)},n.C_NUMBER_MODE,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,{className:"string",begin:e,end:t,contains:[i],relevance:5}])}}Ts.exports=uc});var Ns=H((bp,Ss)=>{function dc(n){let e={className:"variable",variants:[{begin:"\\$\\("+n.UNDERSCORE_IDENT_RE+"\\)",contains:[n.BACKSLASH_ESCAPE]},{begin:/\$[@%{function pc(n){let e=n.regex,t=["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"],i=/[dualxmsipngr]{0,12}/,r={$pattern:/[\w.]+/,keyword:t.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:r},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},u={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},c=[n.BACKSLASH_ESCAPE,o,l],g=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],p=(v,k,M="\\1")=>{let P=M==="\\1"?M:e.concat(M,k);return e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,P,/(?:\\.|[^\\\/])*?/,M,i)},h=(v,k,M)=>e.concat(e.concat("(?:",v,")"),k,/(?:\\.|[^\\\/])*?/,M,i),b=[l,n.HASH_COMMENT_MODE,n.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:c,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:[n.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+n.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[n.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:p("s|tr|y",e.either(...g,{capture:!0}))},{begin:p("s|tr|y","\\(","\\)")},{begin:p("s|tr|y","\\[","\\]")},{begin:p("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:h("(?:m|qr)?",/\//,/\//)},{begin:h("m|qr",e.either(...g,{capture:!0}),/\1/)},{begin:h("m|qr",/\(/,/\)/)},{begin:h("m|qr",/\[/,/\]/)},{begin:h("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[n.TITLE_MODE,a,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=b,s.contains=b,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:b}}ks.exports=pc});var Rs=H((Ep,Os)=>{function gc(n){let e={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+"},t=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:t,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"]},l={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"/,end:/$/,illegal:"\\n"},n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[n.UNDERSCORE_TITLE_MODE]},{begin:"\\."+n.UNDERSCORE_IDENT_RE,relevance:0}]}}Os.exports=gc});var Ms=H((yp,Cs)=>{function hc(n){let e=n.regex,t=/(?![A-Za-z0-9])(?![$])/,i=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,t),r=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,t),o=e.concat(/[A-Z]+/,t),s={scope:"variable",match:"\\$+"+i},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=n.inherit(n.APOS_STRING_MODE,{illegal:null}),c=n.inherit(n.QUOTE_STRING_MODE,{illegal:null,contains:n.QUOTE_STRING_MODE.contains.concat(l)}),g={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:n.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(te,se)=>{se.data._beginMatch=te[1]||te[2]},"on:end":(te,se)=>{se.data._beginMatch!==te[1]&&se.ignoreMatch()}},p=n.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),h=`[ +]`,b={scope:"string",variants:[c,u,g,p]},v={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},k=["false","null","true"],M=["__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"],P=["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"],C={keyword:M,literal:(te=>{let se=[];return te.forEach(f=>{se.push(f),f.toLowerCase()===f?se.push(f.toUpperCase()):se.push(f.toLowerCase())}),se})(k),built_in:P},B=te=>te.map(se=>se.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,e.concat(h,"+"),e.concat("(?!",B(P).join("\\b|"),"\\b)"),r],scope:{1:"keyword",4:"title.class"}}]},oe=e.concat(i,"\\b(?!\\()"),q={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[r,e.concat(/::/,e.lookahead(/(?!class\b)/)),oe],scope:{1:"title.class",3:"variable.constant"}},{match:[r,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[r,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},J={scope:"attr",match:e.concat(i,e.lookahead(":"),e.lookahead(/(?!::)/))},de={relevance:0,begin:/\(/,end:/\)/,keywords:C,contains:[J,s,q,n.C_BLOCK_COMMENT_MODE,b,v,D]},V={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",B(M).join("\\b|"),"|",B(P).join("\\b|"),"\\b)"),i,e.concat(h,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[de]};de.contains.push(V);let pe=[J,q,n.C_BLOCK_COMMENT_MODE,b,v,D],he={begin:e.concat(/#\[\s*\\?/,e.either(r,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:k,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:k,keyword:["new","array"]},contains:["self",...pe]},...pe,{scope:"meta",variants:[{match:r},{match:o}]}]};return{case_insensitive:!1,keywords:C,contains:[he,n.HASH_COMMENT_MODE,n.COMMENT("//","$"),n.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:n.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,V,q,{match:[/const/,/\s/,i],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},n.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:C,contains:["self",he,s,q,n.C_BLOCK_COMMENT_MODE,b,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},n.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[n.inherit(n.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},n.UNDERSCORE_TITLE_MODE]},b,v]}}Cs.exports=hc});var Ls=H((vp,Is)=>{function fc(n){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},n.inherit(n.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),n.inherit(n.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}Is.exports=fc});var $s=H((wp,Ds)=>{function mc(n){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}Ds.exports=mc});var Us=H((Tp,Ps)=>{function bc(n){let e=n.regex,t=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=["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"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:i,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"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},c={begin:/\{\{/,relevance:0},g={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,l,c,u]},{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:[n.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,c,u]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",h=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,b=`\\b|${i.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${h}))[eE][+-]?(${p})[jJ]?(?=${b})`},{begin:`(${h})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${p})[jJ](?=${b})`}]},k={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},M={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,v,g,n.HASH_COMMENT_MODE]}]};return u.contains=[g,v,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},g,k,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[M]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,M,g]}]}}Ps.exports=bc});var zs=H((Ap,Bs)=>{function _c(n){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}Bs.exports=_c});var Hs=H((Sp,Fs)=>{function Ec(n){let e=n.regex,t=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,i=e.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]?/),r=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:t,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:[n.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:t},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),n.HASH_COMMENT_MODE,{scope:"string",contains:[n.BACKSLASH_ESCAPE],variants:[n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),n.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[r,i]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,i]},{scope:{1:"punctuation",2:"number"},match:[o,i]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,i]}]},{scope:{3:"operator"},match:[t,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:r},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}Fs.exports=Ec});var qs=H((Np,Gs)=>{function yc(n){let e=n.regex,t=/(r#)?/,i=e.concat(t,n.UNDERSCORE_IDENT_RE),r=e.concat(t,n.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,e.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["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"],l=["true","false","Some","None","Ok","Err"],u=["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!"],c=["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:n.IDENT_RE+"!?",type:c,keyword:a,literal:l,built_in:u},illegal:""},o]}}Gs.exports=yc});var Ws=H((kp,Ks)=>{var vc=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.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_-]*/}}),wc=["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"],Tc=["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"],Ac=[...wc,...Tc],Sc=["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(),Nc=["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(),kc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Oc(n){let e=vc(n),t=kc,i=Nc,r="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Ac.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+i.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+t.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xc.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:[e.BLOCK_COMMENT,a,e.HEXCOLOR,e.CSS_NUMBER_MODE,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:r,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:Sc.join(" ")},contains:[{begin:r,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}Ks.exports=Oc});var Ys=H((xp,Zs)=>{function Rc(n){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}Zs.exports=Rc});var Xs=H((Op,Vs)=>{function Cc(n){let e=n.regex,t=n.COMMENT("--","$"),i={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["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"],l=["add","asc","collation","desc","final","first","last","view"],u=["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"],c=["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"],g=["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"],p=["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"],h=c,b=[...u,...l].filter(B=>!c.includes(B)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},M={match:e.concat(/\b/,e.either(...h),/\s*\(/),relevance:0,keywords:{built_in:h}};function P(B){return e.concat(/\b/,e.either(...B.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}let U={scope:"keyword",match:P(p),relevance:0};function C(B,{exceptions:D,when:oe}={}){let q=oe;return D=D||[],B.map(J=>J.match(/\|\d+$/)||D.includes(J)?J:q(J)?`${J}|0`:J)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(b,{when:B=>B.length<3}),literal:o,type:a,built_in:g},contains:[{scope:"type",match:P(s)},U,M,v,i,r,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,k]}}Vs.exports=Cc});var so=H((Rp,ro)=>{function eo(n){return n?typeof n=="string"?n:n.source:null}function Gt(n){return j("(?=",n,")")}function j(...n){return n.map(t=>eo(t)).join("")}function Mc(n){let e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ee(...n){return"("+(Mc(n).capture?"":"?:")+n.map(i=>eo(i)).join("|")+")"}var ui=n=>j(/\b/,n,/\w$/.test(n)?/\b/:/\B/),Ic=["Protocol","Type"].map(ui),Qs=["init","self"].map(ui),Lc=["Any","Self"],li=["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"],Js=["false","nil","true"],Dc=["assignment","associativity","higherThan","left","lowerThan","none","right"],$c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],js=["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"],to=Ee(/[/=\-+!*%<>&|^~?]/,/[\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]/),no=Ee(to,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ci=j(to,no,"*"),io=Ee(/[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]/),wn=Ee(io,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=j(io,wn,"*"),vn=j(/[A-Z]/,wn,"*"),Pc=["attached","autoclosure",j(/convention\(/,Ee("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",j(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uc=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Bc(n){let e={match:/\s+/,relevance:0},t=n.COMMENT("/\\*","\\*/",{contains:["self"]}),i=[n.C_LINE_COMMENT_MODE,t],r={match:[/\./,Ee(...Ic,...Qs)],className:{2:"keyword"}},o={match:j(/\./,Ee(...li)),relevance:0},s=li.filter(Z=>typeof Z=="string").concat(["_|0"]),a=li.filter(Z=>typeof Z!="string").concat(Lc).map(ui),l={variants:[{className:"keyword",match:Ee(...a,...Qs)}]},u={$pattern:Ee(/\b\w+/,/#\w+/),keyword:s.concat($c),literal:Js},c=[r,o,l],g={match:j(/\./,Ee(...js)),relevance:0},p={className:"built_in",match:j(/\b/,Ee(...js),/(?=\()/)},h=[g,p],b={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ci},{match:`\\.(\\.|${no})+`}]},k=[b,v],M="([0-9]_*)+",P="([0-9a-fA-F]_*)+",U={className:"number",relevance:0,variants:[{match:`\\b(${M})(\\.(${M}))?([eE][+-]?(${M}))?\\b`},{match:`\\b0x(${P})(\\.(${P}))?([pP][+-]?(${M}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},C=(Z="")=>({className:"subst",variants:[{match:j(/\\/,Z,/[0\\tnr"']/)},{match:j(/\\/,Z,/u\{[0-9a-fA-F]{1,8}\}/)}]}),B=(Z="")=>({className:"subst",match:j(/\\/,Z,/[\t ]*(?:[\r\n]|\r\n)/)}),D=(Z="")=>({className:"subst",label:"interpol",begin:j(/\\/,Z,/\(/),end:/\)/}),oe=(Z="")=>({begin:j(Z,/"""/),end:j(/"""/,Z),contains:[C(Z),B(Z),D(Z)]}),q=(Z="")=>({begin:j(Z,/"/),end:j(/"/,Z),contains:[C(Z),D(Z)]}),J={className:"string",variants:[oe(),oe("#"),oe("##"),oe("###"),q(),q("#"),q("##"),q("###")]},de=[n.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[n.BACKSLASH_ESCAPE]}],V={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:de},pe=Z=>{let _e=j(Z,/\//),L=j(/\//,Z);return{begin:_e,end:L,contains:[...de,{scope:"comment",begin:`#(?!.*${L})`,end:/$/}]}},he={scope:"regexp",variants:[pe("###"),pe("##"),pe("#"),V]},te={match:j(/`/,Be,/`/)},se={className:"variable",match:/\$\d+/},f={className:"variable",match:`\\$${wn}+`},S=[te,se,f],N={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uc,contains:[...k,U,J]}]}},$={scope:"keyword",match:j(/@/,Ee(...Pc),Gt(Ee(/\(/,/\s+/)))},w={scope:"meta",match:j(/@/,Be)},m=[N,$,w],E={match:Gt(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:j(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,wn,"+")},{className:"type",match:vn,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:j(/\s+&\s+/,Gt(vn)),relevance:0}]},T={begin://,keywords:u,contains:[...i,...c,...m,b,E]};E.contains.push(T);let R={match:j(Be,/\s*:/),keywords:"_|0",relevance:0},A={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",R,...i,he,...c,...h,...k,U,J,...S,...m,E]},ie={begin://,keywords:"repeat each",contains:[...i,E]},Ae={begin:Ee(Gt(j(Be,/\s*:/)),Gt(j(Be,/\s+/,Be,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Be}]},ze={begin:/\(/,end:/\)/,keywords:u,contains:[Ae,...i,...c,...k,U,J,...m,E,A],endsParent:!0,illegal:/["']/},rt={match:[/(func|macro)/,/\s+/,Ee(te.match,Be,ci)],className:{1:"keyword",3:"title.function"},contains:[ie,ze,e],illegal:[/\[/,/%/]},pt={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ie,ze,e],illegal:/\[|%/},gt={match:[/operator/,/\s+/,ci],className:{1:"keyword",3:"title"}},De={begin:[/precedencegroup/,/\s+/,vn],className:{1:"keyword",3:"title"},contains:[E],keywords:[...Dc,...Js],end:/}/},Me={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},fe={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Be,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ie,...c,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:vn},...c],relevance:0}]};for(let Z of J.variants){let _e=Z.contains.find(Fe=>Fe.label==="interpol");_e.keywords=u;let L=[...c,...h,...k,U,J,...S];_e.contains=[...L,{begin:/\(/,end:/\)/,contains:["self",...L]}]}return{name:"Swift",keywords:u,contains:[...i,rt,pt,Me,Ne,fe,gt,De,{beginKeywords:"import",end:/$/,contains:[...i],relevance:0},he,...c,...h,...k,U,J,...S,...m,E,A]}}ro.exports=Bc});var ao=H((Cp,oo)=>{function zc(n){let e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",i={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,r]},a=n.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={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"},h={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[h],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[h],illegal:"\\n",relevance:0},k=[i,{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+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},p,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],M=[...k];return M.pop(),M.push(a),h.contains=M,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}oo.exports=zc});var bo=H((Mp,mo)=>{var Tn="[A-Za-z$_][0-9A-Za-z$_]*",lo=["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"],co=["true","false","null","undefined","NaN","Infinity"],uo=["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"],po=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],go=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],ho=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fo=[].concat(go,uo,po);function Fc(n){let e=n.regex,t=(N,{after:$})=>{let w="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(N,$)=>{let w=N[0].length+N.index,m=N.input[w];if(m==="<"||m===","){$.ignoreMatch();return}m===">"&&(t(N,{after:w})||$.ignoreMatch());let E,T=N.input.substring(w);if(E=T.match(/^\s*=/)){$.ignoreMatch();return}if((E=T.match(/^\s+extends\s+/))&&E.index===0){$.ignoreMatch();return}}},a={$pattern:Tn,keyword:lo,literal:co,built_in:fo,"variable.language":ho},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\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},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},h={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,p]},P={className:"comment",variants:[n.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:i+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},U=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,{match:/\$\d+/},g];p.contains=U.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(U)});let C=[].concat(P,p.contains),B=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B},oe={variants:[{match:[/class/,/\s+/,i,/\s+/,/extends/,/\s+/,e.concat(i,"(",e.concat(/\./,i),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,i],scope:{1:"keyword",3:"title.class"}}]},q={relevance:0,match:e.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:{_:[...uo,...po]}},J={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},de={variants:[{match:[/function/,/\s+/,i,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},V={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function pe(N){return e.concat("(?!",N.join("|"),")")}let he={match:e.concat(/\b/,pe([...go,"super","import"].map(N=>`${N}\\s*\\(`)),i,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},te={begin:e.concat(/\./,e.lookahead(e.concat(i,/(?![0-9A-Za-z$_(])/))),end:i,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},se={match:[/get|set/,/\s+/,i,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},f="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,i,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(f)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:B,CLASS_REFERENCE:q},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),J,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,h,b,v,k,P,{match:/\$\d+/},g,q,{scope:"attr",match:i+e.lookahead(":"),relevance:0},S,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[P,n.REGEXP_MODE,{className:"function",begin:f,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:B}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},de,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,n.inherit(n.TITLE_MODE,{begin:i,className:"title.function"})]},{match:/\.\.\./,relevance:0},te,{match:"\\$"+i,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},he,V,oe,se,{match:/\$[(.]/}]}}function Hc(n){let e=n.regex,t=Fc(n),i=Tn,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[t.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:Tn,keyword:lo.concat(l),literal:co,built_in:fo.concat(r),"variable.language":ho},c={className:"meta",begin:"@"+i},g=(v,k,M)=>{let P=v.contains.findIndex(U=>U.label===k);if(P===-1)throw new Error("can not find mode to replace");v.contains.splice(P,1,M)};Object.assign(t.keywords,u),t.exports.PARAMS_CONTAINS.push(c);let p=t.contains.find(v=>v.scope==="attr"),h=Object.assign({},p,{match:e.concat(i,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,p,h]),t.contains=t.contains.concat([c,o,s,h]),g(t,"shebang",n.SHEBANG()),g(t,"use_strict",a);let b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}mo.exports=Hc});var Eo=H((Ip,_o)=>{function Gc(n){let e=n.regex,t={className:"string",begin:/"(""|[^/n])"C\b/},i={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},r=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:e.concat(/# */,e.either(o,r),/ *#/)},{begin:e.concat(/# */,a,/ *#/)},{begin:e.concat(/# */,s,/ *#/)},{begin:e.concat(/# */,e.either(o,r),/ +/,e.either(s,a),/ *#/)}]},u={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])|[%&])?/}]},c={className:"label",begin:/^\w+:/},g=n.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),p=n.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:[t,i,l,u,c,g,p,{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:[p]}]}}_o.exports=Gc});var vo=H((Lp,yo)=>{function qc(n){n.regex;let e=n.COMMENT(/\(;/,/;\)/);e.contains.push("self");let t=n.COMMENT(/;;/,/$/),i=["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"],r={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={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/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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:i},contains:[t,e,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,r,n.QUOTE_STRING_MODE,l,u,a]}}yo.exports=qc});var To=H((Dp,wo)=>{var F=Lr();F.registerLanguage("xml",$r());F.registerLanguage("bash",Ur());F.registerLanguage("c",zr());F.registerLanguage("cpp",Hr());F.registerLanguage("csharp",qr());F.registerLanguage("css",Wr());F.registerLanguage("markdown",Yr());F.registerLanguage("diff",Xr());F.registerLanguage("ruby",Jr());F.registerLanguage("go",es());F.registerLanguage("graphql",ns());F.registerLanguage("ini",rs());F.registerLanguage("java",ls());F.registerLanguage("javascript",hs());F.registerLanguage("json",ms());F.registerLanguage("kotlin",_s());F.registerLanguage("less",ws());F.registerLanguage("lua",As());F.registerLanguage("makefile",Ns());F.registerLanguage("perl",xs());F.registerLanguage("objectivec",Rs());F.registerLanguage("php",Ms());F.registerLanguage("php-template",Ls());F.registerLanguage("plaintext",$s());F.registerLanguage("python",Us());F.registerLanguage("python-repl",zs());F.registerLanguage("r",Hs());F.registerLanguage("rust",qs());F.registerLanguage("scss",Ws());F.registerLanguage("shell",Ys());F.registerLanguage("sql",Xs());F.registerLanguage("swift",so());F.registerLanguage("yaml",ao());F.registerLanguage("typescript",bo());F.registerLanguage("vbnet",Eo());F.registerLanguage("wasm",vo());F.HighlightJS=F;F.default=F;wo.exports=F});var sn=globalThis,an=sn.ShadowRoot&&(sn.ShadyCSS===void 0||sn.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Xi=Symbol(),Vi=new WeakMap,on=class{constructor(e,t,i){if(this._$cssResult$=!0,i!==Xi)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(an&&e===void 0){let i=t!==void 0&&t.length===1;i&&(e=Vi.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),i&&Vi.set(t,e))}return e}toString(){return this.cssText}},Qi=n=>new on(typeof n=="string"?n:n+"",void 0,Xi);var Ji=(n,e)=>{if(an)n.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let i=document.createElement("style"),r=sn.litNonce;r!==void 0&&i.setAttribute("nonce",r),i.textContent=t.cssText,n.appendChild(i)}},Hn=an?n=>n:n=>n instanceof CSSStyleSheet?(e=>{let t="";for(let i of e.cssRules)t+=i.cssText;return Qi(t)})(n):n;var{is:Ta,defineProperty:Aa,getOwnPropertyDescriptor:Sa,getOwnPropertyNames:Na,getOwnPropertySymbols:ka,getPrototypeOf:xa}=Object,ln=globalThis,ji=ln.trustedTypes,Oa=ji?ji.emptyScript:"",Ra=ln.reactiveElementPolyfillSupport,Mt=(n,e)=>n,It={toAttribute(n,e){switch(e){case Boolean:n=n?Oa:null;break;case Object:case Array:n=n==null?n:JSON.stringify(n)}return n},fromAttribute(n,e){let t=n;switch(e){case Boolean:t=n!==null;break;case Number:t=n===null?null:Number(n);break;case Object:case Array:try{t=JSON.parse(n)}catch{t=null}}return t}},cn=(n,e)=>!Ta(n,e),er={attribute:!0,type:String,converter:It,reflect:!1,useDefault:!1,hasChanged:cn};Symbol.metadata??=Symbol("metadata"),ln.litPropertyMetadata??=new WeakMap;var We=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=er){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let i=Symbol(),r=this.getPropertyDescriptor(e,i,t);r!==void 0&&Aa(this.prototype,e,r)}}static getPropertyDescriptor(e,t,i){let{get:r,set:o}=Sa(this.prototype,e)??{get(){return this[t]},set(s){this[t]=s}};return{get:r,set(s){let a=r?.call(this);o?.call(this,s),this.requestUpdate(e,a,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??er}static _$Ei(){if(this.hasOwnProperty(Mt("elementProperties")))return;let e=xa(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Mt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Mt("properties"))){let t=this.properties,i=[...Na(t),...ka(t)];for(let r of i)this.createProperty(r,t[r])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[i,r]of t)this.elementProperties.set(i,r)}this._$Eh=new Map;for(let[t,i]of this.elementProperties){let r=this._$Eu(t,i);r!==void 0&&this._$Eh.set(r,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let i=new Set(e.flat(1/0).reverse());for(let r of i)t.unshift(Hn(r))}else e!==void 0&&t.push(Hn(e));return t}static _$Eu(e,t){let i=t.attribute;return i===!1?void 0:typeof i=="string"?i:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let i of t.keys())this.hasOwnProperty(i)&&(e.set(i,this[i]),delete this[i]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Ji(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,i){this._$AK(e,i)}_$ET(e,t){let i=this.constructor.elementProperties.get(e),r=this.constructor._$Eu(e,i);if(r!==void 0&&i.reflect===!0){let o=(i.converter?.toAttribute!==void 0?i.converter:It).toAttribute(t,i.type);this._$Em=e,o==null?this.removeAttribute(r):this.setAttribute(r,o),this._$Em=null}}_$AK(e,t){let i=this.constructor,r=i._$Eh.get(e);if(r!==void 0&&this._$Em!==r){let o=i.getPropertyOptions(r),s=typeof o.converter=="function"?{fromAttribute:o.converter}:o.converter?.fromAttribute!==void 0?o.converter:It;this._$Em=r,this[r]=s.fromAttribute(t,o.type)??this._$Ej?.get(r)??null,this._$Em=null}}requestUpdate(e,t,i){if(e!==void 0){let r=this.constructor,o=this[e];if(i??=r.getPropertyOptions(e),!((i.hasChanged??cn)(o,t)||i.useDefault&&i.reflect&&o===this._$Ej?.get(e)&&!this.hasAttribute(r._$Eu(e,i))))return;this.C(e,t,i)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:i,reflect:r,wrapped:o},s){i&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,s??t??this[e]),o!==!0||s!==void 0)||(this._$AL.has(e)||(this.hasUpdated||i||(t=void 0),this._$AL.set(e,t)),r===!0&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,o]of this._$Ep)this[r]=o;this._$Ep=void 0}let i=this.constructor.elementProperties;if(i.size>0)for(let[r,o]of i){let{wrapped:s}=o,a=this[r];s!==!0||this._$AL.has(r)||a===void 0||this.C(r,void 0,o,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(i=>i.hostUpdate?.()),this.update(t)):this._$EM()}catch(i){throw e=!1,this._$EM(),i}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(t=>this._$ET(t,this[t])),this._$EM()}updated(e){}firstUpdated(e){}};We.elementStyles=[],We.shadowRootOptions={mode:"open"},We[Mt("elementProperties")]=new Map,We[Mt("finalized")]=new Map,Ra?.({ReactiveElement:We}),(ln.reactiveElementVersions??=[]).push("2.1.0");var Vn=globalThis,un=Vn.trustedTypes,tr=un?un.createPolicy("lit-html",{createHTML:n=>n}):void 0,ar="$lit$",tt=`lit$${Math.random().toFixed(9).slice(2)}$`,lr="?"+tt,Ca=`<${lr}>`,at=document,Dt=()=>at.createComment(""),$t=n=>n===null||typeof n!="object"&&typeof n!="function",Xn=Array.isArray,Ma=n=>Xn(n)||typeof n?.[Symbol.iterator]=="function",Gn=`[ \f\r]`,Lt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,nr=/-->/g,ir=/>/g,st=RegExp(`>|${Gn}(?:([^\\s"'>=/]+)(${Gn}*=${Gn}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let f=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+f):l+tt+(g===-2?a:f)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let f=0;f2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(fr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length=]|("|')|))|$)`,"g"),rr=/'/g,sr=/"/g,cr=/^(?:script|style|textarea|title)$/i,Qn=n=>(e,...t)=>({_$litType$:n,strings:e,values:t}),ne=Qn(1),ad=Qn(2),ld=Qn(3),Ze=Symbol.for("lit-noChange"),ae=Symbol.for("lit-nothing"),or=new WeakMap,ot=at.createTreeWalker(at,129);function ur(n,e){if(!Xn(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return tr!==void 0?tr.createHTML(e):e}var Ia=(n,e)=>{let t=n.length-1,i=[],r,o=e===2?"":e===3?"":"",s=Lt;for(let a=0;a"?(s=r??Lt,g=-1):c[1]===void 0?g=-2:(g=s.lastIndex-c[2].length,u=c[1],s=c[3]===void 0?st:c[3]==='"'?sr:rr):s===sr||s===rr?s=st:s===nr||s===ir?s=Lt:(s=st,r=void 0);let h=s===st&&n[a+1].startsWith("/>")?" ":"";o+=s===Lt?l+Ca:g>=0?(i.push(u),l.slice(0,g)+ar+l.slice(g)+tt+h):l+tt+(g===-2?a:h)}return[ur(n,o+(n[t]||"")+(e===2?"":e===3?"":"")),i]},Pt=class n{constructor({strings:e,_$litType$:t},i){let r;this.parts=[];let o=0,s=0,a=e.length-1,l=this.parts,[u,c]=Ia(e,t);if(this.el=n.createElement(u,i),ot.currentNode=this.el.content,t===2||t===3){let g=this.el.content.firstChild;g.replaceWith(...g.childNodes)}for(;(r=ot.nextNode())!==null&&l.length0){r.textContent=un?un.emptyScript:"";for(let h=0;h2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=ae}_$AI(e,t=this,i,r){let o=this.strings,s=!1;if(o===void 0)e=yt(this,e,t,0),s=!$t(e)||e!==this._$AH&&e!==Ze,s&&(this._$AH=e);else{let a=e,l,u;for(e=o[0],l=0;l{let i=t?.renderBefore??e,r=i._$litPart$;if(r===void 0){let o=t?.renderBefore??null;i._$litPart$=r=new Ut(e.insertBefore(Dt(),o),o,void 0,t??{})}return r._$AI(n),r};var Jn=globalThis,Ue=class extends We{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=dr(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Ze}};Ue._$litElement$=!0,Ue.finalized=!0,Jn.litElementHydrateSupport?.({LitElement:Ue});var Da=Jn.litElementPolyfillSupport;Da?.({LitElement:Ue});(Jn.litElementVersions??=[]).push("4.2.0");var pr={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},gr=n=>(...e)=>({_$litDirective$:n,values:e}),dn=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,i){this._$Ct=e,this._$AM=t,this._$Ci=i}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Bt=class extends dn{constructor(e){if(super(e),this.it=ae,e.type!==pr.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ae||e==null)return this._t=void 0,this.it=e;if(e===Ze)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Bt.directiveName="unsafeHTML",Bt.resultType=1;var xe=gr(Bt);var $a={attribute:!0,type:String,converter:It,reflect:!1,hasChanged:cn},Pa=(n=$a,e,t)=>{let{kind:i,metadata:r}=t,o=globalThis.litPropertyMetadata.get(r);if(o===void 0&&globalThis.litPropertyMetadata.set(r,o=new Map),i==="setter"&&((n=Object.create(n)).wrapped=!0),o.set(t.name,n),i==="accessor"){let{name:s}=t;return{set(a){let l=e.get.call(this);e.set.call(this,a),this.requestUpdate(s,l,n)},init(a){return a!==void 0&&this.C(s,void 0,n,a),a}}}if(i==="setter"){let{name:s}=t;return function(a){let l=this[s];e.call(this,a),this.requestUpdate(s,l,n)}}throw Error("Unsupported decorator location: "+i)};function W(n){return(e,t)=>typeof t=="object"?Pa(n,e,t):((i,r,o)=>{let s=r.hasOwnProperty(o);return r.constructor.createProperty(o,i),s?Object.getOwnPropertyDescriptor(r,o):void 0})(n,e,t)}var la=Yi(hr(),1);var Ao=Yi(To(),1);var So=Ao.default;function gi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var dt=gi();function Co(n){dt=n}var Mo=/[&<>"']/,Kc=new RegExp(Mo.source,"g"),Io=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Wc=new RegExp(Io.source,"g"),Zc={"&":"&","<":"<",">":">",'"':""","'":"'"},No=n=>Zc[n];function Se(n,e){if(e){if(Mo.test(n))return n.replace(Kc,No)}else if(Io.test(n))return n.replace(Wc,No);return n}var Yc=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function Vc(n){return n.replace(Yc,(e,t)=>(t=t.toLowerCase(),t==="colon"?":":t.charAt(0)==="#"?t.charAt(1)==="x"?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""))}var Xc=/(^|[^\[])\^/g;function ee(n,e){let t=typeof n=="string"?n:n.source;e=e||"";let i={replace:(r,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Xc,"$1"),t=t.replace(r,s),i},getRegex:()=>new RegExp(t,e)};return i}function ko(n){try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}var Kt={exec:()=>null};function xo(n,e){let t=n.replace(/\|/g,(o,s,a)=>{let l=!1,u=s;for(;--u>=0&&a[u]==="\\";)l=!l;return l?"|":" |"}),i=t.split(/ \|/),r=0;if(i[0].trim()||i.shift(),i.length>0&&!i[i.length-1].trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length{let o=r.match(/^\s+/);if(o===null)return r;let[s]=o;return s.length>=i.length?r.slice(i.length):r}).join(` `)}var kt=class{options;rules;lexer;constructor(e){this.options=e||dt}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let i=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:An(i,` `)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let i=t[0],r=Jc(i,t[3]||"");return{type:"code",raw:i,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let i=t[2].trim();if(/#$/.test(i)){let r=An(i,"#");(this.options.pedantic||!r||/ $/.test(r))&&(i=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:t[0]}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let i=t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` $1`);i=An(i.replace(/^ *>[ \t]?/gm,""),` `);let r=this.lexer.state.top;this.lexer.state.top=!0;let o=this.lexer.blockTokens(i);return this.lexer.state.top=r,{type:"blockquote",raw:t[0],tokens:o,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let i=t[1].trim(),r=i.length>1,o={type:"list",raw:"",ordered:r,start:r?+i.slice(0,-1):"",loose:!1,items:[]};i=r?`\\d{1,9}\\${i.slice(-1)}`:`\\${i}`,this.options.pedantic&&(i=r?i:"[*+-]");let s=new RegExp(`^( {0,3}${i})((?:[ ][^\\n]*)?(?:\\n|$))`),a="",l="",u=!1;for(;e;){let c=!1;if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;a=t[0],e=e.substring(a.length);let g=t[2].split(` `,1)[0].replace(/^\t+/,M=>" ".repeat(3*M.length)),p=e.split(` -`,1)[0],f=0;this.options.pedantic?(f=2,l=g.trimStart()):(f=t[2].search(/[^ ]/),f=f>4?1:f,l=g.slice(f),f+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` -`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,f-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,f-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,f-1)}}#`);for(;e;){let B=e.split(` -`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=f||!p.trim())l+=` -`+p.slice(f);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` +`,1)[0],h=0;this.options.pedantic?(h=2,l=g.trimStart()):(h=t[2].search(/[^ ]/),h=h>4?1:h,l=g.slice(h),h+=t[1].length);let b=!1;if(!g&&/^ *$/.test(p)&&(a+=p+` +`,e=e.substring(p.length+1),c=!0),!c){let M=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),P=new RegExp(`^ {0,${Math.min(3,h-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),U=new RegExp(`^ {0,${Math.min(3,h-1)}}(?:\`\`\`|~~~)`),C=new RegExp(`^ {0,${Math.min(3,h-1)}}#`);for(;e;){let B=e.split(` +`,1)[0];if(p=B,this.options.pedantic&&(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),U.test(p)||C.test(p)||M.test(p)||P.test(e))break;if(p.search(/[^ ]/)>=h||!p.trim())l+=` +`+p.slice(h);else{if(b||g.search(/[^ ]/)>=4||U.test(g)||C.test(g)||P.test(g))break;l+=` `+p}!b&&!p.trim()&&(b=!0),a+=B+` -`,e=e.substring(B.length+1),g=p.slice(f)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;cf.type==="space"),p=g.length>0&&g.some(f=>/\n.*\n/.test(f.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`,e=e.substring(B.length+1),g=p.slice(h)}}o.loose||(u?o.loose=!0:/\n *\n *$/.test(a)&&(u=!0));let v=null,k;this.options.gfm&&(v=/^\[[ xX]\] /.exec(l),v&&(k=v[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),o.items.push({type:"list_item",raw:a,task:!!v,checked:k,loose:!1,text:l,tokens:[]}),o.raw+=a}o.items[o.items.length-1].raw=a.trimEnd(),o.items[o.items.length-1].text=l.trimEnd(),o.raw=o.raw.trimEnd();for(let c=0;ch.type==="space"),p=g.length>0&&g.some(h=>/\n.*\n/.test(h.raw));o.loose=p}if(o.loose)for(let c=0;c$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:r,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;let i=xo(t[1]),r=t[2].replace(/^\||\| *$/g,"").split("|"),o=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` `):[],s={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===r.length){for(let a of r)/^ *-+: *$/.test(a)?s.align.push("right"):/^ *:-+: *$/.test(a)?s.align.push("center"):/^ *:-+ *$/.test(a)?s.align.push("left"):s.align.push(null);for(let a of i)s.header.push({text:a,tokens:this.lexer.inline(a)});for(let a of o)s.rows.push(xo(a,s.header.length).map(l=>({text:l,tokens:this.lexer.inline(l)})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let i=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:i,tokens:this.lexer.inline(i)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:Se(t[1])}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^
/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,f=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=f.slice(1,-1);return{type:"em",raw:f,text:v,tokens:this.lexer.inlineTokens(v)}}let b=f.slice(2,-2);return{type:"strong",raw:f,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),fi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,hi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",hi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(fi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(fi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,fu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),hu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",hi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",hi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:fu,emStrongRDelimAst:hu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&/^$/.test(i))return;let s=An(i.slice(0,-1),"\\");if((i.length-s.length)%2===0)return}else{let s=Qc(t[2],"()");if(s>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let r=t[2],o="";if(this.options.pedantic){let s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);s&&(r=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return r=r.trim(),/^$/.test(i)?r=r.slice(1):r=r.slice(1,-1)),Oo(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let r=(i[2]||i[1]).replace(/\s+/g," "),o=t[r.toLowerCase()];if(!o){let s=i[0].charAt(0);return{type:"text",raw:s,text:s}}return Oo(i,o,i[0],this.lexer)}}emStrong(e,t,i=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&i.match(/[\p{L}\p{N}]/u))return;if(!(r[1]||r[2]||"")||!i||this.rules.inline.punctuation.exec(i)){let s=[...r[0]].length-1,a,l,u=s,c=0,g=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(g.lastIndex=0,t=t.slice(-1*e.length+s);(r=g.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(l=[...a].length,r[3]||r[4]){u+=l;continue}else if((r[5]||r[6])&&s%3&&!((s+l)%3)){c+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+c);let p=[...r[0]][0].length,h=e.slice(0,s+r.index+p+l);if(Math.min(s,l)%2){let v=h.slice(1,-1);return{type:"em",raw:h,text:v,tokens:this.lexer.inlineTokens(v)}}let b=h.slice(2,-2);return{type:"strong",raw:h,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(/\n/g," "),r=/[^ ]/.test(i),o=/^ /.test(i)&&/ $/.test(i);return r&&o&&(i=i.substring(1,i.length-1)),i=Se(i,!0),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,r;return t[2]==="@"?(i=Se(t[1]),r="mailto:"+i):(i=Se(t[1]),r=i),{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let i,r;if(t[2]==="@")i=Se(t[0]),r="mailto:"+i;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);i=Se(t[0]),t[1]==="www."?r="http://"+t[0]:r=t[0]}return{type:"link",raw:t[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i;return this.lexer.state.inRawBlock?i=t[0]:i=Se(t[0]),{type:"text",raw:t[0],text:i}}}},jc=/^(?: *(?:\n|$))+/,eu=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,tu=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Zt=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,nu=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Lo=/(?:[*+-]|\d{1,9}[.)])/,Do=ee(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Lo).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),hi=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,iu=/^[^\n]+/,fi=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ru=ee(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",fi).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),su=ee(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Lo).getRegex(),kn="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",mi=/|$))/,ou=ee("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",mi).replace("tag",kn).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$o=ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),au=ee(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$o).getRegex(),bi={blockquote:au,code:eu,def:ru,fences:tu,heading:nu,hr:Zt,html:ou,lheading:Do,list:su,newline:jc,paragraph:$o,table:Kt,text:iu},Ro=ee("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex(),lu={...bi,table:Ro,paragraph:ee(hi).replace("hr",Zt).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Ro).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",kn).getRegex()},cu={...bi,html:ee(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",mi).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Kt,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ee(hi).replace("hr",Zt).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Do).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Po=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,uu=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Uo=/^( {2,}|\\)\n(?!\s*$)/,du=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,hu=ee(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Yt).getRegex(),fu=ee("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Yt).getRegex(),mu=ee("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Yt).getRegex(),bu=ee(/\\([punct])/,"gu").replace(/punct/g,Yt).getRegex(),_u=ee(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Eu=ee(mi).replace("(?:-->|$)","-->").getRegex(),yu=ee("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Eu).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Nn=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,vu=ee(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Nn).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Bo=ee(/^!?\[(label)\]\[(ref)\]/).replace("label",Nn).replace("ref",fi).getRegex(),zo=ee(/^!?\[(ref)\](?:\[\])?/).replace("ref",fi).getRegex(),wu=ee("reflink|nolink(?!\\()","g").replace("reflink",Bo).replace("nolink",zo).getRegex(),_i={_backpedal:Kt,anyPunctuation:bu,autolink:_u,blockSkip:gu,br:Uo,code:uu,del:Kt,emStrongLDelim:hu,emStrongRDelimAst:fu,emStrongRDelimUnd:mu,escape:Po,link:vu,nolink:zo,punctuation:pu,reflink:Bo,reflinkSearch:wu,tag:yu,text:du,url:Kt},Tu={..._i,link:ee(/^!?\[(label)\]\((.*?)\)/).replace("label",Nn).getRegex(),reflink:ee(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Nn).getRegex()},di={..._i,escape:ee(Po).replace("])","~|])").getRegex(),url:ee(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\l+" ".repeat(u.length));let i,r,o,s;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(a=>(i=a.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.raw.length===1&&t.length>0?t[t.length-1].raw+=` `:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&(r.type==="paragraph"||r.type==="text")?(r.raw+=` `+i.raw,r.text+=` @@ -29,7 +29,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),w=h,$=S),N===void 0&&( `+i.raw,r.text+=` `+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i),s=o.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&r.type==="text"?(r.raw+=` `+i.raw,r.text+=` -`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(f=>{p=f.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` +`+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=r.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let i,r,o,s=e,a,l,u;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,a.index)+"["+"a".repeat(a[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,a.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(l||(u=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(c=>(i=c.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))){if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length),r=t[t.length-1],r&&i.type==="text"&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,u)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}if(o=e,this.options.extensions&&this.options.extensions.startInline){let c=1/0,g=e.slice(1),p;this.options.extensions.startInline.forEach(h=>{p=h.call({lexer:this},g),typeof p=="number"&&p>=0&&(c=Math.min(c,p))}),c<1/0&&c>=0&&(o=e.substring(0,c+1))}if(i=this.tokenizer.inlineText(o)){e=e.substring(i.raw.length),i.raw.slice(-1)!=="_"&&(u=i.raw.slice(-1)),l=!0,r=t[t.length-1],r&&r.type==="text"?(r.raw+=i.raw,r.text+=i.text):t.push(i);continue}if(e){let c="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return t}},Xe=class{options;constructor(e){this.options=e||dt}code(e,t,i){let r=(t||"").match(/^\S*/)?.[0];return e=e.replace(/\n$/,"")+` `,r?'
'+(i?e:Se(e,!0))+`
`:"
"+(i?e:Se(e,!0))+`
`}blockquote(e){return`
@@ -47,10 +47,10 @@ ${e}
`}tablerow(e){return` ${e} `}tablecell(e,t){let i=t.header?"th":"td";return(t.align?`<${i} align="${t.align}">`:`<${i}>`)+e+` -`}strong(e){return`${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!f)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1${e}`}em(e){return`${e}`}codespan(e){return`${e}`}br(){return"
"}del(e){return`${e}`}link(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o='
",o}image(e,t,i){let r=ko(e);if(r===null)return i;e=r;let o=`${i}0&&p.tokens[0].type==="paragraph"?(p.tokens[0].text=k+" "+p.tokens[0].text,p.tokens[0].tokens&&p.tokens[0].tokens.length>0&&p.tokens[0].tokens[0].type==="text"&&(p.tokens[0].tokens[0].text=k+" "+p.tokens[0].tokens[0].text)):p.tokens.unshift({type:"text",text:k+" "}):v+=k+" "}v+=this.parse(p.tokens,u),c+=this.renderer.listitem(v,b,!!h)}i+=this.renderer.list(c,a,l);continue}case"html":{let s=o;i+=this.renderer.html(s.text,s.block);continue}case"paragraph":{let s=o;i+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=o,a=s.tokens?this.parseInline(s.tokens):s.text;for(;r+1{let a=o[s].flat(1/0);i=i.concat(this.walkTokens(a,t))}):o.tokens&&(i=i.concat(this.walkTokens(o.tokens,t)))}}return i}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(i=>{let r={...i};if(r.async=this.defaults.async||r.async||!1,i.extensions&&(i.extensions.forEach(o=>{if(!o.name)throw new Error("extension name required");if("renderer"in o){let s=t.renderers[o.name];s?t.renderers[o.name]=function(...a){let l=o.renderer.apply(this,a);return l===!1&&(l=s.apply(this,a)),l}:t.renderers[o.name]=o.renderer}if("tokenizer"in o){if(!o.level||o.level!=="block"&&o.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=t[o.level];s?s.unshift(o.tokenizer):t[o.level]=[o.tokenizer],o.start&&(o.level==="block"?t.startBlock?t.startBlock.push(o.start):t.startBlock=[o.start]:o.level==="inline"&&(t.startInline?t.startInline.push(o.start):t.startInline=[o.start]))}"childTokens"in o&&o.childTokens&&(t.childTokens[o.name]=o.childTokens)}),r.extensions=t),i.renderer){let o=this.defaults.renderer||new Xe(this.defaults);for(let s in i.renderer){if(!(s in o))throw new Error(`renderer '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.renderer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g||""}}r.renderer=o}if(i.tokenizer){let o=this.defaults.tokenizer||new kt(this.defaults);for(let s in i.tokenizer){if(!(s in o))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let a=s,l=i.tokenizer[a],u=o[a];o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.tokenizer=o}if(i.hooks){let o=this.defaults.hooks||new Nt;for(let s in i.hooks){if(!(s in o))throw new Error(`hook '${s}' does not exist`);if(s==="options")continue;let a=s,l=i.hooks[a],u=o[a];Nt.passThroughHooks.has(s)?o[a]=c=>{if(this.defaults.async)return Promise.resolve(l.call(o,c)).then(p=>u.call(o,p));let g=l.call(o,c);return u.call(o,g)}:o[a]=(...c)=>{let g=l.apply(o,c);return g===!1&&(g=u.apply(o,c)),g}}r.hooks=o}if(i.walkTokens){let o=this.defaults.walkTokens,s=i.walkTokens;r.walkTokens=function(a){let l=[];return l.push(s.call(this,a)),o&&(l=l.concat(o.call(this,a))),l}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Ye.lex(e,t??this.defaults)}parser(e,t){return Ve.parse(e,t??this.defaults)}#e(e,t){return(i,r)=>{let o={...r},s={...this.defaults,...o};this.defaults.async===!0&&o.async===!1&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);let a=this.#t(!!s.silent,!!s.async);if(typeof i>"u"||i===null)return a(new Error("marked(): input parameter is undefined or null"));if(typeof i!="string")return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(i)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(i):i).then(l=>e(l,s)).then(l=>s.hooks?s.hooks.processAllTokens(l):l).then(l=>s.walkTokens?Promise.all(this.walkTokens(l,s.walkTokens)).then(()=>l):l).then(l=>t(l,s)).then(l=>s.hooks?s.hooks.postprocess(l):l).catch(a);try{s.hooks&&(i=s.hooks.preprocess(i));let l=e(i,s);s.hooks&&(l=s.hooks.processAllTokens(l)),s.walkTokens&&this.walkTokens(l,s.walkTokens);let u=t(l,s);return s.hooks&&(u=s.hooks.postprocess(u)),u}catch(l){return a(l)}}}#t(e,t){return i=>{if(i.message+=` -Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:f}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:fe,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:h,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,he=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ft="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ht="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ht,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],fa="text/html",ge=null,_t=null,ha=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?fa:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(f,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ht?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ht?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ht&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,fe,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in ha))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(h,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ft+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,fe,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof f=="object"&&typeof f.getAttributeType=="function"&&!Te)switch(f.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(he||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" -`+Te),De&&xn([pe,fe,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),he=!0},e.clearConfig=function(){_t=null,he=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne` +Please report this to https://github.com/markedjs/marked.`,e){let r="

An error occurred:

"+Se(i.message+"",!0)+"
";return t?Promise.resolve(r):r}if(t)return Promise.reject(i);throw i}}},ut=new pi;function Q(n,e){return ut.parse(n,e)}Q.options=Q.setOptions=function(n){return ut.setOptions(n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.getDefaults=gi;Q.defaults=dt;Q.use=function(...n){return ut.use(...n),Q.defaults=ut.defaults,Co(Q.defaults),Q};Q.walkTokens=function(n,e){return ut.walkTokens(n,e)};Q.parseInline=ut.parseInline;Q.Parser=Ve;Q.parser=Ve.parse;Q.Renderer=Xe;Q.TextRenderer=Wt;Q.Lexer=Ye;Q.lexer=Ye.lex;Q.Tokenizer=kt;Q.Hooks=Nt;Q.parse=Q;var Pp=Q.options,Up=Q.setOptions,Bp=Q.use,zp=Q.walkTokens,Fp=Q.parseInline,Ei=Q,Hp=Ve.parse,Gp=Ye.lex;var{entries:Xo,setPrototypeOf:Fo,isFrozen:Su,getPrototypeOf:Nu,getOwnPropertyDescriptor:ku}=Object,{freeze:ve,seal:Oe,create:Qo}=Object,{apply:Si,construct:Ni}=typeof Reflect<"u"&&Reflect;ve||(ve=function(e){return e});Oe||(Oe=function(e){return e});Si||(Si=function(e,t,i){return e.apply(t,i)});Ni||(Ni=function(e,t){return new e(...t)});var xn=we(Array.prototype.forEach),xu=we(Array.prototype.lastIndexOf),Ho=we(Array.prototype.pop),Vt=we(Array.prototype.push),Ou=we(Array.prototype.splice),Rn=we(String.prototype.toLowerCase),yi=we(String.prototype.toString),Go=we(String.prototype.match),Xt=we(String.prototype.replace),Ru=we(String.prototype.indexOf),Cu=we(String.prototype.trim),Le=we(Object.prototype.hasOwnProperty),ye=we(RegExp.prototype.test),Qt=Mu(TypeError);function we(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r2&&arguments[2]!==void 0?arguments[2]:Rn;Fo&&Fo(n,null);let i=e.length;for(;i--;){let r=e[i];if(typeof r=="string"){let o=t(r);o!==r&&(Su(e)||(e[i]=o),r=o)}n[r]=!0}return n}function Iu(n){for(let e=0;e/gm),Uu=Oe(/\$\{[\w\W]*/gm),Bu=Oe(/^data-[\-\w.\u00B7-\uFFFF]+$/),zu=Oe(/^aria-[\-\w]+$/),Jo=Oe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fu=Oe(/^(?:\w+script|data):/i),Hu=Oe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),jo=Oe(/^html$/i),Gu=Oe(/^[a-z][.\w]*(-[.\w]+)+$/i),Yo=Object.freeze({__proto__:null,ARIA_ATTR:zu,ATTR_WHITESPACE:Hu,CUSTOM_ELEMENT:Gu,DATA_ATTR:Bu,DOCTYPE_NAME:jo,ERB_EXPR:Pu,IS_ALLOWED_URI:Jo,IS_SCRIPT_OR_DATA:Fu,MUSTACHE_EXPR:$u,TMPLIT_EXPR:Uu}),jt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},qu=function(){return typeof window>"u"?null:window},Ku=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let i=null,r="data-tt-policy-suffix";t&&t.hasAttribute(r)&&(i=t.getAttribute(r));let o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},Vo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ea(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:qu(),e=I=>ea(I);if(e.version="3.2.6",e.removed=[],!n||!n.document||n.document.nodeType!==jt.document||!n.Element)return e.isSupported=!1,e;let{document:t}=n,i=t,r=i.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:a,Element:l,NodeFilter:u,NamedNodeMap:c=n.NamedNodeMap||n.MozNamedAttrMap,HTMLFormElement:g,DOMParser:p,trustedTypes:h}=n,b=l.prototype,v=Jt(b,"cloneNode"),k=Jt(b,"remove"),M=Jt(b,"nextSibling"),P=Jt(b,"childNodes"),U=Jt(b,"parentNode");if(typeof s=="function"){let I=t.createElement("template");I.content&&I.content.ownerDocument&&(t=I.content.ownerDocument)}let C,B="",{implementation:D,createNodeIterator:oe,createDocumentFragment:q,getElementsByTagName:J}=t,{importNode:de}=i,V=Vo();e.isSupported=typeof Xo=="function"&&typeof U=="function"&&D&&D.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:pe,ERB_EXPR:he,TMPLIT_EXPR:te,DATA_ATTR:se,ARIA_ATTR:f,IS_SCRIPT_OR_DATA:S,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:$}=Yo,{IS_ALLOWED_URI:w}=Yo,m=null,E=G({},[...qo,...vi,...wi,...Ti,...Ko]),T=null,R=G({},[...Wo,...Ai,...Zo,...On]),A=Object.seal(Qo(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ie=null,Ae=null,ze=!0,rt=!0,pt=!1,gt=!0,De=!1,Me=!0,Ne=!1,fe=!1,Z=!1,_e=!1,L=!1,Fe=!1,le=!0,X=!1,ht="user-content-",Ie=!0,He=!1,$e={},y=null,x=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),z=null,Y=G({},["audio","video","img","source","image","track"]),ce=null,ke=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ft="http://www.w3.org/1998/Math/MathML",mt="http://www.w3.org/2000/svg",Ge="http://www.w3.org/1999/xhtml",bt=Ge,$n=!1,Pn=null,da=G({},[ft,mt,Ge],yi),nn=G({},["mi","mo","mn","ms","mtext"]),rn=G({},["annotation-xml"]),pa=G({},["title","style","font","a","script"]),Rt=null,ga=["application/xhtml+xml","text/html"],ha="text/html",ge=null,_t=null,fa=t.createElement("form"),Di=function(d){return d instanceof RegExp||d instanceof Function},Un=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(_t&&_t===d)){if((!d||typeof d!="object")&&(d={}),d=Qe(d),Rt=ga.indexOf(d.PARSER_MEDIA_TYPE)===-1?ha:d.PARSER_MEDIA_TYPE,ge=Rt==="application/xhtml+xml"?yi:Rn,m=Le(d,"ALLOWED_TAGS")?G({},d.ALLOWED_TAGS,ge):E,T=Le(d,"ALLOWED_ATTR")?G({},d.ALLOWED_ATTR,ge):R,Pn=Le(d,"ALLOWED_NAMESPACES")?G({},d.ALLOWED_NAMESPACES,yi):da,ce=Le(d,"ADD_URI_SAFE_ATTR")?G(Qe(ke),d.ADD_URI_SAFE_ATTR,ge):ke,z=Le(d,"ADD_DATA_URI_TAGS")?G(Qe(Y),d.ADD_DATA_URI_TAGS,ge):Y,y=Le(d,"FORBID_CONTENTS")?G({},d.FORBID_CONTENTS,ge):x,ie=Le(d,"FORBID_TAGS")?G({},d.FORBID_TAGS,ge):Qe({}),Ae=Le(d,"FORBID_ATTR")?G({},d.FORBID_ATTR,ge):Qe({}),$e=Le(d,"USE_PROFILES")?d.USE_PROFILES:!1,ze=d.ALLOW_ARIA_ATTR!==!1,rt=d.ALLOW_DATA_ATTR!==!1,pt=d.ALLOW_UNKNOWN_PROTOCOLS||!1,gt=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,De=d.SAFE_FOR_TEMPLATES||!1,Me=d.SAFE_FOR_XML!==!1,Ne=d.WHOLE_DOCUMENT||!1,_e=d.RETURN_DOM||!1,L=d.RETURN_DOM_FRAGMENT||!1,Fe=d.RETURN_TRUSTED_TYPE||!1,Z=d.FORCE_BODY||!1,le=d.SANITIZE_DOM!==!1,X=d.SANITIZE_NAMED_PROPS||!1,Ie=d.KEEP_CONTENT!==!1,He=d.IN_PLACE||!1,w=d.ALLOWED_URI_REGEXP||Jo,bt=d.NAMESPACE||Ge,nn=d.MATHML_TEXT_INTEGRATION_POINTS||nn,rn=d.HTML_INTEGRATION_POINTS||rn,A=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(A.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Di(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(A.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(A.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),De&&(rt=!1),L&&(_e=!0),$e&&(m=G({},Ko),T=[],$e.html===!0&&(G(m,qo),G(T,Wo)),$e.svg===!0&&(G(m,vi),G(T,Ai),G(T,On)),$e.svgFilters===!0&&(G(m,wi),G(T,Ai),G(T,On)),$e.mathMl===!0&&(G(m,Ti),G(T,Zo),G(T,On))),d.ADD_TAGS&&(m===E&&(m=Qe(m)),G(m,d.ADD_TAGS,ge)),d.ADD_ATTR&&(T===R&&(T=Qe(T)),G(T,d.ADD_ATTR,ge)),d.ADD_URI_SAFE_ATTR&&G(ce,d.ADD_URI_SAFE_ATTR,ge),d.FORBID_CONTENTS&&(y===x&&(y=Qe(y)),G(y,d.FORBID_CONTENTS,ge)),Ie&&(m["#text"]=!0),Ne&&G(m,["html","head","body"]),m.table&&(G(m,["tbody"]),delete ie.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Qt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');C=d.TRUSTED_TYPES_POLICY,B=C.createHTML("")}else C===void 0&&(C=Ku(h,r)),C!==null&&typeof B=="string"&&(B=C.createHTML(""));ve&&ve(d),_t=d}},$i=G({},[...vi,...wi,...Lu]),Pi=G({},[...Ti,...Du]),ma=function(d){let _=U(d);(!_||!_.tagName)&&(_={namespaceURI:bt,tagName:"template"});let O=Rn(d.tagName),re=Rn(_.tagName);return Pn[d.namespaceURI]?d.namespaceURI===mt?_.namespaceURI===Ge?O==="svg":_.namespaceURI===ft?O==="svg"&&(re==="annotation-xml"||nn[re]):!!$i[O]:d.namespaceURI===ft?_.namespaceURI===Ge?O==="math":_.namespaceURI===mt?O==="math"&&rn[re]:!!Pi[O]:d.namespaceURI===Ge?_.namespaceURI===mt&&!rn[re]||_.namespaceURI===ft&&!nn[re]?!1:!Pi[O]&&(pa[O]||!$i[O]):!!(Rt==="application/xhtml+xml"&&Pn[d.namespaceURI]):!1},Pe=function(d){Vt(e.removed,{element:d});try{U(d).removeChild(d)}catch{k(d)}},Et=function(d,_){try{Vt(e.removed,{attribute:_.getAttributeNode(d),from:_})}catch{Vt(e.removed,{attribute:null,from:_})}if(_.removeAttribute(d),d==="is")if(_e||L)try{Pe(_)}catch{}else try{_.setAttribute(d,"")}catch{}},Ui=function(d){let _=null,O=null;if(Z)d=""+d;else{let ue=Go(d,/^[\r\n\t ]+/);O=ue&&ue[0]}Rt==="application/xhtml+xml"&&bt===Ge&&(d=''+d+"");let re=C?C.createHTML(d):d;if(bt===Ge)try{_=new p().parseFromString(re,Rt)}catch{}if(!_||!_.documentElement){_=D.createDocument(bt,"template",null);try{_.documentElement.innerHTML=$n?B:re}catch{}}let me=_.body||_.documentElement;return d&&O&&me.insertBefore(t.createTextNode(O),me.childNodes[0]||null),bt===Ge?J.call(_,Ne?"html":"body")[0]:Ne?_.documentElement:me},Bi=function(d){return oe.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Bn=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof c)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},zi=function(d){return typeof a=="function"&&d instanceof a};function qe(I,d,_){xn(I,O=>{O.call(e,d,_,_t)})}let Fi=function(d){let _=null;if(qe(V.beforeSanitizeElements,d,null),Bn(d))return Pe(d),!0;let O=ge(d.nodeName);if(qe(V.uponSanitizeElement,d,{tagName:O,allowedTags:m}),Me&&d.hasChildNodes()&&!zi(d.firstElementChild)&&ye(/<[/\w!]/g,d.innerHTML)&&ye(/<[/\w!]/g,d.textContent)||d.nodeType===jt.progressingInstruction||Me&&d.nodeType===jt.comment&&ye(/<[/\w]/g,d.data))return Pe(d),!0;if(!m[O]||ie[O]){if(!ie[O]&&Gi(O)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O)))return!1;if(Ie&&!y[O]){let re=U(d)||d.parentNode,me=P(d)||d.childNodes;if(me&&re){let ue=me.length;for(let Te=ue-1;Te>=0;--Te){let Ke=v(me[Te],!0);Ke.__removalCount=(d.__removalCount||0)+1,re.insertBefore(Ke,M(d))}}}return Pe(d),!0}return d instanceof l&&!ma(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&ye(/<\/no(script|embed|frames)/i,d.innerHTML)?(Pe(d),!0):(De&&d.nodeType===jt.text&&(_=d.textContent,xn([pe,he,te],re=>{_=Xt(_,re," ")}),d.textContent!==_&&(Vt(e.removed,{element:d.cloneNode()}),d.textContent=_)),qe(V.afterSanitizeElements,d,null),!1)},Hi=function(d,_,O){if(le&&(_==="id"||_==="name")&&(O in t||O in fa))return!1;if(!(rt&&!Ae[_]&&ye(se,_))){if(!(ze&&ye(f,_))){if(!T[_]||Ae[_]){if(!(Gi(d)&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,d)||A.tagNameCheck instanceof Function&&A.tagNameCheck(d))&&(A.attributeNameCheck instanceof RegExp&&ye(A.attributeNameCheck,_)||A.attributeNameCheck instanceof Function&&A.attributeNameCheck(_))||_==="is"&&A.allowCustomizedBuiltInElements&&(A.tagNameCheck instanceof RegExp&&ye(A.tagNameCheck,O)||A.tagNameCheck instanceof Function&&A.tagNameCheck(O))))return!1}else if(!ce[_]){if(!ye(w,Xt(O,N,""))){if(!((_==="src"||_==="xlink:href"||_==="href")&&d!=="script"&&Ru(O,"data:")===0&&z[d])){if(!(pt&&!ye(S,Xt(O,N,"")))){if(O)return!1}}}}}}return!0},Gi=function(d){return d!=="annotation-xml"&&Go(d,$)},qi=function(d){qe(V.beforeSanitizeAttributes,d,null);let{attributes:_}=d;if(!_||Bn(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:T,forceKeepAttr:void 0},re=_.length;for(;re--;){let me=_[re],{name:ue,namespaceURI:Te,value:Ke}=me,Ct=ge(ue),zn=Ke,be=ue==="value"?zn:Cu(zn);if(O.attrName=Ct,O.attrValue=be,O.keepAttr=!0,O.forceKeepAttr=void 0,qe(V.uponSanitizeAttribute,d,O),be=O.attrValue,X&&(Ct==="id"||Ct==="name")&&(Et(ue,d),be=ht+be),Me&&ye(/((--!?|])>)|<\/(style|title)/i,be)){Et(ue,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Et(ue,d);continue}if(!gt&&ye(/\/>/i,be)){Et(ue,d);continue}De&&xn([pe,he,te],Wi=>{be=Xt(be,Wi," ")});let Ki=ge(d.nodeName);if(!Hi(Ki,Ct,be)){Et(ue,d);continue}if(C&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!Te)switch(h.getAttributeType(Ki,Ct)){case"TrustedHTML":{be=C.createHTML(be);break}case"TrustedScriptURL":{be=C.createScriptURL(be);break}}if(be!==zn)try{Te?d.setAttributeNS(Te,ue,be):d.setAttribute(ue,be),Bn(d)?Pe(d):Ho(e.removed)}catch{Et(ue,d)}}qe(V.afterSanitizeAttributes,d,null)},ba=function I(d){let _=null,O=Bi(d);for(qe(V.beforeSanitizeShadowDOM,d,null);_=O.nextNode();)qe(V.uponSanitizeShadowNode,_,null),Fi(_),qi(_),_.content instanceof o&&I(_.content);qe(V.afterSanitizeShadowDOM,d,null)};return e.sanitize=function(I){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,O=null,re=null,me=null;if($n=!I,$n&&(I=""),typeof I!="string"&&!zi(I))if(typeof I.toString=="function"){if(I=I.toString(),typeof I!="string")throw Qt("dirty is not a string, aborting")}else throw Qt("toString is not a function");if(!e.isSupported)return I;if(fe||Un(d),e.removed=[],typeof I=="string"&&(He=!1),He){if(I.nodeName){let Ke=ge(I.nodeName);if(!m[Ke]||ie[Ke])throw Qt("root node is forbidden and cannot be sanitized in-place")}}else if(I instanceof a)_=Ui(""),O=_.ownerDocument.importNode(I,!0),O.nodeType===jt.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?_=O:_.appendChild(O);else{if(!_e&&!De&&!Ne&&I.indexOf("<")===-1)return C&&Fe?C.createHTML(I):I;if(_=Ui(I),!_)return _e?null:Fe?B:""}_&&Z&&Pe(_.firstChild);let ue=Bi(He?I:_);for(;re=ue.nextNode();)Fi(re),qi(re),re.content instanceof o&&ba(re.content);if(He)return I;if(_e){if(L)for(me=q.call(_.ownerDocument);_.firstChild;)me.appendChild(_.firstChild);else me=_;return(T.shadowroot||T.shadowrootmode)&&(me=de.call(i,me,!0)),me}let Te=Ne?_.outerHTML:_.innerHTML;return Ne&&m["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&ye(jo,_.ownerDocument.doctype.name)&&(Te=" +`+Te),De&&xn([pe,he,te],Ke=>{Te=Xt(Te,Ke," ")}),C&&Fe?C.createHTML(Te):Te},e.setConfig=function(){let I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Un(I),fe=!0},e.clearConfig=function(){_t=null,fe=!1},e.isValidAttribute=function(I,d,_){_t||Un({});let O=ge(I),re=ge(d);return Hi(O,re,_)},e.addHook=function(I,d){typeof d=="function"&&Vt(V[I],d)},e.removeHook=function(I,d){if(d!==void 0){let _=xu(V[I],d);return _===-1?void 0:Ou(V[I],_,1)[0]}return Ho(V[I])},e.removeHooks=function(I){V[I]=[]},e.removeAllHooks=function(){V=Vo()},e}var ta=ea();function xt(n,e){let t=document.createElement(n);for(let[i,r]of Object.entries(e)){let o=i.replace(/_/g,"-");r!==null&&t.setAttribute(o,r)}return t}function na(n){return new DOMParser().parseFromString(n,"image/svg+xml").documentElement}var Je=class extends Ue{createRenderRoot(){return this}};function it({headline:n="",message:e,status:t="warning"}){document.dispatchEvent(new CustomEvent("shiny:client-message",{detail:{headline:n,message:e,status:t}}))}async function Mn(n){if(window.Shiny&&n)try{await window.Shiny.renderDependenciesAsync(n)}catch(e){it({status:"error",message:`Failed to render HTML dependencies: ${e}`})}}function In(n){return en.sanitize(n,{ADD_TAGS:["script"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>window.customElements.get(e)!==void 0,attributeNameCheck:e=>!0,allowCustomizedBuiltInElements:!0}})}var en=ta();en.addHook("uponSanitizeElement",(n,e)=>{if(n.nodeName&&n.nodeName==="SCRIPT"){let t=n,i=t.getAttribute("type")==="application/json"&&t.getAttribute("data-for")!==null;e.allowedTags.script=i}});en.addHook("afterSanitizeAttributes",function(n){if(!(n.tagName==="A"&&n.hasAttribute("href")))return;let t=n.getAttribute("href");t&&/^(https?:)?\/\//.test(t)&&(n.setAttribute("data-external-link",""),n.setAttribute("target","_blank"),n.setAttribute("rel","noopener noreferrer"))});var Cn=new WeakMap;en.addHook("beforeSanitizeAttributes",function(n,e){if(!n.tagName)return;if(["shiny-tool-request","shiny-tool-result"].includes(n.tagName.toLowerCase())){let i={};n.hasAttribute("value")&&(i.value=n.getAttribute("value")),Object.keys(i).length>0&&Cn.set(n,i)}});en.addHook("afterSanitizeAttributes",function(n,e){if(Cn.has(n)){let t=Cn.get(n);Object.entries(t).forEach(([i,r])=>{n.setAttribute(i,r)}),Cn.delete(n)}});function ia(n){return function(e,t,i){let r=i.value,o;return i.value=function(...s){o&&window.clearTimeout(o),o=window.setTimeout(()=>{r.apply(this,s),o=void 0},n)},i}}window.shinychat=window.shinychat||{};window.shinychat.hiddenToolRequests=window.shinychat.hiddenToolRequests||new Set;var Re=class extends Ue{constructor(){super(...arguments);this.expanded=!1;this.classStatus="";this.icon="";this.titleTemplate="{title}"}createRenderRoot(){return this}#e(t){t.preventDefault(),this.expanded=!this.expanded,this.requestUpdate()}firstUpdated(){this.dispatchEvent(new CustomEvent("shiny-chat-maybe-scroll-to-bottom"))}formatTitle(){let t=this.toolTitle||`${this.toolName}()`;return t=`${t}`,t=this.titleTemplate.replace("{title}",t),ne`${xe(t)}`}renderCard(t){let i=`tool-header-${this.requestId}`,r=`tool-content-${this.requestId}`,o=this.icon||ki.wrenchAdjustable,s=ne`
${xe(o)}
${this.formatTitle()}
@@ -163,13 +163,13 @@ ${t}`};window.Shiny?.addCustomMessageHandler("shiny-tool-request-hide",n=>{windo > ${xe('')} - `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#c),this.addEventListener("shiny-chat-update-user-input",this.#u),this.addEventListener("shiny-chat-remove-loading-message",this.#h),this.addEventListener("click",this.#d),this.addEventListener("keydown",this.#p),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#c),this.removeEventListener("shiny-chat-update-user-input",this.#u),this.removeEventListener("shiny-chat-remove-loading-message",this.#h),this.removeEventListener("click",this.#d),this.removeEventListener("keydown",this.#p),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#c(){this.messages.innerHTML=""}#u(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#d(t){this.#g(t)}#p(t){(t.key==="Enter"||t.key===" ")&&this.#g(t)}#g(t){let{suggestion:i,submit:r}=this.#m(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#m(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#h(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id + `}#e(t){t.code==="Enter"&&!t.shiftKey&&!this._isComposing&&!this.valueIsEmpty&&(t.preventDefault(),this.#s())}#t(){this.#n(),this.button.disabled=this.disabled?!0:this.value.trim().length===0}#r(){this._isComposing=!0}#i(){this._isComposing=!1}firstUpdated(){this.#t()}#s(t=!0){if(this.valueIsEmpty||this.disabled)return;window.Shiny.setInputValue(this.id,this.value,{priority:"event"});let i=new CustomEvent("shiny-chat-input-sent",{detail:{content:this.value,role:"user"},bubbles:!0,composed:!0});this.dispatchEvent(i),this.setInputValue(""),this.disabled=!0,t&&this.textarea.focus()}#n(){let t=this.textarea;t.scrollHeight!=0&&(t.style.height="auto",t.style.height=`${t.scrollHeight}px`)}setInputValue(t,{submit:i=!1,focus:r=!1}={}){let o=this.textarea.value;this.textarea.value=t;let s=new Event("input",{bubbles:!0,cancelable:!0});this.textarea.dispatchEvent(s),i&&(this.#s(!1),o&&this.setInputValue(o)),r&&this.textarea.focus()}};K([W()],tn.prototype,"placeholder",2),K([W({type:Boolean})],tn.prototype,"disabled",1);var Ln=class extends Je{constructor(){super(...arguments);this.iconAssistant="";this._attachEventListenersOnReconnect=!1}get input(){return this.querySelector(aa)}get messages(){return this.querySelector(oa)}get lastMessage(){let t=this.messages.lastElementChild;return t||null}render(){return ne``}connectedCallback(){super.connectedCallback();let t=this.querySelector("div");t||(t=xt("div",{style:"width: 100%; height: 0;"}),this.input.insertAdjacentElement("afterend",t)),this.inputSentinelObserver=new IntersectionObserver(i=>{let r=this.input.querySelector("textarea");if(!r)return;let o=i[0]?.intersectionRatio===0;r.classList.toggle("shadow",o)},{threshold:[0,1],rootMargin:"0px"}),this.inputSentinelObserver.observe(t),this._boundOnExternalLinkClick=this.#b.bind(this),this._attachEventListenersOnReconnect&&this.#e()}firstUpdated(){this.messages&&this.#e()}#e(){this._attachEventListenersOnReconnect=!0,this.addEventListener("shiny-chat-input-sent",this.#t),this.addEventListener("shiny-chat-append-message",this.#r),this.addEventListener("shiny-chat-append-message-chunk",this.#a),this.addEventListener("shiny-chat-clear-messages",this.#d),this.addEventListener("shiny-chat-update-user-input",this.#p),this.addEventListener("shiny-chat-remove-loading-message",this.#m),this.addEventListener("click",this.#g),this.addEventListener("keydown",this.#c),window.addEventListener("click",this._boundOnExternalLinkClick)}disconnectedCallback(){super.disconnectedCallback(),this._attachEventListenersOnReconnect=!0,this.inputSentinelObserver?.disconnect(),this.inputSentinelObserver=void 0,this.removeEventListener("shiny-chat-input-sent",this.#t),this.removeEventListener("shiny-chat-append-message",this.#r),this.removeEventListener("shiny-chat-append-message-chunk",this.#a),this.removeEventListener("shiny-chat-clear-messages",this.#d),this.removeEventListener("shiny-chat-update-user-input",this.#p),this.removeEventListener("shiny-chat-remove-loading-message",this.#m),this.removeEventListener("click",this.#g),this.removeEventListener("keydown",this.#c),window.removeEventListener("click",this._boundOnExternalLinkClick)}#t(t){this.#s(t.detail),this.#n()}#r(t){this.#s(t.detail)}#i(){this.#o(),this.input.disabled||(this.input.disabled=!0)}#s(t,i=!0){this.#i();let r=Ri;this.iconAssistant&&(t.icon=t.icon||this.iconAssistant);let{role:o,...s}=t,a={data_role:o,...s},l=xt(r,a);this.messages.appendChild(l),i&&this.#f()}#n(){let i=xt(Ri,{content:"",role:"assistant"});this.messages.appendChild(i)}#o(){this.lastMessage?.content||this.lastMessage?.remove()}#a(t){this.#l(t.detail)}#l(t){t.chunk_type==="message_start"&&this.#s(t,!1);let i=this.lastMessage;if(!i)throw new Error("No messages found in the chat output");if(t.chunk_type==="message_start"){i.setAttribute("streaming","");return}let r=t.operation==="append"?i.getAttribute("content")+t.content:t.content;i.setAttribute("content",r),t.chunk_type==="message_end"&&(this.lastMessage?.removeAttribute("streaming"),this.#f())}#d(){this.messages.innerHTML=""}#p(t){let{value:i,placeholder:r,submit:o,focus:s}=t.detail;i!==void 0&&this.input.setInputValue(i,{submit:o,focus:s}),r!==void 0&&(this.input.placeholder=r)}#g(t){this.#u(t)}#c(t){(t.key==="Enter"||t.key===" ")&&this.#u(t)}#u(t){let{suggestion:i,submit:r}=this.#h(t.target);if(!i)return;t.preventDefault();let o=t.metaKey||t.ctrlKey?!0:t.altKey?!1:r;this.input.setInputValue(i,{submit:o,focus:!o})}#h(t){if(!(t instanceof HTMLElement))return{};let i=t.closest(".suggestion, [data-suggestion]");return i instanceof HTMLElement?i.classList.contains("suggestion")||i.dataset.suggestion!==void 0?{suggestion:i.dataset.suggestion||i.textContent||void 0,submit:i.classList.contains("submit")||i.dataset.suggestionSubmit===""||i.dataset.suggestionSubmit==="true"}:{}:{}}#m(){this.#o(),this.#f()}#f(){this.input.disabled=!1}#b(t){let i=t.target;if(!this.contains(i))return;let r=i.closest("a[data-external-link]");!r||!r.href||(t.preventDefault(),ra(r.href).then(o=>{o&&window.open(r.href,"_blank","noopener,noreferrer")}).catch(()=>{window.open(r.href,"_blank","noopener,noreferrer")}))}};K([W({attribute:"icon-assistant"})],Ln.prototype,"iconAssistant",2);var Vu=[{tag:Ri,component:et},{tag:Wu,component:Ci},{tag:oa,component:Mi},{tag:aa,component:tn},{tag:Ii,component:Ln},{tag:Zu,component:Ot},{tag:Yu,component:je}];Vu.forEach(({tag:n,component:e})=>{customElements.get(n)||customElements.define(n,e)});window.Shiny?.addCustomMessageHandler("shinyChatMessage",async function(n){n.obj?.html_deps&&await Mn(n.obj.html_deps);let e=new CustomEvent(n.handler,{detail:n.obj}),t=document.getElementById(n.id);if(!t){it({status:"error",message:`Unable to handle Chat() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a chat_ui('${n.id}') in the UI (Core)? `});return}t.dispatchEvent(e)});function Xu(n){return"isStreaming"in n}var ca="markdown-stream-dot",Qu=na(``),Dn=new Xe;Dn.table=(n,e)=>`${n}${e} -
`;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#c())}}render(){return ne`${ju(this.content,this.content_type)}`}disconnectedCallback(){super.disconnectedCallback(),this.#g()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#u(),this.#o=!1,this.#p(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let f=u[p];if(!f)break;if(f.nodeType===Node.ELEMENT_NODE||f.nodeType===Node.TEXT_NODE&&t(f)){c=f;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#c(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#u(){let t=this.#d();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#d(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#p(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#g(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id + `;var Ju=Dn.code;Dn.code=function(n,e,t){return e==="{=html}"?n:Ju.call(this,n,e,t)};var ua=new Xe;ua.html=n=>n.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'");function ju(n,e){if(e==="markdown"){let t=Ei(n,{renderer:Dn});return xe(In(t))}else if(e==="semi-markdown"){let t=Ei(n,{renderer:ua});return xe(In(t))}else{if(e==="html")return xe(In(n));if(e==="text")return n;throw new Error(`Unknown content type: ${e}`)}}var Ce=class Ce extends Je{constructor(){super(...arguments);this.content="";this.content_type="markdown";this.streaming=!1;this.auto_scroll=!1;this.#n=null;this.#o=!1;this.#a=!1;this.#l=()=>{this.#o||(this.#a=!this.#d())};this.#c=()=>{this.#u()}}render(){return ne`${ju(this.content,this.content_type)}`}connectedCallback(){super.connectedCallback(),this.addEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}disconnectedCallback(){super.disconnectedCallback(),this.#h()}willUpdate(t){t.has("content")&&(this.#o=!0,Ce.#r(this)),super.willUpdate(t)}updated(t){if(t.has("content")){try{this.#s()}catch(i){console.warn("Failed to highlight code:",i)}if(this.streaming?(this.#e(),Ce._throttledBind(this)):Ce.#i(this),this.#p(),this.#o=!1,this.#u(),this.onContentChange)try{this.onContentChange()}catch(i){console.warn("Failed to call onContentUpdate callback:",i)}}if(t.has("streaming")){if(this.streaming)this.#e();else if(this.#t(),this.onStreamEnd)try{this.onStreamEnd()}catch(i){console.warn("Failed to call onStreamEnd callback:",i)}}}#e(){if(this.#t(),this.content.trim()===""||this.lastElementChild?.tagName.toLowerCase()==="shiny-tool-request")return;let t=s=>/\S/.test(s.textContent||""),i=new Set(["p","div","pre","ul","ol"]),r=new Set(["p","h1","h2","h3","h4","h5","h6","li","code"]);(s=>{let a=s,l=0;for(;l<5;){l++;let u=a.childNodes,c=null;for(let p=u.length-1;p>=0;p--){let h=u[p];if(!h)break;if(h.nodeType===Node.ELEMENT_NODE||h.nodeType===Node.TEXT_NODE&&t(h)){c=h;break}}if(!c||!(c instanceof Element))return a;let g=c.tagName.toLowerCase();if(i.has(g)){a=c;continue}return r.has(g)?c:a}return a})(this).appendChild(Qu)}#t(){this.querySelector(`svg.${ca}`)?.remove()}static async#r(t){if(window?.Shiny?.unbindAll)try{window.Shiny.unbindAll(t)}catch(i){it({status:"error",message:`Failed to unbind Shiny inputs/outputs: ${i}`})}}static async#i(t){if(window?.Shiny?.initializeInputs&&window?.Shiny?.bindAll){try{window.Shiny.initializeInputs(t)}catch(i){it({status:"error",message:`Failed to initialize Shiny inputs: ${i}`})}try{await window.Shiny.bindAll(t)}catch(i){it({status:"error",message:`Failed to bind Shiny inputs/outputs: ${i}`})}}}static async _throttledBind(t){await this.#i(t)}#s(){this.querySelector("pre code")&&this.querySelectorAll("pre code").forEach(i=>{if(i.dataset.highlighted==="yes")return;So.highlightElement(i);let r=xt("button",{class:"code-copy-button",title:"Copy to clipboard"});r.innerHTML='',i.prepend(r),new la.default(r,{target:()=>i}).on("success",s=>{r.classList.add("code-copy-button-checked"),setTimeout(()=>r.classList.remove("code-copy-button-checked"),2e3),s.clearSelection()})})}#n;#o;#a;#l;#d(){let t=this.#n;return t?t.scrollHeight-(t.scrollTop+t.clientHeight)<50:!1}#p(){let t=this.#g();t!==this.#n&&(this.#n?.removeEventListener("scroll",this.#l),this.#n=t,this.#n?.addEventListener("scroll",this.#l))}#g(){if(!this.auto_scroll)return null;let t=this;for(;t;){if(t.scrollHeight>t.clientHeight)return t;if(t=t.parentElement,t?.tagName?.toLowerCase()===Ii.toLowerCase())break}return null}#c;#u(){let t=this.#n;!t||this.#a||t.scroll({top:t.scrollHeight-t.clientHeight,behavior:this.streaming?"instant":"smooth"})}#h(){this.#n?.removeEventListener("scroll",this.#l),this.#n=null,this.#a=!1,this.removeEventListener("shiny-chat-maybe-scroll-to-bottom",this.#c)}};K([W()],Ce.prototype,"content",2),K([W({attribute:"content-type"})],Ce.prototype,"content_type",2),K([W({type:Boolean,reflect:!0})],Ce.prototype,"streaming",2),K([W({type:Boolean,reflect:!0,attribute:"auto-scroll"})],Ce.prototype,"auto_scroll",2),K([W({type:Function})],Ce.prototype,"onContentChange",2),K([W({type:Function})],Ce.prototype,"onStreamEnd",2),K([ia(200)],Ce,"_throttledBind",1);var Li=Ce;customElements.get("shiny-markdown-stream")||customElements.define("shiny-markdown-stream",Li);async function ed(n){let e=document.getElementById(n.id);if(!e){it({status:"error",message:`Unable to handle MarkdownStream() message since element with id ${n.id} wasn't found. Do you need to call .ui() (Express) or need a output_markdown_stream('${n.id}') in the UI (Core)?`});return}if(Xu(n)){e.streaming=n.isStreaming;return}if(n.html_deps&&await Mn(n.html_deps),n.operation==="replace")e.setAttribute("content",n.content);else if(n.operation==="append"){let t=e.getAttribute("content");e.setAttribute("content",t+n.content)}else throw new Error(`Unknown operation: ${n.operation}`)}window.Shiny?.addCustomMessageHandler("shinyMarkdownStreamMessage",ed);export{Li as MarkdownElement,ju as contentToHTML}; /*! Bundled license information: diff --git a/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js.map b/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js.map index 20145126..4614afb8 100644 --- a/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js.map +++ b/pkg-r/inst/lib/shiny/markdown-stream/markdown-stream.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../node_modules/clipboard/dist/clipboard.js", "../../node_modules/highlight.js/lib/core.js", "../../node_modules/highlight.js/lib/languages/xml.js", "../../node_modules/highlight.js/lib/languages/bash.js", "../../node_modules/highlight.js/lib/languages/c.js", "../../node_modules/highlight.js/lib/languages/cpp.js", "../../node_modules/highlight.js/lib/languages/csharp.js", "../../node_modules/highlight.js/lib/languages/css.js", "../../node_modules/highlight.js/lib/languages/markdown.js", "../../node_modules/highlight.js/lib/languages/diff.js", "../../node_modules/highlight.js/lib/languages/ruby.js", "../../node_modules/highlight.js/lib/languages/go.js", "../../node_modules/highlight.js/lib/languages/graphql.js", "../../node_modules/highlight.js/lib/languages/ini.js", "../../node_modules/highlight.js/lib/languages/java.js", "../../node_modules/highlight.js/lib/languages/javascript.js", "../../node_modules/highlight.js/lib/languages/json.js", "../../node_modules/highlight.js/lib/languages/kotlin.js", "../../node_modules/highlight.js/lib/languages/less.js", "../../node_modules/highlight.js/lib/languages/lua.js", "../../node_modules/highlight.js/lib/languages/makefile.js", "../../node_modules/highlight.js/lib/languages/perl.js", "../../node_modules/highlight.js/lib/languages/objectivec.js", "../../node_modules/highlight.js/lib/languages/php.js", "../../node_modules/highlight.js/lib/languages/php-template.js", "../../node_modules/highlight.js/lib/languages/plaintext.js", "../../node_modules/highlight.js/lib/languages/python.js", "../../node_modules/highlight.js/lib/languages/python-repl.js", "../../node_modules/highlight.js/lib/languages/r.js", "../../node_modules/highlight.js/lib/languages/rust.js", "../../node_modules/highlight.js/lib/languages/scss.js", "../../node_modules/highlight.js/lib/languages/shell.js", "../../node_modules/highlight.js/lib/languages/sql.js", "../../node_modules/highlight.js/lib/languages/swift.js", "../../node_modules/highlight.js/lib/languages/yaml.js", "../../node_modules/highlight.js/lib/languages/typescript.js", "../../node_modules/highlight.js/lib/languages/vbnet.js", "../../node_modules/highlight.js/lib/languages/wasm.js", "../../node_modules/highlight.js/lib/common.js", "../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../node_modules/lit-html/src/lit-html.ts", "../../node_modules/lit-element/src/lit-element.ts", "../../node_modules/lit-html/src/directive.ts", "../../node_modules/lit-html/src/directives/unsafe-html.ts", "../../node_modules/@lit/reactive-element/src/decorators/property.ts", "../../src/markdown-stream/markdown-stream.ts", "../../node_modules/highlight.js/es/common.js", "../../node_modules/marked/src/defaults.ts", "../../node_modules/marked/src/helpers.ts", "../../node_modules/marked/src/Tokenizer.ts", "../../node_modules/marked/src/rules.ts", "../../node_modules/marked/src/Lexer.ts", "../../node_modules/marked/src/Renderer.ts", "../../node_modules/marked/src/TextRenderer.ts", "../../node_modules/marked/src/Parser.ts", "../../node_modules/marked/src/Hooks.ts", "../../node_modules/marked/src/Instance.ts", "../../node_modules/marked/src/marked.ts", "../../node_modules/dompurify/src/utils.ts", "../../node_modules/dompurify/src/tags.ts", "../../node_modules/dompurify/src/attrs.ts", "../../node_modules/dompurify/src/regexp.ts", "../../node_modules/dompurify/src/purify.ts", "../../src/utils/_utils.ts", "../../src/chat/chat-tools.ts", "../../src/chat/chat-external-link.ts", "../../src/chat/chat.ts"], - "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], - "mappings": "iqBAAA,IAAAA,GAAAC,EAAA,CAAAC,GAAAC,KAAA,EAMC,SAA0CC,EAAMC,EAAS,CACtD,OAAOH,IAAY,UAAY,OAAOC,IAAW,SACnDA,GAAO,QAAUE,EAAQ,EAClB,OAAO,QAAW,YAAc,OAAO,IAC9C,OAAO,CAAC,EAAGA,CAAO,EACX,OAAOH,IAAY,SAC1BA,GAAQ,YAAiBG,EAAQ,EAEjCD,EAAK,YAAiBC,EAAQ,CAChC,GAAGH,GAAM,UAAW,CACpB,OAAiB,UAAW,CAClB,IAAII,EAAuB,CAE/B,IACC,SAASC,EAAyBC,EAAqBC,EAAqB,CAEnF,aAGAA,EAAoB,EAAED,EAAqB,CACzC,QAAW,UAAW,CAAE,OAAqBE,CAAW,CAC1D,CAAC,EAGD,IAAIC,EAAeF,EAAoB,GAAG,EACtCG,EAAoCH,EAAoB,EAAEE,CAAY,EAEtEE,EAASJ,EAAoB,GAAG,EAChCK,EAA8BL,EAAoB,EAAEI,CAAM,EAE1DE,EAAaN,EAAoB,GAAG,EACpCO,EAA8BP,EAAoB,EAAEM,CAAU,EAOlE,SAASE,EAAQC,EAAM,CACrB,GAAI,CACF,OAAO,SAAS,YAAYA,CAAI,CAClC,MAAc,CACZ,MAAO,EACT,CACF,CAUA,IAAIC,EAAqB,SAA4BC,EAAQ,CAC3D,IAAIC,EAAeL,EAAe,EAAEI,CAAM,EAC1C,OAAAH,EAAQ,KAAK,EACNI,CACT,EAEiCC,EAAeH,EAOhD,SAASI,EAAkBC,EAAO,CAChC,IAAIC,EAAQ,SAAS,gBAAgB,aAAa,KAAK,IAAM,MACzDC,EAAc,SAAS,cAAc,UAAU,EAEnDA,EAAY,MAAM,SAAW,OAE7BA,EAAY,MAAM,OAAS,IAC3BA,EAAY,MAAM,QAAU,IAC5BA,EAAY,MAAM,OAAS,IAE3BA,EAAY,MAAM,SAAW,WAC7BA,EAAY,MAAMD,EAAQ,QAAU,MAAM,EAAI,UAE9C,IAAIE,EAAY,OAAO,aAAe,SAAS,gBAAgB,UAC/D,OAAAD,EAAY,MAAM,IAAM,GAAG,OAAOC,EAAW,IAAI,EACjDD,EAAY,aAAa,WAAY,EAAE,EACvCA,EAAY,MAAQF,EACbE,CACT,CAYA,IAAIE,EAAiB,SAAwBJ,EAAOK,EAAS,CAC3D,IAAIH,EAAcH,EAAkBC,CAAK,EACzCK,EAAQ,UAAU,YAAYH,CAAW,EACzC,IAAIL,EAAeL,EAAe,EAAEU,CAAW,EAC/C,OAAAT,EAAQ,MAAM,EACdS,EAAY,OAAO,EACZL,CACT,EASIS,EAAsB,SAA6BV,EAAQ,CAC7D,IAAIS,EAAU,UAAU,OAAS,GAAK,UAAU,CAAC,IAAM,OAAY,UAAU,CAAC,EAAI,CAChF,UAAW,SAAS,IACtB,EACIR,EAAe,GAEnB,OAAI,OAAOD,GAAW,SACpBC,EAAeO,EAAeR,EAAQS,CAAO,EACpCT,aAAkB,kBAAoB,CAAC,CAAC,OAAQ,SAAU,MAAO,MAAO,UAAU,EAAE,SAAyDA,GAAO,IAAI,EAEjKC,EAAeO,EAAeR,EAAO,MAAOS,CAAO,GAEnDR,EAAeL,EAAe,EAAEI,CAAM,EACtCH,EAAQ,MAAM,GAGTI,CACT,EAEiCU,EAAgBD,EAEjD,SAASE,EAAQC,EAAK,CAAE,0BAA2B,OAAI,OAAO,QAAW,YAAc,OAAO,OAAO,UAAa,SAAYD,EAAU,SAAiBC,EAAK,CAAE,OAAO,OAAOA,CAAK,EAAYD,EAAU,SAAiBC,EAAK,CAAE,OAAOA,GAAO,OAAO,QAAW,YAAcA,EAAI,cAAgB,QAAUA,IAAQ,OAAO,UAAY,SAAW,OAAOA,CAAK,EAAYD,EAAQC,CAAG,CAAG,CAUzX,IAAIC,EAAyB,UAAkC,CAC7D,IAAIL,EAAU,UAAU,OAAS,GAAK,UAAU,CAAC,IAAM,OAAY,UAAU,CAAC,EAAI,CAAC,EAE/EM,EAAkBN,EAAQ,OAC1BO,EAASD,IAAoB,OAAS,OAASA,EAC/CE,EAAYR,EAAQ,UACpBT,EAASS,EAAQ,OACjBS,GAAOT,EAAQ,KAEnB,GAAIO,IAAW,QAAUA,IAAW,MAClC,MAAM,IAAI,MAAM,oDAAoD,EAItE,GAAIhB,IAAW,OACb,GAAIA,GAAUY,EAAQZ,CAAM,IAAM,UAAYA,EAAO,WAAa,EAAG,CACnE,GAAIgB,IAAW,QAAUhB,EAAO,aAAa,UAAU,EACrD,MAAM,IAAI,MAAM,mFAAmF,EAGrG,GAAIgB,IAAW,QAAUhB,EAAO,aAAa,UAAU,GAAKA,EAAO,aAAa,UAAU,GACxF,MAAM,IAAI,MAAM,uGAAwG,CAE5H,KACE,OAAM,IAAI,MAAM,6CAA6C,EAKjE,GAAIkB,GACF,OAAOP,EAAaO,GAAM,CACxB,UAAWD,CACb,CAAC,EAIH,GAAIjB,EACF,OAAOgB,IAAW,MAAQd,EAAYF,CAAM,EAAIW,EAAaX,EAAQ,CACnE,UAAWiB,CACb,CAAC,CAEL,EAEiCE,EAAmBL,EAEpD,SAASM,EAAiBP,EAAK,CAAE,0BAA2B,OAAI,OAAO,QAAW,YAAc,OAAO,OAAO,UAAa,SAAYO,EAAmB,SAAiBP,EAAK,CAAE,OAAO,OAAOA,CAAK,EAAYO,EAAmB,SAAiBP,EAAK,CAAE,OAAOA,GAAO,OAAO,QAAW,YAAcA,EAAI,cAAgB,QAAUA,IAAQ,OAAO,UAAY,SAAW,OAAOA,CAAK,EAAYO,EAAiBP,CAAG,CAAG,CAE7Z,SAASQ,GAAgBC,EAAUC,EAAa,CAAE,GAAI,EAAED,aAAoBC,GAAgB,MAAM,IAAI,UAAU,mCAAmC,CAAK,CAExJ,SAASC,EAAkBxB,EAAQyB,EAAO,CAAE,QAASC,EAAI,EAAGA,EAAID,EAAM,OAAQC,IAAK,CAAE,IAAIC,EAAaF,EAAMC,CAAC,EAAGC,EAAW,WAAaA,EAAW,YAAc,GAAOA,EAAW,aAAe,GAAU,UAAWA,IAAYA,EAAW,SAAW,IAAM,OAAO,eAAe3B,EAAQ2B,EAAW,IAAKA,CAAU,CAAG,CAAE,CAE5T,SAASC,EAAaL,EAAaM,EAAYC,EAAa,CAAE,OAAID,GAAYL,EAAkBD,EAAY,UAAWM,CAAU,EAAOC,GAAaN,EAAkBD,EAAaO,CAAW,EAAUP,CAAa,CAEtN,SAASQ,GAAUC,EAAUC,EAAY,CAAE,GAAI,OAAOA,GAAe,YAAcA,IAAe,KAAQ,MAAM,IAAI,UAAU,oDAAoD,EAAKD,EAAS,UAAY,OAAO,OAAOC,GAAcA,EAAW,UAAW,CAAE,YAAa,CAAE,MAAOD,EAAU,SAAU,GAAM,aAAc,EAAK,CAAE,CAAC,EAAOC,GAAYC,EAAgBF,EAAUC,CAAU,CAAG,CAEhY,SAASC,EAAgBC,EAAGC,EAAG,CAAE,OAAAF,EAAkB,OAAO,gBAAkB,SAAyBC,EAAGC,EAAG,CAAE,OAAAD,EAAE,UAAYC,EAAUD,CAAG,EAAUD,EAAgBC,EAAGC,CAAC,CAAG,CAEzK,SAASC,GAAaC,EAAS,CAAE,IAAIC,EAA4BC,GAA0B,EAAG,OAAO,UAAgC,CAAE,IAAIC,EAAQC,EAAgBJ,CAAO,EAAGK,EAAQ,GAAIJ,EAA2B,CAAE,IAAIK,EAAYF,EAAgB,IAAI,EAAE,YAAaC,EAAS,QAAQ,UAAUF,EAAO,UAAWG,CAAS,CAAG,MAASD,EAASF,EAAM,MAAM,KAAM,SAAS,EAAK,OAAOI,GAA2B,KAAMF,CAAM,CAAG,CAAG,CAExa,SAASE,GAA2BC,EAAMC,EAAM,CAAE,OAAIA,IAAS3B,EAAiB2B,CAAI,IAAM,UAAY,OAAOA,GAAS,YAAsBA,EAAeC,GAAuBF,CAAI,CAAG,CAEzL,SAASE,GAAuBF,EAAM,CAAE,GAAIA,IAAS,OAAU,MAAM,IAAI,eAAe,2DAA2D,EAAK,OAAOA,CAAM,CAErK,SAASN,IAA4B,CAA0E,GAApE,OAAO,QAAY,KAAe,CAAC,QAAQ,WAA6B,QAAQ,UAAU,KAAM,MAAO,GAAO,GAAI,OAAO,OAAU,WAAY,MAAO,GAAM,GAAI,CAAE,YAAK,UAAU,SAAS,KAAK,QAAQ,UAAU,KAAM,CAAC,EAAG,UAAY,CAAC,CAAC,CAAC,EAAU,EAAM,MAAY,CAAE,MAAO,EAAO,CAAE,CAEnU,SAASE,EAAgBP,EAAG,CAAE,OAAAO,EAAkB,OAAO,eAAiB,OAAO,eAAiB,SAAyBP,EAAG,CAAE,OAAOA,EAAE,WAAa,OAAO,eAAeA,CAAC,CAAG,EAAUO,EAAgBP,CAAC,CAAG,CAa5M,SAASc,EAAkBC,EAAQC,EAAS,CAC1C,IAAIC,EAAY,kBAAkB,OAAOF,CAAM,EAE/C,GAAKC,EAAQ,aAAaC,CAAS,EAInC,OAAOD,EAAQ,aAAaC,CAAS,CACvC,CAOA,IAAIC,EAAyB,SAAUC,EAAU,CAC/CvB,GAAUsB,EAAWC,CAAQ,EAE7B,IAAIC,EAASlB,GAAagB,CAAS,EAMnC,SAASA,EAAUG,EAAS/C,EAAS,CACnC,IAAIgD,EAEJ,OAAApC,GAAgB,KAAMgC,CAAS,EAE/BI,EAAQF,EAAO,KAAK,IAAI,EAExBE,EAAM,eAAehD,CAAO,EAE5BgD,EAAM,YAAYD,CAAO,EAElBC,CACT,CAQA,OAAA7B,EAAayB,EAAW,CAAC,CACvB,IAAK,iBACL,MAAO,UAA0B,CAC/B,IAAI5C,EAAU,UAAU,OAAS,GAAK,UAAU,CAAC,IAAM,OAAY,UAAU,CAAC,EAAI,CAAC,EACnF,KAAK,OAAS,OAAOA,EAAQ,QAAW,WAAaA,EAAQ,OAAS,KAAK,cAC3E,KAAK,OAAS,OAAOA,EAAQ,QAAW,WAAaA,EAAQ,OAAS,KAAK,cAC3E,KAAK,KAAO,OAAOA,EAAQ,MAAS,WAAaA,EAAQ,KAAO,KAAK,YACrE,KAAK,UAAYW,EAAiBX,EAAQ,SAAS,IAAM,SAAWA,EAAQ,UAAY,SAAS,IACnG,CAMF,EAAG,CACD,IAAK,cACL,MAAO,SAAqB+C,EAAS,CACnC,IAAIE,EAAS,KAEb,KAAK,SAAWhE,EAAe,EAAE8D,EAAS,QAAS,SAAUG,GAAG,CAC9D,OAAOD,EAAO,QAAQC,EAAC,CACzB,CAAC,CACH,CAMF,EAAG,CACD,IAAK,UACL,MAAO,SAAiBA,EAAG,CACzB,IAAIH,EAAUG,EAAE,gBAAkBA,EAAE,cAChC3C,GAAS,KAAK,OAAOwC,CAAO,GAAK,OACjCtC,GAAOC,EAAgB,CACzB,OAAQH,GACR,UAAW,KAAK,UAChB,OAAQ,KAAK,OAAOwC,CAAO,EAC3B,KAAM,KAAK,KAAKA,CAAO,CACzB,CAAC,EAED,KAAK,KAAKtC,GAAO,UAAY,QAAS,CACpC,OAAQF,GACR,KAAME,GACN,QAASsC,EACT,eAAgB,UAA0B,CACpCA,GACFA,EAAQ,MAAM,EAGhB,OAAO,aAAa,EAAE,gBAAgB,CACxC,CACF,CAAC,CACH,CAMF,EAAG,CACD,IAAK,gBACL,MAAO,SAAuBA,EAAS,CACrC,OAAOP,EAAkB,SAAUO,CAAO,CAC5C,CAMF,EAAG,CACD,IAAK,gBACL,MAAO,SAAuBA,EAAS,CACrC,IAAII,EAAWX,EAAkB,SAAUO,CAAO,EAElD,GAAII,EACF,OAAO,SAAS,cAAcA,CAAQ,CAE1C,CAQF,EAAG,CACD,IAAK,cAML,MAAO,SAAqBJ,EAAS,CACnC,OAAOP,EAAkB,OAAQO,CAAO,CAC1C,CAKF,EAAG,CACD,IAAK,UACL,MAAO,UAAmB,CACxB,KAAK,SAAS,QAAQ,CACxB,CACF,CAAC,EAAG,CAAC,CACH,IAAK,OACL,MAAO,SAAcxD,EAAQ,CAC3B,IAAIS,EAAU,UAAU,OAAS,GAAK,UAAU,CAAC,IAAM,OAAY,UAAU,CAAC,EAAI,CAChF,UAAW,SAAS,IACtB,EACA,OAAOE,EAAaX,EAAQS,CAAO,CACrC,CAOF,EAAG,CACD,IAAK,MACL,MAAO,SAAaT,EAAQ,CAC1B,OAAOE,EAAYF,CAAM,CAC3B,CAOF,EAAG,CACD,IAAK,cACL,MAAO,UAAuB,CAC5B,IAAIgB,EAAS,UAAU,OAAS,GAAK,UAAU,CAAC,IAAM,OAAY,UAAU,CAAC,EAAI,CAAC,OAAQ,KAAK,EAC3F6C,EAAU,OAAO7C,GAAW,SAAW,CAACA,CAAM,EAAIA,EAClD8C,GAAU,CAAC,CAAC,SAAS,sBACzB,OAAAD,EAAQ,QAAQ,SAAU7C,GAAQ,CAChC8C,GAAUA,IAAW,CAAC,CAAC,SAAS,sBAAsB9C,EAAM,CAC9D,CAAC,EACM8C,EACT,CACF,CAAC,CAAC,EAEKT,CACT,EAAG7D,EAAqB,CAAE,EAEOF,EAAa+D,CAExC,EAEA,IACC,SAAStE,EAAQ,CAExB,IAAIgF,EAAqB,EAKzB,GAAI,OAAO,QAAY,KAAe,CAAC,QAAQ,UAAU,QAAS,CAC9D,IAAIC,EAAQ,QAAQ,UAEpBA,EAAM,QAAUA,EAAM,iBACNA,EAAM,oBACNA,EAAM,mBACNA,EAAM,kBACNA,EAAM,qBAC1B,CASA,SAASC,EAASd,EAASS,EAAU,CACjC,KAAOT,GAAWA,EAAQ,WAAaY,GAAoB,CACvD,GAAI,OAAOZ,EAAQ,SAAY,YAC3BA,EAAQ,QAAQS,CAAQ,EAC1B,OAAOT,EAETA,EAAUA,EAAQ,UACtB,CACJ,CAEApE,EAAO,QAAUkF,CAGX,EAEA,IACC,SAASlF,EAAQmF,EAA0B7E,EAAqB,CAEvE,IAAI4E,EAAU5E,EAAoB,GAAG,EAYrC,SAAS8E,EAAUhB,EAASS,EAAU9D,EAAMsE,EAAUC,EAAY,CAC9D,IAAIC,EAAaC,EAAS,MAAM,KAAM,SAAS,EAE/C,OAAApB,EAAQ,iBAAiBrD,EAAMwE,EAAYD,CAAU,EAE9C,CACH,QAAS,UAAW,CAChBlB,EAAQ,oBAAoBrD,EAAMwE,EAAYD,CAAU,CAC5D,CACJ,CACJ,CAYA,SAASG,EAASC,EAAUb,EAAU9D,EAAMsE,EAAUC,EAAY,CAE9D,OAAI,OAAOI,EAAS,kBAAqB,WAC9BN,EAAU,MAAM,KAAM,SAAS,EAItC,OAAOrE,GAAS,WAGTqE,EAAU,KAAK,KAAM,QAAQ,EAAE,MAAM,KAAM,SAAS,GAI3D,OAAOM,GAAa,WACpBA,EAAW,SAAS,iBAAiBA,CAAQ,GAI1C,MAAM,UAAU,IAAI,KAAKA,EAAU,SAAUtB,EAAS,CACzD,OAAOgB,EAAUhB,EAASS,EAAU9D,EAAMsE,EAAUC,CAAU,CAClE,CAAC,EACL,CAWA,SAASE,EAASpB,EAASS,EAAU9D,EAAMsE,EAAU,CACjD,OAAO,SAAST,EAAG,CACfA,EAAE,eAAiBM,EAAQN,EAAE,OAAQC,CAAQ,EAEzCD,EAAE,gBACFS,EAAS,KAAKjB,EAASQ,CAAC,CAEhC,CACJ,CAEA5E,EAAO,QAAUyF,CAGX,EAEA,IACC,SAASrF,EAAyBL,EAAS,CAQlDA,EAAQ,KAAO,SAASsB,EAAO,CAC3B,OAAOA,IAAU,QACVA,aAAiB,aACjBA,EAAM,WAAa,CAC9B,EAQAtB,EAAQ,SAAW,SAASsB,EAAO,CAC/B,IAAIN,EAAO,OAAO,UAAU,SAAS,KAAKM,CAAK,EAE/C,OAAOA,IAAU,SACTN,IAAS,qBAAuBA,IAAS,4BACzC,WAAYM,IACZA,EAAM,SAAW,GAAKtB,EAAQ,KAAKsB,EAAM,CAAC,CAAC,EACvD,EAQAtB,EAAQ,OAAS,SAASsB,EAAO,CAC7B,OAAO,OAAOA,GAAU,UACjBA,aAAiB,MAC5B,EAQAtB,EAAQ,GAAK,SAASsB,EAAO,CACzB,IAAIN,EAAO,OAAO,UAAU,SAAS,KAAKM,CAAK,EAE/C,OAAON,IAAS,mBACpB,CAGM,EAEA,IACC,SAASf,EAAQmF,EAA0B7E,EAAqB,CAEvE,IAAIqF,EAAKrF,EAAoB,GAAG,EAC5BmF,EAAWnF,EAAoB,GAAG,EAWtC,SAASI,EAAOO,EAAQF,EAAMsE,EAAU,CACpC,GAAI,CAACpE,GAAU,CAACF,GAAQ,CAACsE,EACrB,MAAM,IAAI,MAAM,4BAA4B,EAGhD,GAAI,CAACM,EAAG,OAAO5E,CAAI,EACf,MAAM,IAAI,UAAU,kCAAkC,EAG1D,GAAI,CAAC4E,EAAG,GAAGN,CAAQ,EACf,MAAM,IAAI,UAAU,mCAAmC,EAG3D,GAAIM,EAAG,KAAK1E,CAAM,EACd,OAAO2E,EAAW3E,EAAQF,EAAMsE,CAAQ,EAEvC,GAAIM,EAAG,SAAS1E,CAAM,EACvB,OAAO4E,EAAe5E,EAAQF,EAAMsE,CAAQ,EAE3C,GAAIM,EAAG,OAAO1E,CAAM,EACrB,OAAO6E,EAAe7E,EAAQF,EAAMsE,CAAQ,EAG5C,MAAM,IAAI,UAAU,2EAA2E,CAEvG,CAWA,SAASO,EAAWG,EAAMhF,EAAMsE,EAAU,CACtC,OAAAU,EAAK,iBAAiBhF,EAAMsE,CAAQ,EAE7B,CACH,QAAS,UAAW,CAChBU,EAAK,oBAAoBhF,EAAMsE,CAAQ,CAC3C,CACJ,CACJ,CAWA,SAASQ,EAAeG,EAAUjF,EAAMsE,EAAU,CAC9C,aAAM,UAAU,QAAQ,KAAKW,EAAU,SAASD,EAAM,CAClDA,EAAK,iBAAiBhF,EAAMsE,CAAQ,CACxC,CAAC,EAEM,CACH,QAAS,UAAW,CAChB,MAAM,UAAU,QAAQ,KAAKW,EAAU,SAASD,EAAM,CAClDA,EAAK,oBAAoBhF,EAAMsE,CAAQ,CAC3C,CAAC,CACL,CACJ,CACJ,CAWA,SAASS,EAAejB,EAAU9D,EAAMsE,EAAU,CAC9C,OAAOI,EAAS,SAAS,KAAMZ,EAAU9D,EAAMsE,CAAQ,CAC3D,CAEArF,EAAO,QAAUU,CAGX,EAEA,IACC,SAASV,EAAQ,CAExB,SAASiG,EAAO7B,EAAS,CACrB,IAAIlD,EAEJ,GAAIkD,EAAQ,WAAa,SACrBA,EAAQ,MAAM,EAEdlD,EAAekD,EAAQ,cAElBA,EAAQ,WAAa,SAAWA,EAAQ,WAAa,WAAY,CACtE,IAAI8B,EAAa9B,EAAQ,aAAa,UAAU,EAE3C8B,GACD9B,EAAQ,aAAa,WAAY,EAAE,EAGvCA,EAAQ,OAAO,EACfA,EAAQ,kBAAkB,EAAGA,EAAQ,MAAM,MAAM,EAE5C8B,GACD9B,EAAQ,gBAAgB,UAAU,EAGtClD,EAAekD,EAAQ,KAC3B,KACK,CACGA,EAAQ,aAAa,iBAAiB,GACtCA,EAAQ,MAAM,EAGlB,IAAI+B,EAAY,OAAO,aAAa,EAChCC,EAAQ,SAAS,YAAY,EAEjCA,EAAM,mBAAmBhC,CAAO,EAChC+B,EAAU,gBAAgB,EAC1BA,EAAU,SAASC,CAAK,EAExBlF,EAAeiF,EAAU,SAAS,CACtC,CAEA,OAAOjF,CACX,CAEAlB,EAAO,QAAUiG,CAGX,EAEA,IACC,SAASjG,EAAQ,CAExB,SAASqG,GAAK,CAGd,CAEAA,EAAE,UAAY,CACZ,GAAI,SAAUC,EAAMjB,EAAUkB,EAAK,CACjC,IAAI3B,EAAI,KAAK,IAAM,KAAK,EAAI,CAAC,GAE7B,OAACA,EAAE0B,CAAI,IAAM1B,EAAE0B,CAAI,EAAI,CAAC,IAAI,KAAK,CAC/B,GAAIjB,EACJ,IAAKkB,CACP,CAAC,EAEM,IACT,EAEA,KAAM,SAAUD,EAAMjB,EAAUkB,EAAK,CACnC,IAAIxC,EAAO,KACX,SAASyB,GAAY,CACnBzB,EAAK,IAAIuC,EAAMd,CAAQ,EACvBH,EAAS,MAAMkB,EAAK,SAAS,CAC/B,CAEA,OAAAf,EAAS,EAAIH,EACN,KAAK,GAAGiB,EAAMd,EAAUe,CAAG,CACpC,EAEA,KAAM,SAAUD,EAAM,CACpB,IAAIE,EAAO,CAAC,EAAE,MAAM,KAAK,UAAW,CAAC,EACjCC,IAAW,KAAK,IAAM,KAAK,EAAI,CAAC,IAAIH,CAAI,GAAK,CAAC,GAAG,MAAM,EACvD3D,EAAI,EACJ+D,EAAMD,EAAO,OAEjB,IAAK9D,EAAGA,EAAI+D,EAAK/D,IACf8D,EAAO9D,CAAC,EAAE,GAAG,MAAM8D,EAAO9D,CAAC,EAAE,IAAK6D,CAAI,EAGxC,OAAO,IACT,EAEA,IAAK,SAAUF,EAAMjB,EAAU,CAC7B,IAAIT,EAAI,KAAK,IAAM,KAAK,EAAI,CAAC,GACzB+B,EAAO/B,EAAE0B,CAAI,EACbM,EAAa,CAAC,EAElB,GAAID,GAAQtB,EACV,QAAS1C,EAAI,EAAG+D,EAAMC,EAAK,OAAQhE,EAAI+D,EAAK/D,IACtCgE,EAAKhE,CAAC,EAAE,KAAO0C,GAAYsB,EAAKhE,CAAC,EAAE,GAAG,IAAM0C,GAC9CuB,EAAW,KAAKD,EAAKhE,CAAC,CAAC,EAQ7B,OAACiE,EAAW,OACRhC,EAAE0B,CAAI,EAAIM,EACV,OAAOhC,EAAE0B,CAAI,EAEV,IACT,CACF,EAEAtG,EAAO,QAAUqG,EACjBrG,EAAO,QAAQ,YAAcqG,CAGvB,CAEI,EAGIQ,EAA2B,CAAC,EAGhC,SAASvG,EAAoBwG,EAAU,CAEtC,GAAGD,EAAyBC,CAAQ,EACnC,OAAOD,EAAyBC,CAAQ,EAAE,QAG3C,IAAI9G,EAAS6G,EAAyBC,CAAQ,EAAI,CAGjD,QAAS,CAAC,CACX,EAGA,OAAA3G,EAAoB2G,CAAQ,EAAE9G,EAAQA,EAAO,QAASM,CAAmB,EAGlEN,EAAO,OACf,CAIA,OAAC,UAAW,CAEXM,EAAoB,EAAI,SAASN,EAAQ,CACxC,IAAI+G,EAAS/G,GAAUA,EAAO,WAC7B,UAAW,CAAE,OAAOA,EAAO,OAAY,EACvC,UAAW,CAAE,OAAOA,CAAQ,EAC7B,OAAAM,EAAoB,EAAEyG,EAAQ,CAAE,EAAGA,CAAO,CAAC,EACpCA,CACR,CACD,EAAE,EAGD,UAAW,CAEXzG,EAAoB,EAAI,SAASP,EAASiH,EAAY,CACrD,QAAQC,KAAOD,EACX1G,EAAoB,EAAE0G,EAAYC,CAAG,GAAK,CAAC3G,EAAoB,EAAEP,EAASkH,CAAG,GAC/E,OAAO,eAAelH,EAASkH,EAAK,CAAE,WAAY,GAAM,IAAKD,EAAWC,CAAG,CAAE,CAAC,CAGjF,CACD,EAAE,EAGD,UAAW,CACX3G,EAAoB,EAAI,SAASwB,EAAKoF,EAAM,CAAE,OAAO,OAAO,UAAU,eAAe,KAAKpF,EAAKoF,CAAI,CAAG,CACvG,EAAE,EAMK5G,EAAoB,GAAG,CAC/B,EAAG,EACX,OACD,CAAC,ICz3BD,IAAA6G,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAEA,SAASC,GAAWC,EAAK,CACvB,OAAIA,aAAe,IACjBA,EAAI,MACFA,EAAI,OACJA,EAAI,IACF,UAAY,CACV,MAAM,IAAI,MAAM,kBAAkB,CACpC,EACKA,aAAe,MACxBA,EAAI,IACFA,EAAI,MACJA,EAAI,OACF,UAAY,CACV,MAAM,IAAI,MAAM,kBAAkB,CACpC,GAIN,OAAO,OAAOA,CAAG,EAEjB,OAAO,oBAAoBA,CAAG,EAAE,QAASC,GAAS,CAChD,IAAMC,EAAOF,EAAIC,CAAI,EACfE,EAAO,OAAOD,GAGfC,IAAS,UAAYA,IAAS,aAAe,CAAC,OAAO,SAASD,CAAI,GACrEH,GAAWG,CAAI,CAEnB,CAAC,EAEMF,CACT,CAMA,IAAMI,GAAN,KAAe,CAIb,YAAYC,EAAM,CAEZA,EAAK,OAAS,SAAWA,EAAK,KAAO,CAAC,GAE1C,KAAK,KAAOA,EAAK,KACjB,KAAK,eAAiB,EACxB,CAEA,aAAc,CACZ,KAAK,eAAiB,EACxB,CACF,EAMA,SAASC,GAAWC,EAAO,CACzB,OAAOA,EACJ,QAAQ,KAAM,OAAO,EACrB,QAAQ,KAAM,MAAM,EACpB,QAAQ,KAAM,MAAM,EACpB,QAAQ,KAAM,QAAQ,EACtB,QAAQ,KAAM,QAAQ,CAC3B,CAUA,SAASC,GAAUC,KAAaC,EAAS,CAEvC,IAAMC,EAAS,OAAO,OAAO,IAAI,EAEjC,QAAWC,KAAOH,EAChBE,EAAOC,CAAG,EAAIH,EAASG,CAAG,EAE5B,OAAAF,EAAQ,QAAQ,SAASV,EAAK,CAC5B,QAAWY,KAAOZ,EAChBW,EAAOC,CAAG,EAAIZ,EAAIY,CAAG,CAEzB,CAAC,EACwBD,CAC3B,CAcA,IAAME,GAAa,UAMbC,GAAqBC,GAGlB,CAAC,CAACA,EAAK,MAQVC,GAAkB,CAACf,EAAM,CAAE,OAAAgB,CAAO,IAAM,CAE5C,GAAIhB,EAAK,WAAW,WAAW,EAC7B,OAAOA,EAAK,QAAQ,YAAa,WAAW,EAG9C,GAAIA,EAAK,SAAS,GAAG,EAAG,CACtB,IAAMiB,EAASjB,EAAK,MAAM,GAAG,EAC7B,MAAO,CACL,GAAGgB,CAAM,GAAGC,EAAO,MAAM,CAAC,GAC1B,GAAIA,EAAO,IAAI,CAACC,EAAGC,IAAM,GAAGD,CAAC,GAAG,IAAI,OAAOC,EAAI,CAAC,CAAC,EAAE,CACrD,EAAE,KAAK,GAAG,CACZ,CAEA,MAAO,GAAGH,CAAM,GAAGhB,CAAI,EACzB,EAGMoB,GAAN,KAAmB,CAOjB,YAAYC,EAAWC,EAAS,CAC9B,KAAK,OAAS,GACd,KAAK,YAAcA,EAAQ,YAC3BD,EAAU,KAAK,IAAI,CACrB,CAMA,QAAQE,EAAM,CACZ,KAAK,QAAUlB,GAAWkB,CAAI,CAChC,CAMA,SAAST,EAAM,CACb,GAAI,CAACD,GAAkBC,CAAI,EAAG,OAE9B,IAAMU,EAAYT,GAAgBD,EAAK,MACrC,CAAE,OAAQ,KAAK,WAAY,CAAC,EAC9B,KAAK,KAAKU,CAAS,CACrB,CAMA,UAAUV,EAAM,CACTD,GAAkBC,CAAI,IAE3B,KAAK,QAAUF,GACjB,CAKA,OAAQ,CACN,OAAO,KAAK,MACd,CAQA,KAAKY,EAAW,CACd,KAAK,QAAU,gBAAgBA,CAAS,IAC1C,CACF,EAQMC,GAAU,CAACC,EAAO,CAAC,IAAM,CAE7B,IAAMhB,EAAS,CAAE,SAAU,CAAC,CAAE,EAC9B,cAAO,OAAOA,EAAQgB,CAAI,EACnBhB,CACT,EAEMiB,GAAN,MAAMC,CAAU,CACd,aAAc,CAEZ,KAAK,SAAWH,GAAQ,EACxB,KAAK,MAAQ,CAAC,KAAK,QAAQ,CAC7B,CAEA,IAAI,KAAM,CACR,OAAO,KAAK,MAAM,KAAK,MAAM,OAAS,CAAC,CACzC,CAEA,IAAI,MAAO,CAAE,OAAO,KAAK,QAAU,CAGnC,IAAIX,EAAM,CACR,KAAK,IAAI,SAAS,KAAKA,CAAI,CAC7B,CAGA,SAASe,EAAO,CAEd,IAAMf,EAAOW,GAAQ,CAAE,MAAAI,CAAM,CAAC,EAC9B,KAAK,IAAIf,CAAI,EACb,KAAK,MAAM,KAAKA,CAAI,CACtB,CAEA,WAAY,CACV,GAAI,KAAK,MAAM,OAAS,EACtB,OAAO,KAAK,MAAM,IAAI,CAI1B,CAEA,eAAgB,CACd,KAAO,KAAK,UAAU,GAAE,CAC1B,CAEA,QAAS,CACP,OAAO,KAAK,UAAU,KAAK,SAAU,KAAM,CAAC,CAC9C,CAMA,KAAKgB,EAAS,CAEZ,OAAO,KAAK,YAAY,MAAMA,EAAS,KAAK,QAAQ,CAGtD,CAMA,OAAO,MAAMA,EAAShB,EAAM,CAC1B,OAAI,OAAOA,GAAS,SAClBgB,EAAQ,QAAQhB,CAAI,EACXA,EAAK,WACdgB,EAAQ,SAAShB,CAAI,EACrBA,EAAK,SAAS,QAASiB,GAAU,KAAK,MAAMD,EAASC,CAAK,CAAC,EAC3DD,EAAQ,UAAUhB,CAAI,GAEjBgB,CACT,CAKA,OAAO,UAAUhB,EAAM,CACjB,OAAOA,GAAS,UACfA,EAAK,WAENA,EAAK,SAAS,MAAMkB,GAAM,OAAOA,GAAO,QAAQ,EAGlDlB,EAAK,SAAW,CAACA,EAAK,SAAS,KAAK,EAAE,CAAC,EAEvCA,EAAK,SAAS,QAASiB,GAAU,CAC/BH,EAAU,UAAUG,CAAK,CAC3B,CAAC,EAEL,CACF,EAoBME,GAAN,cAA+BN,EAAU,CAIvC,YAAYL,EAAS,CACnB,MAAM,EACN,KAAK,QAAUA,CACjB,CAKA,QAAQC,EAAM,CACRA,IAAS,IAEb,KAAK,IAAIA,CAAI,CACf,CAGA,WAAWM,EAAO,CAChB,KAAK,SAASA,CAAK,CACrB,CAEA,UAAW,CACT,KAAK,UAAU,CACjB,CAMA,iBAAiBK,EAASlC,EAAM,CAE9B,IAAMc,EAAOoB,EAAQ,KACjBlC,IAAMc,EAAK,MAAQ,YAAYd,CAAI,IAEvC,KAAK,IAAIc,CAAI,CACf,CAEA,QAAS,CAEP,OADiB,IAAIM,GAAa,KAAM,KAAK,OAAO,EACpC,MAAM,CACxB,CAEA,UAAW,CACT,YAAK,cAAc,EACZ,EACT,CACF,EAWA,SAASe,GAAOC,EAAI,CAClB,OAAKA,EACD,OAAOA,GAAO,SAAiBA,EAE5BA,EAAG,OAHM,IAIlB,CAMA,SAASC,GAAUD,EAAI,CACrB,OAAOE,GAAO,MAAOF,EAAI,GAAG,CAC9B,CAMA,SAASG,GAAiBH,EAAI,CAC5B,OAAOE,GAAO,MAAOF,EAAI,IAAI,CAC/B,CAMA,SAASI,GAASJ,EAAI,CACpB,OAAOE,GAAO,MAAOF,EAAI,IAAI,CAC/B,CAMA,SAASE,MAAUG,EAAM,CAEvB,OADeA,EAAK,IAAKvB,GAAMiB,GAAOjB,CAAC,CAAC,EAAE,KAAK,EAAE,CAEnD,CAMA,SAASwB,GAAqBD,EAAM,CAClC,IAAMf,EAAOe,EAAKA,EAAK,OAAS,CAAC,EAEjC,OAAI,OAAOf,GAAS,UAAYA,EAAK,cAAgB,QACnDe,EAAK,OAAOA,EAAK,OAAS,EAAG,CAAC,EACvBf,GAEA,CAAC,CAEZ,CAWA,SAASiB,MAAUF,EAAM,CAMvB,MAHe,KADFC,GAAqBD,CAAI,EAE5B,QAAU,GAAK,MACrBA,EAAK,IAAKvB,GAAMiB,GAAOjB,CAAC,CAAC,EAAE,KAAK,GAAG,EAAI,GAE7C,CAMA,SAAS0B,GAAiBR,EAAI,CAC5B,OAAQ,IAAI,OAAOA,EAAG,SAAS,EAAI,GAAG,EAAG,KAAK,EAAE,EAAE,OAAS,CAC7D,CAOA,SAASS,GAAWT,EAAIU,EAAQ,CAC9B,IAAMC,EAAQX,GAAMA,EAAG,KAAKU,CAAM,EAClC,OAAOC,GAASA,EAAM,QAAU,CAClC,CASA,IAAMC,GAAa,iDAanB,SAASC,GAAuBC,EAAS,CAAE,SAAAC,CAAS,EAAG,CACrD,IAAIC,EAAc,EAElB,OAAOF,EAAQ,IAAKG,GAAU,CAC5BD,GAAe,EACf,IAAME,EAASF,EACXhB,EAAKD,GAAOkB,CAAK,EACjBE,EAAM,GAEV,KAAOnB,EAAG,OAAS,GAAG,CACpB,IAAMW,EAAQC,GAAW,KAAKZ,CAAE,EAChC,GAAI,CAACW,EAAO,CACVQ,GAAOnB,EACP,KACF,CACAmB,GAAOnB,EAAG,UAAU,EAAGW,EAAM,KAAK,EAClCX,EAAKA,EAAG,UAAUW,EAAM,MAAQA,EAAM,CAAC,EAAE,MAAM,EAC3CA,EAAM,CAAC,EAAE,CAAC,IAAM,MAAQA,EAAM,CAAC,EAEjCQ,GAAO,KAAO,OAAO,OAAOR,EAAM,CAAC,CAAC,EAAIO,CAAM,GAE9CC,GAAOR,EAAM,CAAC,EACVA,EAAM,CAAC,IAAM,KACfK,IAGN,CACA,OAAOG,CACT,CAAC,EAAE,IAAInB,GAAM,IAAIA,CAAE,GAAG,EAAE,KAAKe,CAAQ,CACvC,CAMA,IAAMK,GAAmB,OACnBC,GAAW,eACXC,GAAsB,gBACtBC,GAAY,oBACZC,GAAc,yEACdC,GAAmB,eACnBC,GAAiB,+IAKjBC,GAAU,CAACrC,EAAO,CAAC,IAAM,CAC7B,IAAMsC,EAAe,YACrB,OAAItC,EAAK,SACPA,EAAK,MAAQY,GACX0B,EACA,OACAtC,EAAK,OACL,MAAM,GAEHnB,GAAU,CACf,MAAO,OACP,MAAOyD,EACP,IAAK,IACL,UAAW,EAEX,WAAY,CAACC,EAAGC,IAAS,CACnBD,EAAE,QAAU,GAAGC,EAAK,YAAY,CACtC,CACF,EAAGxC,CAAI,CACT,EAGMyC,GAAmB,CACvB,MAAO,eAAgB,UAAW,CACpC,EACMC,GAAmB,CACvB,MAAO,SACP,MAAO,IACP,IAAK,IACL,QAAS,MACT,SAAU,CAACD,EAAgB,CAC7B,EACME,GAAoB,CACxB,MAAO,SACP,MAAO,IACP,IAAK,IACL,QAAS,MACT,SAAU,CAACF,EAAgB,CAC7B,EACMG,GAAqB,CACzB,MAAO,4IACT,EASMC,GAAU,SAASC,EAAOC,EAAKC,EAAc,CAAC,EAAG,CACrD,IAAMtE,EAAOG,GACX,CACE,MAAO,UACP,MAAAiE,EACA,IAAAC,EACA,SAAU,CAAC,CACb,EACAC,CACF,EACAtE,EAAK,SAAS,KAAK,CACjB,MAAO,SAGP,MAAO,mDACP,IAAK,2CACL,aAAc,GACd,UAAW,CACb,CAAC,EACD,IAAMuE,EAAehC,GAEnB,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KAEA,iCACA,qBACA,mBACF,EAEA,OAAAvC,EAAK,SAAS,KACZ,CAgBE,MAAOkC,GACL,OACA,IACAqC,EACA,uBACA,MAAM,CACV,CACF,EACOvE,CACT,EACMwE,GAAsBL,GAAQ,KAAM,GAAG,EACvCM,GAAuBN,GAAQ,OAAQ,MAAM,EAC7CO,GAAoBP,GAAQ,IAAK,GAAG,EACpCQ,GAAc,CAClB,MAAO,SACP,MAAOpB,GACP,UAAW,CACb,EACMqB,GAAgB,CACpB,MAAO,SACP,MAAOpB,GACP,UAAW,CACb,EACMqB,GAAqB,CACzB,MAAO,SACP,MAAOpB,GACP,UAAW,CACb,EACMqB,GAAc,CAClB,MAAO,SACP,MAAO,kBACP,IAAK,aACL,SAAU,CACRf,GACA,CACE,MAAO,KACP,IAAK,KACL,UAAW,EACX,SAAU,CAACA,EAAgB,CAC7B,CACF,CACF,EACMgB,GAAa,CACjB,MAAO,QACP,MAAO1B,GACP,UAAW,CACb,EACM2B,GAAwB,CAC5B,MAAO,QACP,MAAO1B,GACP,UAAW,CACb,EACM2B,GAAe,CAEnB,MAAO,UAAY3B,GACnB,UAAW,CACb,EASM4B,GAAoB,SAASlF,EAAM,CACvC,OAAO,OAAO,OAAOA,EACnB,CAEE,WAAY,CAAC6D,EAAGC,IAAS,CAAEA,EAAK,KAAK,YAAcD,EAAE,CAAC,CAAG,EAEzD,SAAU,CAACA,EAAGC,IAAS,CAAMA,EAAK,KAAK,cAAgBD,EAAE,CAAC,GAAGC,EAAK,YAAY,CAAG,CACnF,CAAC,CACL,EAEIqB,GAAqB,OAAO,OAAO,CACrC,UAAW,KACX,iBAAkBnB,GAClB,iBAAkBD,GAClB,mBAAoBc,GACpB,iBAAkBpB,GAClB,QAASU,GACT,qBAAsBM,GACtB,oBAAqBD,GACrB,cAAeI,GACf,YAAapB,GACb,kBAAmB0B,GACnB,kBAAmBR,GACnB,SAAUrB,GACV,iBAAkBD,GAClB,aAAc6B,GACd,YAAaN,GACb,UAAWpB,GACX,mBAAoBW,GACpB,kBAAmBD,GACnB,YAAaa,GACb,eAAgBpB,GAChB,QAASC,GACT,WAAYoB,GACZ,oBAAqBzB,GACrB,sBAAuB0B,EACzB,CAAC,EA+BD,SAASI,GAAsBzC,EAAO0C,EAAU,CAC/B1C,EAAM,MAAMA,EAAM,MAAQ,CAAC,IAC3B,KACb0C,EAAS,YAAY,CAEzB,CAMA,SAASC,GAAetF,EAAMuF,EAAS,CAEjCvF,EAAK,YAAc,SACrBA,EAAK,MAAQA,EAAK,UAClB,OAAOA,EAAK,UAEhB,CAMA,SAASwF,GAAcxF,EAAMyF,EAAQ,CAC9BA,GACAzF,EAAK,gBAOVA,EAAK,MAAQ,OAASA,EAAK,cAAc,MAAM,GAAG,EAAE,KAAK,GAAG,EAAI,sBAChEA,EAAK,cAAgBoF,GACrBpF,EAAK,SAAWA,EAAK,UAAYA,EAAK,cACtC,OAAOA,EAAK,cAKRA,EAAK,YAAc,SAAWA,EAAK,UAAY,GACrD,CAMA,SAAS0F,GAAe1F,EAAMuF,EAAS,CAChC,MAAM,QAAQvF,EAAK,OAAO,IAE/BA,EAAK,QAAUuC,GAAO,GAAGvC,EAAK,OAAO,EACvC,CAMA,SAAS2F,GAAa3F,EAAMuF,EAAS,CACnC,GAAKvF,EAAK,MACV,IAAIA,EAAK,OAASA,EAAK,IAAK,MAAM,IAAI,MAAM,0CAA0C,EAEtFA,EAAK,MAAQA,EAAK,MAClB,OAAOA,EAAK,MACd,CAMA,SAAS4F,GAAiB5F,EAAMuF,EAAS,CAEnCvF,EAAK,YAAc,SAAWA,EAAK,UAAY,EACrD,CAIA,IAAM6F,GAAiB,CAAC7F,EAAMyF,IAAW,CACvC,GAAI,CAACzF,EAAK,YAAa,OAGvB,GAAIA,EAAK,OAAQ,MAAM,IAAI,MAAM,wCAAwC,EAEzE,IAAM8F,EAAe,OAAO,OAAO,CAAC,EAAG9F,CAAI,EAC3C,OAAO,KAAKA,CAAI,EAAE,QAASO,GAAQ,CAAE,OAAOP,EAAKO,CAAG,CAAG,CAAC,EAExDP,EAAK,SAAW8F,EAAa,SAC7B9F,EAAK,MAAQkC,GAAO4D,EAAa,YAAa7D,GAAU6D,EAAa,KAAK,CAAC,EAC3E9F,EAAK,OAAS,CACZ,UAAW,EACX,SAAU,CACR,OAAO,OAAO8F,EAAc,CAAE,WAAY,EAAK,CAAC,CAClD,CACF,EACA9F,EAAK,UAAY,EAEjB,OAAO8F,EAAa,WACtB,EAGMC,GAAkB,CACtB,KACA,MACA,MACA,KACA,MACA,KACA,KACA,OACA,SACA,OACA,OACF,EAEMC,GAAwB,UAQ9B,SAASC,GAAgBC,EAAaC,EAAiBC,EAAYJ,GAAuB,CAExF,IAAMK,EAAmB,OAAO,OAAO,IAAI,EAI3C,OAAI,OAAOH,GAAgB,SACzBI,EAAYF,EAAWF,EAAY,MAAM,GAAG,CAAC,EACpC,MAAM,QAAQA,CAAW,EAClCI,EAAYF,EAAWF,CAAW,EAElC,OAAO,KAAKA,CAAW,EAAE,QAAQ,SAASE,EAAW,CAEnD,OAAO,OACLC,EACAJ,GAAgBC,EAAYE,CAAS,EAAGD,EAAiBC,CAAS,CACpE,CACF,CAAC,EAEIC,EAYP,SAASC,EAAYF,EAAWG,EAAa,CACvCJ,IACFI,EAAcA,EAAY,IAAIzF,GAAKA,EAAE,YAAY,CAAC,GAEpDyF,EAAY,QAAQ,SAASC,EAAS,CACpC,IAAMC,EAAOD,EAAQ,MAAM,GAAG,EAC9BH,EAAiBI,EAAK,CAAC,CAAC,EAAI,CAACL,EAAWM,GAAgBD,EAAK,CAAC,EAAGA,EAAK,CAAC,CAAC,CAAC,CAC3E,CAAC,CACH,CACF,CAUA,SAASC,GAAgBF,EAASG,EAAe,CAG/C,OAAIA,EACK,OAAOA,CAAa,EAGtBC,GAAcJ,CAAO,EAAI,EAAI,CACtC,CAMA,SAASI,GAAcJ,EAAS,CAC9B,OAAOT,GAAgB,SAASS,EAAQ,YAAY,CAAC,CACvD,CAYA,IAAMK,GAAmB,CAAC,EAKpBC,GAASC,GAAY,CACzB,QAAQ,MAAMA,CAAO,CACvB,EAMMC,GAAO,CAACD,KAAY1E,IAAS,CACjC,QAAQ,IAAI,SAAS0E,CAAO,GAAI,GAAG1E,CAAI,CACzC,EAMM4E,GAAa,CAACC,EAASH,IAAY,CACnCF,GAAiB,GAAGK,CAAO,IAAIH,CAAO,EAAE,IAE5C,QAAQ,IAAI,oBAAoBG,CAAO,KAAKH,CAAO,EAAE,EACrDF,GAAiB,GAAGK,CAAO,IAAIH,CAAO,EAAE,EAAI,GAC9C,EAQMI,GAAkB,IAAI,MA8B5B,SAASC,GAAgBpH,EAAMqH,EAAS,CAAE,IAAA9G,CAAI,EAAG,CAC/C,IAAI2C,EAAS,EACPoE,EAAatH,EAAKO,CAAG,EAErBgH,EAAO,CAAC,EAERC,EAAY,CAAC,EAEnB,QAASzG,EAAI,EAAGA,GAAKsG,EAAQ,OAAQtG,IACnCyG,EAAUzG,EAAImC,CAAM,EAAIoE,EAAWvG,CAAC,EACpCwG,EAAKxG,EAAImC,CAAM,EAAI,GACnBA,GAAUV,GAAiB6E,EAAQtG,EAAI,CAAC,CAAC,EAI3Cf,EAAKO,CAAG,EAAIiH,EACZxH,EAAKO,CAAG,EAAE,MAAQgH,EAClBvH,EAAKO,CAAG,EAAE,OAAS,EACrB,CAKA,SAASkH,GAAgBzH,EAAM,CAC7B,GAAK,MAAM,QAAQA,EAAK,KAAK,EAE7B,IAAIA,EAAK,MAAQA,EAAK,cAAgBA,EAAK,YACzC,MAAA8G,GAAM,oEAAoE,EACpEK,GAGR,GAAI,OAAOnH,EAAK,YAAe,UAAYA,EAAK,aAAe,KAC7D,MAAA8G,GAAM,2BAA2B,EAC3BK,GAGRC,GAAgBpH,EAAMA,EAAK,MAAO,CAAE,IAAK,YAAa,CAAC,EACvDA,EAAK,MAAQ6C,GAAuB7C,EAAK,MAAO,CAAE,SAAU,EAAG,CAAC,EAClE,CAKA,SAAS0H,GAAc1H,EAAM,CAC3B,GAAK,MAAM,QAAQA,EAAK,GAAG,EAE3B,IAAIA,EAAK,MAAQA,EAAK,YAAcA,EAAK,UACvC,MAAA8G,GAAM,8DAA8D,EAC9DK,GAGR,GAAI,OAAOnH,EAAK,UAAa,UAAYA,EAAK,WAAa,KACzD,MAAA8G,GAAM,yBAAyB,EACzBK,GAGRC,GAAgBpH,EAAMA,EAAK,IAAK,CAAE,IAAK,UAAW,CAAC,EACnDA,EAAK,IAAM6C,GAAuB7C,EAAK,IAAK,CAAE,SAAU,EAAG,CAAC,EAC9D,CAaA,SAAS2H,GAAW3H,EAAM,CACpBA,EAAK,OAAS,OAAOA,EAAK,OAAU,UAAYA,EAAK,QAAU,OACjEA,EAAK,WAAaA,EAAK,MACvB,OAAOA,EAAK,MAEhB,CAKA,SAAS4H,GAAW5H,EAAM,CACxB2H,GAAW3H,CAAI,EAEX,OAAOA,EAAK,YAAe,WAC7BA,EAAK,WAAa,CAAE,MAAOA,EAAK,UAAW,GAEzC,OAAOA,EAAK,UAAa,WAC3BA,EAAK,SAAW,CAAE,MAAOA,EAAK,QAAS,GAGzCyH,GAAgBzH,CAAI,EACpB0H,GAAc1H,CAAI,CACpB,CAoBA,SAAS6H,GAAgBC,EAAU,CAOjC,SAASC,EAAO7H,EAAO8H,EAAQ,CAC7B,OAAO,IAAI,OACTjG,GAAO7B,CAAK,EACZ,KACG4H,EAAS,iBAAmB,IAAM,KAClCA,EAAS,aAAe,IAAM,KAC9BE,EAAS,IAAM,GACpB,CACF,CAeA,MAAMC,CAAW,CACf,aAAc,CACZ,KAAK,aAAe,CAAC,EAErB,KAAK,QAAU,CAAC,EAChB,KAAK,QAAU,EACf,KAAK,SAAW,CAClB,CAGA,QAAQjG,EAAIV,EAAM,CAChBA,EAAK,SAAW,KAAK,WAErB,KAAK,aAAa,KAAK,OAAO,EAAIA,EAClC,KAAK,QAAQ,KAAK,CAACA,EAAMU,CAAE,CAAC,EAC5B,KAAK,SAAWQ,GAAiBR,CAAE,EAAI,CACzC,CAEA,SAAU,CACJ,KAAK,QAAQ,SAAW,IAG1B,KAAK,KAAO,IAAM,MAEpB,IAAMkG,EAAc,KAAK,QAAQ,IAAItG,GAAMA,EAAG,CAAC,CAAC,EAChD,KAAK,UAAYmG,EAAOlF,GAAuBqF,EAAa,CAAE,SAAU,GAAI,CAAC,EAAG,EAAI,EACpF,KAAK,UAAY,CACnB,CAGA,KAAKC,EAAG,CACN,KAAK,UAAU,UAAY,KAAK,UAChC,IAAMxF,EAAQ,KAAK,UAAU,KAAKwF,CAAC,EACnC,GAAI,CAACxF,EAAS,OAAO,KAGrB,IAAM5B,EAAI4B,EAAM,UAAU,CAACf,EAAIb,IAAMA,EAAI,GAAKa,IAAO,MAAS,EAExDwG,EAAY,KAAK,aAAarH,CAAC,EAGrC,OAAA4B,EAAM,OAAO,EAAG5B,CAAC,EAEV,OAAO,OAAO4B,EAAOyF,CAAS,CACvC,CACF,CAiCA,MAAMC,CAAoB,CACxB,aAAc,CAEZ,KAAK,MAAQ,CAAC,EAEd,KAAK,aAAe,CAAC,EACrB,KAAK,MAAQ,EAEb,KAAK,UAAY,EACjB,KAAK,WAAa,CACpB,CAGA,WAAWC,EAAO,CAChB,GAAI,KAAK,aAAaA,CAAK,EAAG,OAAO,KAAK,aAAaA,CAAK,EAE5D,IAAMC,EAAU,IAAIN,EACpB,YAAK,MAAM,MAAMK,CAAK,EAAE,QAAQ,CAAC,CAACtG,EAAIV,CAAI,IAAMiH,EAAQ,QAAQvG,EAAIV,CAAI,CAAC,EACzEiH,EAAQ,QAAQ,EAChB,KAAK,aAAaD,CAAK,EAAIC,EACpBA,CACT,CAEA,4BAA6B,CAC3B,OAAO,KAAK,aAAe,CAC7B,CAEA,aAAc,CACZ,KAAK,WAAa,CACpB,CAGA,QAAQvG,EAAIV,EAAM,CAChB,KAAK,MAAM,KAAK,CAACU,EAAIV,CAAI,CAAC,EACtBA,EAAK,OAAS,SAAS,KAAK,OAClC,CAGA,KAAK6G,EAAG,CACN,IAAMtE,EAAI,KAAK,WAAW,KAAK,UAAU,EACzCA,EAAE,UAAY,KAAK,UACnB,IAAIvD,EAASuD,EAAE,KAAKsE,CAAC,EAiCrB,GAAI,KAAK,2BAA2B,GAC9B,EAAA7H,GAAUA,EAAO,QAAU,KAAK,WAAkB,CACpD,IAAMkI,EAAK,KAAK,WAAW,CAAC,EAC5BA,EAAG,UAAY,KAAK,UAAY,EAChClI,EAASkI,EAAG,KAAKL,CAAC,CACpB,CAGF,OAAI7H,IACF,KAAK,YAAcA,EAAO,SAAW,EACjC,KAAK,aAAe,KAAK,OAE3B,KAAK,YAAY,GAIdA,CACT,CACF,CASA,SAASmI,EAAezI,EAAM,CAC5B,IAAM0I,EAAK,IAAIL,EAEf,OAAArI,EAAK,SAAS,QAAQ2I,GAAQD,EAAG,QAAQC,EAAK,MAAO,CAAE,KAAMA,EAAM,KAAM,OAAQ,CAAC,CAAC,EAE/E3I,EAAK,eACP0I,EAAG,QAAQ1I,EAAK,cAAe,CAAE,KAAM,KAAM,CAAC,EAE5CA,EAAK,SACP0I,EAAG,QAAQ1I,EAAK,QAAS,CAAE,KAAM,SAAU,CAAC,EAGvC0I,CACT,CAyCA,SAASE,EAAY5I,EAAMyF,EAAQ,CACjC,IAAMoD,EAAmC7I,EACzC,GAAIA,EAAK,WAAY,OAAO6I,EAE5B,CACEvD,GAGAK,GACAiC,GACA/B,EACF,EAAE,QAAQiD,GAAOA,EAAI9I,EAAMyF,CAAM,CAAC,EAElCqC,EAAS,mBAAmB,QAAQgB,GAAOA,EAAI9I,EAAMyF,CAAM,CAAC,EAG5DzF,EAAK,cAAgB,KAErB,CACEwF,GAGAE,GAEAE,EACF,EAAE,QAAQkD,GAAOA,EAAI9I,EAAMyF,CAAM,CAAC,EAElCzF,EAAK,WAAa,GAElB,IAAI+I,EAAiB,KACrB,OAAI,OAAO/I,EAAK,UAAa,UAAYA,EAAK,SAAS,WAIrDA,EAAK,SAAW,OAAO,OAAO,CAAC,EAAGA,EAAK,QAAQ,EAC/C+I,EAAiB/I,EAAK,SAAS,SAC/B,OAAOA,EAAK,SAAS,UAEvB+I,EAAiBA,GAAkB,MAE/B/I,EAAK,WACPA,EAAK,SAAWiG,GAAgBjG,EAAK,SAAU8H,EAAS,gBAAgB,GAG1Ee,EAAM,iBAAmBd,EAAOgB,EAAgB,EAAI,EAEhDtD,IACGzF,EAAK,QAAOA,EAAK,MAAQ,SAC9B6I,EAAM,QAAUd,EAAOc,EAAM,KAAK,EAC9B,CAAC7I,EAAK,KAAO,CAACA,EAAK,iBAAgBA,EAAK,IAAM,SAC9CA,EAAK,MAAK6I,EAAM,MAAQd,EAAOc,EAAM,GAAG,GAC5CA,EAAM,cAAgB9G,GAAO8G,EAAM,GAAG,GAAK,GACvC7I,EAAK,gBAAkByF,EAAO,gBAChCoD,EAAM,gBAAkB7I,EAAK,IAAM,IAAM,IAAMyF,EAAO,gBAGtDzF,EAAK,UAAS6I,EAAM,UAAYd,EAAuC/H,EAAK,OAAQ,GACnFA,EAAK,WAAUA,EAAK,SAAW,CAAC,GAErCA,EAAK,SAAW,CAAC,EAAE,OAAO,GAAGA,EAAK,SAAS,IAAI,SAAS,EAAG,CACzD,OAAOgJ,GAAkB,IAAM,OAAShJ,EAAO,CAAC,CAClD,CAAC,CAAC,EACFA,EAAK,SAAS,QAAQ,SAAS,EAAG,CAAE4I,EAA+B,EAAIC,CAAK,CAAG,CAAC,EAE5E7I,EAAK,QACP4I,EAAY5I,EAAK,OAAQyF,CAAM,EAGjCoD,EAAM,QAAUJ,EAAeI,CAAK,EAC7BA,CACT,CAKA,GAHKf,EAAS,qBAAoBA,EAAS,mBAAqB,CAAC,GAG7DA,EAAS,UAAYA,EAAS,SAAS,SAAS,MAAM,EACxD,MAAM,IAAI,MAAM,2FAA2F,EAI7G,OAAAA,EAAS,iBAAmB3H,GAAU2H,EAAS,kBAAoB,CAAC,CAAC,EAE9Dc,EAA+Bd,CAAS,CACjD,CAaA,SAASmB,GAAmBjJ,EAAM,CAChC,OAAKA,EAEEA,EAAK,gBAAkBiJ,GAAmBjJ,EAAK,MAAM,EAF1C,EAGpB,CAYA,SAASgJ,GAAkBhJ,EAAM,CAU/B,OATIA,EAAK,UAAY,CAACA,EAAK,iBACzBA,EAAK,eAAiBA,EAAK,SAAS,IAAI,SAASkJ,EAAS,CACxD,OAAO/I,GAAUH,EAAM,CAAE,SAAU,IAAK,EAAGkJ,CAAO,CACpD,CAAC,GAMClJ,EAAK,eACAA,EAAK,eAOViJ,GAAmBjJ,CAAI,EAClBG,GAAUH,EAAM,CAAE,OAAQA,EAAK,OAASG,GAAUH,EAAK,MAAM,EAAI,IAAK,CAAC,EAG5E,OAAO,SAASA,CAAI,EACfG,GAAUH,CAAI,EAIhBA,CACT,CAEA,IAAIkH,GAAU,UAERiC,GAAN,cAAiC,KAAM,CACrC,YAAYC,EAAQC,EAAM,CACxB,MAAMD,CAAM,EACZ,KAAK,KAAO,qBACZ,KAAK,KAAOC,CACd,CACF,EA+BMC,GAASrJ,GACTsJ,GAAUpJ,GACVqJ,GAAW,OAAO,SAAS,EAC3BC,GAAmB,EAMnBC,GAAO,SAASC,EAAM,CAG1B,IAAMC,EAAY,OAAO,OAAO,IAAI,EAE9BC,EAAU,OAAO,OAAO,IAAI,EAE5BC,EAAU,CAAC,EAIbC,EAAY,GACVC,EAAqB,sFAErBC,EAAqB,CAAE,kBAAmB,GAAM,KAAM,aAAc,SAAU,CAAC,CAAE,EAKnF/I,EAAU,CACZ,oBAAqB,GACrB,mBAAoB,GACpB,cAAe,qBACf,iBAAkB,8BAClB,YAAa,QACb,YAAa,WACb,UAAW,KAGX,UAAWW,EACb,EAQA,SAASqI,EAAmBC,EAAc,CACxC,OAAOjJ,EAAQ,cAAc,KAAKiJ,CAAY,CAChD,CAKA,SAASC,EAAcC,EAAO,CAC5B,IAAIC,EAAUD,EAAM,UAAY,IAEhCC,GAAWD,EAAM,WAAaA,EAAM,WAAW,UAAY,GAG3D,IAAM1H,EAAQzB,EAAQ,iBAAiB,KAAKoJ,CAAO,EACnD,GAAI3H,EAAO,CACT,IAAMmF,EAAWyC,EAAY5H,EAAM,CAAC,CAAC,EACrC,OAAKmF,IACHd,GAAKgD,EAAmB,QAAQ,KAAMrH,EAAM,CAAC,CAAC,CAAC,EAC/CqE,GAAK,oDAAqDqD,CAAK,GAE1DvC,EAAWnF,EAAM,CAAC,EAAI,cAC/B,CAEA,OAAO2H,EACJ,MAAM,KAAK,EACX,KAAME,GAAWN,EAAmBM,CAAM,GAAKD,EAAYC,CAAM,CAAC,CACvE,CAuBA,SAASC,EAAUC,EAAoBC,EAAeC,EAAgB,CACpE,IAAIC,EAAO,GACPV,EAAe,GACf,OAAOQ,GAAkB,UAC3BE,EAAOH,EACPE,EAAiBD,EAAc,eAC/BR,EAAeQ,EAAc,WAG7B1D,GAAW,SAAU,qDAAqD,EAC1EA,GAAW,SAAU;AAAA,wDAAuG,EAC5HkD,EAAeO,EACfG,EAAOF,GAKLC,IAAmB,SAAaA,EAAiB,IAGrD,IAAME,EAAU,CACd,KAAAD,EACA,SAAUV,CACZ,EAGAY,GAAK,mBAAoBD,CAAO,EAIhC,IAAMxK,EAASwK,EAAQ,OACnBA,EAAQ,OACRE,EAAWF,EAAQ,SAAUA,EAAQ,KAAMF,CAAc,EAE7D,OAAAtK,EAAO,KAAOwK,EAAQ,KAEtBC,GAAK,kBAAmBzK,CAAM,EAEvBA,CACT,CAWA,SAAS0K,EAAWb,EAAcc,EAAiBL,EAAgBM,EAAc,CAC/E,IAAMC,EAAc,OAAO,OAAO,IAAI,EAQtC,SAASC,EAAYpL,EAAMqL,EAAW,CACpC,OAAOrL,EAAK,SAASqL,CAAS,CAChC,CAEA,SAASC,GAAkB,CACzB,GAAI,CAACC,EAAI,SAAU,CACjBzJ,GAAQ,QAAQ0J,CAAU,EAC1B,MACF,CAEA,IAAIC,EAAY,EAChBF,EAAI,iBAAiB,UAAY,EACjC,IAAI5I,EAAQ4I,EAAI,iBAAiB,KAAKC,CAAU,EAC5CE,EAAM,GAEV,KAAO/I,GAAO,CACZ+I,GAAOF,EAAW,UAAUC,EAAW9I,EAAM,KAAK,EAClD,IAAMgJ,EAAO7D,GAAS,iBAAmBnF,EAAM,CAAC,EAAE,YAAY,EAAIA,EAAM,CAAC,EACnEiJ,GAAOR,EAAYG,EAAKI,CAAI,EAClC,GAAIC,GAAM,CACR,GAAM,CAACC,GAAMC,EAAgB,EAAIF,GAMjC,GALA9J,GAAQ,QAAQ4J,CAAG,EACnBA,EAAM,GAENP,EAAYQ,CAAI,GAAKR,EAAYQ,CAAI,GAAK,GAAK,EAC3CR,EAAYQ,CAAI,GAAKlC,KAAkBsC,IAAaD,IACpDD,GAAK,WAAW,GAAG,EAGrBH,GAAO/I,EAAM,CAAC,MACT,CACL,IAAMqJ,GAAWlE,GAAS,iBAAiB+D,EAAI,GAAKA,GACpDI,EAAYtJ,EAAM,CAAC,EAAGqJ,EAAQ,CAChC,CACF,MACEN,GAAO/I,EAAM,CAAC,EAEhB8I,EAAYF,EAAI,iBAAiB,UACjC5I,EAAQ4I,EAAI,iBAAiB,KAAKC,CAAU,CAC9C,CACAE,GAAOF,EAAW,UAAUC,CAAS,EACrC3J,GAAQ,QAAQ4J,CAAG,CACrB,CAEA,SAASQ,GAAqB,CAC5B,GAAIV,IAAe,GAAI,OAEvB,IAAIlL,EAAS,KAEb,GAAI,OAAOiL,EAAI,aAAgB,SAAU,CACvC,GAAI,CAAC3B,EAAU2B,EAAI,WAAW,EAAG,CAC/BzJ,GAAQ,QAAQ0J,CAAU,EAC1B,MACF,CACAlL,EAAS0K,EAAWO,EAAI,YAAaC,EAAY,GAAMW,GAAcZ,EAAI,WAAW,CAAC,EACrFY,GAAcZ,EAAI,WAAW,EAAiCjL,EAAO,IACvE,MACEA,EAAS8L,EAAcZ,EAAYD,EAAI,YAAY,OAASA,EAAI,YAAc,IAAI,EAOhFA,EAAI,UAAY,IAClBQ,IAAazL,EAAO,WAEtBwB,GAAQ,iBAAiBxB,EAAO,SAAUA,EAAO,QAAQ,CAC3D,CAEA,SAAS+L,GAAgB,CACnBd,EAAI,aAAe,KACrBW,EAAmB,EAEnBZ,EAAgB,EAElBE,EAAa,EACf,CAMA,SAASS,EAAYzF,EAAS/E,EAAO,CAC/B+E,IAAY,KAEhB1E,GAAQ,WAAWL,CAAK,EACxBK,GAAQ,QAAQ0E,CAAO,EACvB1E,GAAQ,SAAS,EACnB,CAMA,SAASwK,GAAe7K,EAAOkB,EAAO,CACpC,IAAI5B,EAAI,EACFwL,EAAM5J,EAAM,OAAS,EAC3B,KAAO5B,GAAKwL,GAAK,CACf,GAAI,CAAC9K,EAAM,MAAMV,CAAC,EAAG,CAAEA,IAAK,QAAU,CACtC,IAAMyL,GAAQ1E,GAAS,iBAAiBrG,EAAMV,CAAC,CAAC,GAAKU,EAAMV,CAAC,EACtDI,GAAOwB,EAAM5B,CAAC,EAChByL,GACFP,EAAY9K,GAAMqL,EAAK,GAEvBhB,EAAarK,GACbmK,EAAgB,EAChBE,EAAa,IAEfzK,GACF,CACF,CAMA,SAAS0L,GAAazM,EAAM2C,EAAO,CACjC,OAAI3C,EAAK,OAAS,OAAOA,EAAK,OAAU,UACtC8B,GAAQ,SAASgG,GAAS,iBAAiB9H,EAAK,KAAK,GAAKA,EAAK,KAAK,EAElEA,EAAK,aAEHA,EAAK,WAAW,OAClBiM,EAAYT,EAAY1D,GAAS,iBAAiB9H,EAAK,WAAW,KAAK,GAAKA,EAAK,WAAW,KAAK,EACjGwL,EAAa,IACJxL,EAAK,WAAW,SAEzBsM,GAAetM,EAAK,WAAY2C,CAAK,EACrC6I,EAAa,KAIjBD,EAAM,OAAO,OAAOvL,EAAM,CAAE,OAAQ,CAAE,MAAOuL,CAAI,CAAE,CAAC,EAC7CA,CACT,CAQA,SAASmB,GAAU1M,EAAM2C,EAAOgK,EAAoB,CAClD,IAAIC,EAAUnK,GAAWzC,EAAK,MAAO2M,CAAkB,EAEvD,GAAIC,EAAS,CACX,GAAI5M,EAAK,QAAQ,EAAG,CAClB,IAAM8D,GAAO,IAAI/D,GAASC,CAAI,EAC9BA,EAAK,QAAQ,EAAE2C,EAAOmB,EAAI,EACtBA,GAAK,iBAAgB8I,EAAU,GACrC,CAEA,GAAIA,EAAS,CACX,KAAO5M,EAAK,YAAcA,EAAK,QAC7BA,EAAOA,EAAK,OAEd,OAAOA,CACT,CACF,CAGA,GAAIA,EAAK,eACP,OAAO0M,GAAU1M,EAAK,OAAQ2C,EAAOgK,CAAkB,CAE3D,CAOA,SAASE,GAASnK,EAAQ,CACxB,OAAI6I,EAAI,QAAQ,aAAe,GAG7BC,GAAc9I,EAAO,CAAC,EACf,IAIPoK,GAA2B,GACpB,EAEX,CAQA,SAASC,GAAapK,EAAO,CAC3B,IAAMD,EAASC,EAAM,CAAC,EAChBqK,EAAUrK,EAAM,KAEhBmB,EAAO,IAAI/D,GAASiN,CAAO,EAE3BC,GAAkB,CAACD,EAAQ,cAAeA,EAAQ,UAAU,CAAC,EACnE,QAAWE,MAAMD,GACf,GAAKC,KACLA,GAAGvK,EAAOmB,CAAI,EACVA,EAAK,gBAAgB,OAAO+I,GAASnK,CAAM,EAGjD,OAAIsK,EAAQ,KACVxB,GAAc9I,GAEVsK,EAAQ,eACVxB,GAAc9I,GAEhB2J,EAAc,EACV,CAACW,EAAQ,aAAe,CAACA,EAAQ,eACnCxB,EAAa9I,IAGjB+J,GAAaO,EAASrK,CAAK,EACpBqK,EAAQ,YAAc,EAAItK,EAAO,MAC1C,CAOA,SAASyK,GAAWxK,EAAO,CACzB,IAAMD,EAASC,EAAM,CAAC,EAChBgK,EAAqB1B,EAAgB,UAAUtI,EAAM,KAAK,EAE1DyK,EAAUV,GAAUnB,EAAK5I,EAAOgK,CAAkB,EACxD,GAAI,CAACS,EAAW,OAAO5D,GAEvB,IAAM6D,GAAS9B,EACXA,EAAI,UAAYA,EAAI,SAAS,OAC/Bc,EAAc,EACdJ,EAAYvJ,EAAQ6I,EAAI,SAAS,KAAK,GAC7BA,EAAI,UAAYA,EAAI,SAAS,QACtCc,EAAc,EACdC,GAAef,EAAI,SAAU5I,CAAK,GACzB0K,GAAO,KAChB7B,GAAc9I,GAER2K,GAAO,WAAaA,GAAO,aAC/B7B,GAAc9I,GAEhB2J,EAAc,EACVgB,GAAO,aACT7B,EAAa9I,IAGjB,GACM6I,EAAI,OACNzJ,GAAQ,UAAU,EAEhB,CAACyJ,EAAI,MAAQ,CAACA,EAAI,cACpBQ,IAAaR,EAAI,WAEnBA,EAAMA,EAAI,aACHA,IAAQ6B,EAAQ,QACzB,OAAIA,EAAQ,QACVX,GAAaW,EAAQ,OAAQzK,CAAK,EAE7B0K,GAAO,UAAY,EAAI3K,EAAO,MACvC,CAEA,SAAS4K,IAAuB,CAC9B,IAAMC,EAAO,CAAC,EACd,QAASC,EAAUjC,EAAKiC,IAAY1F,GAAU0F,EAAUA,EAAQ,OAC1DA,EAAQ,OACVD,EAAK,QAAQC,EAAQ,KAAK,EAG9BD,EAAK,QAAQE,GAAQ3L,GAAQ,SAAS2L,CAAI,CAAC,CAC7C,CAGA,IAAIC,GAAY,CAAC,EAQjB,SAASC,GAAcC,EAAiBjL,EAAO,CAC7C,IAAMD,EAASC,GAASA,EAAM,CAAC,EAK/B,GAFA6I,GAAcoC,EAEVlL,GAAU,KACZ,OAAA2J,EAAc,EACP,EAOT,GAAIqB,GAAU,OAAS,SAAW/K,EAAM,OAAS,OAAS+K,GAAU,QAAU/K,EAAM,OAASD,IAAW,GAAI,CAG1G,GADA8I,GAAcP,EAAgB,MAAMtI,EAAM,MAAOA,EAAM,MAAQ,CAAC,EAC5D,CAACoH,EAAW,CAEd,IAAM8D,EAAM,IAAI,MAAM,wBAAwB1D,CAAY,GAAG,EAC7D,MAAA0D,EAAI,aAAe1D,EACnB0D,EAAI,QAAUH,GAAU,KAClBG,CACR,CACA,MAAO,EACT,CAGA,GAFAH,GAAY/K,EAERA,EAAM,OAAS,QACjB,OAAOoK,GAAapK,CAAK,EACpB,GAAIA,EAAM,OAAS,WAAa,CAACiI,EAAgB,CAGtD,IAAMiD,EAAM,IAAI,MAAM,mBAAqBnL,EAAS,gBAAkB6I,EAAI,OAAS,aAAe,GAAG,EACrG,MAAAsC,EAAI,KAAOtC,EACLsC,CACR,SAAWlL,EAAM,OAAS,MAAO,CAC/B,IAAMmL,EAAYX,GAAWxK,CAAK,EAClC,GAAImL,IAActE,GAChB,OAAOsE,CAEX,CAKA,GAAInL,EAAM,OAAS,WAAaD,IAAW,GAEzC,OAAA8I,GAAc;AAAA,EACP,EAOT,GAAIuC,GAAa,KAAUA,GAAapL,EAAM,MAAQ,EAEpD,MADY,IAAI,MAAM,2DAA2D,EAYnF,OAAA6I,GAAc9I,EACPA,EAAO,MAChB,CAEA,IAAMoF,GAAWyC,EAAYJ,CAAY,EACzC,GAAI,CAACrC,GACH,MAAAhB,GAAMkD,EAAmB,QAAQ,KAAMG,CAAY,CAAC,EAC9C,IAAI,MAAM,sBAAwBA,EAAe,GAAG,EAG5D,IAAM6D,EAAKnG,GAAgBC,EAAQ,EAC/BxH,GAAS,GAETiL,EAAML,GAAgB8C,EAEpB7B,GAAgB,CAAC,EACjBrK,GAAU,IAAIZ,EAAQ,UAAUA,CAAO,EAC7CoM,GAAqB,EACrB,IAAI9B,EAAa,GACbO,GAAY,EACZzD,GAAQ,EACRyF,GAAa,EACbjB,GAA2B,GAE/B,GAAI,CACF,GAAKhF,GAAS,aAyBZA,GAAS,aAAamD,EAAiBnJ,EAAO,MAzBpB,CAG1B,IAFAyJ,EAAI,QAAQ,YAAY,IAEf,CACPwC,KACIjB,GAGFA,GAA2B,GAE3BvB,EAAI,QAAQ,YAAY,EAE1BA,EAAI,QAAQ,UAAYjD,GAExB,IAAM3F,EAAQ4I,EAAI,QAAQ,KAAKN,CAAe,EAG9C,GAAI,CAACtI,EAAO,MAEZ,IAAMsL,EAAchD,EAAgB,UAAU3C,GAAO3F,EAAM,KAAK,EAC1DuL,EAAiBP,GAAcM,EAAatL,CAAK,EACvD2F,GAAQ3F,EAAM,MAAQuL,CACxB,CACAP,GAAc1C,EAAgB,UAAU3C,EAAK,CAAC,CAChD,CAIA,OAAAxG,GAAQ,SAAS,EACjBxB,GAASwB,GAAQ,OAAO,EAEjB,CACL,SAAUqI,EACV,MAAO7J,GACP,UAAAyL,GACA,QAAS,GACT,SAAUjK,GACV,KAAMyJ,CACR,CACF,OAASsC,EAAK,CACZ,GAAIA,EAAI,SAAWA,EAAI,QAAQ,SAAS,SAAS,EAC/C,MAAO,CACL,SAAU1D,EACV,MAAOb,GAAO2B,CAAe,EAC7B,QAAS,GACT,UAAW,EACX,WAAY,CACV,QAAS4C,EAAI,QACb,MAAAvF,GACA,QAAS2C,EAAgB,MAAM3C,GAAQ,IAAKA,GAAQ,GAAG,EACvD,KAAMuF,EAAI,KACV,YAAavN,EACf,EACA,SAAUwB,EACZ,EACK,GAAIiI,EACT,MAAO,CACL,SAAUI,EACV,MAAOb,GAAO2B,CAAe,EAC7B,QAAS,GACT,UAAW,EACX,YAAa4C,EACb,SAAU/L,GACV,KAAMyJ,CACR,EAEA,MAAMsC,CAEV,CACF,CASA,SAASM,EAAwBtD,EAAM,CACrC,IAAMvK,EAAS,CACb,MAAOgJ,GAAOuB,CAAI,EAClB,QAAS,GACT,UAAW,EACX,KAAMZ,EACN,SAAU,IAAI/I,EAAQ,UAAUA,CAAO,CACzC,EACA,OAAAZ,EAAO,SAAS,QAAQuK,CAAI,EACrBvK,CACT,CAgBA,SAAS8L,EAAcvB,EAAMuD,EAAgB,CAC3CA,EAAiBA,GAAkBlN,EAAQ,WAAa,OAAO,KAAK0I,CAAS,EAC7E,IAAMyE,EAAYF,EAAwBtD,CAAI,EAExCyD,EAAUF,EAAe,OAAO7D,CAAW,EAAE,OAAOgE,EAAa,EAAE,IAAI3O,GAC3EoL,EAAWpL,EAAMiL,EAAM,EAAK,CAC9B,EACAyD,EAAQ,QAAQD,CAAS,EAEzB,IAAMG,EAASF,EAAQ,KAAK,CAACG,EAAGC,IAAM,CAEpC,GAAID,EAAE,YAAcC,EAAE,UAAW,OAAOA,EAAE,UAAYD,EAAE,UAIxD,GAAIA,EAAE,UAAYC,EAAE,SAAU,CAC5B,GAAInE,EAAYkE,EAAE,QAAQ,EAAE,aAAeC,EAAE,SAC3C,MAAO,GACF,GAAInE,EAAYmE,EAAE,QAAQ,EAAE,aAAeD,EAAE,SAClD,MAAO,EAEX,CAMA,MAAO,EACT,CAAC,EAEK,CAACE,EAAMC,CAAU,EAAIJ,EAGrBlO,EAASqO,EACf,OAAArO,EAAO,WAAasO,EAEbtO,CACT,CASA,SAASuO,EAAgBC,EAASC,EAAaC,EAAY,CACzD,IAAMlH,EAAYiH,GAAelF,EAAQkF,CAAW,GAAMC,EAE1DF,EAAQ,UAAU,IAAI,MAAM,EAC5BA,EAAQ,UAAU,IAAI,YAAYhH,CAAQ,EAAE,CAC9C,CAOA,SAASmH,EAAiBH,EAAS,CAEjC,IAAIpO,EAAO,KACLoH,EAAWsC,EAAc0E,CAAO,EAEtC,GAAI5E,EAAmBpC,CAAQ,EAAG,OAKlC,GAHAiD,GAAK,0BACH,CAAE,GAAI+D,EAAS,SAAAhH,CAAS,CAAC,EAEvBgH,EAAQ,QAAQ,YAAa,CAC/B,QAAQ,IAAI,yFAA0FA,CAAO,EAC7G,MACF,CAOA,GAAIA,EAAQ,SAAS,OAAS,IACvB5N,EAAQ,sBACX,QAAQ,KAAK,+FAA+F,EAC5G,QAAQ,KAAK,2DAA2D,EACxE,QAAQ,KAAK,kCAAkC,EAC/C,QAAQ,KAAK4N,CAAO,GAElB5N,EAAQ,oBAKV,MAJY,IAAIiI,GACd,mDACA2F,EAAQ,SACV,EAKJpO,EAAOoO,EACP,IAAM3N,EAAOT,EAAK,YACZJ,EAASwH,EAAW2C,EAAUtJ,EAAM,CAAE,SAAA2G,EAAU,eAAgB,EAAK,CAAC,EAAIsE,EAAcjL,CAAI,EAElG2N,EAAQ,UAAYxO,EAAO,MAC3BwO,EAAQ,QAAQ,YAAc,MAC9BD,EAAgBC,EAAShH,EAAUxH,EAAO,QAAQ,EAClDwO,EAAQ,OAAS,CACf,SAAUxO,EAAO,SAEjB,GAAIA,EAAO,UACX,UAAWA,EAAO,SACpB,EACIA,EAAO,aACTwO,EAAQ,WAAa,CACnB,SAAUxO,EAAO,WAAW,SAC5B,UAAWA,EAAO,WAAW,SAC/B,GAGFyK,GAAK,yBAA0B,CAAE,GAAI+D,EAAS,OAAAxO,EAAQ,KAAAa,CAAK,CAAC,CAC9D,CAOA,SAAS+N,EAAUC,EAAa,CAC9BjO,EAAUqI,GAAQrI,EAASiO,CAAW,CACxC,CAGA,IAAMC,EAAmB,IAAM,CAC7BC,EAAa,EACbpI,GAAW,SAAU,yDAAyD,CAChF,EAGA,SAASqI,GAAyB,CAChCD,EAAa,EACbpI,GAAW,SAAU,+DAA+D,CACtF,CAEA,IAAIsI,EAAiB,GAKrB,SAASF,GAAe,CACtB,SAASG,GAAO,CAEdH,EAAa,CACf,CAGA,GAAI,SAAS,aAAe,UAAW,CAEhCE,GACH,OAAO,iBAAiB,mBAAoBC,EAAM,EAAK,EAEzDD,EAAiB,GACjB,MACF,CAEe,SAAS,iBAAiBrO,EAAQ,WAAW,EACrD,QAAQ+N,CAAgB,CACjC,CAQA,SAASQ,EAAiBtF,EAAcuF,EAAoB,CAC1D,IAAIC,EAAO,KACX,GAAI,CACFA,EAAOD,EAAmB/F,CAAI,CAChC,OAASiG,EAAS,CAGhB,GAFA9I,GAAM,wDAAwD,QAAQ,KAAMqD,CAAY,CAAC,EAEpFJ,EAAqCjD,GAAM8I,CAAO,MAArC,OAAMA,EAKxBD,EAAO1F,CACT,CAEK0F,EAAK,OAAMA,EAAK,KAAOxF,GAC5BP,EAAUO,CAAY,EAAIwF,EAC1BA,EAAK,cAAgBD,EAAmB,KAAK,KAAM/F,CAAI,EAEnDgG,EAAK,SACPE,EAAgBF,EAAK,QAAS,CAAE,aAAAxF,CAAa,CAAC,CAElD,CAOA,SAAS2F,EAAmB3F,EAAc,CACxC,OAAOP,EAAUO,CAAY,EAC7B,QAAW4F,KAAS,OAAO,KAAKlG,CAAO,EACjCA,EAAQkG,CAAK,IAAM5F,GACrB,OAAON,EAAQkG,CAAK,CAG1B,CAKA,SAASC,IAAgB,CACvB,OAAO,OAAO,KAAKpG,CAAS,CAC9B,CAMA,SAASW,EAAY3K,EAAM,CACzB,OAAAA,GAAQA,GAAQ,IAAI,YAAY,EACzBgK,EAAUhK,CAAI,GAAKgK,EAAUC,EAAQjK,CAAI,CAAC,CACnD,CAOA,SAASiQ,EAAgBI,EAAW,CAAE,aAAA9F,CAAa,EAAG,CAChD,OAAO8F,GAAc,WACvBA,EAAY,CAACA,CAAS,GAExBA,EAAU,QAAQF,GAAS,CAAElG,EAAQkG,EAAM,YAAY,CAAC,EAAI5F,CAAc,CAAC,CAC7E,CAMA,SAASoE,GAAc3O,EAAM,CAC3B,IAAM+P,EAAOpF,EAAY3K,CAAI,EAC7B,OAAO+P,GAAQ,CAACA,EAAK,iBACvB,CAOA,SAASO,EAAiBC,EAAQ,CAE5BA,EAAO,uBAAuB,GAAK,CAACA,EAAO,yBAAyB,IACtEA,EAAO,yBAAyB,EAAKvE,GAAS,CAC5CuE,EAAO,uBAAuB,EAC5B,OAAO,OAAO,CAAE,MAAOvE,EAAK,EAAG,EAAGA,CAAI,CACxC,CACF,GAEEuE,EAAO,sBAAsB,GAAK,CAACA,EAAO,wBAAwB,IACpEA,EAAO,wBAAwB,EAAKvE,GAAS,CAC3CuE,EAAO,sBAAsB,EAC3B,OAAO,OAAO,CAAE,MAAOvE,EAAK,EAAG,EAAGA,CAAI,CACxC,CACF,EAEJ,CAKA,SAASwE,GAAUD,EAAQ,CACzBD,EAAiBC,CAAM,EACvBrG,EAAQ,KAAKqG,CAAM,CACrB,CAKA,SAASE,GAAaF,EAAQ,CAC5B,IAAM7H,EAAQwB,EAAQ,QAAQqG,CAAM,EAChC7H,IAAU,IACZwB,EAAQ,OAAOxB,EAAO,CAAC,CAE3B,CAOA,SAASyC,GAAKuF,EAAOjO,EAAM,CACzB,IAAM6K,EAAKoD,EACXxG,EAAQ,QAAQ,SAASqG,EAAQ,CAC3BA,EAAOjD,CAAE,GACXiD,EAAOjD,CAAE,EAAE7K,CAAI,CAEnB,CAAC,CACH,CAMA,SAASkO,GAAwB3O,EAAI,CACnC,OAAAqF,GAAW,SAAU,kDAAkD,EACvEA,GAAW,SAAU,kCAAkC,EAEhDgI,EAAiBrN,CAAE,CAC5B,CAGA,OAAO,OAAO+H,EAAM,CAClB,UAAAc,EACA,cAAA2B,EACA,aAAAiD,EACA,iBAAAJ,EAEA,eAAgBsB,GAChB,UAAArB,EACA,iBAAAE,EACA,uBAAAE,EACA,iBAAAG,EACA,mBAAAK,EACA,cAAAE,GACA,YAAAzF,EACA,gBAAAsF,EACA,cAAAtB,GACA,QAAAhF,GACA,UAAA6G,GACA,aAAAC,EACF,CAAC,EAED1G,EAAK,UAAY,UAAW,CAAEI,EAAY,EAAO,EACjDJ,EAAK,SAAW,UAAW,CAAEI,EAAY,EAAM,EAC/CJ,EAAK,cAAgBzC,GAErByC,EAAK,MAAQ,CACX,OAAQzH,GACR,UAAWD,GACX,OAAQM,GACR,SAAUH,GACV,iBAAkBD,EACpB,EAEA,QAAW5B,KAAO4E,GAEZ,OAAOA,GAAM5E,CAAG,GAAM,UAExBb,GAAWyF,GAAM5E,CAAG,CAAC,EAKzB,cAAO,OAAOoJ,EAAMxE,EAAK,EAElBwE,CACT,EAGMc,GAAYf,GAAK,CAAC,CAAC,EAIzBe,GAAU,YAAc,IAAMf,GAAK,CAAC,CAAC,EAErCjK,GAAO,QAAUgL,GACjBA,GAAU,YAAcA,GACxBA,GAAU,QAAUA,KCpiFpB,IAAA+F,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAQbE,EAAcD,EAAM,OAAO,YAAaA,EAAM,SAAS,kBAAkB,EAAG,iBAAiB,EAC7FE,EAAe,mBACfC,EAAe,CACnB,UAAW,SACX,MAAO,kCACT,EACMC,EAAoB,CACxB,MAAO,KACP,SAAU,CACR,CACE,UAAW,UACX,MAAO,sBACP,QAAS,IACX,CACF,CACF,EACMC,EAAwBN,EAAK,QAAQK,EAAmB,CAC5D,MAAO,KACP,IAAK,IACP,CAAC,EACKE,EAAwBP,EAAK,QAAQA,EAAK,iBAAkB,CAAE,UAAW,QAAS,CAAC,EACnFQ,EAAyBR,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EACrFS,EAAgB,CACpB,eAAgB,GAChB,QAAS,IACT,UAAW,EACX,SAAU,CACR,CACE,UAAW,OACX,MAAON,EACP,UAAW,CACb,EACA,CACE,MAAO,OACP,UAAW,EACX,SAAU,CACR,CACE,UAAW,SACX,WAAY,GACZ,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAEC,CAAa,CAC3B,EACA,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAEA,CAAa,CAC3B,EACA,CAAE,MAAO,cAAe,CAC1B,CACF,CACF,CACF,CACF,CACF,EACA,MAAO,CACL,KAAM,YACN,QAAS,CACP,OACA,QACA,MACA,OACA,MACA,MACA,MACA,QACA,MACA,KACF,EACA,iBAAkB,GAClB,aAAc,GACd,SAAU,CACR,CACE,UAAW,OACX,MAAO,UACP,IAAK,IACL,UAAW,GACX,SAAU,CACRC,EACAG,EACAD,EACAD,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,CACE,UAAW,OACX,MAAO,UACP,IAAK,IACL,SAAU,CACRD,EACAC,EACAE,EACAD,CACF,CACF,CACF,CACF,CACF,CACF,EACAP,EAAK,QACH,OACA,MACA,CAAE,UAAW,EAAG,CAClB,EACA,CACE,MAAO,cACP,IAAK,QACL,UAAW,EACb,EACAI,EAEA,CACE,UAAW,OACX,IAAK,MACL,SAAU,CACR,CACE,MAAO,SACP,UAAW,GACX,SAAU,CACRI,CACF,CACF,EACA,CACE,MAAO,mBACT,CACF,CAEF,EACA,CACE,UAAW,MAMX,MAAO,iBACP,IAAK,IACL,SAAU,CAAE,KAAM,OAAQ,EAC1B,SAAU,CAAEC,CAAc,EAC1B,OAAQ,CACN,IAAK,YACL,UAAW,GACX,YAAa,CACX,MACA,KACF,CACF,CACF,EACA,CACE,UAAW,MAEX,MAAO,kBACP,IAAK,IACL,SAAU,CAAE,KAAM,QAAS,EAC3B,SAAU,CAAEA,CAAc,EAC1B,OAAQ,CACN,IAAK,aACL,UAAW,GACX,YAAa,CACX,aACA,aACA,KACF,CACF,CACF,EAEA,CACE,UAAW,MACX,MAAO,SACT,EAEA,CACE,UAAW,MACX,MAAOR,EAAM,OACX,IACAA,EAAM,UAAUA,EAAM,OACpBC,EAIAD,EAAM,OAAO,MAAO,IAAK,IAAI,CAC/B,CAAC,CACH,EACA,IAAK,OACL,SAAU,CACR,CACE,UAAW,OACX,MAAOC,EACP,UAAW,EACX,OAAQO,CACV,CACF,CACF,EAEA,CACE,UAAW,MACX,MAAOR,EAAM,OACX,MACAA,EAAM,UAAUA,EAAM,OACpBC,EAAa,GACf,CAAC,CACH,EACA,SAAU,CACR,CACE,UAAW,OACX,MAAOA,EACP,UAAW,CACb,EACA,CACE,MAAO,IACP,UAAW,EACX,WAAY,EACd,CACF,CACF,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KChPjB,IAAAW,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAM,CAAC,EACPC,EAAa,CACjB,MAAO,OACP,IAAK,KACL,SAAU,CACR,OACA,CACE,MAAO,KACP,SAAU,CAAED,CAAI,CAClB,CACF,CACF,EACA,OAAO,OAAOA,EAAK,CACjB,UAAW,WACX,SAAU,CACR,CAAE,MAAOD,EAAM,OAAO,qBAGpB,qBAAqB,CAAE,EACzBE,CACF,CACF,CAAC,EAED,IAAMC,EAAQ,CACZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KA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AAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UA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WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,C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", - "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#maybeScrollToBottom", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] + "sourcesContent": ["/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/* eslint-disable no-multi-assign */\n\nfunction deepFreeze(obj) {\n if (obj instanceof Map) {\n obj.clear =\n obj.delete =\n obj.set =\n function () {\n throw new Error('map is read-only');\n };\n } else if (obj instanceof Set) {\n obj.add =\n obj.clear =\n obj.delete =\n function () {\n throw new Error('set is read-only');\n };\n }\n\n // Freeze self\n Object.freeze(obj);\n\n Object.getOwnPropertyNames(obj).forEach((name) => {\n const prop = obj[name];\n const type = typeof prop;\n\n // Freeze prop if it is an object or function and also not already frozen\n if ((type === 'object' || type === 'function') && !Object.isFrozen(prop)) {\n deepFreeze(prop);\n }\n });\n\n return obj;\n}\n\n/** @typedef {import('highlight.js').CallbackResponse} CallbackResponse */\n/** @typedef {import('highlight.js').CompiledMode} CompiledMode */\n/** @implements CallbackResponse */\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n this.isMatchIgnored = false;\n }\n\n ignoreMatch() {\n this.isMatchIgnored = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&')\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record[]} objects\n * @returns {T} a single new object\n */\nfunction inherit$1(original, ...objects) {\n /** @type Record */\n const result = Object.create(null);\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{scope?: string, language?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '
';\n\n/**\n * Determines if a node needs to be wrapped in \n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n // rarely we can have a sublanguage where language is undefined\n // TODO: track down why\n return !!node.scope;\n};\n\n/**\n *\n * @param {string} name\n * @param {{prefix:string}} options\n */\nconst scopeToCSSClass = (name, { prefix }) => {\n // sub-language\n if (name.startsWith(\"language:\")) {\n return name.replace(\"language:\", \"language-\");\n }\n // tiered scope: comment.line\n if (name.includes(\".\")) {\n const pieces = name.split(\".\");\n return [\n `${prefix}${pieces.shift()}`,\n ...(pieces.map((x, i) => `${x}${\"_\".repeat(i + 1)}`))\n ].join(\" \");\n }\n // simple scope\n return `${prefix}${name}`;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n const className = scopeToCSSClass(node.scope,\n { prefix: this.classPrefix });\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += ``;\n }\n}\n\n/** @typedef {{scope?: string, language?: string, children: Node[]} | string} Node */\n/** @typedef {{scope?: string, language?: string, children: Node[]} } DataNode */\n/** @typedef {import('highlight.js').Emitter} Emitter */\n/** */\n\n/** @returns {DataNode} */\nconst newNode = (opts = {}) => {\n /** @type DataNode */\n const result = { children: [] };\n Object.assign(result, opts);\n return result;\n};\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = newNode();\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} scope */\n openNode(scope) {\n /** @type Node */\n const node = newNode({ scope });\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addText(text)\n - __addSublanguage(emitter, subLanguageName)\n - startScope(scope)\n - endScope()\n - finalize()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /** @param {string} scope */\n startScope(scope) {\n this.openNode(scope);\n }\n\n endScope() {\n this.closeNode();\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n __addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n if (name) node.scope = `language:${name}`;\n\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n this.closeAllNodes();\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction anyNumberOfTimes(re) {\n return concat('(?:', re, ')*');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction optional(re) {\n return concat('(?:', re, ')?');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\n/**\n * @param {RegExp | string} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n const match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// BACKREF_RE matches an open parenthesis or backreference. To avoid\n// an incorrect parse, it additionally matches the following:\n// - [...] elements, where the meaning of parentheses and escapes change\n// - other escape sequences, so we do not misparse escape sequences as\n// interesting elements\n// - non-matching or lookahead parentheses, which do not capture. These\n// follow the '(' with a '?'.\nconst BACKREF_RE = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n\n// **INTERNAL** Not intended for outside usage\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {{joinWith: string}} opts\n * @returns {string}\n */\nfunction _rewriteBackreferences(regexps, { joinWith }) {\n let numCaptures = 0;\n\n return regexps.map((regex) => {\n numCaptures += 1;\n const offset = numCaptures;\n let re = source(regex);\n let out = '';\n\n while (re.length > 0) {\n const match = BACKREF_RE.exec(re);\n if (!match) {\n out += re;\n break;\n }\n out += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n out += '\\\\' + String(Number(match[1]) + offset);\n } else {\n out += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n return out;\n }).map(re => `(${re})`).join(joinWith);\n}\n\n/** @typedef {import('highlight.js').Mode} Mode */\n/** @typedef {import('highlight.js').ModeCallback} ModeCallback */\n\n// Common regexps\nconst MATCH_NOTHING_RE = /\\b\\B/;\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit$1({\n scope: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n scope: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n scope: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n 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/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n const mode = inherit$1(\n {\n scope: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push({\n scope: 'doctag',\n // hack to avoid the space from being included. the space is necessary to\n // match here to prevent the plain text rule below from gobbling up doctags\n begin: '[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)',\n end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,\n excludeBegin: true,\n relevance: 0\n });\n const ENGLISH_WORD = either(\n // list of common 1 and 2 letter words in English\n \"I\",\n \"a\",\n \"is\",\n \"so\",\n \"us\",\n \"to\",\n \"at\",\n \"if\",\n \"in\",\n \"it\",\n \"on\",\n // note: this is not an exhaustive list of contractions, just popular ones\n /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, // contractions - can't we'd they're let's, etc\n /[A-Za-z]+[-][a-z]+/, // `no-way`, etc.\n /[A-Za-z][a-z]{2,}/ // allow capitalized words at beginning of sentences\n );\n // looking like plain text, more likely to be a comment\n mode.contains.push(\n {\n // TODO: how to include \", (, ) without breaking grammars that use these for\n // comment delimiters?\n // begin: /[ ]+([()\"]?([A-Za-z'-]{3,}|is|a|I|so|us|[tT][oO]|at|if|in|it|on)[.]?[()\":]?([.][ ]|[ ]|\\))){3}/\n // ---\n\n // this tries to find sequences of 3 english words in a row (without any\n // \"programming\" type syntax) this gives us a strong signal that we've\n // TRULY found a comment - vs perhaps scanning with the wrong language.\n // It's possible to find something that LOOKS like the start of the\n // comment - but then if there is no readable text - good chance it is a\n // false match and not a comment.\n //\n // for a visual example please see:\n // https://github.com/highlightjs/highlight.js/issues/2827\n\n begin: concat(\n /[ ]+/, // necessary to prevent us gobbling up doctags like /* @author Bob Mcgill */\n '(',\n ENGLISH_WORD,\n /[.]?[:]?([.][ ]|[ ])/,\n '){3}') // look for 3 words in a row\n }\n );\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n scope: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n scope: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n scope: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst REGEXP_MODE = {\n scope: \"regexp\",\n begin: /\\/(?=[^/\\n]*\\/)/,\n end: /\\/[gimuy]*/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n};\nconst TITLE_MODE = {\n scope: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n scope: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n APOS_STRING_MODE: APOS_STRING_MODE,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n COMMENT: COMMENT,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n C_NUMBER_RE: C_NUMBER_RE,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n IDENT_RE: IDENT_RE,\n MATCH_NOTHING_RE: MATCH_NOTHING_RE,\n METHOD_GUARD: METHOD_GUARD,\n NUMBER_MODE: NUMBER_MODE,\n NUMBER_RE: NUMBER_RE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n REGEXP_MODE: REGEXP_MODE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE\n});\n\n/**\n@typedef {import('highlight.js').CallbackResponse} CallbackResponse\n@typedef {import('highlight.js').CompilerExt} CompilerExt\n*/\n\n// Grammar extensions / plugins\n// See: https://github.com/highlightjs/highlight.js/issues/2833\n\n// Grammar extensions allow \"syntactic sugar\" to be added to the grammar modes\n// without requiring any underlying changes to the compiler internals.\n\n// `compileMatch` being the perfect small example of now allowing a grammar\n// author to write `match` when they desire to match a single expression rather\n// than being forced to use `begin`. The extension then just moves `match` into\n// `begin` when it runs. Ie, no features have been added, but we've just made\n// the experience of writing (and reading grammars) a little bit nicer.\n\n// ------\n\n// TODO: We need negative look-behind support to do this properly\n/**\n * Skip a match if it has a preceding dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\nfunction skipIfHasPrecedingDot(match, response) {\n const before = match.input[match.index - 1];\n if (before === \".\") {\n response.ignoreMatch();\n }\n}\n\n/**\n *\n * @type {CompilerExt}\n */\nfunction scopeClassName(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.className !== undefined) {\n mode.scope = mode.className;\n delete mode.className;\n }\n}\n\n/**\n * `beginKeywords` syntactic sugar\n * @type {CompilerExt}\n */\nfunction beginKeywords(mode, parent) {\n if (!parent) return;\n if (!mode.beginKeywords) return;\n\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?!\\\\.)(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfHasPrecedingDot;\n mode.keywords = mode.keywords || mode.beginKeywords;\n delete mode.beginKeywords;\n\n // prevents double relevance, the keywords themselves provide\n // relevance, the mode doesn't need to double it\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 0;\n}\n\n/**\n * Allow `illegal` to contain an array of illegal values\n * @type {CompilerExt}\n */\nfunction compileIllegal(mode, _parent) {\n if (!Array.isArray(mode.illegal)) return;\n\n mode.illegal = either(...mode.illegal);\n}\n\n/**\n * `match` to match a single expression for readability\n * @type {CompilerExt}\n */\nfunction compileMatch(mode, _parent) {\n if (!mode.match) return;\n if (mode.begin || mode.end) throw new Error(\"begin & end are not supported with match\");\n\n mode.begin = mode.match;\n delete mode.match;\n}\n\n/**\n * provides the default 1 relevance to all modes\n * @type {CompilerExt}\n */\nfunction compileRelevance(mode, _parent) {\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n}\n\n// allow beforeMatch to act as a \"qualifier\" for the match\n// the full match begin must be [beforeMatch][begin]\nconst beforeMatchExt = (mode, parent) => {\n if (!mode.beforeMatch) return;\n // starts conflicts with endsParent which we need to make sure the child\n // rule is not matched multiple times\n if (mode.starts) throw new Error(\"beforeMatch cannot be used with starts\");\n\n const originalMode = Object.assign({}, mode);\n Object.keys(mode).forEach((key) => { delete mode[key]; });\n\n mode.keywords = originalMode.keywords;\n mode.begin = concat(originalMode.beforeMatch, lookahead(originalMode.begin));\n mode.starts = {\n relevance: 0,\n contains: [\n Object.assign(originalMode, { endsParent: true })\n ]\n };\n mode.relevance = 0;\n\n delete originalMode.beforeMatch;\n};\n\n// keywords that should have no default relevance value\nconst COMMON_KEYWORDS = [\n 'of',\n 'and',\n 'for',\n 'in',\n 'not',\n 'or',\n 'if',\n 'then',\n 'parent', // common variable name\n 'list', // common variable name\n 'value' // common variable name\n];\n\nconst DEFAULT_KEYWORD_SCOPE = \"keyword\";\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record | Array} rawKeywords\n * @param {boolean} caseInsensitive\n */\nfunction compileKeywords(rawKeywords, caseInsensitive, scopeName = DEFAULT_KEYWORD_SCOPE) {\n /** @type {import(\"highlight.js/private\").KeywordDict} */\n const compiledKeywords = Object.create(null);\n\n // input can be a string of keywords, an array of keywords, or a object with\n // named keys representing scopeName (which can then point to a string or array)\n if (typeof rawKeywords === 'string') {\n compileList(scopeName, rawKeywords.split(\" \"));\n } else if (Array.isArray(rawKeywords)) {\n compileList(scopeName, rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(scopeName) {\n // collapse all our objects back into the parent object\n Object.assign(\n compiledKeywords,\n compileKeywords(rawKeywords[scopeName], caseInsensitive, scopeName)\n );\n });\n }\n return compiledKeywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} scopeName\n * @param {Array} keywordList\n */\n function compileList(scopeName, keywordList) {\n if (caseInsensitive) {\n keywordList = keywordList.map(x => x.toLowerCase());\n }\n keywordList.forEach(function(keyword) {\n const pair = keyword.split('|');\n compiledKeywords[pair[0]] = [scopeName, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\n/*\n\nFor the reasoning behind this please see:\nhttps://github.com/highlightjs/highlight.js/issues/2880#issuecomment-747275419\n\n*/\n\n/**\n * @type {Record}\n */\nconst seenDeprecations = {};\n\n/**\n * @param {string} message\n */\nconst error = (message) => {\n console.error(message);\n};\n\n/**\n * @param {string} message\n * @param {any} args\n */\nconst warn = (message, ...args) => {\n console.log(`WARN: ${message}`, ...args);\n};\n\n/**\n * @param {string} version\n * @param {string} message\n */\nconst deprecated = (version, message) => {\n if (seenDeprecations[`${version}/${message}`]) return;\n\n console.log(`Deprecated as of ${version}. ${message}`);\n seenDeprecations[`${version}/${message}`] = true;\n};\n\n/* eslint-disable no-throw-literal */\n\n/**\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n*/\n\nconst MultiClassError = new Error();\n\n/**\n * Renumbers labeled scope names to account for additional inner match\n * groups that otherwise would break everything.\n *\n * Lets say we 3 match scopes:\n *\n * { 1 => ..., 2 => ..., 3 => ... }\n *\n * So what we need is a clean match like this:\n *\n * (a)(b)(c) => [ \"a\", \"b\", \"c\" ]\n *\n * But this falls apart with inner match groups:\n *\n * (a)(((b)))(c) => [\"a\", \"b\", \"b\", \"b\", \"c\" ]\n *\n * Our scopes are now \"out of alignment\" and we're repeating `b` 3 times.\n * What needs to happen is the numbers are remapped:\n *\n * { 1 => ..., 2 => ..., 5 => ... }\n *\n * We also need to know that the ONLY groups that should be output\n * are 1, 2, and 5. This function handles this behavior.\n *\n * @param {CompiledMode} mode\n * @param {Array} regexes\n * @param {{key: \"beginScope\"|\"endScope\"}} opts\n */\nfunction remapScopeNames(mode, regexes, { key }) {\n let offset = 0;\n const scopeNames = mode[key];\n /** @type Record */\n const emit = {};\n /** @type Record */\n const positions = {};\n\n for (let i = 1; i <= regexes.length; i++) {\n positions[i + offset] = scopeNames[i];\n emit[i + offset] = true;\n offset += countMatchGroups(regexes[i - 1]);\n }\n // we use _emit to keep track of which match groups are \"top-level\" to avoid double\n // output from inside match groups\n mode[key] = positions;\n mode[key]._emit = emit;\n mode[key]._multi = true;\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction beginMultiClass(mode) {\n if (!Array.isArray(mode.begin)) return;\n\n if (mode.skip || mode.excludeBegin || mode.returnBegin) {\n error(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.beginScope !== \"object\" || mode.beginScope === null) {\n error(\"beginScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.begin, { key: \"beginScope\" });\n mode.begin = _rewriteBackreferences(mode.begin, { joinWith: \"\" });\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction endMultiClass(mode) {\n if (!Array.isArray(mode.end)) return;\n\n if (mode.skip || mode.excludeEnd || mode.returnEnd) {\n error(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\");\n throw MultiClassError;\n }\n\n if (typeof mode.endScope !== \"object\" || mode.endScope === null) {\n error(\"endScope must be object\");\n throw MultiClassError;\n }\n\n remapScopeNames(mode, mode.end, { key: \"endScope\" });\n mode.end = _rewriteBackreferences(mode.end, { joinWith: \"\" });\n}\n\n/**\n * this exists only to allow `scope: {}` to be used beside `match:`\n * Otherwise `beginScope` would necessary and that would look weird\n\n {\n match: [ /def/, /\\w+/ ]\n scope: { 1: \"keyword\" , 2: \"title\" }\n }\n\n * @param {CompiledMode} mode\n */\nfunction scopeSugar(mode) {\n if (mode.scope && typeof mode.scope === \"object\" && mode.scope !== null) {\n mode.beginScope = mode.scope;\n delete mode.scope;\n }\n}\n\n/**\n * @param {CompiledMode} mode\n */\nfunction MultiClass(mode) {\n scopeSugar(mode);\n\n if (typeof mode.beginScope === \"string\") {\n mode.beginScope = { _wrap: mode.beginScope };\n }\n if (typeof mode.endScope === \"string\") {\n mode.endScope = { _wrap: mode.endScope };\n }\n\n beginMultiClass(mode);\n endMultiClass(mode);\n}\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').CompiledLanguage} CompiledLanguage\n*/\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensitivity of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm'\n + (language.case_insensitive ? 'i' : '')\n + (language.unicodeRegex ? 'u' : '')\n + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(_rewriteBackreferences(terminators, { joinWith: '|' }), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n resumingScanAtSamePosition() {\n return this.regexIndex !== 0;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n let result = m.exec(s);\n\n // The following is because we have no easy way to say \"resume scanning at the\n // existing position but also skip the current rule ONLY\". What happens is\n // all prior rules are also skipped which can result in matching the wrong\n // thing. Example of matching \"booger\":\n\n // our matcher is [string, \"booger\", number]\n //\n // ....booger....\n\n // if \"booger\" is ignored then we'd really need a regex to scan from the\n // SAME position for only: [string, number] but ignoring \"booger\" (if it\n // was the first match), a simple resume would scan ahead who knows how\n // far looking only for \"number\", ignoring potential string matches (or\n // future \"booger\" matches that might be valid.)\n\n // So what we do: We execute two matchers, one resuming at the same\n // position, but the second full matcher starting at the position after:\n\n // /--- resume first regex match here (for [number])\n // |/---- full match here for [string, \"booger\", number]\n // vv\n // ....booger....\n\n // Which ever results in a match first is then used. So this 3-4 step\n // process essentially allows us to say \"match at this position, excluding\n // a prior rule that was ignored\".\n //\n // 1. Match \"booger\" first, ignore. Also proves that [string] does non match.\n // 2. Resume matching for [number]\n // 3. Match at index + 1 for [string, \"booger\", number]\n // 4. If #2 and #3 result in matches, which came first?\n if (this.resumingScanAtSamePosition()) {\n if (result && result.index === this.lastIndex) ; else { // use the second matcher result\n const m2 = this.getMatcher(0);\n m2.lastIndex = this.lastIndex + 1;\n result = m2.exec(s);\n }\n }\n\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) {\n // wrap-around to considering all matches again\n this.considerAll();\n }\n }\n\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminatorEnd) {\n mm.addRule(mode.terminatorEnd, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.isCompiled) return cmode;\n\n [\n scopeClassName,\n // do this early so compiler extensions generally don't have to worry about\n // the distinction between match/begin\n compileMatch,\n MultiClass,\n beforeMatchExt\n ].forEach(ext => ext(mode, parent));\n\n language.compilerExtensions.forEach(ext => ext(mode, parent));\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n [\n beginKeywords,\n // do this later so compiler extensions that come earlier have access to the\n // raw array if they wanted to perhaps manipulate it, etc.\n compileIllegal,\n // default to 1 relevance if not specified\n compileRelevance\n ].forEach(ext => ext(mode, parent));\n\n mode.isCompiled = true;\n\n let keywordPattern = null;\n if (typeof mode.keywords === \"object\" && mode.keywords.$pattern) {\n // we need a copy because keywords might be compiled multiple times\n // so we can't go deleting $pattern from the original on the first\n // pass\n mode.keywords = Object.assign({}, mode.keywords);\n keywordPattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n keywordPattern = keywordPattern || /\\w+/;\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n cmode.keywordPatternRe = langRe(keywordPattern, true);\n\n if (parent) {\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(cmode.begin);\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(cmode.end);\n cmode.terminatorEnd = source(cmode.end) || '';\n if (mode.endsWithParent && parent.terminatorEnd) {\n cmode.terminatorEnd += (mode.end ? '|' : '') + parent.terminatorEnd;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(/** @type {RegExp | string} */ (mode.illegal));\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expandOrCloneMode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n if (!language.compilerExtensions) language.compilerExtensions = [];\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n\n // we need a null object, which inherit will guarantee\n language.classNameAliases = inherit$1(language.classNameAliases || {});\n\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expandOrCloneMode(mode) {\n if (mode.variants && !mode.cachedVariants) {\n mode.cachedVariants = mode.variants.map(function(variant) {\n return inherit$1(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cachedVariants) {\n return mode.cachedVariants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit$1(mode, { starts: mode.starts ? inherit$1(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit$1(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\nvar version = \"11.11.1\";\n\nclass HTMLInjectionError extends Error {\n constructor(reason, html) {\n super(reason);\n this.name = \"HTMLInjectionError\";\n this.html = html;\n }\n}\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\n\n\n/**\n@typedef {import('highlight.js').Mode} Mode\n@typedef {import('highlight.js').CompiledMode} CompiledMode\n@typedef {import('highlight.js').CompiledScope} CompiledScope\n@typedef {import('highlight.js').Language} Language\n@typedef {import('highlight.js').HLJSApi} HLJSApi\n@typedef {import('highlight.js').HLJSPlugin} HLJSPlugin\n@typedef {import('highlight.js').PluginEvent} PluginEvent\n@typedef {import('highlight.js').HLJSOptions} HLJSOptions\n@typedef {import('highlight.js').LanguageFn} LanguageFn\n@typedef {import('highlight.js').HighlightedHTMLElement} HighlightedHTMLElement\n@typedef {import('highlight.js').BeforeHighlightContext} BeforeHighlightContext\n@typedef {import('highlight.js/private').MatchType} MatchType\n@typedef {import('highlight.js/private').KeywordData} KeywordData\n@typedef {import('highlight.js/private').EnhancedMatch} EnhancedMatch\n@typedef {import('highlight.js/private').AnnotatedError} AnnotatedError\n@typedef {import('highlight.js').AutoHighlightResult} AutoHighlightResult\n@typedef {import('highlight.js').HighlightOptions} HighlightOptions\n@typedef {import('highlight.js').HighlightResult} HighlightResult\n*/\n\n\nconst escape = escapeHTML;\nconst inherit = inherit$1;\nconst NO_MATCH = Symbol(\"nomatch\");\nconst MAX_KEYWORD_HITS = 7;\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Global internal variables used within the highlight.js library.\n /** @type {Record} */\n const languages = Object.create(null);\n /** @type {Record} */\n const aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n const plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n let SAFE_MODE = true;\n const LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n let options = {\n ignoreUnescapedHTML: false,\n throwUnescapedHTML: false,\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n cssSelector: 'pre code',\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n let classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n const language = getLanguage(match[1]);\n if (!language) {\n warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * OLD API\n * highlight(lang, code, ignoreIllegals, continuation)\n *\n * NEW API\n * highlight(code, {lang, ignoreIllegals})\n *\n * @param {string} codeOrLanguageName - the language to use for highlighting\n * @param {string | HighlightOptions} optionsOrCode - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {CompiledMode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(codeOrLanguageName, optionsOrCode, ignoreIllegals) {\n let code = \"\";\n let languageName = \"\";\n if (typeof optionsOrCode === \"object\") {\n code = codeOrLanguageName;\n ignoreIllegals = optionsOrCode.ignoreIllegals;\n languageName = optionsOrCode.language;\n } else {\n // old API\n deprecated(\"10.7.0\", \"highlight(lang, code, ...args) has been deprecated.\");\n deprecated(\"10.7.0\", \"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\");\n languageName = codeOrLanguageName;\n code = optionsOrCode;\n }\n\n // https://github.com/highlightjs/highlight.js/issues/3149\n // eslint-disable-next-line no-undefined\n if (ignoreIllegals === undefined) { ignoreIllegals = true; }\n\n /** @type {BeforeHighlightContext} */\n const context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n const result = context.result\n ? context.result\n : _highlight(context.language, context.code, ignoreIllegals);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} codeToHighlight - the code to highlight\n * @param {boolean?} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {CompiledMode?} [continuation] - current continuation mode, if any\n * @returns {HighlightResult} - result of the highlight operation\n */\n function _highlight(languageName, codeToHighlight, ignoreIllegals, continuation) {\n const keywordHits = Object.create(null);\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {string} matchText - the textual match\n * @returns {KeywordData | false}\n */\n function keywordData(mode, matchText) {\n return mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(modeBuffer);\n return;\n }\n\n let lastIndex = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(modeBuffer);\n let buf = \"\";\n\n while (match) {\n buf += modeBuffer.substring(lastIndex, match.index);\n const word = language.case_insensitive ? match[0].toLowerCase() : match[0];\n const data = keywordData(top, word);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n keywordHits[word] = (keywordHits[word] || 0) + 1;\n if (keywordHits[word] <= MAX_KEYWORD_HITS) relevance += keywordRelevance;\n if (kind.startsWith(\"_\")) {\n // _ implied for relevance only, do not highlight\n // by applying a class name\n buf += match[0];\n } else {\n const cssClass = language.classNameAliases[kind] || kind;\n emitKeyword(match[0], cssClass);\n }\n } else {\n buf += match[0];\n }\n lastIndex = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(modeBuffer);\n }\n buf += modeBuffer.substring(lastIndex);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (modeBuffer === \"\") return;\n /** @type HighlightResult */\n let result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(modeBuffer);\n return;\n }\n result = _highlight(top.subLanguage, modeBuffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = /** @type {CompiledMode} */ (result._top);\n } else {\n result = highlightAuto(modeBuffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.__addSublanguage(result._emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n modeBuffer = '';\n }\n\n /**\n * @param {string} text\n * @param {string} scope\n */\n function emitKeyword(keyword, scope) {\n if (keyword === \"\") return;\n\n emitter.startScope(scope);\n emitter.addText(keyword);\n emitter.endScope();\n }\n\n /**\n * @param {CompiledScope} scope\n * @param {RegExpMatchArray} match\n */\n function emitMultiClass(scope, match) {\n let i = 1;\n const max = match.length - 1;\n while (i <= max) {\n if (!scope._emit[i]) { i++; continue; }\n const klass = language.classNameAliases[scope[i]] || scope[i];\n const text = match[i];\n if (klass) {\n emitKeyword(text, klass);\n } else {\n modeBuffer = text;\n processKeywords();\n modeBuffer = \"\";\n }\n i++;\n }\n }\n\n /**\n * @param {CompiledMode} mode - new mode to start\n * @param {RegExpMatchArray} match\n */\n function startNewMode(mode, match) {\n if (mode.scope && typeof mode.scope === \"string\") {\n emitter.openNode(language.classNameAliases[mode.scope] || mode.scope);\n }\n if (mode.beginScope) {\n // beginScope just wraps the begin match itself in a scope\n if (mode.beginScope._wrap) {\n emitKeyword(modeBuffer, language.classNameAliases[mode.beginScope._wrap] || mode.beginScope._wrap);\n modeBuffer = \"\";\n } else if (mode.beginScope._multi) {\n // at this point modeBuffer should just be the match\n emitMultiClass(mode.beginScope, match);\n modeBuffer = \"\";\n }\n }\n\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.isMatchIgnored) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexes to potentially match here, so we move the cursor forward one\n // space\n modeBuffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n resumeScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n const lexeme = match[0];\n const newMode = match.rule;\n\n const resp = new Response(newMode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [newMode.__beforeBegin, newMode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.isMatchIgnored) return doIgnore(lexeme);\n }\n\n if (newMode.skip) {\n modeBuffer += lexeme;\n } else {\n if (newMode.excludeBegin) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (!newMode.returnBegin && !newMode.excludeBegin) {\n modeBuffer = lexeme;\n }\n }\n startNewMode(newMode, match);\n return newMode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n const lexeme = match[0];\n const matchPlusRemainder = codeToHighlight.substring(match.index);\n\n const endMode = endOfMode(top, match, matchPlusRemainder);\n if (!endMode) { return NO_MATCH; }\n\n const origin = top;\n if (top.endScope && top.endScope._wrap) {\n processBuffer();\n emitKeyword(lexeme, top.endScope._wrap);\n } else if (top.endScope && top.endScope._multi) {\n processBuffer();\n emitMultiClass(top.endScope, match);\n } else if (origin.skip) {\n modeBuffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n modeBuffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n modeBuffer = lexeme;\n }\n }\n do {\n if (top.scope) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== endMode.parent);\n if (endMode.starts) {\n startNewMode(endMode.starts, match);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n const list = [];\n for (let current = top; current !== language; current = current.parent) {\n if (current.scope) {\n list.unshift(current.scope);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n let lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n const lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n modeBuffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n modeBuffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error(`0 width match regex (${languageName})`);\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.scope || '') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n const processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n modeBuffer += \"\\n\";\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? An potential end match that was\n triggered but could not be completed. IE, `doEndMatch` returned NO_MATCH.\n (this could be because a callback requests the match be ignored, etc)\n\n This causes no real harm other than stopping a few times too many.\n */\n\n modeBuffer += lexeme;\n return lexeme.length;\n }\n\n const language = getLanguage(languageName);\n if (!language) {\n error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n const md = compileLanguage(language);\n let result = '';\n /** @type {CompiledMode} */\n let top = continuation || md;\n /** @type Record */\n const continuations = {}; // keep continuations for sub-languages\n const emitter = new options.__emitter(options);\n processContinuations();\n let modeBuffer = '';\n let relevance = 0;\n let index = 0;\n let iterations = 0;\n let resumeScanAtSamePosition = false;\n\n try {\n if (!language.__emitTokens) {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (resumeScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n resumeScanAtSamePosition = false;\n } else {\n top.matcher.considerAll();\n }\n top.matcher.lastIndex = index;\n\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substring(index));\n } else {\n language.__emitTokens(codeToHighlight, emitter);\n }\n\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n language: languageName,\n value: result,\n relevance,\n illegal: false,\n _emitter: emitter,\n _top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: true,\n relevance: 0,\n _illegalBy: {\n message: err.message,\n index,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode,\n resultSoFar: result\n },\n _emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n language: languageName,\n value: escape(codeToHighlight),\n illegal: false,\n relevance: 0,\n errorRaised: err,\n _emitter: emitter,\n _top: top\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n value: escape(code),\n illegal: false,\n relevance: 0,\n _top: PLAINTEXT_LANGUAGE,\n _emitter: new options.__emitter(options)\n };\n result._emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - secondBest (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n const plaintext = justTextHighlightResult(code);\n\n const results = languageSubset.filter(getLanguage).filter(autoDetection).map(name =>\n _highlight(name, code, false)\n );\n results.unshift(plaintext); // plaintext is always an option\n\n const sorted = results.sort((a, b) => {\n // sort base on relevance\n if (a.relevance !== b.relevance) return b.relevance - a.relevance;\n\n // always award the tie to the base language\n // ie if C++ and Arduino are tied, it's more likely to be C++\n if (a.language && b.language) {\n if (getLanguage(a.language).supersetOf === b.language) {\n return 1;\n } else if (getLanguage(b.language).supersetOf === a.language) {\n return -1;\n }\n }\n\n // otherwise say they are equal, which has the effect of sorting on\n // relevance while preserving the original ordering - which is how ties\n // have historically been settled, ie the language that comes first always\n // wins in the case of a tie\n return 0;\n });\n\n const [best, secondBest] = sorted;\n\n /** @type {AutoHighlightResult} */\n const result = best;\n result.secondBest = secondBest;\n\n return result;\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {HTMLElement} element\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function updateClassName(element, currentLang, resultLang) {\n const language = (currentLang && aliases[currentLang]) || resultLang;\n\n element.classList.add(\"hljs\");\n element.classList.add(`language-${language}`);\n }\n\n /**\n * Applies highlighting to a DOM node containing code.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightElement(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightElement\",\n { el: element, language });\n\n if (element.dataset.highlighted) {\n console.log(\"Element previously highlighted. To highlight again, first unset `dataset.highlighted`.\", element);\n return;\n }\n\n // we should be all text, no child nodes (unescaped HTML) - this is possibly\n // an HTML injection attack - it's likely too late if this is already in\n // production (the code has likely already done its damage by the time\n // we're seeing it)... but we yell loudly about this so that hopefully it's\n // more likely to be caught in development before making it to production\n if (element.children.length > 0) {\n if (!options.ignoreUnescapedHTML) {\n console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\");\n console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\");\n console.warn(\"The element with unescaped HTML:\");\n console.warn(element);\n }\n if (options.throwUnescapedHTML) {\n const err = new HTMLInjectionError(\n \"One of your code blocks includes unescaped HTML.\",\n element.innerHTML\n );\n throw err;\n }\n }\n\n node = element;\n const text = node.textContent;\n const result = language ? highlight(text, { language, ignoreIllegals: true }) : highlightAuto(text);\n\n element.innerHTML = result.value;\n element.dataset.highlighted = \"yes\";\n updateClassName(element, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relevance: result.relevance\n };\n if (result.secondBest) {\n element.secondBest = {\n language: result.secondBest.language,\n relevance: result.secondBest.relevance\n };\n }\n\n fire(\"after:highlightElement\", { el: element, result, text });\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {Partial} userOptions\n */\n function configure(userOptions) {\n options = inherit(options, userOptions);\n }\n\n // TODO: remove v12, deprecated\n const initHighlighting = () => {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlighting() deprecated. Use highlightAll() now.\");\n };\n\n // TODO: remove v12, deprecated\n function initHighlightingOnLoad() {\n highlightAll();\n deprecated(\"10.6.0\", \"initHighlightingOnLoad() deprecated. Use highlightAll() now.\");\n }\n\n let wantsHighlight = false;\n\n /**\n * auto-highlights all pre>code elements on the page\n */\n function highlightAll() {\n function boot() {\n // if a highlight was requested before DOM was loaded, do now\n highlightAll();\n }\n\n // if we are called too early in the loading process\n if (document.readyState === \"loading\") {\n // make sure the event listener is only added once\n if (!wantsHighlight) {\n window.addEventListener('DOMContentLoaded', boot, false);\n }\n wantsHighlight = true;\n return;\n }\n\n const blocks = document.querySelectorAll(options.cssSelector);\n blocks.forEach(highlightElement);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n let lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error$1) {\n error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error$1; } else { error(error$1); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * Remove a language grammar module\n *\n * @param {string} languageName\n */\n function unregisterLanguage(languageName) {\n delete languages[languageName];\n for (const alias of Object.keys(aliases)) {\n if (aliases[alias] === languageName) {\n delete aliases[alias];\n }\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias.toLowerCase()] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n const lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * Upgrades the old highlightBlock plugins to the new\n * highlightElement API\n * @param {HLJSPlugin} plugin\n */\n function upgradePluginAPI(plugin) {\n // TODO: remove with v12\n if (plugin[\"before:highlightBlock\"] && !plugin[\"before:highlightElement\"]) {\n plugin[\"before:highlightElement\"] = (data) => {\n plugin[\"before:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n if (plugin[\"after:highlightBlock\"] && !plugin[\"after:highlightElement\"]) {\n plugin[\"after:highlightElement\"] = (data) => {\n plugin[\"after:highlightBlock\"](\n Object.assign({ block: data.el }, data)\n );\n };\n }\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n upgradePluginAPI(plugin);\n plugins.push(plugin);\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function removePlugin(plugin) {\n const index = plugins.indexOf(plugin);\n if (index !== -1) {\n plugins.splice(index, 1);\n }\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n const cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /**\n * DEPRECATED\n * @param {HighlightedHTMLElement} el\n */\n function deprecateHighlightBlock(el) {\n deprecated(\"10.7.0\", \"highlightBlock will be removed entirely in v12.0\");\n deprecated(\"10.7.0\", \"Please use highlightElement now.\");\n\n return highlightElement(el);\n }\n\n /* Interface definition */\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n highlightAll,\n highlightElement,\n // TODO: Remove with v12 API\n highlightBlock: deprecateHighlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n unregisterLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n autoDetection,\n inherit,\n addPlugin,\n removePlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n hljs.regex = {\n concat: concat,\n lookahead: lookahead,\n either: either,\n optional: optional,\n anyNumberOfTimes: anyNumberOfTimes\n };\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexes into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// Other names for the variable may break build script\nconst highlight = HLJS({});\n\n// returns a new instance of the highlighter to be used for extensions\n// check https://github.com/wooorm/lowlight/issues/47\nhighlight.newInstance = () => HLJS({});\n\nmodule.exports = highlight;\nhighlight.HighlightJS = highlight;\nhighlight.default = highlight;\n", "/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n const regex = hljs.regex;\n // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);;\n // const XML_IDENT_RE = /[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]+/;\n // const TAG_NAME_RE = regex.concat(/[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]/, regex.optional(/[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]*:/), /[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]*/);\n // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n const XML_ENTITIES = {\n className: 'symbol',\n begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n };\n const XML_META_KEYWORDS = {\n begin: /\\s/,\n contains: [\n {\n className: 'keyword',\n begin: /#?[a-z_][a-z1-9_-]+/,\n illegal: /\\n/\n }\n ]\n };\n const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n begin: /\\(/,\n end: /\\)/\n });\n const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n const TAG_INTERNALS = {\n endsWithParent: true,\n illegal: /`]+/ }\n ]\n }\n ]\n }\n ]\n };\n return {\n name: 'HTML, XML',\n aliases: [\n 'html',\n 'xhtml',\n 'rss',\n 'atom',\n 'xjb',\n 'xsd',\n 'xsl',\n 'plist',\n 'wsf',\n 'svg'\n ],\n case_insensitive: true,\n unicodeRegex: true,\n contains: [\n {\n className: 'meta',\n begin: //,\n relevance: 10,\n contains: [\n XML_META_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE,\n XML_META_PAR_KEYWORDS,\n {\n begin: /\\[/,\n end: /\\]/,\n contains: [\n {\n className: 'meta',\n begin: //,\n contains: [\n XML_META_KEYWORDS,\n XML_META_PAR_KEYWORDS,\n QUOTE_META_STRING_MODE,\n APOS_META_STRING_MODE\n ]\n }\n ]\n }\n ]\n },\n hljs.COMMENT(\n //,\n { relevance: 10 }\n ),\n {\n begin: //,\n relevance: 10\n },\n XML_ENTITIES,\n // xml processing instructions\n {\n className: 'meta',\n end: /\\?>/,\n variants: [\n {\n begin: /<\\?xml/,\n relevance: 10,\n contains: [\n QUOTE_META_STRING_MODE\n ]\n },\n {\n begin: /<\\?[a-z][a-z0-9]+/,\n }\n ]\n\n },\n {\n className: 'tag',\n /*\n The lookahead pattern (?=...) ensures that 'begin' only matches\n ')/,\n end: />/,\n keywords: { name: 'style' },\n contains: [ TAG_INTERNALS ],\n starts: {\n end: /<\\/style>/,\n returnEnd: true,\n subLanguage: [\n 'css',\n 'xml'\n ]\n }\n },\n {\n className: 'tag',\n // See the comment in the ',\n}\n\nclass ChatMessage extends LightElement {\n @property() content = \"...\"\n @property({ attribute: \"content-type\" }) contentType: ContentType = \"markdown\"\n @property({ type: Boolean, reflect: true }) streaming = false\n @property() icon = \"\"\n @property({ attribute: \"data-role\" }) role: \"user\" | \"assistant\" = \"assistant\"\n\n render() {\n const icon = this.#messageIcon()\n\n return html`\n ${icon}\n \n `\n }\n\n #messageIcon() {\n const icon = this.#getIcon()\n return icon\n ? html`
${unsafeHTML(icon)}
`\n : null\n }\n\n #getIcon() {\n if (this.role !== \"assistant\") {\n return this.icon\n }\n\n // Show dots until we have content (for assistant messages only)\n const isEmpty = this.content.trim().length === 0\n return isEmpty ? ICONS.dots_fade : this.icon || ICONS.robot\n }\n\n #onContentChange(): void {\n if (!this.streaming) this.#makeSuggestionsAccessible()\n }\n\n #makeSuggestionsAccessible(): void {\n this.querySelectorAll(\".suggestion,[data-suggestion]\").forEach((el) => {\n if (!(el instanceof HTMLElement)) return\n if (el.hasAttribute(\"tabindex\")) return\n\n el.setAttribute(\"tabindex\", \"0\")\n el.setAttribute(\"role\", \"button\")\n\n const suggestion = el.dataset.suggestion || el.textContent\n el.setAttribute(\"aria-label\", `Use chat suggestion: ${suggestion}`)\n })\n }\n}\n\nclass ChatUserMessage extends ChatMessage {\n constructor() {\n super()\n this.role = \"user\" // Always set role to user for this subclass\n this.contentType = \"semi-markdown\" // User messages are always semi-markdown\n }\n}\n\nclass ChatMessages extends LightElement {\n render() {\n return html``\n }\n}\n\ninterface ChatInputSetInputOptions {\n submit?: boolean\n focus?: boolean\n}\n\nclass ChatInput extends LightElement {\n @property() placeholder = \"Enter a message...\"\n // disabled is reflected manually because `reflect: true` doesn't work with LightElement\n @property({ type: Boolean })\n get disabled() {\n return this._disabled\n }\n\n set disabled(value: boolean) {\n const oldValue = this._disabled\n if (value === oldValue) {\n return\n }\n\n this._disabled = value\n if (value) {\n this.setAttribute(\"disabled\", \"\")\n } else {\n this.removeAttribute(\"disabled\")\n }\n\n this.requestUpdate(\"disabled\", oldValue)\n this.#onInput()\n }\n\n private _disabled = false\n private _isComposing = false\n inputVisibleObserver?: IntersectionObserver\n\n connectedCallback(): void {\n super.connectedCallback()\n\n this.inputVisibleObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) this.#updateHeight()\n })\n })\n\n this.inputVisibleObserver.observe(this)\n this.addEventListener(\"compositionstart\", this.#onCompositionStart)\n this.addEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this.inputVisibleObserver?.disconnect()\n this.inputVisibleObserver = undefined\n this.removeEventListener(\"compositionstart\", this.#onCompositionStart)\n this.removeEventListener(\"compositionend\", this.#onCompositionEnd)\n }\n\n attributeChangedCallback(\n name: string,\n _old: string | null,\n value: string | null,\n ) {\n super.attributeChangedCallback(name, _old, value)\n if (name === \"disabled\") {\n this.disabled = value !== null\n }\n }\n\n private get textarea(): HTMLTextAreaElement {\n return this.querySelector(\"textarea\") as HTMLTextAreaElement\n }\n\n private get value(): string {\n return this.textarea.value\n }\n\n private get valueIsEmpty(): boolean {\n return this.value.trim().length === 0\n }\n\n private get button(): HTMLButtonElement {\n return this.querySelector(\".shiny-chat-btn-send\") as HTMLButtonElement\n }\n\n render() {\n const icon =\n ''\n\n return html`\n \n \n ${unsafeHTML(icon)}\n \n `\n }\n\n // Pressing enter sends the message (if not empty)\n #onKeyDown(e: KeyboardEvent): void {\n const isEnter = e.code === \"Enter\" && !e.shiftKey\n if (isEnter && !this._isComposing && !this.valueIsEmpty) {\n e.preventDefault()\n this.#sendInput()\n }\n }\n\n #onInput(): void {\n this.#updateHeight()\n this.button.disabled = this.disabled ? true : this.value.trim().length === 0\n }\n\n #onCompositionStart(): void {\n this._isComposing = true\n }\n\n #onCompositionEnd(): void {\n this._isComposing = false\n }\n\n // Determine whether the button should be enabled/disabled on first render\n protected firstUpdated(): void {\n this.#onInput()\n }\n\n #sendInput(focus = true): void {\n if (this.valueIsEmpty) return\n if (this.disabled) return\n\n window.Shiny.setInputValue!(this.id, this.value, { priority: \"event\" })\n\n // Emit event so parent element knows to insert the message\n const sentEvent = new CustomEvent(\"shiny-chat-input-sent\", {\n detail: { content: this.value, role: \"user\" },\n bubbles: true,\n composed: true,\n })\n this.dispatchEvent(sentEvent)\n\n this.setInputValue(\"\")\n this.disabled = true\n\n if (focus) this.textarea.focus()\n }\n\n #updateHeight(): void {\n const el = this.textarea\n if (el.scrollHeight == 0) {\n return\n }\n el.style.height = \"auto\"\n el.style.height = `${el.scrollHeight}px`\n }\n\n setInputValue(\n value: string,\n { submit = false, focus = false }: ChatInputSetInputOptions = {},\n ): void {\n // Store previous value to restore post-submit (if submitting)\n const oldValue = this.textarea.value\n\n this.textarea.value = value\n\n // Simulate an input event (to trigger the textarea autoresize)\n const inputEvent = new Event(\"input\", { bubbles: true, cancelable: true })\n this.textarea.dispatchEvent(inputEvent)\n\n if (submit) {\n this.#sendInput(false)\n if (oldValue) this.setInputValue(oldValue)\n }\n\n if (focus) {\n this.textarea.focus()\n }\n }\n}\n\nclass ChatContainer extends LightElement {\n @property({ attribute: \"icon-assistant\" }) iconAssistant = \"\"\n inputSentinelObserver?: IntersectionObserver\n _attachEventListenersOnReconnect = false\n _boundOnExternalLinkClick!: (e: MouseEvent) => void\n\n private get input(): ChatInput {\n return this.querySelector(CHAT_INPUT_TAG) as ChatInput\n }\n\n private get messages(): ChatMessages {\n return this.querySelector(CHAT_MESSAGES_TAG) as ChatMessages\n }\n\n private get lastMessage(): ChatMessage | null {\n const last = this.messages.lastElementChild\n return last ? (last as ChatMessage) : null\n }\n\n render() {\n return html``\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n\n // We use a sentinel element that we place just above the shiny-chat-input. When it\n // moves off-screen we know that the text area input is now floating, add shadow.\n let sentinel = this.querySelector(\"div\")\n if (!sentinel) {\n sentinel = createElement(\"div\", {\n style: \"width: 100%; height: 0;\",\n }) as HTMLElement\n this.input.insertAdjacentElement(\"afterend\", sentinel)\n }\n\n this.inputSentinelObserver = new IntersectionObserver(\n (entries) => {\n const inputTextarea = this.input.querySelector(\"textarea\")\n if (!inputTextarea) return\n const addShadow = entries[0]?.intersectionRatio === 0\n inputTextarea.classList.toggle(\"shadow\", addShadow)\n },\n {\n threshold: [0, 1],\n rootMargin: \"0px\",\n },\n )\n\n this.inputSentinelObserver.observe(sentinel)\n this._boundOnExternalLinkClick = this.#onExternalLinkClick.bind(this)\n\n if (this._attachEventListenersOnReconnect) {\n this.#addEventListeners()\n }\n }\n\n firstUpdated(): void {\n // Don't attach event listeners until child elements are rendered\n if (!this.messages) return\n this.#addEventListeners()\n }\n\n #addEventListeners(): void {\n this._attachEventListenersOnReconnect = true\n this.addEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.addEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.addEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.addEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.addEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.addEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.addEventListener(\"click\", this.#onInputSuggestionClick)\n this.addEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n // Add external link handler to the window so that it's easier for users to disable\n window.addEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n this._attachEventListenersOnReconnect = true\n\n this.inputSentinelObserver?.disconnect()\n this.inputSentinelObserver = undefined\n\n this.removeEventListener(\"shiny-chat-input-sent\", this.#onInputSent)\n this.removeEventListener(\"shiny-chat-append-message\", this.#onAppend)\n this.removeEventListener(\n \"shiny-chat-append-message-chunk\",\n this.#onAppendChunk,\n )\n this.removeEventListener(\"shiny-chat-clear-messages\", this.#onClear)\n this.removeEventListener(\n \"shiny-chat-update-user-input\",\n this.#onUpdateUserInput,\n )\n this.removeEventListener(\n \"shiny-chat-remove-loading-message\",\n this.#onRemoveLoadingMessage,\n )\n this.removeEventListener(\"click\", this.#onInputSuggestionClick)\n this.removeEventListener(\"keydown\", this.#onInputSuggestionKeydown)\n window.removeEventListener(\"click\", this._boundOnExternalLinkClick)\n }\n\n // When user submits input, append it to the chat, and add a loading message\n #onInputSent(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n this.#addLoadingMessage()\n }\n\n // Handle an append message event from server\n #onAppend(event: CustomEvent): void {\n this.#appendMessage(event.detail)\n }\n\n #initMessage(): void {\n this.#removeLoadingMessage()\n if (!this.input.disabled) {\n this.input.disabled = true\n }\n }\n\n #appendMessage(message: Message, finalize = true): void {\n this.#initMessage()\n\n const TAG_NAME = CHAT_MESSAGE_TAG\n\n if (this.iconAssistant) {\n message.icon = message.icon || this.iconAssistant\n }\n\n // Remap role to data_role for the custom element attribute\n const { role, ...restMessage } = message\n const messageAttrs: MessageAttrs = { data_role: role, ...restMessage }\n\n const msg = createElement(TAG_NAME, messageAttrs)\n this.messages.appendChild(msg)\n\n if (finalize) {\n this.#finalizeMessage()\n }\n }\n\n // Loading message is just an empty message\n #addLoadingMessage(): void {\n const loading_message = {\n content: \"\",\n role: \"assistant\",\n }\n const message = createElement(CHAT_MESSAGE_TAG, loading_message)\n this.messages.appendChild(message)\n }\n\n #removeLoadingMessage(): void {\n const content = this.lastMessage?.content\n if (!content) this.lastMessage?.remove()\n }\n\n #onAppendChunk(event: CustomEvent): void {\n this.#appendMessageChunk(event.detail)\n }\n\n #appendMessageChunk(message: Message): void {\n if (message.chunk_type === \"message_start\") {\n this.#appendMessage(message, false)\n }\n\n const lastMessage = this.lastMessage\n if (!lastMessage) throw new Error(\"No messages found in the chat output\")\n\n if (message.chunk_type === \"message_start\") {\n lastMessage.setAttribute(\"streaming\", \"\")\n return\n }\n\n const content =\n message.operation === \"append\"\n ? lastMessage.getAttribute(\"content\") + message.content\n : message.content\n\n lastMessage.setAttribute(\"content\", content)\n\n if (message.chunk_type === \"message_end\") {\n this.lastMessage?.removeAttribute(\"streaming\")\n this.#finalizeMessage()\n }\n }\n\n #onClear(): void {\n this.messages.innerHTML = \"\"\n }\n\n #onUpdateUserInput(event: CustomEvent): void {\n const { value, placeholder, submit, focus } = event.detail\n if (value !== undefined) {\n this.input.setInputValue(value, { submit, focus })\n }\n if (placeholder !== undefined) {\n this.input.placeholder = placeholder\n }\n }\n\n #onInputSuggestionClick(e: MouseEvent): void {\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionKeydown(e: KeyboardEvent): void {\n const isEnterOrSpace = e.key === \"Enter\" || e.key === \" \"\n if (!isEnterOrSpace) return\n\n this.#onInputSuggestionEvent(e)\n }\n\n #onInputSuggestionEvent(e: MouseEvent | KeyboardEvent): void {\n const { suggestion, submit } = this.#getSuggestion(e.target)\n if (!suggestion) return\n\n e.preventDefault()\n // Cmd/Ctrl + (event) = force submitting\n // Alt/Opt + (event) = force setting without submitting\n const shouldSubmit =\n e.metaKey || e.ctrlKey ? true : e.altKey ? false : submit\n\n this.input.setInputValue(suggestion, {\n submit: shouldSubmit,\n focus: !shouldSubmit,\n })\n }\n\n #getSuggestion(x: EventTarget | null): {\n suggestion?: string\n submit?: boolean\n } {\n if (!(x instanceof HTMLElement)) return {}\n\n const el = x.closest(\".suggestion, [data-suggestion]\")\n if (!(el instanceof HTMLElement)) return {}\n\n const isSuggestion =\n el.classList.contains(\"suggestion\") || el.dataset.suggestion !== undefined\n if (!isSuggestion) return {}\n\n const suggestion = el.dataset.suggestion || el.textContent\n\n return {\n suggestion: suggestion || undefined,\n submit:\n el.classList.contains(\"submit\") ||\n el.dataset.suggestionSubmit === \"\" ||\n el.dataset.suggestionSubmit === \"true\",\n }\n }\n\n #onRemoveLoadingMessage(): void {\n this.#removeLoadingMessage()\n this.#finalizeMessage()\n }\n\n #finalizeMessage(): void {\n this.input.disabled = false\n }\n\n #onExternalLinkClick(e: MouseEvent): void {\n // Find if the clicked element or any of its parents is an external link\n const target = e.target as HTMLElement\n if (!this.contains(target)) return\n\n const linkEl = target.closest(\n \"a[data-external-link]\",\n ) as HTMLAnchorElement | null\n\n if (!linkEl || !linkEl.href) return\n\n // Prevent the default link behavior\n e.preventDefault()\n\n // Show confirmation dialog and open the link if confirmed\n showExternalLinkConfirmation(linkEl.href)\n .then((confirmed) => {\n if (confirmed) {\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n }\n })\n .catch(() => {\n // If dialog fails for any reason, fall back to opening the link directly\n window.open(linkEl.href, \"_blank\", \"noopener,noreferrer\")\n })\n }\n}\n\n// ------- Register custom elements and shiny bindings ---------\n\nconst chatCustomElements = [\n { tag: CHAT_MESSAGE_TAG, component: ChatMessage },\n { tag: CHAT_USER_MESSAGE_TAG, component: ChatUserMessage },\n { tag: CHAT_MESSAGES_TAG, component: ChatMessages },\n { tag: CHAT_INPUT_TAG, component: ChatInput },\n { tag: CHAT_CONTAINER_TAG, component: ChatContainer },\n { tag: CHAT_TOOL_REQUEST_TAG, component: ShinyToolRequest },\n { tag: CHAT_TOOL_RESULT_TAG, component: ShinyToolResult },\n]\n\nchatCustomElements.forEach(({ tag, component }) => {\n if (!customElements.get(tag)) {\n customElements.define(tag, component)\n }\n})\n\nwindow.Shiny?.addCustomMessageHandler(\n \"shinyChatMessage\",\n async function (message: ShinyChatMessage) {\n if (message.obj?.html_deps) {\n await renderDependencies(message.obj.html_deps)\n }\n\n const evt = new CustomEvent(message.handler, {\n detail: message.obj,\n })\n\n const el = document.getElementById(message.id)\n\n if (!el) {\n showShinyClientMessage({\n status: \"error\",\n message: `Unable to handle Chat() message since element with id\n ${message.id} wasn't found. Do you need to call .ui() (Express) or need a\n chat_ui('${message.id}') in the UI (Core)?\n `,\n })\n return\n }\n\n el.dispatchEvent(evt)\n },\n)\n\nexport { CHAT_CONTAINER_TAG }\n"], + "mappings": "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CZ,UAAW,QACX,MAAO,OACP,IAAK,KACL,SAAU,CAAEJ,EAAK,gBAAiB,CACpC,EACMK,EAAUL,EAAK,QACnBA,EAAK,QAAQ,EACb,CACE,MAAO,CACL,SACA,MACF,EACA,MAAO,CACL,EAAG,SACL,CACF,CACF,EACMM,EAAW,CACf,MAAO,iBACP,OAAQ,CAAE,SAAU,CAClBN,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,UAAW,QACb,CAAC,CACH,CAAE,CACJ,EACMO,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRP,EAAK,iBACLE,EACAE,CACF,CACF,EACAA,EAAM,SAAS,KAAKG,CAAY,EAChC,IAAMC,EAAgB,CACpB,MAAO,KACT,EACMC,EAAc,CAClB,UAAW,SACX,MAAO,IACP,IAAK,GACP,EACMC,EAAe,CACnB,MAAO,KACT,EACMC,EAAa,CACjB,MAAO,UACP,IAAK,OACL,SAAU,CACR,CACE,MAAO,gBACP,UAAW,QACb,EACAX,EAAK,YACLE,CACF,CACF,EACMU,EAAiB,CACrB,OACA,OACA,MACA,KACA,MACA,MACA,OACA,OACA,MACF,EACMC,EAAgBb,EAAK,QAAQ,CACjC,OAAQ,IAAIY,EAAe,KAAK,GAAG,CAAC,IACpC,UAAW,EACb,CAAC,EACKE,EAAW,CACf,UAAW,WACX,MAAO,4BACP,YAAa,GACb,SAAU,CAAEd,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,YAAa,CAAC,CAAE,EACnE,UAAW,CACb,EAEMe,EAAW,CACf,KACA,OACA,OACA,OACA,KACA,OACA,MACA,QACA,QACA,KACA,KACA,OACA,OACA,OACA,SACA,WACA,QACF,EAEMC,EAAW,CACf,OACA,OACF,EAGMC,EAAY,CAAE,MAAO,gBAAiB,EAGtCC,EAAkB,CACtB,QACA,KACA,WACA,OACA,OACA,OACA,SACA,UACA,OACA,MACA,WACA,SACA,QACA,OACA,QACA,OACA,QACA,OACF,EAEMC,EAAiB,CACrB,QACA,OACA,UACA,SACA,UACA,UACA,OACA,SACA,OACA,MACA,QACA,SACA,UACA,SACA,OACA,YACA,SACA,OACA,OACA,UACA,SACA,SACF,EAEMC,EAAgB,CACpB,WACA,KACA,UACA,MACA,MACA,QACA,QACA,gBACA,WACA,UACA,eACA,YACA,aACA,YACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,SACA,UACA,KACA,KACA,QACA,YACA,SACA,QACA,UACA,UACA,OACA,OACA,QACA,MACA,SACA,OACA,QACA,QACA,SACA,SACA,QACA,SACA,SACA,OACA,UACA,SACA,aACA,SACA,UACA,WACA,QACA,OACA,SACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,aACA,QACA,OACA,cACA,UACA,SACA,MACF,EAEMC,EAAiB,CACrB,QACA,QACA,QACA,QACA,KACA,KACA,KACA,MACA,YACA,KACA,KACA,QACA,SACA,QACA,SACA,KACA,WACA,KACA,QACA,QACA,OACA,QACA,WACA,OACA,QACA,SACA,SACA,MACA,QACA,OACA,SACA,MACA,SACA,MACA,OACA,OACA,OACA,SACA,KACA,SACA,KACA,QACA,MACA,KACA,UACA,YACA,YACA,YACA,YACA,OACA,OACA,QACA,MACA,MACA,OACA,KACA,QACA,WACA,OACA,KACA,OACA,WACA,SACA,OACA,UACA,KACA,OACA,MACA,OACA,SAEA,SACA,SACA,KACA,OACA,UACA,OACA,QACA,QACA,UACA,QACA,WACA,SACA,MACA,WACA,SACA,MACA,QACA,OACA,SACA,OACA,MACA,OACA,UAEA,MACA,QACA,SACA,SACA,QACA,MACA,SACA,KACF,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CACP,KACA,KACF,EACA,SAAU,CACR,SAAU,wBACV,QAASN,EACT,QAASC,EACT,SAAU,CACR,GAAGE,EACH,GAAGC,EAEH,MACA,QACA,GAAGC,EACH,GAAGC,CACL,CACF,EACA,SAAU,CACRR,EACAb,EAAK,QAAQ,EACbc,EACAH,EACAN,EACAC,EACAW,EACAV,EACAC,EACAC,EACAC,EACAR,CACF,CACF,CACF,CAEAJ,GAAO,QAAUC,KCxZjB,IAAAuB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,IACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAGIK,EAAQ,CACZ,UAAW,OACX,SAAU,CACR,CAAE,MAAO,oBAAqB,EAC9B,CAAE,MAAO,uBAAwB,CACnC,CAEF,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,cAAe,EACxB,CAAE,MAAO,iFAAkF,EAC3F,CAAE,MAAO,kHAAmH,EAC5H,CAAE,MAAO,wDAAyD,CACtE,EACE,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,yGACyD,EAC7D,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAoFhEY,EAAW,CACf,QAnFiB,CACjB,MACA,OACA,QACA,OACA,WACA,UACA,KACA,OACA,OACA,SACA,MACA,UACA,OACA,KACA,SACA,WACA,WACA,SACA,SACA,SACA,gBACA,SACA,SACA,UACA,QACA,WACA,QACA,WACA,WACA,UACA,WACA,YACA,iBACA,gBAEA,UACA,UACA,WACA,gBACA,eAEA,SACF,EAyCE,KAvCc,CACd,QACA,SACA,SACA,WACA,MACA,QACA,OACA,OACA,OACA,QACA,UACA,WACA,aACA,aACA,aACA,aACA,cACA,cACA,eACA,WACA,WACA,WACA,YACA,YACA,YACA,aAEA,QACA,SACA,YAEA,UACA,OACA,WACF,EAKE,QAAS,kBAET,SAAU,kzBASZ,EAEMC,EAAsB,CAC1BJ,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMO,EAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUF,EACV,SAAUC,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUD,EACV,SAAUC,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,MAAO,IAAMV,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUC,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOT,EACP,SAAUS,EACV,UAAW,CACb,EACA,CACE,MAAOD,EACP,YAAa,GACb,SAAU,CAAEX,EAAK,QAAQU,EAAY,CAAE,UAAW,gBAAiB,CAAC,CAAE,EACtE,UAAW,CACb,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,UAAW,EACX,SAAU,CACRV,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUM,EACV,UAAW,EACX,SAAU,CACR,OACAV,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,IACN,QAAS,CAAE,GAAI,EACf,SAAUG,EAGV,kBAAmB,GACnB,QAAS,KACT,SAAU,CAAC,EAAE,OACXE,EACAC,EACAF,EACA,CACEJ,EACA,CACE,MAAOT,EAAK,SAAW,KACvB,SAAUY,CACZ,EACA,CACE,UAAW,QACX,cAAe,0BACf,IAAK,WACL,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCZ,EAAK,UACP,CACF,CACF,CAAC,EACH,QAAS,CACP,aAAcS,EACd,QAASF,EACT,SAAUK,CACZ,CACF,CACF,CAEAd,GAAO,QAAUC,KC5UjB,IAAAiB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAIbE,EAAsBF,EAAK,QAAQ,KAAM,IAAK,CAAE,SAAU,CAAE,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EACjFG,EAAmB,qBACnBC,EAAe,kBAEfC,EAAmB,cACrBF,EAAmB,IACnBF,EAAM,SAASG,CAAY,EAC3B,gBAAkBH,EAAM,SAJC,UAI4B,EACvD,IAEIK,EAAsB,CAC1B,UAAW,OACX,MAAO,oBACT,EAKMC,EAAU,CACd,UAAW,SACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEP,EAAK,gBAAiB,CACpC,EACA,CACE,MAAO,eAXa,uDAWyB,MAC7C,IAAK,IACL,QAAS,GACX,EACAA,EAAK,kBAAkB,CACrB,MAAO,mCACP,IAAK,qBACP,CAAC,CACH,CACF,EAEMQ,EAAU,CACd,UAAW,SACX,SAAU,CAER,CAAE,MACA,8UAkBF,EAEA,CAAE,MACA,6JAcF,CACF,EACA,UAAW,CACb,EAEMC,EAAe,CACnB,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,wFACwC,EAC5C,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAT,EAAK,QAAQO,EAAS,CAAE,UAAW,QAAS,CAAC,EAC7C,CACE,UAAW,SACX,MAAO,OACT,EACAL,EACAF,EAAK,oBACP,CACF,EAEMU,EAAa,CACjB,UAAW,QACX,MAAOT,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAC3C,UAAW,CACb,EAEMW,EAAiBV,EAAM,SAASG,CAAY,EAAIJ,EAAK,SAAW,UAGhEY,EAAoB,CACxB,UACA,UACA,MACA,SACA,MACA,gBACA,gBACA,kBACA,OACA,SACA,QACA,QACA,OACA,QACA,QACA,WACA,YACA,WACA,QACA,UACA,gBACA,YACA,YACA,YACA,WACA,WACA,UACA,SACA,KACA,kBACA,OACA,OACA,WACA,SACA,SACA,QACA,QACA,MACA,SACA,OACA,KACA,SACA,SACA,SACA,UACA,YACA,MACA,WACA,MACA,SACA,UACA,WACA,KACA,QACA,WACA,UACA,YACA,SACA,WACA,WACA,sBACA,WACA,SACA,SACA,gBACA,iBACA,SACA,SACA,eACA,WACA,OACA,eACA,QACA,mBACA,2BACA,OACA,MACA,UACA,SACA,WACA,QACA,QACA,UACA,WACA,QACA,MACA,QACF,EAGMC,EAAiB,CACrB,OACA,OACA,WACA,WACA,UACA,SACA,QACA,MACA,OACA,QACA,OACA,UACA,WACA,SACA,QACA,QACF,EAEMC,EAAa,CACjB,MACA,WACA,UACA,mBACA,SACA,UACA,qBACA,yBACA,qBACA,QACA,aACA,WACA,WACA,SACA,YACA,mBACA,gBACA,UACA,QACA,aACA,WACA,WACA,QACA,WACA,gBACA,gBACA,OACA,UACA,iBACA,QACA,kBACA,wBACA,cACA,MACA,gBACA,cACA,eACA,qBACA,aACA,QACA,cACA,eACA,cACA,SACA,YACA,QACA,cACA,aACA,gBACA,qBACA,qBACA,gBACA,UACA,SACA,WACA,UACA,cACF,EAEMC,EAAiB,CACrB,QACA,MACA,OACA,QACA,WACA,OACA,OACA,QACA,SACA,OACA,OACA,MACA,OACA,MACA,OACA,OACA,UACA,OACA,WACA,OACA,MACA,OACA,QACA,OACA,UACA,UACA,QACA,OACA,QACA,SACA,SACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,OACA,UACA,QACA,MACA,QACA,YACA,cACA,4BACA,aACA,cACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,MACA,SACA,UACA,OACA,UACA,QACA,MACA,OACA,WACA,UACA,OACA,SACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,SACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,OACA,MACA,OACA,YACA,gBACA,UACA,UACA,WACA,QACA,UACA,UACF,EAaMC,EAAe,CACnB,KAAMH,EACN,QAASD,EACT,QAde,CACf,OACA,QACA,UACA,UACA,MACF,EASE,SANe,CAAE,SAAU,EAO3B,YAAaE,CACf,EAEMG,EAAoB,CACxB,UAAW,oBACX,UAAW,EACX,SAAU,CAER,MAAOF,CAAe,EACxB,MAAOd,EAAM,OACX,KACA,eACA,SACA,UACA,aACA,YACAD,EAAK,SACLC,EAAM,UAAU,kBAAkB,CAAC,CACvC,EAEMiB,EAAsB,CAC1BD,EACAR,EACAH,EACAJ,EACAF,EAAK,qBACLQ,EACAD,CACF,EAEMY,GAAqB,CAIzB,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,KACP,IAAK,IACP,EACA,CACE,cAAe,wBACf,IAAK,GACP,CACF,EACA,SAAUH,EACV,SAAUE,EAAoB,OAAO,CACnC,CACE,MAAO,KACP,IAAK,KACL,SAAUF,EACV,SAAUE,EAAoB,OAAO,CAAE,MAAO,CAAC,EAC/C,UAAW,CACb,CACF,CAAC,EACD,UAAW,CACb,EAEME,EAAuB,CAC3B,UAAW,WACX,MAAO,IAAMf,EAAmB,eAAiBM,EACjD,YAAa,GACb,IAAK,QACL,WAAY,GACZ,SAAUK,EACV,QAAS,iBACT,SAAU,CACR,CACE,MAAOb,EACP,SAAUa,EACV,UAAW,CACb,EACA,CACE,MAAOL,EACP,YAAa,GACb,SAAU,CAAED,CAAW,EACvB,UAAW,CACb,EAGA,CACE,MAAO,KACP,UAAW,CACb,EAEA,CACE,MAAO,IACP,eAAgB,GAChB,SAAU,CACRH,EACAC,CACF,CACF,EAGA,CACE,UAAW,EACX,MAAO,GACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUQ,EACV,UAAW,EACX,SAAU,CACRd,EACAF,EAAK,qBACLO,EACAC,EACAF,EAEA,CACE,MAAO,KACP,IAAK,KACL,SAAUU,EACV,UAAW,EACX,SAAU,CACR,OACAd,EACAF,EAAK,qBACLO,EACAC,EACAF,CACF,CACF,CACF,CACF,EACAA,EACAJ,EACAF,EAAK,qBACLS,CACF,CACF,EAEA,MAAO,CACL,KAAM,MACN,QAAS,CACP,KACA,MACA,MACA,MACA,KACA,MACA,KACF,EACA,SAAUO,EACV,QAAS,KACT,iBAAkB,CAAE,oBAAqB,UAAW,EACpD,SAAU,CAAC,EAAE,OACXG,GACAC,EACAH,EACAC,EACA,CACET,EACA,CACE,MAAO,8NACP,IAAK,IACL,SAAUO,EACV,SAAU,CACR,OACAV,CACF,CACF,EACA,CACE,MAAON,EAAK,SAAW,KACvB,SAAUgB,CACZ,EACA,CACE,MAAO,CAEL,wDACA,MACA,KACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,CACF,CAAC,CACL,CACF,CAEAlB,GAAO,QAAUC,KC5lBjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAoB,CACxB,OACA,OACA,OACA,UACA,WACA,SACA,UACA,OACA,QACA,MACA,OACA,OACA,QACA,SACA,QACA,QACA,SACA,QACA,OACA,QACF,EACMC,EAAqB,CACzB,SACA,UACA,YACA,SACA,WACA,YACA,WACA,QACA,SACA,WACA,SACA,UACA,MACA,SACA,SACF,EACMC,EAAmB,CACvB,UACA,QACA,OACA,MACF,EACMC,EAAkB,CACtB,WACA,KACA,OACA,QACA,OACA,QACA,QACA,QACA,WACA,KACA,OACA,QACA,WACA,SACA,UACA,QACA,MACA,UACA,OACA,KACA,WACA,KACA,YACA,WACA,KACA,OACA,YACA,MACA,WACA,MACA,WACA,SACA,UACA,YACA,SACA,WACA,SACA,MACA,SACA,SACA,SACA,SACA,aACA,SACA,SACA,SACA,OACA,QACA,MACA,SACA,YACA,SACA,QACA,UACA,OACA,WACA,OACF,EACMC,EAAsB,CAC1B,MACA,QACA,MACA,YACA,OACA,QACA,QACA,KACA,aACA,UACA,SACA,OACA,OACA,MACA,SACA,QACA,OACA,OACA,OACA,MACA,SACA,MACA,UACA,KACA,KACA,UACA,UACA,SACA,SACA,WACA,SACA,SACA,MACA,YACA,UACA,MACA,OACA,QACA,OACA,OACF,EAEMC,EAAW,CACf,QAASF,EAAgB,OAAOC,CAAmB,EACnD,SAAUJ,EACV,QAASE,CACX,EACMI,EAAaP,EAAK,QAAQA,EAAK,WAAY,CAAE,MAAO,oBAAqB,CAAC,EAC1EQ,EAAU,CACd,UAAW,SACX,SAAU,CACR,CAAE,MAAO,eAAiB,EAC1B,CAAE,MAAO,iEAAqE,EAC9E,CAAE,MAAO,qFAA2F,CACtG,EACA,UAAW,CACb,EACMC,EAAa,CACjB,UAAW,SACX,MAAO,4BACP,UAAW,CACb,EACMC,EAAkB,CACtB,UAAW,SACX,MAAO,KACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EACMC,EAAwBX,EAAK,QAAQU,EAAiB,CAAE,QAAS,IAAK,CAAC,EACvEE,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUN,CACZ,EACMO,EAAcb,EAAK,QAAQY,EAAO,CAAE,QAAS,IAAK,CAAC,EACnDE,EAAsB,CAC1B,UAAW,SACX,MAAO,MACP,IAAK,IACL,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChBd,EAAK,iBACLa,CACF,CACF,EACME,EAA+B,CACnC,UAAW,SACX,MAAO,OACP,IAAK,IACL,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdH,CACF,CACF,EACMI,EAAqChB,EAAK,QAAQe,EAA8B,CACpF,QAAS,KACT,SAAU,CACR,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,MAAO,EAChB,CAAE,MAAO,IAAK,EACdF,CACF,CACF,CAAC,EACDD,EAAM,SAAW,CACfG,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,oBACP,EACAa,EAAY,SAAW,CACrBG,EACAF,EACAH,EACAX,EAAK,iBACLA,EAAK,kBACLQ,EACAR,EAAK,QAAQA,EAAK,qBAAsB,CAAE,QAAS,IAAK,CAAC,CAC3D,EACA,IAAMiB,EAAS,CAAE,SAAU,CACzBR,EACAM,EACAD,EACAJ,EACAV,EAAK,iBACLA,EAAK,iBACP,CAAE,EAEIkB,EAAmB,CACvB,MAAO,IACP,IAAK,IACL,SAAU,CACR,CAAE,cAAe,QAAS,EAC1BX,CACF,CACF,EACMY,EAAgBnB,EAAK,SAAW,KAAOA,EAAK,SAAW,aAAeA,EAAK,SAAW,iBACtFoB,EAAgB,CAGpB,MAAO,IAAMpB,EAAK,SAClB,UAAW,CACb,EAEA,MAAO,CACL,KAAM,KACN,QAAS,CACP,KACA,IACF,EACA,SAAUM,EACV,QAAS,KACT,SAAU,CACRN,EAAK,QACH,MACA,IACA,CACE,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,MACP,UAAW,CACb,EACA,CAAE,MAAO,UAAW,EACpB,CACE,MAAO,MACP,IAAK,GACP,CACF,CACF,CACF,CACF,CACF,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,CAAE,QAAS,qFAAsF,CAC7G,EACAiB,EACAT,EACA,CACE,cAAe,kBACf,UAAW,EACX,IAAK,QACL,QAAS,UACT,SAAU,CACR,CAAE,cAAe,aAAc,EAC/BD,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,YACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAP,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,cAAe,SACf,UAAW,EACX,IAAK,QACL,QAAS,SACT,SAAU,CACRO,EACAW,EACAlB,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAEE,UAAW,OACX,MAAO,oBACP,aAAc,GACd,IAAK,MACL,WAAY,GACZ,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CAGE,cAAe,8BACf,UAAW,CACb,EACA,CACE,UAAW,WACX,MAAO,IAAMmB,EAAgB,SAAWnB,EAAK,SAAW,wBACxD,YAAa,GACb,IAAK,WACL,WAAY,GACZ,SAAUM,EACV,SAAU,CAER,CACE,cAAeJ,EAAmB,KAAK,GAAG,EAC1C,UAAW,CACb,EACA,CACE,MAAOF,EAAK,SAAW,wBACvB,YAAa,GACb,SAAU,CACRA,EAAK,WACLkB,CACF,EACA,UAAW,CACb,EACA,CAAE,MAAO,MAAO,EAChB,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUZ,EACV,UAAW,EACX,SAAU,CACRW,EACAT,EACAR,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAoB,CACF,CACF,CACF,CAEAtB,GAAO,QAAUC,KC3ZjB,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAUjB,SAASC,GAAIR,EAAM,CACjB,IAAMS,EAAQT,EAAK,MACbU,EAAQX,GAAMC,CAAI,EAClBW,EAAgB,CAAE,MAAO,8BAA+B,EACxDC,EAAe,kBACfC,EAAiB,oBACjBC,EAAW,0BACXC,EAAU,CACdf,EAAK,iBACLA,EAAK,iBACP,EAEA,MAAO,CACL,KAAM,MACN,iBAAkB,GAClB,QAAS,UACT,SAAU,CAAE,iBAAkB,SAAU,EACxC,iBAAkB,CAGhB,iBAAkB,cAAe,EACnC,SAAU,CACRU,EAAM,cACNC,EAGAD,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,MAAQI,EACf,UAAW,CACb,EACAJ,EAAM,wBACN,CACE,UAAW,kBACX,SAAU,CACR,CAAE,MAAO,KAAOL,GAAe,KAAK,GAAG,EAAI,GAAI,EAC/C,CAAE,MAAO,SAAWC,GAAgB,KAAK,GAAG,EAAI,GAAI,CACtD,CACF,EAOAI,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASH,GAAW,KAAK,GAAG,EAAI,MACzC,EAEA,CACE,MAAO,IACP,IAAK,QACL,SAAU,CACRG,EAAM,cACNA,EAAM,SACNA,EAAM,UACNA,EAAM,gBACN,GAAGK,EAIH,CACE,MAAO,mBACP,IAAK,KACL,UAAW,EACX,SAAU,CAAE,SAAU,cAAe,EACrC,SAAU,CACR,GAAGA,EACH,CACE,UAAW,SAGX,MAAO,OACP,eAAgB,GAChB,WAAY,EACd,CACF,CACF,EACAL,EAAM,iBACR,CACF,EACA,CACE,MAAOD,EAAM,UAAU,GAAG,EAC1B,IAAK,OACL,UAAW,EACX,QAAS,IACT,SAAU,CACR,CACE,UAAW,UACX,MAAOI,CACT,EACA,CACE,MAAO,KACP,eAAgB,GAChB,WAAY,GACZ,UAAW,EACX,SAAU,CACR,SAAU,UACV,QAASD,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAO,eACP,UAAW,WACb,EACA,GAAGW,EACHL,EAAM,eACR,CACF,CACF,CACF,EACA,CACE,UAAW,eACX,MAAO,OAASP,GAAK,KAAK,GAAG,EAAI,MACnC,CACF,CACF,CACF,CAEAL,GAAO,QAAUU,KCp7BjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CACtB,IAAMC,EAAQD,EAAK,MACbE,EAAc,CAClB,MAAO,gBACP,IAAK,IACL,YAAa,MACb,UAAW,CACb,EACMC,EAAkB,CACtB,MAAO,cACP,IAAK,GACP,EACMC,EAAO,CACX,UAAW,OACX,SAAU,CAER,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,+BAAgC,EAEzC,CACE,MAAO,MACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,WACP,EACA,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,kBAGP,SAAU,CACR,CACE,MAAO,cACP,IAAK,QACP,CACF,EACA,UAAW,CACb,CACF,CACF,EACMC,EAAO,CACX,UAAW,SACX,MAAO,kCACP,IAAK,OACL,WAAY,EACd,EACMC,EAAiB,CACrB,MAAO,eACP,YAAa,GACb,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,OACX,MAAO,OACP,IAAK,IACL,aAAc,EAChB,CACF,CACF,EACMC,EAAa,0BACbC,EAAO,CACX,SAAU,CAGR,CACE,MAAO,iBACP,UAAW,CACb,EAEA,CACE,MAAO,gEACP,UAAW,CACb,EACA,CACE,MAAOP,EAAM,OAAO,YAAaM,EAAY,YAAY,EACzD,UAAW,CACb,EAEA,CACE,MAAO,wBACP,UAAW,CACb,EAEA,CACE,MAAO,iBACP,UAAW,CACb,CACF,EACA,YAAa,GACb,SAAU,CACR,CAEE,MAAO,UAAW,EACpB,CACE,UAAW,SACX,UAAW,EACX,MAAO,MACP,IAAK,MACL,aAAc,GACd,UAAW,EACb,EACA,CACE,UAAW,OACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,EACA,CACE,UAAW,SACX,UAAW,EACX,MAAO,SACP,IAAK,MACL,aAAc,GACd,WAAY,EACd,CACF,CACF,EACME,EAAO,CACX,UAAW,SACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,aACP,IAAK,MACP,EACA,CACE,MAAO,cACP,IAAK,OACP,CACF,CACF,EACMC,EAAS,CACb,UAAW,WACX,SAAU,CAAC,EACX,SAAU,CACR,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAKMC,EAAsBX,EAAK,QAAQS,EAAM,CAAE,SAAU,CAAC,CAAE,CAAC,EACzDG,EAAsBZ,EAAK,QAAQU,EAAQ,CAAE,SAAU,CAAC,CAAE,CAAC,EACjED,EAAK,SAAS,KAAKG,CAAmB,EACtCF,EAAO,SAAS,KAAKC,CAAmB,EAExC,IAAIE,EAAc,CAChBX,EACAM,CACF,EAEA,OACEC,EACAC,EACAC,EACAC,CACF,EAAE,QAAQE,GAAK,CACbA,EAAE,SAAWA,EAAE,SAAS,OAAOD,CAAW,CAC5C,CAAC,EAEDA,EAAcA,EAAY,OAAOJ,EAAMC,CAAM,EAqCtC,CACL,KAAM,WACN,QAAS,CACP,KACA,SACA,KACF,EACA,SAAU,CA1CG,CACb,UAAW,UACX,SAAU,CACR,CACE,MAAO,UACP,IAAK,IACL,SAAUG,CACZ,EACA,CACE,MAAO,uBACP,SAAU,CACR,CAAE,MAAO,SAAU,EACnB,CACE,MAAO,IACP,IAAK,MACL,SAAUA,CACZ,CACF,CACF,CACF,CACF,EAwBIX,EACAG,EACAI,EACAC,EAzBe,CACjB,UAAW,QACX,MAAO,SACP,SAAUG,EACV,IAAK,GACP,EAsBIT,EACAD,EACAK,EACAF,EAvBW,CAEb,MAAO,UACP,MAAO,oDACT,CAqBE,CACF,CACF,CAEAR,GAAO,QAAUC,KCvPjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACnB,MAAO,CACL,KAAM,OACN,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,OACX,UAAW,GACX,MAAOC,EAAM,OACX,+BACA,8BACA,sBACF,CACF,EACA,CACE,UAAW,UACX,SAAU,CACR,CACE,MAAOA,EAAM,OACX,UACA,SACA,QACA,QACA,UACA,SACA,aACF,EACA,IAAK,GACP,EACA,CAAE,MAAO,UAAW,CACtB,CACF,EACA,CACE,UAAW,WACX,MAAO,MACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,EACA,CACE,UAAW,WACX,MAAO,KACP,IAAK,GACP,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7DjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAiB,qFAEjBC,EAAgBF,EAAM,OAC1B,uBAEA,4BACF,EAEMG,EAA+BH,EAAM,OAAOE,EAAe,UAAU,EAarEE,EAAgB,CACpB,oBAAqB,CACnB,WACA,WACA,cACF,EACA,oBAAqB,CACnB,OACA,OACF,EACA,QAAS,CACP,QACA,MACA,QACA,QACA,QACA,OACA,QACA,UACA,KACA,OACA,QACA,MACA,MACA,SACA,MACA,KACA,KACA,SACA,OACA,MACA,KACA,OACA,UACA,SACA,QACA,SACA,OACA,QACA,SACA,QACA,OACA,QACA,QACA,GAtDe,CACjB,UACA,SACA,UACA,SACA,UACA,YACA,QACA,OACF,CA8CE,EACA,SAAU,CACR,OACA,SACA,gBACA,cACA,cACA,gBACA,mBACA,iBACF,EACA,QAAS,CACP,OACA,QACA,KACF,CACF,EACMC,EAAY,CAChB,UAAW,SACX,MAAO,YACT,EACMC,EAAa,CACjB,MAAO,KACP,IAAK,GACP,EACMC,EAAgB,CACpBR,EAAK,QACH,IACA,IACA,CAAE,SAAU,CAAEM,CAAU,CAAE,CAC5B,EACAN,EAAK,QACH,UACA,QACA,CACE,SAAU,CAAEM,CAAU,EACtB,UAAW,EACb,CACF,EACAN,EAAK,QAAQ,WAAYA,EAAK,gBAAgB,CAChD,EACMS,EAAQ,CACZ,UAAW,QACX,MAAO,MACP,IAAK,KACL,SAAUJ,CACZ,EACMK,EAAS,CACb,UAAW,SACX,SAAU,CACRV,EAAK,iBACLS,CACF,EACA,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,aACP,IAAK,GACP,EACA,CACE,MAAO,cACP,IAAK,IACP,EAGA,CAAE,MAAO,iBAAkB,EAC3B,CAAE,MAAO,2BAA4B,EACrC,CAAE,MAAO,iCAAkC,EAC3C,CAAE,MAAO,yDAA0D,EACnE,CAAE,MAAO,yBAA0B,EACnC,CAAE,MAAO,WAAY,EAErB,CAGE,MAAOR,EAAM,OACX,YACAA,EAAM,UAAU,0CAA0C,CAC5D,EACA,SAAU,CACRD,EAAK,kBAAkB,CACrB,MAAO,QACP,IAAK,QACL,SAAU,CACRA,EAAK,iBACLS,CACF,CACF,CAAC,CACH,CACF,CACF,CACF,EAKME,EAAU,oBACVC,EAAS,kBACTC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAER,CAAE,MAAO,OAAOF,CAAO,SAASC,CAAM,iBAAiBA,CAAM,YAAa,EAI1E,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,gCAAiC,EAC1C,CAAE,MAAO,4CAA6C,EAGtD,CAAE,MAAO,uBAAwB,CACnC,CACF,EAEME,EAAS,CACb,SAAU,CACR,CACE,MAAO,MACT,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,SACL,aAAc,GACd,WAAY,GACZ,SAAUT,CACZ,CACF,CACF,EA2EMU,EAAwB,CAC5BL,EA/DuB,CACvB,SAAU,CACR,CACE,MAAO,CACL,WACAN,EACA,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,sBACAA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,cACH,EAAG,uBACL,EACA,SAAUC,CACZ,EAjCuB,CACrB,MAAO,CACL,sBACAD,CACF,EACA,MAAO,CACL,EAAG,aACL,EACA,SAAUC,CACZ,EA8CwB,CACtB,UAAW,EACX,MAAO,CACLD,EACA,YACF,EACA,MAAO,CACL,EAAG,aACL,CACF,EA7B4B,CAC1B,UAAW,EACX,MAAO,sBACP,UAAW,mBACb,EA4BwB,CACtB,UAAW,EACX,MAAOD,EACP,MAAO,aACT,EA9B0B,CACxB,MAAO,CACL,MAAO,MACPD,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CACRY,CACF,CACF,EA4BE,CAEE,MAAOd,EAAK,SAAW,IAAK,EAC9B,CACE,UAAW,SACX,MAAOA,EAAK,oBAAsB,YAClC,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,WACP,SAAU,CACRU,EACA,CAAE,MAAOR,CAAe,CAC1B,EACA,UAAW,CACb,EACAW,EACA,CAGE,UAAW,WACX,MAAO,4DACT,EACA,CACE,UAAW,SACX,MAAO,UACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,UAAW,EACX,SAAUR,CACZ,EACA,CACE,MAAO,IAAML,EAAK,eAAiB,eACnC,SAAU,SACV,SAAU,CACR,CACE,UAAW,SACX,SAAU,CACRA,EAAK,iBACLS,CACF,EACA,QAAS,KACT,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACP,EACA,CACE,MAAO,OACP,IAAK,UACP,EACA,CACE,MAAO,QACP,IAAK,WACP,EACA,CACE,MAAO,MACP,IAAK,SACP,EACA,CACE,MAAO,QACP,IAAK,WACP,CACF,CACF,CACF,EAAE,OAAOF,EAAYC,CAAa,EAClC,UAAW,CACb,CACF,EAAE,OAAOD,EAAYC,CAAa,EAElCC,EAAM,SAAWM,EACjBD,EAAO,SAAWC,EASlB,IAAMC,GAAc,CAClB,CACE,MAAO,SACP,OAAQ,CACN,IAAK,IACL,SAAUD,CACZ,CACF,EACA,CACE,UAAW,cACX,MAAO,KAfW,QAeY,IAbX,kCAakC,IAZtC,iDAYyD,WACxE,OAAQ,CACN,IAAK,IACL,SAAUV,EACV,SAAUU,CACZ,CACF,CACF,EAEA,OAAAP,EAAc,QAAQD,CAAU,EAEzB,CACL,KAAM,OACN,QAAS,CACP,KACA,UACA,UACA,OACA,KACF,EACA,SAAUF,EACV,QAAS,OACT,SAAU,CAAEL,EAAK,QAAQ,CAAE,OAAQ,MAAO,CAAC,CAAE,EAC1C,OAAOgB,EAAW,EAClB,OAAOR,CAAa,EACpB,OAAOO,CAAqB,CACjC,CACF,CAEAjB,GAAO,QAAUC,KC/bjB,IAAAkB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAGC,EAAM,CAyEhB,IAAMC,EAAW,CACf,QA5BU,CACV,QACA,OACA,OACA,QACA,WACA,UACA,QACA,OACA,cACA,MACA,OACA,KACA,OACA,KACA,SACA,YACA,MACA,UACA,QACA,SACA,SACA,SACA,SACA,OACA,KACF,EAGE,KAnDY,CACZ,OACA,OACA,YACA,aACA,QACA,UACA,UACA,OACA,QACA,QACA,QACA,SACA,QACA,SACA,SACA,SACA,MACA,OACA,UACA,MACF,EA+BE,QA3Ee,CACf,OACA,QACA,OACA,KACF,EAuEE,SAtEgB,CAChB,SACA,MACA,QACA,UACA,OACA,OACA,MACA,OACA,MACA,QACA,QACA,UACA,OACA,UACA,QACF,CAuDA,EACA,MAAO,CACL,KAAM,KACN,QAAS,CAAE,QAAS,EACpB,SAAUA,EACV,QAAS,KACT,SAAU,CACRD,EAAK,oBACLA,EAAK,qBACL,CACE,UAAW,SACX,SAAU,CACRA,EAAK,kBACLA,EAAK,iBACL,CACE,MAAO,IACP,IAAK,GACP,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,6DACP,UAAW,CACb,EACA,CACE,MAAO,sFACP,UAAW,CACb,EACA,CACE,MAAO,wBACP,UAAW,CACb,EACA,CACE,MAAO,uCACP,UAAW,CACb,EACA,CACE,MAAO,wDACP,UAAW,CACb,CACF,CACF,EACA,CAAE,MAAO,IACT,EACA,CACE,UAAW,WACX,cAAe,OACf,IAAK,cACL,WAAY,GACZ,SAAU,CACRA,EAAK,WACL,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,QAAS,MACX,CACF,CACF,CACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC3JjB,IAAAG,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAQC,EAAM,CACrB,IAAMC,EAAQD,EAAK,MACbE,EAAW,yBACjB,MAAO,CACL,KAAM,UACN,QAAS,CAAE,KAAM,EACjB,iBAAkB,GAClB,kBAAmB,GACnB,SAAU,CACR,QAAS,CACP,QACA,WACA,eACA,OACA,QACA,SACA,YACA,YACA,QACA,SACA,WACA,OACA,IACF,EACA,QAAS,CACP,OACA,QACA,MACF,CACF,EACA,SAAU,CACRF,EAAK,kBACLA,EAAK,kBACLA,EAAK,YACL,CACE,MAAO,cACP,MAAO,SACP,UAAW,CACb,EACA,CACE,MAAO,cACP,MAAO,4BACP,UAAW,CACb,EACA,CACE,MAAO,WACP,MAAO,KACP,IAAK,KACL,WAAY,GACZ,UAAW,CACb,EACA,CACE,MAAO,OACP,MAAO,OACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAOC,EAAM,OAAOC,EAAUD,EAAM,UAAU,MAAM,CAAC,EACrD,UAAW,CACb,CACF,EACA,QAAS,CACP,QACA,OACF,CACF,CACF,CAEAH,GAAO,QAAUC,KC7EjB,IAAAI,GAAAC,EAAA,CAAAC,GAAAC,KA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AAK,oBAAqB,EACtC,WAAY,EACd,EAEA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,KAAM,EACjB,SAAUI,EACV,QAAS,QACT,SAAU,CACRJ,EAAK,QACH,UACA,OACA,CACE,UAAW,EACX,SAAU,CACR,CAEE,MAAO,OACP,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,YACT,CACF,CACF,CACF,EAEA,CACE,MAAO,wBACP,SAAU,SACV,UAAW,CACb,EACAA,EAAK,oBACLA,EAAK,qBACL,CACE,MAAO,MACP,IAAK,MACL,UAAW,SACX,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACAA,EAAK,iBACLA,EAAK,kBACL,CACE,MAAO,CACL,oDACA,MACAE,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CAEE,MAAO,aACP,MAAO,SACT,EACA,CACE,MAAO,CACLD,EAAM,OAAO,WAAYC,CAAa,EACtC,MACAA,EACA,MACA,QACF,EACA,UAAW,CACT,EAAG,OACH,EAAG,WACH,EAAG,UACL,CACF,EACA,CACE,MAAO,CACL,SACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,EACA,SAAU,CACRI,EACAN,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CAGE,cAAe,wBACf,UAAW,CACb,EACA,CACE,MAAO,CACL,MAAQG,EAAmB,QAC3BH,EAAK,oBACL,WACF,EACA,UAAW,CAAE,EAAG,gBAAiB,EACjC,SAAUI,EACV,SAAU,CACR,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUA,EACV,UAAW,EACX,SAAU,CACRC,EACAL,EAAK,iBACLA,EAAK,kBACLP,GACAO,EAAK,oBACP,CACF,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACAP,GACAY,CACF,CACF,CACF,CAEAhB,GAAO,QAAUU,KClSjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UACA,SACA,WACA,eACA,iBACA,SACA,QACF,EAEMC,GAAY,CAAC,EAAE,OACnBF,GACAF,GACAC,EACF,EAWA,SAASI,GAAWC,EAAM,CACxB,IAAMC,EAAQD,EAAK,MAQbE,EAAgB,CAACC,EAAO,CAAE,MAAAC,CAAM,IAAM,CAC1C,IAAMC,EAAM,KAAOF,EAAM,CAAC,EAAE,MAAM,CAAC,EAEnC,OADYA,EAAM,MAAM,QAAQE,EAAKD,CAAK,IAC3B,EACjB,EAEME,EAAaf,GACbgB,EAAW,CACf,MAAO,KACP,IAAK,KACP,EAEMC,EAAmB,4BACnBC,EAAU,CACd,MAAO,sBACP,IAAK,4BAKL,kBAAmB,CAACN,EAAOO,IAAa,CACtC,IAAMC,EAAkBR,EAAM,CAAC,EAAE,OAASA,EAAM,MAC1CS,EAAWT,EAAM,MAAMQ,CAAe,EAC5C,GAIEC,IAAa,KAGbA,IAAa,IACX,CACFF,EAAS,YAAY,EACrB,MACF,CAIIE,IAAa,MAGVV,EAAcC,EAAO,CAAE,MAAOQ,CAAgB,CAAC,GAClDD,EAAS,YAAY,GAOzB,IAAIG,EACEC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ACb,UAAW,EACX,SAAU,CAAEA,EAAK,qBAAsB,CACzC,EACA,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,SAAU,UACV,UAAW,CACb,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,WAAY,GACZ,SAAUC,EACV,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,SACL,eAAgB,GAChB,SAAU,CACRU,EACAX,EAAK,oBACLU,CACF,EACA,UAAW,CACb,EACAV,EAAK,oBACLU,EACAH,EACAC,EACAF,EACAN,EAAK,aACP,CACF,EACAU,CACF,CACF,EACA,CACE,MAAO,CACL,wBACA,MACAV,EAAK,mBACP,EACA,WAAY,CACV,EAAG,aACL,EACA,SAAU,wBACV,IAAK,WACL,WAAY,GACZ,QAAS,qBACT,SAAU,CACR,CAAE,cAAe,+CAAgD,EACjEA,EAAK,sBACL,CACE,UAAW,OACX,MAAO,IACP,IAAK,IACL,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,UACP,IAAK,eACL,aAAc,GACd,UAAW,EACb,EACAO,EACAC,CACF,CACF,EACAF,EACA,CACE,UAAW,OACX,MAAO,kBACP,IAAK,IACL,QAAS;AAAA,CACX,EACAG,CACF,CACF,CACF,CAEAf,GAAO,QAAUK,KC7RjB,IAAAc,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAmBH,GAAe,OAAOC,EAAe,EAAE,KAAK,EAAE,QAAQ,EAY/E,SAASG,GAAKT,EAAM,CAClB,IAAMU,EAAQX,GAAMC,CAAI,EAClBW,EAAqBH,GAErBI,EAAe,kBACfC,EAAW,UACXC,EAAkB,IAAMD,EAAW,QAAUA,EAAW,OAIxDE,EAAQ,CAAC,EAASC,EAAc,CAAC,EAEjCC,EAAc,SAASC,EAAG,CAC9B,MAAO,CAEL,UAAW,SACX,MAAO,KAAOA,EAAI,MAAQA,CAC5B,CACF,EAEMC,EAAa,SAASC,EAAMC,EAAOC,EAAW,CAClD,MAAO,CACL,UAAWF,EACX,MAAOC,EACP,UAAWC,CACb,CACF,EAEMC,EAAc,CAClB,SAAU,UACV,QAASX,EACT,UAAWR,GAAe,KAAK,GAAG,CACpC,EAEMoB,EAAc,CAElB,MAAO,MACP,IAAK,MACL,SAAUR,EACV,SAAUO,EACV,UAAW,CACb,EAGAP,EAAY,KACVhB,EAAK,oBACLA,EAAK,qBACLiB,EAAY,GAAG,EACfA,EAAY,GAAG,EACfP,EAAM,gBACN,CACE,MAAO,oBACP,OAAQ,CACN,UAAW,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,OAAOA,CAAQ,CACnB,EACAJ,EAAK,cACLA,EAAK,iBACLA,EAAK,kBACL,CACE,UAAW,SACX,MAAOC,EACP,IAAKC,EACL,SAAU,CAAEC,CAAc,EAC1B,UAAW,CACb,CACF,CAAC,CACH,CACF,CAEAL,GAAO,QAAUC,KChFjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAASC,EAAM,CAEtB,IAAMC,EAAW,CACf,UAAW,WACX,SAAU,CACR,CACE,MAAO,SAAWD,EAAK,oBAAsB,MAC7C,SAAU,CAAEA,EAAK,gBAAiB,CACpC,EACA,CAAE,MAAO,gBAAiB,CAC5B,CACF,EAEME,EAAe,CACnB,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRF,EAAK,iBACLC,CACF,CACF,EAEME,EAAO,CACX,UAAW,WACX,MAAO,eACP,IAAK,KACL,SAAU,CAAE,SACR,gPAG+D,EACnE,SAAU,CACRF,EACAC,CACF,CACF,EAEME,EAAa,CAAE,MAAO,IAAMJ,EAAK,oBAAsB,iBAAkB,EAEzEK,EAAO,CACX,UAAW,OACX,MAAO,YACP,IAAK,IACL,SAAU,CACR,SAAU,UACV,QAAS,QACX,CACF,EAEMC,EAAS,CACb,UAAW,UACX,MAAO,WACP,IAAK,IACL,SAAU,CAAEL,CAAS,CACvB,EACA,MAAO,CACL,KAAM,WACN,QAAS,CACP,KACA,MACA,MACF,EACA,SAAU,CACR,SAAU,SACV,QAAS,2HAEX,EACA,SAAU,CACRD,EAAK,kBACLC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CACF,CAEAR,GAAO,QAAUC,KCxFjB,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MACbE,EAAW,CACf,MACA,SACA,QACA,MACA,QACA,OACA,UACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,QACA,MACA,SACA,QACA,QACA,WACA,UACA,WACA,MACA,QACA,WACA,UACA,UACA,SACA,MACA,KACA,OACA,OACA,OACA,QACA,WACA,aACA,YACA,cACA,WACA,aACA,MACA,OACA,OACA,SACA,OACA,MACA,QACA,QACA,SACA,QACA,MACA,UACA,OACA,SACA,WACA,OACA,WACA,WACA,WACA,gBACA,gBACA,aACA,WACA,eACA,eACA,YACA,cACA,UACA,cACA,iBACA,mBACA,cACA,WACA,WACA,WACA,gBACA,gBACA,aACA,cACA,aACA,QACA,OACA,SACA,OACA,OACA,KACA,MACA,KACA,QACA,MACA,QACA,OACA,OACA,OACA,OACA,KACA,UACA,SACA,OACA,SACA,QACA,YACA,MACA,QACA,KACA,KACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,KACA,KACA,OACA,KACA,MACA,MACA,OACA,UACA,KACA,MACA,MACA,OACA,UACA,OACA,MACA,MACA,QACA,SACA,YACA,OACA,MACA,KACA,YACA,KACA,KACA,OACA,OACA,UACA,WACA,WACA,WACA,OACA,OACA,MACA,SACA,UACA,QACA,SACA,UACA,YACA,SACA,QACA,MACA,SACA,OACA,UACA,SACA,SACA,SACA,QACA,OACA,WACA,aACA,YACA,UACA,cACA,cACA,WACA,aACA,aACA,QACA,SACA,SACA,UACA,WACA,WACA,MACA,QACA,SACA,aACA,OACA,SACA,QACA,UACA,OACA,QACA,OACA,QACA,QACA,MACA,SACA,UACA,UACA,UACA,UACA,UACA,SACA,WACA,OACA,UACA,MACA,OACA,OACA,QACA,KACA,WACA,KACA,UACA,QACA,QACA,SACA,SACA,SACA,UACA,QACA,QACA,MACA,QACA,SACA,MACA,OACA,UACA,YACA,OACA,OACA,QACA,QACA,MACA,MACA,KACF,EAGMC,EAAkB,uBAClBC,EAAgB,CACpB,SAAU,SACV,QAASF,EAAS,KAAK,GAAG,CAC5B,EACMG,EAAQ,CACZ,UAAW,QACX,MAAO,UACP,IAAK,MACL,SAAUD,CACZ,EACME,EAAS,CACb,MAAO,OACP,IAAK,IAEP,EACMC,EAAO,CACX,MAAO,OACP,MAAO,yBACT,EACMC,EAAM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O,QAAUC,KCvfjB,IAAAoB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAWC,EAAM,CACxB,IAAMC,EAAY,CAChB,UAAW,WACX,MAAO,sEACT,EACMC,EAAgB,yBAuJhBC,EAAW,CACf,oBAAqB,CACnB,OACA,OACF,EACA,SAAUD,EACV,QA3IU,CACV,QACA,SACA,SACA,UACA,QACA,SACA,MACA,QACA,WACA,SACA,UACA,KACA,KACA,SACA,OACA,OACA,OACA,QACA,SACA,MACA,OACA,UACA,WACA,WACA,WACA,SACA,WACA,SACA,WACA,SACA,YACA,OACA,gBACA,KACA,SACA,YACA,WACA,WACA,SACA,OACA,OACA,KACA,MACA,QACA,SACA,QACA,SACA,WACA,SACA,UACA,kBACA,WACA,aACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,mBACA,cACA,WACA,YACA,YACA,YACA,UACA,WACA,UACA,QACA,uBACA,WACA,oBACA,oBACA,kBACA,cACA,kBACA,WACA,WACA,YACA,oBACA,eACA,sBACA,gBACA,SACA,SACA,SACA,oBACA,UACA,WACA,mBACA,kBACA,QACA,eACA,4BACA,iBACA,oBACA,2BACA,YACA,eACA,gBACA,UACA,aACA,uBACA,0BACA,wBACA,uBACA,gBACA,mBACA,YACA,aACA,gBACA,iBACA,eACF,EAyBE,QAxBe,CACf,QACA,OACA,QACA,OACA,MACA,MACA,KACA,MACF,EAgBE,SAfgB,CAChB,kBACA,mBACA,gBACA,iBACA,eACF,EAUE,KA/JY,CACZ,MACA,QACA,OACA,WACA,SACA,QACA,OACA,SACA,UACA,UACA,OACA,OACA,OACA,OACA,OACF,CAgJA,EACME,EAAiB,CACrB,SAAUF,EACV,QAAS,CACP,aACA,SACA,YACA,iBACF,CACF,EACA,MAAO,CACL,KAAM,cACN,QAAS,CACP,KACA,OACA,QACA,UACA,eACF,EACA,SAAUC,EACV,QAAS,KACT,SAAU,CACRF,EACAD,EAAK,oBACLA,EAAK,qBACLA,EAAK,cACLA,EAAK,kBACLA,EAAK,iBACL,CACE,UAAW,SACX,SAAU,CACR,CACE,MAAO,KACP,IAAK,IACL,QAAS,MACT,SAAU,CAAEA,EAAK,gBAAiB,CACpC,CACF,CACF,EACA,CACE,UAAW,OACX,MAAO,eACP,IAAK,IACL,SAAU,CAAE,QACR,gFACgC,EACpC,SAAU,CACR,CACE,MAAO,OACP,UAAW,CACb,EACAA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,UAAW,QAAS,CAAC,EAC5D,CACE,UAAW,SACX,MAAO,QACP,IAAK,IACL,QAAS,KACX,EACAA,EAAK,oBACLA,EAAK,oBACP,CACF,EACA,CACE,UAAW,QACX,MAAO,IAAMI,EAAe,QAAQ,KAAK,GAAG,EAAI,OAChD,IAAK,SACL,WAAY,GACZ,SAAUA,EACV,SAAU,CAAEJ,EAAK,qBAAsB,CACzC,EACA,CACE,MAAO,MAAQA,EAAK,oBACpB,UAAW,CACb,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC5PjB,IAAAM,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAYA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MAGbE,EAAe,yBACfC,EAAWF,EAAM,OACrB,2CACAC,CAAY,EAERE,EAA4BH,EAAM,OACtC,yEACAC,CAAY,EACRG,EAAiBJ,EAAM,OAC3B,SACAC,CAAY,EACRI,EAAW,CACf,MAAO,WACP,MAAO,OAASH,CAClB,EACMI,EAAe,CACnB,MAAO,OACP,SAAU,CACR,CAAE,MAAO,SAAU,UAAW,EAAG,EACjC,CAAE,MAAO,MAAO,EAEhB,CAAE,MAAO,MAAO,UAAW,EAAI,EAC/B,CAAE,MAAO,KAAM,CACjB,CACF,EACMC,EAAQ,CACZ,MAAO,QACP,SAAU,CACR,CAAE,MAAO,OAAQ,EACjB,CACE,MAAO,OACP,IAAK,IACP,CACF,CACF,EACMC,EAAgBT,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,IAAM,CAAC,EACtEU,EAAgBV,EAAK,QAAQA,EAAK,kBAAmB,CACzD,QAAS,KACT,SAAUA,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,CACxD,CAAC,EAEKG,EAAU,CACd,MAAO,+BACP,IAAK,gBACL,SAAUX,EAAK,kBAAkB,SAAS,OAAOQ,CAAK,EACtD,WAAY,CAACI,GAAGC,KAAS,CAAEA,GAAK,KAAK,YAAcD,GAAE,CAAC,GAAKA,GAAE,CAAC,CAAG,EACjE,SAAU,CAACA,GAAGC,KAAS,CAAMA,GAAK,KAAK,cAAgBD,GAAE,CAAC,GAAGC,GAAK,YAAY,CAAG,CACnF,EAEMC,EAASd,EAAK,kBAAkB,CACpC,MAAO,qBACP,IAAK,eACP,CAAC,EAEKe,EAAa;AAAA,GACbC,EAAS,CACb,MAAO,SACP,SAAU,CACRN,EACAD,EACAE,EACAG,CACF,CACF,EACMG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CAAE,MAAO,6BAA8B,EACvC,CAAE,MAAO,+BAAgC,EACzC,CAAE,MAAO,2CAA4C,EAErD,CAAE,MAAO,4EAA6E,CACxF,EACA,UAAW,CACb,EACMC,EAAW,CACf,QACA,OACA,MACF,EACMC,EAAM,CAGV,YACA,UACA,WACA,eACA,2BACA,WACA,aACA,gBACA,YAGA,MACA,OACA,OACA,UACA,eACA,QACA,UACA,eAMA,QACA,WACA,MACA,KACA,SACA,OACA,UACA,QACA,WACA,OACA,QACA,QACA,QACA,QACA,WACA,UACA,UACA,KACA,SACA,OACA,SACA,QACA,aACA,SACA,aACA,QACA,YACA,WACA,OACA,OACA,UACA,QACA,UACA,QACA,MACA,UACA,OACA,SACA,OACA,KACA,aACA,aACA,YACA,MACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,MACA,QACA,SACA,KACA,UACA,YACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,MACA,OACA,QACA,MACA,OACF,EAEMC,EAAY,CAGhB,UACA,iBACA,qBACA,kBACA,gBACA,cACA,iBACA,2BACA,yBACA,kBACA,yBACA,eACA,YACA,oBACA,sBACA,kBACA,gBACA,iBACA,YACA,qBACA,iBACA,eACA,mBACA,2BACA,mBACA,kBACA,gBACA,iBACA,mBACA,mB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Q,KAAM,GAAG,EACtBA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,MAAO,SACP,MAAO,YACT,CACF,CAAE,CACJ,EACA,CACE,MAAO,uBACP,SAAU,kBACV,OAAQ,CACN,MAAO,UACP,IAAKA,EAAK,iBACV,SAAU,CACR,CACE,MAAO,MACP,MAAO,OACP,WAAY,EACd,CACF,CACF,CACF,EACAO,EACA,CACE,MAAO,oBACP,MAAO,UACT,EACAD,EACAyB,EACAH,EACA,CACE,MAAO,CACL,QACA,KACAzB,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,mBACL,CACF,EACAuB,EACA,CACE,MAAO,WACP,UAAW,EACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACR,CAAE,cAAe,KAAO,EACxB1B,EAAK,sBACL,CACE,MAAO,KACP,WAAY,EACd,EACA,CACE,MAAO,SACP,MAAO,MACP,IAAK,MACL,aAAc,GACd,WAAY,GACZ,SAAUqB,EACV,SAAU,CACR,OACAY,GACA3B,EACAsB,EACA5B,EAAK,qBACLgB,EACAC,CACF,CACF,CACF,CACF,EACA,CACE,MAAO,QACP,SAAU,CACR,CACE,cAAe,OACf,QAAS,OACX,EACA,CACE,cAAe,wBACf,QAAS,QACX,CACF,EACA,UAAW,EACX,IAAK,KACL,WAAY,GACZ,SAAU,CACR,CAAE,cAAe,oBAAqB,EACtCjB,EAAK,qBACP,CACF,EAIA,CACE,cAAe,YACf,UAAW,EACX,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,EAAK,QAAQA,EAAK,sBAAuB,CAAE,MAAO,aAAc,CAAC,CAAE,CACjF,EACA,CACE,cAAe,MACf,UAAW,EACX,IAAK,IACL,SAAU,CAER,CACE,MAAO,0BACP,MAAO,SACT,EAEAA,EAAK,qBACP,CACF,EACAgB,EACAC,CACF,CACF,CACF,CAEAnB,GAAO,QAAUC,KChnBjB,IAAAmC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAQA,SAASC,GAAYC,EAAM,CACzB,MAAO,CACL,KAAM,eACN,YAAa,MACb,SAAU,CACR,CACE,MAAO,cACP,IAAK,MACL,YAAa,MACb,SAAU,CAGR,CACE,MAAO,OACP,IAAK,OACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,IACL,KAAM,EACR,EACAA,EAAK,QAAQA,EAAK,iBAAkB,CAClC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,EACDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,QAAS,KACT,UAAW,KACX,SAAU,KACV,KAAM,EACR,CAAC,CACH,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KCrDjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAUC,EAAM,CACvB,MAAO,CACL,KAAM,aACN,QAAS,CACP,OACA,KACF,EACA,kBAAmB,EACrB,CACF,CAEAF,GAAO,QAAUC,KClBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAOC,EAAM,CACpB,IAAMC,EAAQD,EAAK,MACbE,EAAW,qCACXC,EAAiB,CACrB,MACA,KACA,SACA,QACA,QACA,QACA,OACA,QACA,WACA,MACA,MACA,OACA,OACA,SACA,UACA,MACA,OACA,SACA,KACA,SACA,KACA,KACA,SACA,QACA,cACA,MACA,KACA,OACA,QACA,SACA,MACA,QACA,OACA,OACF,EAsGMC,EAAW,CACf,SAAU,sBACV,QAASD,EACT,SAvGgB,CAChB,aACA,MACA,MACA,MACA,QACA,MACA,OACA,aACA,YACA,QACA,WACA,MACA,cACA,UACA,UACA,UACA,OACA,MACA,SACA,YACA,OACA,OACA,SACA,QACA,SACA,YACA,UACA,UACA,UACA,OACA,OACA,MACA,KACA,QACA,MACA,aACA,aACA,OACA,MACA,OACA,SACA,MACA,MACA,aACA,MACA,OACA,SACA,MACA,OACA,MACA,MACA,QACA,WACA,QACA,OACA,WACA,QACA,MACA,UACA,QACA,SACA,eACA,MACA,MACA,QACA,QACA,OACA,OACA,KACF,EAkCE,QAhCe,CACf,YACA,WACA,QACA,OACA,iBACA,MACF,EA0BE,KArBY,CACZ,MACA,WACA,YACA,OACA,OACA,UACA,UACA,WACA,WACA,MACA,QACA,OACA,OACF,CAQA,EAEME,EAAS,CACb,UAAW,OACX,MAAO,gBACT,EAEMC,EAAQ,CACZ,UAAW,QACX,MAAO,KACP,IAAK,KACL,SAAUF,EACV,QAAS,GACX,EAEMG,EAAkB,CACtB,MAAO,OACP,UAAW,CACb,EAEMC,EAAS,CACb,UAAW,SACX,SAAU,CAAER,EAAK,gBAAiB,EAClC,SAAU,CACR,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRA,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,yCACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,CACF,EACA,UAAW,EACb,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRL,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,8BACP,IAAK,MACL,SAAU,CACRN,EAAK,iBACLK,EACAE,EACAD,CACF,CACF,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,eACP,IAAK,IACL,UAAW,EACb,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,GACP,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACA,CACE,MAAO,4BACP,IAAK,IACL,SAAU,CACRN,EAAK,iBACLO,EACAD,CACF,CACF,EACAN,EAAK,iBACLA,EAAK,iBACP,CACF,EAGMS,EAAY,kBACZC,EAAa,QAAQD,CAAS,UAAUA,CAAS,SAASA,CAAS,OAMnEE,EAAY,OAAOR,EAAe,KAAK,GAAG,CAAC,GAC3CS,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CAWR,CACE,MAAO,QAAQH,CAAS,MAAMC,CAAU,eAAeD,CAAS,YAAYE,CAAS,GACvF,EACA,CACE,MAAO,IAAID,CAAU,QACvB,EAQA,CACE,MAAO,0CAA0CC,CAAS,GAC5D,EACA,CACE,MAAO,4BAA4BA,CAAS,GAC9C,EACA,CACE,MAAO,6BAA6BA,CAAS,GAC/C,EACA,CACE,MAAO,mCAAmCA,CAAS,GACrD,EAIA,CACE,MAAO,OAAOF,CAAS,WAAWE,CAAS,GAC7C,CACF,CACF,EACME,EAAe,CACnB,UAAW,UACX,MAAOZ,EAAM,UAAU,SAAS,EAChC,IAAK,IACL,SAAUG,EACV,SAAU,CACR,CACE,MAAO,SACT,EAEA,CACE,MAAO,IACP,IAAK,OACL,eAAgB,EAClB,CACF,CACF,EACMU,EAAS,CACb,UAAW,SACX,SAAU,CAER,CACE,UAAW,GACX,MAAO,UACP,KAAM,EACR,EACA,CACE,MAAO,KACP,IAAK,KACL,aAAc,GACd,WAAY,GACZ,SAAUV,EACV,SAAU,CACR,OACAC,EACAO,EACAJ,EACAR,EAAK,iBACP,CACF,CACF,CACF,EACA,OAAAM,EAAM,SAAW,CACfE,EACAI,EACAP,CACF,EAEO,CACL,KAAM,SACN,QAAS,CACP,KACA,MACA,SACF,EACA,aAAc,GACd,SAAUD,EACV,QAAS,cACT,SAAU,CACRC,EACAO,EACA,CAEE,MAAO,oBACP,MAAO,UACT,EACA,CAGE,cAAe,KACf,UAAW,CACb,EACA,CAAE,MAAO,SAAU,MAAO,SAAU,EACpCJ,EACAK,EACAb,EAAK,kBACL,CACE,MAAO,CACL,QAAS,MACTE,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,gBACL,EACA,SAAU,CAAEY,CAAO,CACrB,EACA,CACE,SAAU,CACR,CACE,MAAO,CACL,UAAW,MACXZ,EAAU,MACV,QAASA,EAAS,OACpB,CACF,EACA,CACE,MAAO,CACL,UAAW,MACXA,CACF,CACF,CACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,cACH,EAAG,uBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,WACP,IAAK,UACL,SAAU,CACRU,EACAE,EACAN,CACF,CACF,CACF,CACF,CACF,CAEAV,GAAO,QAAUC,KCnbjB,IAAAgB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAOA,SAASC,GAAWC,EAAM,CACxB,MAAO,CACL,QAAS,CAAE,OAAQ,EACnB,SAAU,CACR,CACE,UAAW,cACX,OAAQ,CAGN,IAAK,MACL,OAAQ,CACN,IAAK,IACL,YAAa,QACf,CACF,EACA,SAAU,CACR,CAAE,MAAO,eAAgB,EACzB,CAAE,MAAO,kBAAmB,CAC9B,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KC/BjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAEC,EAAM,CACf,IAAMC,EAAQD,EAAK,MAObE,EAAW,uDACXC,EAAkBF,EAAM,OAE5B,gDAEA,0CAEA,+CACF,EACMG,EAAe,mEACfC,EAAiBJ,EAAM,OAC3B,OACA,OACA,OACA,QACA,KACA,GACF,EAEA,MAAO,CACL,KAAM,IAEN,SAAU,CACR,SAAUC,EACV,QACE,kDACF,QACE,wFAEF,SAEE,ghCAqBJ,EAEA,SAAU,CAERF,EAAK,QACH,KACA,IACA,CAAE,SAAU,CACV,CAME,MAAO,SACP,MAAO,YACP,OAAQ,CACN,IAAKC,EAAM,UAAUA,EAAM,OAEzB,yBAEA,WACF,CAAC,EACD,WAAY,EACd,CACF,EACA,CAGE,MAAO,SACP,MAAO,SACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,WACP,SAAU,CACR,CAAE,MAAOC,CAAS,EAClB,CAAE,MAAO,mBAAoB,CAC/B,EACA,WAAY,EACd,CACF,CACF,EACA,CACE,MAAO,SACP,MAAO,YACT,EACA,CACE,MAAO,UACP,MAAO,aACT,CACF,CAAE,CACJ,EAEAF,EAAK,kBAEL,CACE,MAAO,SACP,SAAU,CAAEA,EAAK,gBAAiB,EAClC,SAAU,CACRA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACDA,EAAK,kBAAkB,CACrB,MAAO,cACP,IAAK,SACP,CAAC,EACD,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,EACA,CACE,MAAO,IACP,IAAK,IACL,UAAW,CACb,CACF,CACF,EAWA,CACE,UAAW,EACX,SAAU,CACR,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACLI,EACAD,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,WACH,EAAG,QACL,EACA,MAAO,CACL,UACAA,CACF,CACF,EACA,CACE,MAAO,CACL,EAAG,cACH,EAAG,QACL,EACA,MAAO,CACLE,EACAF,CACF,CACF,EACA,CACE,MAAO,CAAE,EAAG,QAAS,EACrB,MAAO,CACL,mBACAA,CACF,CACF,CACF,CACF,EAGA,CAEE,MAAO,CAAE,EAAG,UAAW,EACvB,MAAO,CACLD,EACA,MACA,KACA,KACF,CACF,EAEA,CACE,MAAO,WACP,UAAW,EACX,SAAU,CACR,CAAE,MAAOE,CAAa,EACtB,CAAE,MAAO,SAAU,CACrB,CACF,EAEA,CACE,MAAO,cACP,UAAW,EACX,MAAOC,CACT,EAEA,CAEE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,KAAM,CAAE,CAC/B,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KChQjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAUA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAQD,EAAK,MAGbE,EAAiB,QACjBC,EAAsBF,EAAM,OAAOC,EAAgBF,EAAK,mBAAmB,EAC3EI,EAAWH,EAAM,OAAOC,EAAgBF,EAAK,QAAQ,EAErDK,EAAkB,CACtB,UAAW,wBACX,UAAW,EACX,MAAOJ,EAAM,OACX,KACA,oCACAG,EACAH,EAAM,UAAU,OAAO,CAAC,CAC5B,EACMK,EAAgB,wCAChBC,EAAW,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,QACA,SACA,UACA,MACA,UACA,QACA,QACA,OACF,EACMC,EAAW,CACf,OACA,QACA,OACA,OACA,KACA,KACF,EACMC,EAAW,CAEf,QAEA,OACA,OACA,QACA,OACA,OACA,KACA,QACA,SACA,UACA,QACA,QACA,YACA,aACA,KACA,MACA,QACA,QACA,OACA,OACA,UACA,WACA,SACA,eACA,sBACA,oBACA,iBACA,WAEA,UACA,aACA,YACA,SACA,OACA,OACA,UACA,iBACA,gBACA,mBACA,OACA,YACA,SACA,QACA,UACA,eACA,iBACA,eACA,QACA,kBACA,eACA,cACA,SACA,WACA,UACA,aACA,OACA,iBACA,eACA,OACA,SACA,WACA,eACA,aACA,kBACF,EACMC,EAAQ,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,KACF,EACA,MAAO,CACL,KAAM,OACN,QAAS,CAAE,IAAK,EAChB,SAAU,CACR,SAAUV,EAAK,SAAW,KAC1B,KAAMU,EACN,QAASH,EACT,QAASC,EACT,SAAUC,CACZ,EACA,QAAS,KACT,SAAU,CACRT,EAAK,oBACLA,EAAK,QAAQ,OAAQ,OAAQ,CAAE,SAAU,CAAE,MAAO,CAAE,CAAC,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CACnC,MAAO,MACP,QAAS,IACX,CAAC,EACD,CACE,UAAW,SAEX,MAAO,8BACT,EACA,CACE,MAAO,SACP,SAAU,CACR,CAAE,MAAO,0BAA2B,EACpC,CACE,MAAO,MACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,cACP,MAAO,+BACT,CACF,CACF,CACF,CACF,EACA,CACE,UAAW,SACX,SAAU,CACR,CAAE,MAAO,gBAAkBM,CAAc,EACzC,CAAE,MAAO,iBAAmBA,CAAc,EAC1C,CAAE,MAAO,uBAAyBA,CAAc,EAChD,CAAE,MAAO,kDACEA,CAAc,CAC3B,EACA,UAAW,CACb,EACA,CACE,MAAO,CACL,KACA,MACAH,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,gBACL,CACF,EACA,CACE,UAAW,OACX,MAAO,SACP,IAAK,MACL,SAAU,CACR,CACE,UAAW,SACX,MAAO,IACP,IAAK,IACL,SAAU,CACRH,EAAK,gBACP,CACF,CACF,CACF,EACA,CACE,MAAO,CACL,MACA,MACA,cACAG,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,UACL,CACF,EAEA,CACE,MAAO,CACL,MACA,MACAA,EACA,MACA,IACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,SACL,CACF,EACA,CACE,MAAO,CACL,OACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAO,CACL,uCACA,MACAA,CACF,EACA,UAAW,CACT,EAAG,UACH,EAAG,aACL,CACF,EACA,CACE,MAAOH,EAAK,SAAW,KACvB,SAAU,CACR,QAAS,OACT,SAAUS,EACV,KAAMC,CACR,CACF,EACA,CACE,UAAW,cACX,MAAO,IACT,EACAL,CACF,CACF,CACF,CAEAP,GAAO,QAAUC,KCrUjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAASC,IACN,CACL,UAAW,CACT,MAAO,OACP,MAAO,YACT,EACA,cAAeA,EAAK,qBACpB,SAAU,CACR,MAAO,SACP,MAAO,iDACT,EACA,kBAAmB,CACjB,UAAW,WACX,MAAO,cACT,EACA,wBAAyB,CACvB,MAAO,gBACP,MAAO,KACP,IAAK,KACL,QAAS,IACT,SAAU,CACRA,EAAK,iBACLA,EAAK,iBACP,CACF,EACA,gBAAiB,CACf,MAAO,SACP,MAAOA,EAAK,UAAY,kGASxB,UAAW,CACb,EACA,aAAc,CACZ,UAAW,OACX,MAAO,2BACT,CACF,GAGIC,GAAY,CAChB,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,WACA,SACA,IACA,UACA,IACA,QACA,OACA,UACA,SACA,SACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,OACF,EAEMC,GAAW,CACf,OACA,IACA,SACA,OACA,UACA,MACA,SACA,SACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,UACA,iBACA,UACA,UACA,eACA,WACA,qBACA,SACA,eACA,iBACA,iBACA,OACA,SACA,UACA,QACA,OACA,OACA,UACA,WACA,OACA,OACA,MACA,WACA,QACA,gBACA,UACF,EAEMC,GAAO,CACX,GAAGF,GACH,GAAGC,EACL,EAKME,GAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,YACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,OACF,EAAE,KAAK,EAAE,QAAQ,EAGXC,GAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,gBACF,EAAE,KAAK,EAAE,QAAQ,EAEXC,GAAa,CACjB,eACA,gBACA,cACA,aACA,qBACA,MACA,cACA,YACA,wBACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,kBACA,sBACA,wBACA,qBACA,4BACA,aACA,eACA,kBACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,wBACA,wBACA,oBACA,kBACA,iBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,wBACA,0BACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,0BACA,4BACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,YACA,uBACA,gBACA,WACA,iBACA,YACA,oBACA,aACA,WACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,eACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,+BACA,2BACA,gCACA,yBACA,0BACA,YACA,iBACA,iBACA,UACA,qBACA,oBACA,gBACA,cACA,MACA,YACA,aACA,SACA,KACA,KACA,YACA,UACA,oBACA,cACA,oBACA,eACA,OACA,eACA,YACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,cACA,gBACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,sBACA,eACA,YACA,mBACA,cACA,iBACA,eACA,aACA,iBACA,0BACA,4BACA,uBACA,wBACA,eACA,0BACA,oBACA,0BACA,qBACA,yBACA,uBACA,wBACA,0BACA,cACA,sBACA,MACA,+BACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,sBACA,wBACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,iBACA,uBACA,cACA,QACA,aACA,cACA,kBACA,oBACA,eACA,mBACA,qBACA,YACA,kBACA,gBACA,eACA,UACA,OACA,iBACA,iBACA,aACA,cACA,mBACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,cACA,SACA,aACA,aACA,eACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,oBACA,aACA,aACA,aACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,SACA,gBACA,kBACA,cACA,kBACA,gBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,kBACA,iBACA,uBACA,kBACA,gBACA,aACA,aACA,UACA,sBACA,4BACA,6BACA,wBACA,wBACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,OACA,mBACA,oBACA,oBACA,cACA,QACA,cACA,eACA,cACA,qBACA,gBACA,cACA,aACA,iBACA,WACA,kBACA,sBACA,qBACA,SACA,IACA,SACA,OACA,aACA,cACA,QACA,SACA,UACA,aACA,gBACA,QACA,kBACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,uBACA,uBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,kBACA,QACA,WACA,MACA,aACA,eACA,SACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,eACA,WACA,eACA,aACA,iBACA,kBACA,cACA,uBACA,kBACA,wBACA,uBACA,uBACA,2BACA,wBACA,4BACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,mBACA,iBACA,wBACA,0BACA,YACA,iBACA,kBACA,iBACA,MACA,eACA,YACA,gBACA,mBACA,kBACA,aACA,sBACA,mBACA,sBACA,sBACA,6BACA,YACA,eACA,cACA,cACA,gBACA,iBACA,gBACA,qBACA,sBACA,qBACA,uBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,uBACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,IACA,IACA,UACA,MACF,EAAE,KAAK,EAAE,QAAQ,EAYjB,SAASC,GAAKR,EAAM,CAClB,IAAMS,EAAQV,GAAMC,CAAI,EAClBU,EAAoBJ,GACpBK,EAAmBN,GAEnBO,EAAgB,WAChBC,EAAe,kBAEfC,EAAW,CACf,UAAW,WACX,MAAO,OAHQ,0BAGY,OAC3B,UAAW,CACb,EAEA,MAAO,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,SACT,SAAU,CACRd,EAAK,oBACLA,EAAK,qBAGLS,EAAM,gBACN,CACE,UAAW,cACX,MAAO,kBACP,UAAW,CACb,EACA,CACE,UAAW,iBACX,MAAO,oBACP,UAAW,CACb,EACAA,EAAM,wBACN,CACE,UAAW,eACX,MAAO,OAASN,GAAK,KAAK,GAAG,EAAI,OAEjC,UAAW,CACb,EACA,CACE,UAAW,kBACX,MAAO,KAAOQ,EAAiB,KAAK,GAAG,EAAI,GAC7C,EACA,CACE,UAAW,kBACX,MAAO,SAAWD,EAAkB,KAAK,GAAG,EAAI,GAClD,EACAI,EACA,CACE,MAAO,KACP,IAAK,KACL,SAAU,CAAEL,EAAM,eAAgB,CACpC,EACAA,EAAM,aACN,CACE,UAAW,YACX,MAAO,OAASF,GAAW,KAAK,GAAG,EAAI,MACzC,EACA,CAAE,MAAO,4oCAA6oC,EACtpC,CACE,MAAO,IACP,IAAK,QACL,UAAW,EACX,SAAU,CACRE,EAAM,cACNK,EACAL,EAAM,SACNA,EAAM,gBACNT,EAAK,kBACLA,EAAK,iBACLS,EAAM,UACNA,EAAM,iBACR,CACF,EAIA,CACE,MAAO,oBACP,SAAU,CACR,SAAUG,EACV,QAAS,kBACX,CACF,EACA,CACE,MAAO,IACP,IAAK,OACL,YAAa,GACb,SAAU,CACR,SAAU,UACV,QAASC,EACT,UAAWT,GAAe,KAAK,GAAG,CACpC,EACA,SAAU,CACR,CACE,MAAOQ,EACP,UAAW,SACb,EACA,CACE,MAAO,eACP,UAAW,WACb,EACAE,EACAd,EAAK,kBACLA,EAAK,iBACLS,EAAM,SACNA,EAAM,eACR,CACF,EACAA,EAAM,iBACR,CACF,CACF,CAEAX,GAAO,QAAUU,KC16BjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAMC,EAAM,CACnB,MAAO,CACL,KAAM,gBACN,QAAS,CACP,UACA,cACF,EACA,SAAU,CACR,CACE,UAAW,cAIX,MAAO,qCACP,OAAQ,CACN,IAAK,gBACL,YAAa,MACf,CACF,CACF,CACF,CACF,CAEAF,GAAO,QAAUC,KChCjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAsBA,SAASC,GAAIC,EAAM,CACjB,IAAMC,EAAQD,EAAK,MACbE,EAAeF,EAAK,QAAQ,KAAM,GAAG,EACrCG,EAAS,CACb,MAAO,SACP,SAAU,CACR,CACE,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,CACF,CACF,EACMC,EAAoB,CACxB,MAAO,IACP,IAAK,IACL,SAAU,CAAE,CAAE,MAAO,IAAK,CAAE,CAC9B,EAEMC,EAAW,CACf,OACA,QAGA,SACF,EAEMC,EAAmB,CACvB,mBACA,eACA,gBACA,kBACF,EAEMC,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,WACF,EAEMC,EAAqB,CACzB,MACA,MACA,YACA,OACA,QACA,QACA,OACA,MACF,EAGMC,EAAiB,CACrB,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,MACF,EAKMC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SA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ACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,SACF,EAMMC,GAAW,CACf,QACA,MACA,MACF,EAGMC,GAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,OACF,EAIMC,GAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,UACF,EAGMC,GAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,KACF,EAGMC,GAAeX,GACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,UACF,EAGMY,GAAoBZ,GACxBW,GACA,kBACA,kBACA,kBACA,kBACA,iBAGF,EAGME,GAAWlB,EAAOgB,GAAcC,GAAmB,GAAG,EAGtDE,GAAiBd,GACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yDACA,yDACA,8BAMF,EAGMe,GAAsBf,GAC1Bc,GACA,KACA,wDACF,EAGME,GAAarB,EAAOmB,GAAgBC,GAAqB,GAAG,EAG5DE,GAAiBtB,EAAO,QAASoB,GAAqB,GAAG,EAKzDG,GAAoB,CACxB,WACA,cACAvB,EAAO,eAAgBK,GAAO,QAAS,QAAS,GAAG,EAAG,IAAI,EAC1D,oBACA,kBACA,sBACA,WACA,eACA,SACA,gBACA,WACA,eACA,gBACA,WACA,gBACA,YACA,OACA,UACA,oBACA,YACA,YACAL,EAAO,SAAUqB,GAAY,IAAI,EACjC,OACA,cACA,kBACA,iCACA,gBACA,WACA,WACA,oBACA,YACA,UACA,mBACA,yBACF,EAGMG,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AK,EACjB,SAAU,CACR,GAAGvD,GACH,GAAGD,EACL,EACA,IAAK,GACP,EAEMmE,GAAyB,CAC7B,MAAO,CACL,UACA,MACA,SACA,MACA,4BACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,UACH,EAAG,gBACL,CACF,EAEMC,GAAwB,CAC5B,MAAO,CACL,UACA,MACA,OACF,EACA,MAAO,CACL,EAAG,UACH,EAAG,SACL,CACF,EAEMC,GAAmB,CACvB,MAAO,CACL,+CACA,MACA5D,GACA,KACF,EACA,WAAY,CACV,EAAG,UACH,EAAG,aACL,EACA,SAAUe,EACV,SAAU,CACRoC,GACA,GAAGnC,EACH,CACE,MAAO,IACP,IAAK,KACL,SAAUD,EACV,SAAU,CACR,CACE,MAAO,wBACP,MAAOd,EACT,EACA,GAAGe,CACL,EACA,UAAW,CACb,CACF,CACF,EAGA,QAAW6C,KAAW7B,EAAO,SAAU,CACrC,IAAM8B,GAAgBD,EAAQ,SAAS,KAAKE,IAAQA,GAAK,QAAU,UAAU,EAE7ED,GAAc,SAAW/C,EACzB,IAAMiD,EAAW,CACf,GAAGhD,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,CACL,EACAoB,GAAc,SAAW,CACvB,GAAGE,EACH,CACE,MAAO,KACP,IAAK,KACL,SAAU,CACR,OACA,GAAGA,CACL,CACF,CACF,CACF,CAEA,MAAO,CACL,KAAM,QACN,SAAUjD,EACV,SAAU,CACR,GAAGP,EACH8C,GACAC,GACAG,GACAC,GACAC,GACAJ,GACAC,GACA,CACE,cAAe,SACf,IAAK,IACL,SAAU,CAAE,GAAGjD,CAAS,EACxB,UAAW,CACb,EACA8B,GACA,GAAGtB,EACH,GAAGG,EACH,GAAGG,EACHG,EACAO,EACA,GAAGU,EACH,GAAGI,EACHC,EACAG,CACF,CACF,CACF,CAEA3E,GAAO,QAAU6B,KC38BjB,IAAA6D,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CASA,SAASC,GAAKC,EAAM,CAClB,IAAMC,EAAW,yBAGXC,EAAiB,8BAMjBC,EAAM,CACV,UAAW,OACX,SAAU,CAER,CAAE,MAAO,mCAAoC,EAC7C,CACE,MAAO,qCAAsC,EAC/C,CACE,MAAO,qCAAsC,CACjD,CACF,EAEMC,EAAqB,CACzB,UAAW,oBACX,SAAU,CACR,CACE,MAAO,OACP,IAAK,MACP,EACA,CACE,MAAO,MACP,IAAK,IACP,CACF,CACF,EAEMC,EAAsB,CAC1B,UAAW,SACX,UAAW,EACX,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,MAAO,cACP,UAAW,CACb,CACF,CACF,EAEMC,EAAS,CACb,UAAW,SACX,UAAW,EACX,SAAU,CACR,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,KAAM,CACjB,EACA,SAAU,CACRN,EAAK,iBACLI,CACF,CACF,EAIMG,EAAmBP,EAAK,QAAQM,EAAQ,CAAE,SAAU,CACxD,CACE,MAAO,IACP,IAAK,IACL,SAAU,CACR,CACE,MAAO,KACP,UAAW,CACb,CACF,CACF,EACA,CACE,MAAO,IACP,IAAK,GACP,EACA,CAAE,MAAO,cAAe,CAC1B,CAAE,CAAC,EAMGE,EAAY,CAChB,UAAW,SACX,MAAO,MANO,6BACA,yCACI,eACJ,8CAG6C,KAC7D,EAEMC,EAAkB,CACtB,IAAK,IACL,eAAgB,GAChB,WAAY,GACZ,SAAUR,EACV,UAAW,CACb,EACMS,EAAS,CACb,MAAO,KACP,IAAK,KACL,SAAU,CAAED,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EACME,EAAQ,CACZ,MAAO,MACP,IAAK,MACL,SAAU,CAAEF,CAAgB,EAC5B,QAAS,MACT,UAAW,CACb,EAEMG,EAAQ,CACZT,EACA,CACE,UAAW,OACX,MAAO,YACP,UAAW,EACb,EACA,CAKE,UAAW,SACX,MAAO,+DACT,EACA,CACE,MAAO,WACP,IAAK,UACL,YAAa,OACb,aAAc,GACd,WAAY,GACZ,UAAW,CACb,EACA,CACE,UAAW,OACX,MAAO,SAAWD,CACpB,EAEA,CACE,UAAW,OACX,MAAO,KAAOA,EAAiB,GACjC,EACA,CACE,UAAW,OACX,MAAO,IAAMA,CACf,EACA,CACE,UAAW,OACX,MAAO,KAAOA,CAChB,EACA,CACE,UAAW,OACX,MAAO,IAAMF,EAAK,oBAAsB,GAC1C,EACA,CACE,UAAW,OACX,MAAO,MAAQA,EAAK,oBAAsB,GAC5C,EACA,CACE,UAAW,SAEX,MAAO,aACP,UAAW,CACb,EACAA,EAAK,kBACL,CACE,cAAeC,EACf,SAAU,CAAE,QAASA,CAAS,CAChC,EACAO,EAGA,CACE,UAAW,SACX,MAAOR,EAAK,YAAc,MAC1B,UAAW,CACb,EACAU,EACAC,EACAN,EACAC,CACF,EAEMO,EAAc,CAAE,GAAGD,CAAM,EAC/B,OAAAC,EAAY,IAAI,EAChBA,EAAY,KAAKN,CAAgB,EACjCE,EAAgB,SAAWI,EAEpB,CACL,KAAM,OACN,iBAAkB,GAClB,QAAS,CAAE,KAAM,EACjB,SAAUD,CACZ,CACF,CAEAd,GAAO,QAAUC,KCpNjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,KAAMC,GAAW,2BACXC,GAAW,CACf,KACA,KACA,KACA,KACA,MACA,QACA,UACA,MACA,MACA,WACA,KACA,SACA,OACA,OACA,QACA,QACA,aACA,OACA,QACA,OACA,UACA,MACA,SACA,WACA,SACA,SACA,MACA,QACA,QACA,QAIA,WACA,QACA,QACA,SACA,SACA,OACA,SACA,UAEA,OACF,EACMC,GAAW,CACf,OACA,QACA,OACA,YACA,MACA,UACF,EAGMC,GAAQ,CAEZ,SACA,WACA,UACA,SAEA,OACA,OACA,SACA,SAEA,SACA,SAEA,QACA,eACA,eACA,YACA,aACA,oBACA,aACA,aACA,cACA,cACA,gBACA,iBAEA,MACA,MACA,UACA,UAEA,cACA,oBACA,UACA,WACA,OAEA,UACA,YACA,oBACA,gBAEA,UACA,QAEA,OAEA,aACF,EAEMC,GAAc,CAClB,QACA,YACA,gBACA,aACA,iBACA,cACA,YACA,UACF,EAEMC,GAAmB,CACvB,cACA,aACA,gBACA,eAEA,UACA,UAEA,OACA,WACA,QACA,aACA,WACA,YACA,qBACA,YACA,qBACA,SACA,UACF,EAEMC,GAAqB,CACzB,YACA,OACA,QACA,UA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WACA,QACA,MACA,OACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,UACA,SACA,SACA,QACA,SACA,SACA,OACA,SACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,QACA,KACA,IACA,KACA,MACA,QACA,KAAK,CACG,EAEG4E,GAAM5E,GAAO,CACxB,MACA,IACA,WACA,cACA,eACA,eACA,gBACA,mBACA,SACA,WACA,OACA,OACA,UACA,SACA,OACA,IACA,QACA,WACA,QACA,QACA,OACA,iBACA,SACA,OACA,WACA,QACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,QACA,SACA,SACA,OACA,WACA,QACA,OACA,QACA,OACA,OAAO,CACC,EAEG6E,GAAa7E,GAAO,CAC/B,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,cAAc,CACN,EAMG8E,GAAgB9E,GAAO,CAClC,UACA,gBACA,SACA,UACA,YACA,mBACA,iBACA,gBACA,gBACA,gBACA,QACA,YACA,OACA,eACA,YACA,UACA,gBACA,SACA,MACA,aACA,UACA,KAAK,CACG,EAEG+E,GAAS/E,GAAO,CAC3B,OACA,WACA,SACA,UACA,QACA,SACA,KACA,aACA,gBACA,KACA,KACA,QACA,UACA,WACA,QACA,OACA,KACA,SACA,QACA,SACA,OACA,OACA,UACA,SACA,MACA,QACA,MACA,SACA,aACA,aAAa,CACL,EAIGgF,GAAmBhF,GAAO,CACrC,UACA,cACA,aACA,WACA,YACA,UACA,UACA,SACA,SACA,QACA,YACA,aACA,iBACA,cACA,MAAM,CACE,EAEGiF,GAAOjF,GAAO,CAAC,OAAO,CAAU,ECpRhC2E,GAAO3E,GAAO,CACzB,SACA,SACA,QACA,MACA,iBACA,eACA,uBACA,WACA,aACA,UACA,SACA,UACA,cACA,cACA,UACA,OACA,QACA,QACA,QACA,OACA,UACA,WACA,eACA,SACA,cACA,WACA,WACA,UACA,MACA,WACA,0BACA,wBACA,WACA,YACA,UACA,eACA,OACA,MACA,UACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,YACA,QACA,OACA,QACA,OACA,OACA,UACA,OACA,MACA,MACA,YACA,QACA,SACA,MACA,YACA,WACA,QACA,OACA,QACA,UACA,aACA,SACA,OACA,UACA,UACA,cACA,cACA,UACA,gBACA,sBACA,SACA,UACA,UACA,aACA,WACA,MACA,WACA,MACA,WACA,OACA,OACA,UACA,aACA,QACA,WACA,QACA,OACA,QACA,OACA,UACA,QACA,MACA,SACA,OACA,QACA,UACA,WACA,QACA,YACA,OACA,SACA,SACA,QACA,QACA,OACA,QACA,MAAM,CACE,EAEG4E,GAAM5E,GAAO,CACxB,gBACA,aACA,WACA,qBACA,YACA,SACA,gBACA,gBACA,UACA,gBACA,iBACA,QACA,OACA,KACA,QACA,OACA,gBACA,YACA,YACA,QACA,sBACA,8BACA,gBACA,kBACA,KACA,KACA,IACA,KACA,KACA,kBACA,YACA,UACA,UACA,MACA,WACA,YACA,MACA,WACA,OACA,eACA,YACA,SACA,cACA,cACA,gBACA,cACA,YACA,mBACA,eACA,aACA,eACA,cACA,KACA,KACA,KACA,KACA,aACA,WACA,gBACA,oBACA,SACA,OACA,KACA,kBACA,KACA,MACA,YACA,IACA,KACA,KACA,KACA,KACA,UACA,YACA,aACA,WACA,OACA,eACA,iBACA,eACA,mBACA,iBACA,QACA,aACA,aACA,eACA,eACA,cACA,cACA,mBACA,YACA,MACA,OACA,QACA,SACA,OACA,MACA,OACA,aACA,SACA,WACA,UACA,QACA,SACA,cACA,SACA,WACA,cACA,OACA,aACA,sBACA,mBACA,eACA,SACA,gBACA,sBACA,iBACA,IACA,KACA,KACA,SACA,OACA,OACA,cACA,YACA,UACA,SACA,SACA,QACA,OACA,kBACA,QACA,mBACA,mBACA,eACA,cACA,eACA,cACA,aACA,eACA,mBACA,oBACA,iBACA,kBACA,oBACA,iBACA,SACA,eACA,QACA,eACA,iBACA,WACA,cACA,UACA,UACA,YACA,mBACA,cACA,kBACA,iBACA,aACA,OACA,KACA,KACA,UACA,SACA,UACA,aACA,UACA,aACA,gBACA,gBACA,QACA,eACA,OACA,eACA,mBACA,mBACA,IACA,KACA,KACA,QACA,IACA,KACA,KACA,IACA,YAAY,CACJ,EAEG+E,GAAS/E,GAAO,CAC3B,SACA,cACA,QACA,WACA,QACA,eACA,cACA,aACA,aACA,QACA,MACA,UACA,eACA,WACA,QACA,QACA,SACA,OACA,KACA,UACA,SACA,gBACA,SACA,SACA,iBACA,YACA,WACA,cACA,UACA,UACA,gBACA,WACA,WACA,OACA,WACA,WACA,aACA,UACA,SACA,SACA,cACA,gBACA,uBACA,YACA,YACA,aACA,WACA,iBACA,iBACA,YACA,UACA,QACA,OAAO,CACR,EAEYkF,GAAMlF,GAAO,CACxB,aACA,SACA,cACA,YACA,aAAa,CACL,EC/WGmF,GAAgBlF,GAAK,2BAA2B,EAChDmF,GAAWnF,GAAK,uBAAuB,EACvCoF,GAAcpF,GAAK,eAAe,EAClCqF,GAAYrF,GAAK,8BAA8B,EAC/CsF,GAAYtF,GAAK,gBAAgB,EACjCuF,GAAiBvF,GAC5B,oGAEWwF,GAAoBxF,GAAK,uBAAuB,EAChDyF,GAAkBzF,GAC7B,+DAEW0F,GAAe1F,GAAK,SAAS,EAC7B2F,GAAiB3F,GAAK,0BAA0B,uMCmBvD4F,GAAY,CAChBlC,QAAS,EACTmC,UAAW,EACXb,KAAM,EACNc,aAAc,EACdC,gBAAiB,EACjBC,WAAY,EACZC,uBAAwB,EACxBC,QAAS,EACTC,SAAU,EACVC,aAAc,GACdC,iBAAkB,GAClBC,SAAU,IAGNC,GAAY,UAAA,CAChB,OAAO,OAAOC,OAAW,IAAc,KAAOA,MAChD,EAUMC,GAA4B,SAChCC,EACAC,EAAoC,C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", + "names": ["require_clipboard", "__commonJSMin", "exports", "module", "root", "factory", "__webpack_modules__", "__unused_webpack_module", "__webpack_exports__", "__webpack_require__", "clipboard", "tiny_emitter", "tiny_emitter_default", "listen", "listen_default", "src_select", "select_default", "command", "type", "ClipboardActionCut", "target", "selectedText", "actions_cut", "createFakeElement", "value", "isRTL", "fakeElement", "yPosition", "fakeCopyAction", "options", "ClipboardActionCopy", "actions_copy", "_typeof", "obj", "ClipboardActionDefault", "_options$action", "action", "container", "text", "actions_default", "clipboard_typeof", "_classCallCheck", "instance", "Constructor", "_defineProperties", "props", "i", "descriptor", "_createClass", "protoProps", "staticProps", "_inherits", "subClass", "superClass", "_setPrototypeOf", "o", "p", "_createSuper", "Derived", "hasNativeReflectConstruct", "_isNativeReflectConstruct", "Super", "_getPrototypeOf", "result", "NewTarget", "_possibleConstructorReturn", "self", "call", "_assertThisInitialized", "getAttributeValue", "suffix", "element", "attribute", "Clipboard", "_Emitter", "_super", "trigger", "_this", "_this2", "e", "selector", "actions", "support", "DOCUMENT_NODE_TYPE", "proto", "closest", "__unused_webpack_exports", "_delegate", "callback", "useCapture", "listenerFn", "listener", "delegate", "elements", "is", "listenNode", "listenNodeList", "listenSelector", "node", "nodeList", "select", "isReadOnly", "selection", "range", "E", "name", "ctx", "data", "evtArr", "len", "evts", "liveEvents", "__webpack_module_cache__", "moduleId", "getter", "definition", "key", "prop", "require_core", "__commonJSMin", "exports", "module", "deepFreeze", "obj", "name", "prop", "type", "Response", "mode", "escapeHTML", "value", "inherit$1", "original", "objects", "result", "key", "SPAN_CLOSE", "emitsWrappingTags", "node", "scopeToCSSClass", "prefix", "pieces", "x", "i", "HTMLRenderer", "parseTree", "options", "text", "className", "newNode", "opts", "TokenTree", "_TokenTree", "scope", "builder", "child", "el", "TokenTreeEmitter", "emitter", "source", "re", "lookahead", "concat", "anyNumberOfTimes", "optional", "args", "stripOptionsFromArgs", "either", "countMatchGroups", "startsWith", "lexeme", "match", "BACKREF_RE", "_rewriteBackreferences", "regexps", "joinWith", "numCaptures", "regex", "offset", "out", "MATCH_NOTHING_RE", "IDENT_RE", "UNDERSCORE_IDENT_RE", "NUMBER_RE", "C_NUMBER_RE", "BINARY_NUMBER_RE", "RE_STARTERS_RE", "SHEBANG", "beginShebang", "m", "resp", "BACKSLASH_ESCAPE", "APOS_STRING_MODE", "QUOTE_STRING_MODE", "PHRASAL_WORDS_MODE", "COMMENT", "begin", "end", "modeOptions", "ENGLISH_WORD", "C_LINE_COMMENT_MODE", "C_BLOCK_COMMENT_MODE", "HASH_COMMENT_MODE", "NUMBER_MODE", "C_NUMBER_MODE", "BINARY_NUMBER_MODE", "REGEXP_MODE", "TITLE_MODE", "UNDERSCORE_TITLE_MODE", "METHOD_GUARD", "END_SAME_AS_BEGIN", "MODES", "skipIfHasPrecedingDot", "response", "scopeClassName", "_parent", "beginKeywords", "parent", "compileIllegal", "compileMatch", "compileRelevance", "beforeMatchExt", "originalMode", "COMMON_KEYWORDS", "DEFAULT_KEYWORD_SCOPE", "compileKeywords", "rawKeywords", "caseInsensitive", "scopeName", "compiledKeywords", "compileList", "keywordList", "keyword", "pair", "scoreForKeyword", "providedScore", "commonKeyword", "seenDeprecations", "error", "message", "warn", "deprecated", "version", "MultiClassError", "remapScopeNames", "regexes", "scopeNames", "emit", "positions", "beginMultiClass", "endMultiClass", "scopeSugar", "MultiClass", "compileLanguage", "language", "langRe", "global", "MultiRegex", "terminators", "s", "matchData", "ResumableMultiRegex", "index", "matcher", "m2", "buildModeRegex", "mm", "term", "compileMode", "cmode", "ext", "keywordPattern", "expandOrCloneMode", "dependencyOnParent", "variant", "HTMLInjectionError", "reason", "html", "escape", "inherit", "NO_MATCH", "MAX_KEYWORD_HITS", "HLJS", "hljs", "languages", "aliases", "plugins", "SAFE_MODE", "LANGUAGE_NOT_FOUND", "PLAINTEXT_LANGUAGE", "shouldNotHighlight", "languageName", "blockLanguage", "block", "classes", "getLanguage", "_class", "highlight", "codeOrLanguageName", "optionsOrCode", "ignoreIllegals", "code", "context", "fire", "_highlight", "codeToHighlight", "continuation", "keywordHits", "keywordData", "matchText", "processKeywords", "top", "modeBuffer", "lastIndex", "buf", "word", "data", "kind", "keywordRelevance", "relevance", "cssClass", "emitKeyword", "processSubLanguage", "continuations", "highlightAuto", "processBuffer", "emitMultiClass", "max", "klass", "startNewMode", "endOfMode", "matchPlusRemainder", "matched", "doIgnore", "resumeScanAtSamePosition", "doBeginMatch", "newMode", "beforeCallbacks", "cb", "doEndMatch", "endMode", "origin", "processContinuations", "list", "current", "item", "lastMatch", "processLexeme", "textBeforeMatch", "err", "processed", "iterations", "md", "beforeMatch", "processedCount", "justTextHighlightResult", "languageSubset", "plaintext", "results", "autoDetection", "sorted", "a", "b", "best", "secondBest", "updateClassName", "element", "currentLang", "resultLang", "highlightElement", "configure", "userOptions", "initHighlighting", "highlightAll", "initHighlightingOnLoad", "wantsHighlight", "boot", "registerLanguage", "languageDefinition", "lang", "error$1", "registerAliases", "unregisterLanguage", "alias", "listLanguages", "aliasList", "upgradePluginAPI", "plugin", "addPlugin", "removePlugin", "event", "deprecateHighlightBlock", "require_xml", "__commonJSMin", "exports", "module", "xml", "hljs", "regex", "TAG_NAME_RE", "XML_IDENT_RE", "XML_ENTITIES", "XML_META_KEYWORDS", "XML_META_PAR_KEYWORDS", "APOS_META_STRING_MODE", "QUOTE_META_STRING_MODE", "TAG_INTERNALS", "require_bash", "__commonJSMin", "exports", "module", "bash", "hljs", "regex", "VAR", "BRACED_VAR", "SUBST", "COMMENT", "HERE_DOC", "QUOTE_STRING", "ESCAPED_QUOTE", "APOS_STRING", "ESCAPED_APOS", "ARITHMETIC", "SH_LIKE_SHELLS", "KNOWN_SHEBANG", "FUNCTION", "KEYWORDS", "LITERALS", "PATH_MODE", "SHELL_BUILT_INS", "BASH_BUILT_INS", "ZSH_BUILT_INS", "GNU_CORE_UTILS", "require_c", "__commonJSMin", "exports", "module", "c", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "KEYWORDS", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_cpp", "__commonJSMin", "exports", "module", "cpp", "hljs", "regex", "C_LINE_COMMENT_MODE", "DECLTYPE_AUTO_RE", "NAMESPACE_RE", "FUNCTION_TYPE_RE", "CPP_PRIMITIVE_TYPES", "STRINGS", "NUMBERS", "PREPROCESSOR", "TITLE_MODE", "FUNCTION_TITLE", "RESERVED_KEYWORDS", "RESERVED_TYPES", "TYPE_HINTS", "FUNCTION_HINTS", "CPP_KEYWORDS", "FUNCTION_DISPATCH", "EXPRESSION_CONTAINS", "EXPRESSION_CONTEXT", "FUNCTION_DECLARATION", "require_csharp", "__commonJSMin", "exports", "module", "csharp", "hljs", "BUILT_IN_KEYWORDS", "FUNCTION_MODIFIERS", "LITERAL_KEYWORDS", "NORMAL_KEYWORDS", "CONTEXTUAL_KEYWORDS", "KEYWORDS", "TITLE_MODE", "NUMBERS", "RAW_STRING", "VERBATIM_STRING", "VERBATIM_STRING_NO_LF", "SUBST", "SUBST_NO_LF", "INTERPOLATED_STRING", "INTERPOLATED_VERBATIM_STRING", "INTERPOLATED_VERBATIM_STRING_NO_LF", "STRING", "GENERIC_MODIFIER", "TYPE_IDENT_RE", "AT_IDENTIFIER", "require_css", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "css", "regex", "modes", "VENDOR_PREFIX", "AT_MODIFIERS", "AT_PROPERTY_RE", "IDENT_RE", "STRINGS", "require_markdown", "__commonJSMin", "exports", "module", "markdown", "hljs", "regex", "INLINE_HTML", "HORIZONTAL_RULE", "CODE", "LIST", "LINK_REFERENCE", "URL_SCHEME", "LINK", "BOLD", "ITALIC", "BOLD_WITHOUT_ITALIC", "ITALIC_WITHOUT_BOLD", "CONTAINABLE", "m", "require_diff", "__commonJSMin", "exports", "module", "diff", "hljs", "regex", "require_ruby", "__commonJSMin", "exports", "module", "ruby", "hljs", "regex", "RUBY_METHOD_RE", "CLASS_NAME_RE", "CLASS_NAME_WITH_NAMESPACE_RE", "RUBY_KEYWORDS", "YARDOCTAG", "IRB_OBJECT", "COMMENT_MODES", "SUBST", "STRING", "decimal", "digits", "NUMBER", "PARAMS", "RUBY_DEFAULT_CONTAINS", "IRB_DEFAULT", "require_go", "__commonJSMin", "exports", "module", "go", "hljs", "KEYWORDS", "require_graphql", "__commonJSMin", "exports", "module", "graphql", "hljs", "regex", "GQL_NAME", "require_ini", "__commonJSMin", "exports", "module", "ini", "hljs", "regex", "NUMBERS", "COMMENTS", "VARIABLES", "LITERALS", "STRINGS", "ARRAY", "BARE_KEY", "QUOTED_KEY_DOUBLE_QUOTE", "QUOTED_KEY_SINGLE_QUOTE", "ANY_KEY", "DOTTED_KEY", "require_java", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "recurRegex", "re", "substitution", "depth", "_", "java", "hljs", "regex", "JAVA_IDENT_RE", "GENERIC_IDENT_RE", "KEYWORDS", "ANNOTATION", "PARAMS", "require_javascript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "require_json", "__commonJSMin", "exports", "module", "json", "hljs", "ATTRIBUTE", "PUNCTUATION", "LITERALS", "LITERALS_MODE", "require_kotlin", "__commonJSMin", "exports", "module", "decimalDigits", "frac", "hexDigits", "NUMERIC", "kotlin", "hljs", "KEYWORDS", "KEYWORDS_WITH_LABEL", "LABEL", "SUBST", "VARIABLE", "STRING", "ANNOTATION_USE_SITE", "ANNOTATION", "KOTLIN_NUMBER_MODE", "KOTLIN_NESTED_COMMENT", "KOTLIN_PAREN_TYPE", "KOTLIN_PAREN_TYPE2", "require_less", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "PSEUDO_SELECTORS", "less", "modes", "PSEUDO_SELECTORS$1", "AT_MODIFIERS", "IDENT_RE", "INTERP_IDENT_RE", "RULES", "VALUE_MODES", "STRING_MODE", "c", "IDENT_MODE", "name", "begin", "relevance", "AT_KEYWORDS", "PARENS_MODE", "VALUE_WITH_RULESETS", "MIXIN_GUARD_MODE", "RULE_MODE", "AT_RULE_MODE", "VAR_RULE_MODE", "SELECTOR_MODE", "PSEUDO_SELECTOR_MODE", "require_lua", "__commonJSMin", "exports", "module", "lua", "hljs", "OPENING_LONG_BRACKET", "CLOSING_LONG_BRACKET", "LONG_BRACKETS", "COMMENTS", "require_makefile", "__commonJSMin", "exports", "module", "makefile", "hljs", "VARIABLE", "QUOTE_STRING", "FUNC", "ASSIGNMENT", "META", "TARGET", "require_perl", "__commonJSMin", "exports", "module", "perl", "hljs", "regex", "KEYWORDS", "REGEX_MODIFIERS", "PERL_KEYWORDS", "SUBST", "METHOD", "ATTR", "VAR", "NUMBER", "STRING_CONTAINS", "REGEX_DELIMS", "PAIRED_DOUBLE_RE", "prefix", "open", "close", "middle", "PAIRED_RE", "PERL_DEFAULT_CONTAINS", "require_objectivec", "__commonJSMin", "exports", "module", "objectivec", "hljs", "API_CLASS", "IDENTIFIER_RE", "KEYWORDS", "CLASS_KEYWORDS", "require_php", "__commonJSMin", "exports", "module", "php", "hljs", "regex", "NOT_PERL_ETC", "IDENT_RE", "PASCAL_CASE_CLASS_NAME_RE", "UPCASE_NAME_RE", "VARIABLE", "PREPROCESSOR", "SUBST", "SINGLE_QUOTED", "DOUBLE_QUOTED", "HEREDOC", "m", "resp", "NOWDOC", "WHITESPACE", "STRING", "NUMBER", "LITERALS", "KWS", "BUILT_INS", "KEYWORDS", "items", "result", "item", "normalizeKeywords", "CONSTRUCTOR_CALL", "CONSTANT_REFERENCE", "LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON", "NAMED_ARGUMENT", "PARAMS_MODE", "FUNCTION_INVOKE", "ATTRIBUTE_CONTAINS", "ATTRIBUTES", "require_php_template", "__commonJSMin", "exports", "module", "phpTemplate", "hljs", "require_plaintext", "__commonJSMin", "exports", "module", "plaintext", "hljs", "require_python", "__commonJSMin", "exports", "module", "python", "hljs", "regex", "IDENT_RE", "RESERVED_WORDS", "KEYWORDS", "PROMPT", "SUBST", "LITERAL_BRACKET", "STRING", "digitpart", "pointfloat", "lookahead", "NUMBER", "COMMENT_TYPE", "PARAMS", "require_python_repl", "__commonJSMin", "exports", "module", "pythonRepl", "hljs", "require_r", "__commonJSMin", "exports", "module", "r", "hljs", "regex", "IDENT_RE", "NUMBER_TYPES_RE", "OPERATORS_RE", "PUNCTUATION_RE", "require_rust", "__commonJSMin", "exports", "module", "rust", "hljs", "regex", "RAW_IDENTIFIER", "UNDERSCORE_IDENT_RE", "IDENT_RE", "FUNCTION_INVOKE", "NUMBER_SUFFIX", "KEYWORDS", "LITERALS", "BUILTINS", "TYPES", "require_scss", "__commonJSMin", "exports", "module", "MODES", "hljs", "HTML_TAGS", "SVG_TAGS", "TAGS", "MEDIA_FEATURES", "PSEUDO_CLASSES", "PSEUDO_ELEMENTS", "ATTRIBUTES", "scss", "modes", "PSEUDO_ELEMENTS$1", "PSEUDO_CLASSES$1", "AT_IDENTIFIER", "AT_MODIFIERS", "VARIABLE", "require_shell", "__commonJSMin", "exports", "module", "shell", "hljs", "require_sql", "__commonJSMin", "exports", "module", "sql", "hljs", "regex", "COMMENT_MODE", "STRING", "QUOTED_IDENTIFIER", "LITERALS", "MULTI_WORD_TYPES", "TYPES", "NON_RESERVED_WORDS", "RESERVED_WORDS", "RESERVED_FUNCTIONS", "POSSIBLE_WITHOUT_PARENS", "COMBOS", "FUNCTIONS", "KEYWORDS", "keyword", "VARIABLE", "OPERATOR", "FUNCTION_CALL", "kws_to_regex", "list", "kw", "MULTI_WORD_KEYWORDS", "reduceRelevancy", "exceptions", "when", "qualifyFn", "item", "x", "require_swift", "__commonJSMin", "exports", "module", "source", "re", "lookahead", "concat", "args", "x", "stripOptionsFromArgs", "opts", "either", "keywordWrapper", "keyword", "dotKeywords", "optionalDotKeywords", "keywordTypes", "keywords", "literals", "precedencegroupKeywords", "numberSignKeywords", "builtIns", "operatorHead", "operatorCharacter", "operator", "identifierHead", "identifierCharacter", "identifier", "typeIdentifier", "keywordAttributes", "availabilityKeywords", "swift", "hljs", "WHITESPACE", "BLOCK_COMMENT", "COMMENTS", "DOT_KEYWORD", "KEYWORD_GUARD", "PLAIN_KEYWORDS", "kw", "REGEX_KEYWORDS", "KEYWORD", "KEYWORDS", "KEYWORD_MODES", "BUILT_IN_GUARD", "BUILT_IN", "BUILT_INS", "OPERATOR_GUARD", "OPERATOR", "OPERATORS", "decimalDigits", "hexDigits", "NUMBER", "ESCAPED_CHARACTER", "rawDelimiter", "ESCAPED_NEWLINE", "INTERPOLATION", "MULTILINE_STRING", "SINGLE_LINE_STRING", "STRING", "REGEXP_CONTENTS", "BARE_REGEXP_LITERAL", "EXTENDED_REGEXP_LITERAL", "begin", "end", "REGEXP", "QUOTED_IDENTIFIER", "IMPLICIT_PARAMETER", "PROPERTY_WRAPPER_PROJECTION", "IDENTIFIERS", "AVAILABLE_ATTRIBUTE", "KEYWORD_ATTRIBUTE", "USER_DEFINED_ATTRIBUTE", "ATTRIBUTES", "TYPE", "GENERIC_ARGUMENTS", "TUPLE_ELEMENT_NAME", "TUPLE", "GENERIC_PARAMETERS", "FUNCTION_PARAMETER_NAME", "FUNCTION_PARAMETERS", "FUNCTION_OR_MACRO", "INIT_SUBSCRIPT", "OPERATOR_DECLARATION", "PRECEDENCEGROUP", "CLASS_FUNC_DECLARATION", "CLASS_VAR_DECLARATION", "TYPE_DECLARATION", "variant", "interpolation", "mode", "submodes", "require_yaml", "__commonJSMin", "exports", "module", "yaml", "hljs", "LITERALS", "URI_CHARACTERS", "KEY", "TEMPLATE_VARIABLES", "SINGLE_QUOTE_STRING", "STRING", "CONTAINER_STRING", "TIMESTAMP", "VALUE_CONTAINER", "OBJECT", "ARRAY", "MODES", "VALUE_MODES", "require_typescript", "__commonJSMin", "exports", "module", "IDENT_RE", "KEYWORDS", "LITERALS", "TYPES", "ERROR_TYPES", "BUILT_IN_GLOBALS", "BUILT_IN_VARIABLES", "BUILT_INS", "javascript", "hljs", "regex", "hasClosingTag", "match", "after", "tag", "IDENT_RE$1", "FRAGMENT", "XML_SELF_CLOSING", "XML_TAG", "response", "afterMatchIndex", "nextChar", "m", "afterMatch", "KEYWORDS$1", "decimalDigits", "frac", "decimalInteger", "NUMBER", "SUBST", "HTML_TEMPLATE", "CSS_TEMPLATE", "GRAPHQL_TEMPLATE", "TEMPLATE_STRING", "COMMENT", "SUBST_INTERNALS", "SUBST_AND_COMMENTS", "PARAMS_CONTAINS", "PARAMS", "CLASS_OR_EXTENDS", "CLASS_REFERENCE", "USE_STRICT", "FUNCTION_DEFINITION", "UPPER_CASE_CONSTANT", "noneOf", "list", "FUNCTION_CALL", "x", "PROPERTY_ACCESS", "GETTER_OR_SETTER", "FUNC_LEAD_IN_RE", "FUNCTION_VARIABLE", "typescript", "tsLanguage", "NAMESPACE", "INTERFACE", "TS_SPECIFIC_KEYWORDS", "DECORATOR", "swapMode", "mode", "label", "replacement", "indx", "ATTRIBUTE_HIGHLIGHT", "c", "OPTIONAL_KEY_OR_ARGUMENT", "functionDeclaration", "require_vbnet", "__commonJSMin", "exports", "module", "vbnet", "hljs", "regex", "CHARACTER", "STRING", "MM_DD_YYYY", "YYYY_MM_DD", "TIME_12H", "TIME_24H", "DATE", "NUMBER", "LABEL", "DOC_COMMENT", "COMMENT", "require_wasm", "__commonJSMin", "exports", "module", "wasm", "hljs", "BLOCK_COMMENT", "LINE_COMMENT", "KWS", "FUNCTION_REFERENCE", "ARGUMENT", "PARENS", "NUMBER", "TYPE", "MATH_OPERATIONS", "require_common", "__commonJSMin", "exports", "module", "hljs", "global", "globalThis", "supportsAdoptingStyleSheets", "ShadowRoot", "ShadyCSS", "nativeShadow", "Document", "prototype", "CSSStyleSheet", "constructionToken", "Symbol", "cssTagCache", "WeakMap", "CSSResult", "cssText", "strings", "safeToken", "this", "Error", "_strings", "styleSheet", "_styleSheet", "cacheable", "length", "get", "replaceSync", "set", "toString", "unsafeCSS", "value", "String", "adoptStyles", "renderRoot", "styles", "supportsAdoptingStyleSheets", "adoptedStyleSheets", "map", "s", "CSSStyleSheet", "styleSheet", "style", "document", "createElement", "nonce", "global", "setAttribute", "textContent", "cssText", "appendChild", "getCompatibleStyle", "sheet", "rule", "cssRules", "unsafeCSS", "is", "defineProperty", "getOwnPropertyDescriptor", "getOwnPropertyNames", "getOwnPropertySymbols", "getPrototypeOf", "Object", "global", "globalThis", "trustedTypes", "emptyStringForBooleanAttribute", "emptyScript", "polyfillSupport", "reactiveElementPolyfillSupport", "JSCompiler_renameProperty", "prop", "_obj", "defaultConverter", "value", "type", "Boolean", "Array", "JSON", "stringify", "fromValue", "Number", "parse", "e", "notEqual", "old", "defaultPropertyDeclaration", "attribute", "String", "converter", "reflect", "useDefault", "hasChanged", "Symbol", "metadata", "litPropertyMetadata", "WeakMap", "ReactiveElement", "HTMLElement", "initializer", "this", "__prepare", "_initializers", "push", "observedAttributes", "finalize", "__attributeToPropertyMap", "keys", "name", "options", "state", "prototype", "hasOwnProperty", "create", "wrapped", "elementProperties", "set", "noAccessor", "key", "descriptor", "getPropertyDescriptor", "get", "v", "oldValue", "call", "requestUpdate", "configurable", "enumerable", "superCtor", "Map", "finalized", "props", "properties", "propKeys", "p", "createProperty", "attr", "__attributeNameForProperty", "elementStyles", "finalizeStyles", "styles", "isArray", "Set", "flat", "Infinity", "reverse", "s", "unshift", "getCompatibleStyle", "toLowerCase", "constructor", "super", "__instanceProperties", "isUpdatePending", "hasUpdated", "__reflectingProperty", "__initialize", "__updatePromise", "Promise", "res", "enableUpdating", "_$changedProperties", "__saveInstanceProperties", "forEach", "i", "controller", "__controllers", "add", "renderRoot", "isConnected", "hostConnected", "delete", "instanceProperties", "size", "createRenderRoot", "shadowRoot", "attachShadow", "shadowRootOptions", "adoptStyles", "connectedCallback", "c", "_requestedUpdate", "disconnectedCallback", "hostDisconnected", "_old", "_$attributeToProperty", "attrValue", "toAttribute", "removeAttribute", "setAttribute", "ctor", "propName", "getPropertyOptions", "fromAttribute", "__defaultValues", "newValue", "hasAttribute", "_$changeProperty", "__enqueueUpdate", "initializeValue", "has", "__reflectingProperties", "reject", "result", "scheduleUpdate", "performUpdate", "shouldUpdate", "changedProperties", "willUpdate", "hostUpdate", "update", "__markUpdated", "_$didUpdate", "_changedProperties", "hostUpdated", "firstUpdated", "updated", "updateComplete", "getUpdateComplete", "__propertyToAttribute", "mode", "reactiveElementVersions", "global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "toFixed", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "mathml", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "wrapper", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "String", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "render", "value", "container", "options", "partOwnerNode", "renderBefore", "part", "endNode", "insertBefore", "createMarker", "_$setValue", "global", "globalThis", "LitElement", "ReactiveElement", "constructor", "this", "renderOptions", "host", "__childPart", "createRenderRoot", "renderRoot", "super", "renderBefore", "firstChild", "changedProperties", "value", "render", "hasUpdated", "isConnected", "update", "connectedCallback", "setConnected", "disconnectedCallback", "noChange", "litElementHydrateSupport", "polyfillSupport", "litElementPolyfillSupport", "global", "litElementVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "UnsafeHTMLDirective", "Directive", "partInfo", "super", "this", "_value", "nothing", "type", "PartType", "CHILD", "Error", "constructor", "directiveName", "value", "_templateResult", "noChange", "strings", "raw", "_$litType$", "resultType", "values", "unsafeHTML", "directive", "defaultPropertyDeclaration", "attribute", "type", "String", "converter", "defaultConverter", "reflect", "hasChanged", "notEqual", "standardProperty", "options", "target", "context", "kind", "metadata", "properties", "globalThis", "litPropertyMetadata", "get", "set", "Map", "Object", "create", "wrapped", "name", "v", "oldValue", "call", "this", "requestUpdate", "_$changeProperty", "value", "Error", "property", "protoOrTarget", "nameOrContext", "proto", "hasOwnProperty", "constructor", "createProperty", "getOwnPropertyDescriptor", "import_clipboard", "import_common", "common_default", "HighlightJS", "_getDefaults", "_defaults", "changeDefaults", "newDefaults", "escapeTest", "escapeReplace", "escapeTestNoEncode", "escapeReplaceNoEncode", "escapeReplacements", "getEscapeReplacement", "ch", "escape", "html", "encode", "unescapeTest", "unescape", "_", "n", "caret", "edit", "regex", "opt", "source", "obj", "name", "val", "valSource", "cleanUrl", "href", "noopTest", "splitCells", "tableRow", "count", "row", "match", "offset", "str", "escaped", "curr", "cells", "i", "rtrim", "c", "invert", "l", "suffLen", "currChar", "findClosingBracket", "b", "level", "outputLink", "cap", "link", "raw", "lexer", "title", "text", "token", "indentCodeCompensation", "matchIndentToCode", "indentToCode", "node", "matchIndentInNode", "indentInNode", "_Tokenizer", "options", "src", "trimmed", "top", "tokens", "bull", "isordered", "list", "itemRegex", "itemContents", "endsWithBlankLine", "endEarly", "line", "t", "nextLine", "indent", "blankLine", "nextBulletRegex", "hrRegex", "fencesBeginRegex", "headingBeginRegex", "rawLine", "istask", "ischecked", "spacers", "hasMultipleLineBreaks", "tag", "headers", "aligns", "rows", "item", "align", "header", "cell", "trimmedUrl", "rtrimSlash", "lastParenIndex", "linkLen", "links", "linkString", "maskedSrc", "prevChar", "lLength", "rDelim", "rLength", "delimTotal", "midDelimTotal", "endReg", "lastCharLength", "hasNonSpaceChars", "hasSpaceCharsOnBothEnds", "prevCapZero", "newline", "blockCode", "fences", "hr", "heading", "bullet", "lheading", "_paragraph", "blockText", "_blockLabel", "def", "_tag", "_comment", "paragraph", "blockquote", "blockNormal", "gfmTable", "blockGfm", "blockPedantic", "inlineCode", "br", "inlineText", "_punctuation", "punctuation", "blockSkip", "emStrongLDelim", "emStrongRDelimAst", "emStrongRDelimUnd", "anyPunctuation", "autolink", "_inlineComment", "_inlineLabel", "reflink", "nolink", "reflinkSearch", "inlineNormal", "inlinePedantic", "inlineGfm", "inlineBreaks", "block", "inline", "_Lexer", "__Lexer", "rules", "next", "leading", "tabs", "lastToken", "cutSrc", "lastParagraphClipped", "extTokenizer", "startIndex", "tempSrc", "tempStart", "getStartIndex", "errMsg", "keepPrevChar", "_Renderer", "code", "infostring", "lang", "quote", "body", "ordered", "start", "type", "startatt", "task", "checked", "content", "flags", "cleanHref", "out", "_TextRenderer", "_Parser", "__Parser", "genericToken", "ret", "headingToken", "codeToken", "tableToken", "j", "k", "blockquoteToken", "listToken", "loose", "itemBody", "checkbox", "htmlToken", "paragraphToken", "textToken", "renderer", "escapeToken", "tagToken", "linkToken", "imageToken", "strongToken", "emToken", "codespanToken", "delToken", "_Hooks", "markdown", "Marked", "#parseMarkdown", "args", "callback", "values", "childTokens", "extensions", "pack", "opts", "ext", "prevRenderer", "extLevel", "prop", "rendererProp", "rendererFunc", "tokenizer", "tokenizerProp", "tokenizerFunc", "prevTokenizer", "hooks", "hooksProp", "hooksFunc", "prevHook", "arg", "walkTokens", "packWalktokens", "parser", "origOpt", "throwError", "#onError", "e", "silent", "async", "msg", "markedInstance", "marked", "setOptions", "use", "parseInline", "parse", "entries", "setPrototypeOf", "isFrozen", "getPrototypeOf", "getOwnPropertyDescriptor", "Object", "freeze", "seal", "create", "apply", "construct", "Reflect", "x", "fun", "thisValue", "args", "Func", "arrayForEach", "unapply", "Array", "prototype", "forEach", "arrayLastIndexOf", "lastIndexOf", "arrayPop", "pop", "arrayPush", "push", "arraySplice", "splice", "stringToLowerCase", "String", "toLowerCase", "stringToString", "toString", "stringMatch", "match", "stringReplace", "replace", "stringIndexOf", "indexOf", "stringTrim", "trim", "objectHasOwnProperty", "hasOwnProperty", "regExpTest", "RegExp", "test", "typeErrorCreate", "unconstruct", "TypeError", "func", "thisArg", "lastIndex", "_len", "arguments", "length", "_key", "_len2", "_key2", "addToSet", "set", "array", "transformCaseFunc", "l", "element", "lcElement", "cleanArray", "index", "clone", "object", "newObject", "property", "value", "isArray", "constructor", "lookupGetter", "prop", "desc", "get", "fallbackValue", "html", "svg", "svgFilters", "svgDisallowed", "mathMl", "mathMlDisallowed", "text", "xml", "MUSTACHE_EXPR", "ERB_EXPR", "TMPLIT_EXPR", "DATA_ATTR", "ARIA_ATTR", "IS_ALLOWED_URI", "IS_SCRIPT_OR_DATA", "ATTR_WHITESPACE", "DOCTYPE_NAME", "CUSTOM_ELEMENT", "NODE_TYPE", "attribute", "cdataSection", "entityReference", "entityNode", "progressingInstruction", "comment", "document", "documentType", "documentFragment", "notation", "getGlobal", "window", "_createTrustedTypesPolicy", "trustedTypes", "purifyHostElement", "createPolicy", "suffix", "ATTR_NAME", "hasAttribute", "getAttribute", "policyName", "createHTML", "createScriptURL", "scriptUrl", "console", "warn", "_createHooksMap", "afterSanitizeAttributes", "afterSanitizeElements", "afterSanitizeShadowDOM", "beforeSanitizeAttributes", "beforeSanitizeElements", "beforeSanitizeShadowDOM", "uponSanitizeAttribute", "uponSanitizeElement", "uponSanitizeShadowNode", "createDOMPurify", "undefined", "DOMPurify", "root", "version", "VERSION", "removed", "nodeType", "Element", "isSupported", "originalDocument", "currentScript", "DocumentFragment", "HTMLTemplateElement", "Node", "NodeFilter", "NamedNodeMap", "MozNamedAttrMap", "HTMLFormElement", "DOMParser", "ElementPrototype", "cloneNode", "remove", "getNextSibling", "getChildNodes", "getParentNode", "template", "createElement", "content", "ownerDocument", "trustedTypesPolicy", "emptyHTML", "implementation", "createNodeIterator", "createDocumentFragment", "getElementsByTagName", "importNode", "hooks", "createHTMLDocument", "EXPRESSIONS", "ALLOWED_TAGS", "DEFAULT_ALLOWED_TAGS", "TAGS", "ALLOWED_ATTR", "DEFAULT_ALLOWED_ATTR", "ATTRS", "CUSTOM_ELEMENT_HANDLING", "tagNameCheck", "writable", "configurable", "enumerable", "attributeNameCheck", "allowCustomizedBuiltInElements", "FORBID_TAGS", "FORBID_ATTR", "ALLOW_ARIA_ATTR", "ALLOW_DATA_ATTR", "ALLOW_UNKNOWN_PROTOCOLS", "ALLOW_SELF_CLOSE_IN_ATTR", "SAFE_FOR_TEMPLATES", "SAFE_FOR_XML", "WHOLE_DOCUMENT", "SET_CONFIG", "FORCE_BODY", "RETURN_DOM", "RETURN_DOM_FRAGMENT", "RETURN_TRUSTED_TYPE", "SANITIZE_DOM", "SANITIZE_NAMED_PROPS", "SANITIZE_NAMED_PROPS_PREFIX", "KEEP_CONTENT", "IN_PLACE", "USE_PROFILES", "FORBID_CONTENTS", "DEFAULT_FORBID_CONTENTS", "DATA_URI_TAGS", "DEFAULT_DATA_URI_TAGS", "URI_SAFE_ATTRIBUTES", "DEFAULT_URI_SAFE_ATTRIBUTES", "MATHML_NAMESPACE", "SVG_NAMESPACE", "HTML_NAMESPACE", "NAMESPACE", "IS_EMPTY_INPUT", "ALLOWED_NAMESPACES", "DEFAULT_ALLOWED_NAMESPACES", "MATHML_TEXT_INTEGRATION_POINTS", "HTML_INTEGRATION_POINTS", "COMMON_SVG_AND_HTML_ELEMENTS", "PARSER_MEDIA_TYPE", "SUPPORTED_PARSER_MEDIA_TYPES", "DEFAULT_PARSER_MEDIA_TYPE", "CONFIG", "formElement", "isRegexOrFunction", "testValue", "Function", "_parseConfig", "cfg", "ADD_URI_SAFE_ATTR", "ADD_DATA_URI_TAGS", "ALLOWED_URI_REGEXP", "ADD_TAGS", "ADD_ATTR", "table", "tbody", "TRUSTED_TYPES_POLICY", "ALL_SVG_TAGS", "ALL_MATHML_TAGS", "_checkValidNamespace", "parent", "tagName", "namespaceURI", "parentTagName", "Boolean", "_forceRemove", "node", "removeChild", "_removeAttribute", "name", "getAttributeNode", "from", "removeAttribute", "setAttribute", "_initDocument", "dirty", "doc", "leadingWhitespace", "matches", "dirtyPayload", "parseFromString", "documentElement", "createDocument", "innerHTML", "body", "insertBefore", "createTextNode", "childNodes", "call", "_createNodeIterator", "SHOW_ELEMENT", "SHOW_COMMENT", "SHOW_TEXT", "SHOW_PROCESSING_INSTRUCTION", "SHOW_CDATA_SECTION", "_isClobbered", "nodeName", "textContent", "attributes", "hasChildNodes", "_isNode", "_executeHooks", "currentNode", "data", "hook", "_sanitizeElements", "allowedTags", "firstElementChild", "_isBasicCustomElement", "parentNode", "childCount", "i", "childClone", "__removalCount", "expr", "_isValidAttribute", "lcTag", "lcName", "_sanitizeAttributes", "hookEvent", "attrName", "attrValue", "keepAttr", "allowedAttributes", "forceKeepAttr", "attr", "initValue", "getAttributeType", "setAttributeNS", "_sanitizeShadowDOM", "fragment", "shadowNode", "shadowIterator", "nextNode", "sanitize", "importedNode", "returnNode", "appendChild", "firstChild", "nodeIterator", "shadowroot", "shadowrootmode", "serializedHTML", "outerHTML", "doctype", "setConfig", "clearConfig", "isValidAttribute", "tag", "addHook", "entryPoint", "hookFunction", "removeHook", "removeHooks", "removeAllHooks", "purify", "createElement", "tag_name", "attrs", "el", "key", "value", "attrName", "createSVGIcon", "icon", "LightElement", "i", "showShinyClientMessage", "headline", "message", "status", "renderDependencies", "deps", "renderError", "sanitizeHTML", "html", "sanitizer", "tagName", "attr", "purify", "node", "data", "element", "isOK", "href", "originalAttributes", "name", "throttle", "delay", "_target", "_propertyKey", "descriptor", "originalMethod", "timeout", "args", "ShinyToolCard", "i", "#toggleCollapse", "e", "displayTitle", "x", "o", "bodyContent", "headerId", "contentId", "icon", "ICONS", "headerContent", "__decorateClass", "n", "ShinyToolRequest", "#onToolRequestHide", "event", "markdownCodeBlock", "ShinyToolResult", "#renderResult", "result", "value", "resultHeader", "#renderRequest", "request", "isLongRequest", "content", "language", "backticks", "request_id", "ExternalLinkDialog", "_ExternalLinkDialog", "url", "linkUrlElement", "resolve", "getBtn", "selector", "btns", "e", "showExternalLinkConfirmation", "CHAT_MESSAGE_TAG", "CHAT_USER_MESSAGE_TAG", "CHAT_MESSAGES_TAG", "CHAT_INPUT_TAG", "CHAT_CONTAINER_TAG", "CHAT_TOOL_REQUEST_TAG", "CHAT_TOOL_RESULT_TAG", "ICONS", "ChatMessage", "LightElement", "icon", "#messageIcon", "x", "#onContentChange", "#makeSuggestionsAccessible", "#getIcon", "o", "el", "suggestion", "__decorateClass", "n", "ChatUserMessage", "ChatMessages", "ChatInput", "value", "oldValue", "#onInput", "entries", "entry", "#updateHeight", "#onCompositionStart", "#onCompositionEnd", "name", "_old", "#onKeyDown", "#sendInput", "e", "focus", "sentEvent", "submit", "inputEvent", "ChatContainer", "last", "sentinel", "createElement", "inputTextarea", "addShadow", "#onExternalLinkClick", "#addEventListeners", "#onInputSent", "#onAppend", "#onAppendChunk", "#onClear", "#onUpdateUserInput", "#onRemoveLoadingMessage", "#onInputSuggestionClick", "#onInputSuggestionKeydown", "event", "#appendMessage", "#addLoadingMessage", "#initMessage", "#removeLoadingMessage", "message", "finalize", "TAG_NAME", "role", "restMessage", "messageAttrs", "msg", "#finalizeMessage", "#appendMessageChunk", "lastMessage", "content", "placeholder", "#onInputSuggestionEvent", "#getSuggestion", "shouldSubmit", "target", "linkEl", "showExternalLinkConfirmation", "confirmed", "chatCustomElements", "ShinyToolRequest", "ShinyToolResult", "tag", "component", "renderDependencies", "evt", "showShinyClientMessage", "isStreamingMessage", "message", "SVG_DOT_CLASS", "SVG_DOT", "createSVGIcon", "markdownRenderer", "_Renderer", "header", "body", "defaultMarkdownCodeRenderer", "code", "infostring", "escaped", "semiMarkdownRenderer", "html", "contentToHTML", "content", "content_type", "parse", "o", "sanitizeHTML", "_MarkdownElement", "LightElement", "#scrollableElement", "#isContentBeingAdded", "#isUserScrolled", "#onScroll", "#isNearBottom", "#onMaybeScrollToBottom", "#maybeScrollToBottom", "x", "#cleanup", "changedProperties", "#doUnBind", "#highlightAndCodeCopy", "error", "#appendStreamingDot", "#doBind", "#updateScrollableElement", "#removeStreamingDot", "hasText", "node", "recurseInto", "inlineContainers", "element", "current", "depth", "children", "lastMeaningfulChild", "i", "child", "tagName", "el", "err", "showShinyClientMessage", "common_default", "btn", "createElement", "ClipboardJS", "e", "#findScrollableParent", "CHAT_CONTAINER_TAG", "__decorateClass", "n", "throttle", "MarkdownElement", "handleMessage", "renderDependencies"] }