v-code-diff 1.7.0 → 1.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/v2/index.cjs.js +1 -1
- package/dist/v2/index.es.js +1 -1
- package/dist/v2/index.umd.js +1 -1
- package/dist/v2.7/index.cjs.js +1 -1
- package/dist/v2.7/index.es.js +1 -1
- package/dist/v2.7/index.umd.js +1 -1
- package/dist/v3/index.cjs.js +1 -1
- package/dist/v3/index.es.js +1 -1
- package/dist/v3/index.umd.js +1 -1
- package/package.json +1 -1
- package/src/utils.ts +1 -1
package/dist/v3/index.cjs.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
`),a=0,s=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;a<i.length;){var l=i[a].match(s);if(!l)throw new Error("Invalid patch string: "+i[a]);var c=new r.patch_obj;for(t.push(c),c.start1=parseInt(l[1],10),l[2]===""?(c.start1--,c.length1=1):l[2]=="0"?c.length1=0:(c.start1--,c.length1=parseInt(l[2],10)),c.start2=parseInt(l[3],10),l[4]===""?(c.start2--,c.length2=1):l[4]=="0"?c.length2=0:(c.start2--,c.length2=parseInt(l[4],10)),a++;a<i.length;){var f=i[a].charAt(0);try{var g=decodeURI(i[a].substring(1))}catch(d){throw new Error("Illegal escape in patch_fromText: "+g)}if(f=="-")c.diffs.push(new r.Diff(o,g));else if(f=="+")c.diffs.push(new r.Diff(u,g));else if(f==" ")c.diffs.push(new r.Diff(h,g));else{if(f=="@")break;if(f!=="")throw new Error('Invalid patch mode "'+f+'" in: '+g)}a++}}return t},r.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0},r.patch_obj.prototype.toString=function(){var n,t;this.length1===0?n=this.start1+",0":this.length1==1?n=this.start1+1:n=this.start1+1+","+this.length1,this.length2===0?t=this.start2+",0":this.length2==1?t=this.start2+1:t=this.start2+1+","+this.length2;for(var i=["@@ -"+n+" +"+t+` @@
|
|
5
5
|
`],a,s=0;s<this.diffs.length;s++){switch(this.diffs[s][0]){case u:a="+";break;case o:a="-";break;case h:a=" ";break}i[s+1]=a+encodeURI(this.diffs[s][1])+`
|
|
6
6
|
`}return i.join("").replace(/%20/g," ")},e.exports=r,e.exports.diff_match_patch=r,e.exports.DIFF_DELETE=o,e.exports.DIFF_INSERT=u,e.exports.DIFF_EQUAL=h})(nn);var De=nn.exports,ke={exports:{}};function Ie(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(function(r){var o=e[r];typeof o=="object"&&!Object.isFrozen(o)&&Ie(o)}),e}ke.exports=Ie;ke.exports.default=Ie;class Ve{constructor(r){r.data===void 0&&(r.data={}),this.data=r.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function tn(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function re(e,...r){const o=Object.create(null);for(const u in e)o[u]=e[u];return r.forEach(function(u){for(const h in u)o[h]=u[h]}),o}const Un="</span>",We=e=>!!e.scope||e.sublanguage&&e.language,Pn=(e,{prefix:r})=>{if(e.includes(".")){const o=e.split(".");return[`${r}${o.shift()}`,...o.map((u,h)=>`${u}${"_".repeat(h+1)}`)].join(" ")}return`${r}${e}`};class xn{constructor(r,o){this.buffer="",this.classPrefix=o.classPrefix,r.walk(this)}addText(r){this.buffer+=tn(r)}openNode(r){if(!We(r))return;let o="";r.sublanguage?o=`language-${r.language}`:o=Pn(r.scope,{prefix:this.classPrefix}),this.span(o)}closeNode(r){We(r)&&(this.buffer+=Un)}value(){return this.buffer}span(r){this.buffer+=`<span class="${r}">`}}const Qe=(e={})=>{const r={children:[]};return Object.assign(r,e),r};class Be{constructor(){this.rootNode=Qe(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(r){this.top.children.push(r)}openNode(r){const o=Qe({scope:r});this.add(o),this.stack.push(o)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(r){return this.constructor._walk(r,this.rootNode)}static _walk(r,o){return typeof o=="string"?r.addText(o):o.children&&(r.openNode(o),o.children.forEach(u=>this._walk(r,u)),r.closeNode(o)),r}static _collapse(r){typeof r!="string"&&r.children&&(r.children.every(o=>typeof o=="string")?r.children=[r.children.join("")]:r.children.forEach(o=>{Be._collapse(o)}))}}class Hn extends Be{constructor(r){super(),this.options=r}addKeyword(r,o){r!==""&&(this.openNode(o),this.addText(r),this.closeNode())}addText(r){r!==""&&this.add(r)}addSublanguage(r,o){const u=r.root;u.sublanguage=!0,u.language=o,this.add(u)}toHTML(){return new xn(this,this.options).value()}finalize(){return!0}}function fe(e){return e?typeof e=="string"?e:e.source:null}function rn(e){return ae("(?=",e,")")}function Fn(e){return ae("(?:",e,")*")}function zn(e){return ae("(?:",e,")?")}function ae(...e){return e.map(o=>fe(o)).join("")}function Gn(e){const r=e[e.length-1];return typeof r=="object"&&r.constructor===Object?(e.splice(e.length-1,1),r):{}}function $e(...e){return"("+(Gn(e).capture?"":"?:")+e.map(u=>fe(u)).join("|")+")"}function sn(e){return new RegExp(e.toString()+"|").exec("").length-1}function Kn(e,r){const o=e&&e.exec(r);return o&&o.index===0}const Vn=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Ue(e,{joinWith:r}){let o=0;return e.map(u=>{o+=1;const h=o;let n=fe(u),t="";for(;n.length>0;){const i=Vn.exec(n);if(!i){t+=n;break}t+=n.substring(0,i.index),n=n.substring(i.index+i[0].length),i[0][0]==="\\"&&i[1]?t+="\\"+String(Number(i[1])+h):(t+=i[0],i[0]==="("&&o++)}return t}).map(u=>`(${u})`).join(r)}const Wn=/\b\B/,an="[a-zA-Z]\\w*",Pe="[a-zA-Z_]\\w*",on="\\b\\d+(\\.\\d+)?",ln="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",cn="\\b(0b[01]+)",Qn="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Zn=(e={})=>{const r=/^#![ ]*\//;return e.binary&&(e.begin=ae(r,/.*\b/,e.binary,/\b.*/)),re({scope:"meta",begin:r,end:/$/,relevance:0,"on:begin":(o,u)=>{o.index!==0&&u.ignoreMatch()}},e)},ge={begin:"\\\\[\\s\\S]",relevance:0},Yn={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ge]},Xn={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ge]},jn={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/},Me=function(e,r,o={}){const u=re({scope:"comment",begin:e,end:r,contains:[]},o);u.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const h=$e("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 u.contains.push({begin:ae(/[ ]+/,"(",h,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),u},Jn=Me("//","$"),qn=Me("/\\*","\\*/"),et=Me("#","$"),nt={scope:"number",begin:on,relevance:0},tt={scope:"number",begin:ln,relevance:0},rt={scope:"number",begin:cn,relevance:0},it={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[ge,{begin:/\[/,end:/\]/,relevance:0,contains:[ge]}]}]},st={scope:"title",begin:an,relevance:0},at={scope:"title",begin:Pe,relevance:0},ot={begin:"\\.\\s*"+Pe,relevance:0},lt=function(e){return Object.assign(e,{"on:begin":(r,o)=>{o.data._beginMatch=r[1]},"on:end":(r,o)=>{o.data._beginMatch!==r[1]&&o.ignoreMatch()}})};var Ee=Object.freeze({__proto__:null,MATCH_NOTHING_RE:Wn,IDENT_RE:an,UNDERSCORE_IDENT_RE:Pe,NUMBER_RE:on,C_NUMBER_RE:ln,BINARY_NUMBER_RE:cn,RE_STARTERS_RE:Qn,SHEBANG:Zn,BACKSLASH_ESCAPE:ge,APOS_STRING_MODE:Yn,QUOTE_STRING_MODE:Xn,PHRASAL_WORDS_MODE:jn,COMMENT:Me,C_LINE_COMMENT_MODE:Jn,C_BLOCK_COMMENT_MODE:qn,HASH_COMMENT_MODE:et,NUMBER_MODE:nt,C_NUMBER_MODE:tt,BINARY_NUMBER_MODE:rt,REGEXP_MODE:it,TITLE_MODE:st,UNDERSCORE_TITLE_MODE:at,METHOD_GUARD:ot,END_SAME_AS_BEGIN:lt});function ct(e,r){e.input[e.index-1]==="."&&r.ignoreMatch()}function ut(e,r){e.className!==void 0&&(e.scope=e.className,delete e.className)}function ft(e,r){r&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=ct,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function gt(e,r){Array.isArray(e.illegal)&&(e.illegal=$e(...e.illegal))}function ht(e,r){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function dt(e,r){e.relevance===void 0&&(e.relevance=1)}const pt=(e,r)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const o=Object.assign({},e);Object.keys(e).forEach(u=>{delete e[u]}),e.keywords=o.keywords,e.begin=ae(o.beforeMatch,rn(o.begin)),e.starts={relevance:0,contains:[Object.assign(o,{endsParent:!0})]},e.relevance=0,delete o.beforeMatch},bt=["of","and","for","in","not","or","if","then","parent","list","value"],_t="keyword";function un(e,r,o=_t){const u=Object.create(null);return typeof e=="string"?h(o,e.split(" ")):Array.isArray(e)?h(o,e):Object.keys(e).forEach(function(n){Object.assign(u,un(e[n],r,n))}),u;function h(n,t){r&&(t=t.map(i=>i.toLowerCase())),t.forEach(function(i){const a=i.split("|");u[a[0]]=[n,Et(a[0],a[1])]})}}function Et(e,r){return r?Number(r):mt(e)?0:1}function mt(e){return bt.includes(e.toLowerCase())}const Ze={},se=e=>{console.error(e)},Ye=(e,...r)=>{console.log(`WARN: ${e}`,...r)},oe=(e,r)=>{Ze[`${e}/${r}`]||(console.log(`Deprecated as of ${e}. ${r}`),Ze[`${e}/${r}`]=!0)},we=new Error;function fn(e,r,{key:o}){let u=0;const h=e[o],n={},t={};for(let i=1;i<=r.length;i++)t[i+u]=h[i],n[i+u]=!0,u+=sn(r[i-1]);e[o]=t,e[o]._emit=n,e[o]._multi=!0}function vt(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw se("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),we;if(typeof e.beginScope!="object"||e.beginScope===null)throw se("beginScope must be object"),we;fn(e,e.begin,{key:"beginScope"}),e.begin=Ue(e.begin,{joinWith:""})}}function yt(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw se("skip, excludeEnd, returnEnd not compatible with endScope: {}"),we;if(typeof e.endScope!="object"||e.endScope===null)throw se("endScope must be object"),we;fn(e,e.end,{key:"endScope"}),e.end=Ue(e.end,{joinWith:""})}}function wt(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Nt(e){wt(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),vt(e),yt(e)}function Mt(e){function r(t,i){return new RegExp(fe(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(i?"g":""))}class o{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(i,a){a.position=this.position++,this.matchIndexes[this.matchAt]=a,this.regexes.push([a,i]),this.matchAt+=sn(i)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const i=this.regexes.map(a=>a[1]);this.matcherRe=r(Ue(i,{joinWith:"|"}),!0),this.lastIndex=0}exec(i){this.matcherRe.lastIndex=this.lastIndex;const a=this.matcherRe.exec(i);if(!a)return null;const s=a.findIndex((c,f)=>f>0&&c!==void 0),l=this.matchIndexes[s];return a.splice(0,s),Object.assign(a,l)}}class u{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(i){if(this.multiRegexes[i])return this.multiRegexes[i];const a=new o;return this.rules.slice(i).forEach(([s,l])=>a.addRule(s,l)),a.compile(),this.multiRegexes[i]=a,a}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(i,a){this.rules.push([i,a]),a.type==="begin"&&this.count++}exec(i){const a=this.getMatcher(this.regexIndex);a.lastIndex=this.lastIndex;let s=a.exec(i);if(this.resumingScanAtSamePosition()&&!(s&&s.index===this.lastIndex)){const l=this.getMatcher(0);l.lastIndex=this.lastIndex+1,s=l.exec(i)}return s&&(this.regexIndex+=s.position+1,this.regexIndex===this.count&&this.considerAll()),s}}function h(t){const i=new u;return t.contains.forEach(a=>i.addRule(a.begin,{rule:a,type:"begin"})),t.terminatorEnd&&i.addRule(t.terminatorEnd,{type:"end"}),t.illegal&&i.addRule(t.illegal,{type:"illegal"}),i}function n(t,i){const a=t;if(t.isCompiled)return a;[ut,ht,Nt,pt].forEach(l=>l(t,i)),e.compilerExtensions.forEach(l=>l(t,i)),t.__beforeBegin=null,[ft,gt,dt].forEach(l=>l(t,i)),t.isCompiled=!0;let s=null;return typeof t.keywords=="object"&&t.keywords.$pattern&&(t.keywords=Object.assign({},t.keywords),s=t.keywords.$pattern,delete t.keywords.$pattern),s=s||/\w+/,t.keywords&&(t.keywords=un(t.keywords,e.case_insensitive)),a.keywordPatternRe=r(s,!0),i&&(t.begin||(t.begin=/\B|\b/),a.beginRe=r(a.begin),!t.end&&!t.endsWithParent&&(t.end=/\B|\b/),t.end&&(a.endRe=r(a.end)),a.terminatorEnd=fe(a.end)||"",t.endsWithParent&&i.terminatorEnd&&(a.terminatorEnd+=(t.end?"|":"")+i.terminatorEnd)),t.illegal&&(a.illegalRe=r(t.illegal)),t.contains||(t.contains=[]),t.contains=[].concat(...t.contains.map(function(l){return At(l==="self"?t:l)})),t.contains.forEach(function(l){n(l,a)}),t.starts&&n(t.starts,i),a.matcher=h(a),a}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=re(e.classNameAliases||{}),n(e)}function gn(e){return e?e.endsWithParent||gn(e.starts):!1}function At(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(r){return re(e,{variants:null},r)})),e.cachedVariants?e.cachedVariants:gn(e)?re(e,{starts:e.starts?re(e.starts):null}):Object.isFrozen(e)?re(e):e}var Tt="11.7.0";class St extends Error{constructor(r,o){super(r),this.name="HTMLInjectionError",this.html=o}}const Re=tn,Xe=re,je=Symbol("nomatch"),Dt=7,Rt=function(e){const r=Object.create(null),o=Object.create(null),u=[];let h=!0;const n="Could not find the language '{}', did you forget to load/include a language module?",t={disableAutodetect:!0,name:"Plain text",contains:[]};let i={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Hn};function a(E){return i.noHighlightRe.test(E)}function s(E){let A=E.className+" ";A+=E.parentNode?E.parentNode.className:"";const C=i.languageDetectRe.exec(A);if(C){const B=L(C[1]);return B||(Ye(n.replace("{}",C[1])),Ye("Falling back to no-highlight mode for this block.",E)),B?C[1]:"no-highlight"}return A.split(/\s+/).find(B=>a(B)||L(B))}function l(E,A,C){let B="",H="";typeof A=="object"?(B=E,C=A.ignoreIllegals,H=A.language):(oe("10.7.0","highlight(lang, code, ...args) has been deprecated."),oe("10.7.0",`Please use highlight(code, options) instead.
|
|
7
|
-
https://github.com/highlightjs/highlight.js/issues/2277`),H=E,B=A),C===void 0&&(C=!0);const W={code:B,language:H};K("before:highlight",W);const X=W.result?W.result:c(W.language,W.code,C);return X.code=W.code,K("after:highlight",X),X}function c(E,A,C,B){const H=Object.create(null);function W(w,S){return w.keywords[S]}function X(){if(!O.keywords){G.addText(x);return}let w=0;O.keywordPatternRe.lastIndex=0;let S=O.keywordPatternRe.exec(x),k="";for(;S;){k+=x.substring(w,S.index);const $=te.case_insensitive?S[0].toLowerCase():S[0],V=W(O,$);if(V){const[j,An]=V;if(G.addText(k),k="",H[$]=(H[$]||0)+1,H[$]<=Dt&&(_e+=An),j.startsWith("_"))k+=S[0];else{const Tn=te.classNameAliases[j]||j;G.addKeyword(S[0],Tn)}}else k+=S[0];w=O.keywordPatternRe.lastIndex,S=O.keywordPatternRe.exec(x)}k+=x.substring(w),G.addText(k)}function pe(){if(x==="")return;let w=null;if(typeof O.subLanguage=="string"){if(!r[O.subLanguage]){G.addText(x);return}w=c(O.subLanguage,x,!0,ze[O.subLanguage]),ze[O.subLanguage]=w._top}else w=g(x,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(_e+=w.relevance),G.addSublanguage(w._emitter,w.language)}function Q(){O.subLanguage!=null?pe():X(),x=""}function ne(w,S){let k=1;const $=S.length-1;for(;k<=$;){if(!w._emit[k]){k++;continue}const V=te.classNameAliases[w[k]]||w[k],j=S[k];V?G.addKeyword(j,V):(x=j,X(),x=""),k++}}function xe(w,S){return w.scope&&typeof w.scope=="string"&&G.openNode(te.classNameAliases[w.scope]||w.scope),w.beginScope&&(w.beginScope._wrap?(G.addKeyword(x,te.classNameAliases[w.beginScope._wrap]||w.beginScope._wrap),x=""):w.beginScope._multi&&(ne(w.beginScope,S),x="")),O=Object.create(w,{parent:{value:O}}),O}function He(w,S,k){let $=Kn(w.endRe,k);if($){if(w["on:end"]){const V=new Ve(w);w["on:end"](S,V),V.isMatchIgnored&&($=!1)}if($){for(;w.endsParent&&w.parent;)w=w.parent;return w}}if(w.endsWithParent)return He(w.parent,S,k)}function vn(w){return O.matcher.regexIndex===0?(x+=w[0],1):(Se=!0,0)}function yn(w){const S=w[0],k=w.rule,$=new Ve(k),V=[k.__beforeBegin,k["on:begin"]];for(const j of V)if(j&&(j(w,$),$.isMatchIgnored))return vn(S);return k.skip?x+=S:(k.excludeBegin&&(x+=S),Q(),!k.returnBegin&&!k.excludeBegin&&(x=S)),xe(k,w),k.returnBegin?0:S.length}function wn(w){const S=w[0],k=A.substring(w.index),$=He(O,w,k);if(!$)return je;const V=O;O.endScope&&O.endScope._wrap?(Q(),G.addKeyword(S,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Q(),ne(O.endScope,w)):V.skip?x+=S:(V.returnEnd||V.excludeEnd||(x+=S),Q(),V.excludeEnd&&(x=S));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(_e+=O.relevance),O=O.parent;while(O!==$.parent);return $.starts&&xe($.starts,w),V.returnEnd?0:S.length}function Nn(){const w=[];for(let S=O;S!==te;S=S.parent)S.scope&&w.unshift(S.scope);w.forEach(S=>G.openNode(S))}let be={};function Fe(w,S){const k=S&&S[0];if(x+=w,k==null)return Q(),0;if(be.type==="begin"&&S.type==="end"&&be.index===S.index&&k===""){if(x+=A.slice(S.index,S.index+1),!h){const $=new Error(`0 width match regex (${E})`);throw $.languageName=E,$.badRule=be.rule,$}return 1}if(be=S,S.type==="begin")return yn(S);if(S.type==="illegal"&&!C){const $=new Error('Illegal lexeme "'+k+'" for mode "'+(O.scope||"<unnamed>")+'"');throw $.mode=O,$}else if(S.type==="end"){const $=wn(S);if($!==je)return $}if(S.type==="illegal"&&k==="")return 1;if(Te>1e5&&Te>S.index*3)throw new Error("potential infinite loop, way more iterations than matches");return x+=k,k.length}const te=L(E);if(!te)throw se(n.replace("{}",E)),new Error('Unknown language: "'+E+'"');const Mn=Mt(te);let Ae="",O=B||Mn;const ze={},G=new i.__emitter(i);Nn();let x="",_e=0,ie=0,Te=0,Se=!1;try{for(O.matcher.considerAll();;){Te++,Se?Se=!1:O.matcher.considerAll(),O.matcher.lastIndex=ie;const w=O.matcher.exec(A);if(!w)break;const S=A.substring(ie,w.index),k=Fe(S,w);ie=w.index+k}return Fe(A.substring(ie)),G.closeAllNodes(),G.finalize(),Ae=G.toHTML(),{language:E,value:Ae,relevance:_e,illegal:!1,_emitter:G,_top:O}}catch(w){if(w.message&&w.message.includes("Illegal"))return{language:E,value:Re(A),illegal:!0,relevance:0,_illegalBy:{message:w.message,index:ie,context:A.slice(ie-100,ie+100),mode:w.mode,resultSoFar:Ae},_emitter:G};if(h)return{language:E,value:Re(A),illegal:!1,relevance:0,errorRaised:w,_emitter:G,_top:O};throw w}}function f(E){const A={value:Re(E),illegal:!1,relevance:0,_top:t,_emitter:new i.__emitter(i)};return A._emitter.addText(E),A}function g(E,A){A=A||i.languages||Object.keys(r);const C=f(E),B=A.filter(L).filter(P).map(Q=>c(Q,E,!1));B.unshift(C);const H=B.sort((Q,ne)=>{if(Q.relevance!==ne.relevance)return ne.relevance-Q.relevance;if(Q.language&&ne.language){if(L(Q.language).supersetOf===ne.language)return 1;if(L(ne.language).supersetOf===Q.language)return-1}return 0}),[W,X]=H,pe=W;return pe.secondBest=X,pe}function d(E,A,C){const B=A&&o[A]||C;E.classList.add("hljs"),E.classList.add(`language-${B}`)}function p(E){let A=null;const C=s(E);if(a(C))return;if(K("before:highlightElement",{el:E,language:C}),E.children.length>0&&(i.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),i.throwUnescapedHTML))throw new St("One of your code blocks includes unescaped HTML.",E.innerHTML);A=E;const B=A.textContent,H=C?l(B,{language:C,ignoreIllegals:!0}):g(B);E.innerHTML=H.value,d(E,C,H.language),E.result={language:H.language,re:H.relevance,relevance:H.relevance},H.secondBest&&(E.secondBest={language:H.secondBest.language,relevance:H.secondBest.relevance}),K("after:highlightElement",{el:E,result:H,text:B})}function _(E){i=Xe(i,E)}const m=()=>{y(),oe("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),oe("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function y(){if(document.readyState==="loading"){N=!0;return}document.querySelectorAll(i.cssSelector).forEach(p)}function D(){N&&y()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function R(E,A){let C=null;try{C=A(e)}catch(B){if(se("Language definition for '{}' could not be registered.".replace("{}",E)),h)se(B);else throw B;C=t}C.name||(C.name=E),r[E]=C,C.rawDefinition=A.bind(null,e),C.aliases&&F(C.aliases,{languageName:E})}function T(E){delete r[E];for(const A of Object.keys(o))o[A]===E&&delete o[A]}function I(){return Object.keys(r)}function L(E){return E=(E||"").toLowerCase(),r[E]||r[o[E]]}function F(E,{languageName:A}){typeof E=="string"&&(E=[E]),E.forEach(C=>{o[C.toLowerCase()]=A})}function P(E){const A=L(E);return A&&!A.disableAutodetect}function U(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=A=>{E["before:highlightBlock"](Object.assign({block:A.el},A))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=A=>{E["after:highlightBlock"](Object.assign({block:A.el},A))})}function z(E){U(E),u.push(E)}function K(E,A){const C=E;u.forEach(function(B){B[C]&&B[C](A)})}function de(E){return oe("10.7.0","highlightBlock will be removed entirely in v12.0"),oe("10.7.0","Please use highlightElement now."),p(E)}Object.assign(e,{highlight:l,highlightAuto:g,highlightAll:y,highlightElement:p,highlightBlock:de,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:R,unregisterLanguage:T,listLanguages:I,getLanguage:L,registerAliases:F,autoDetection:P,inherit:Xe,addPlugin:z}),e.debugMode=function(){h=!1},e.safeMode=function(){h=!0},e.versionString=Tt,e.regex={concat:ae,lookahead:rn,either:$e,optional:zn,anyNumberOfTimes:Fn};for(const E in Ee)typeof Ee[E]=="object"&&ke.exports(Ee[E]);return Object.assign(e,Ee),e};var he=Rt({}),Lt=he;he.HighlightJS=he;he.default=he;const Y=$n(Lt);function Ot(e){const r=e.regex,o=r.concat(/[\p{L}_]/u,r.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,h={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},n={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},t=e.inherit(n,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),a=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[h]},{begin:/'/,end:/'/,contains:[h]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[n,a,i,t,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[n,t,a,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},h,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:r.concat(/</,r.lookahead(r.concat(o,r.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:o,relevance:0,starts:s}]},{className:"tag",begin:r.concat(/<\//,r.lookahead(r.concat(o,/>/))),contains:[{className:"name",begin:o,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const Je="[A-Za-z$_][0-9A-Za-z$_]*",Ct=["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"],kt=["true","false","null","undefined","NaN","Infinity"],hn=["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"],dn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],pn=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],It=["arguments","this","super","console","window","document","localStorage","module","global"],Bt=[].concat(pn,hn,dn);function $t(e){const r=e.regex,o=(A,{after:C})=>{const B="</"+A[0].slice(1);return A.input.indexOf(B,C)!==-1},u=Je,h={begin:"<>",end:"</>"},n=/<[A-Za-z0-9\\._:-]+\s*\/>/,t={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,C)=>{const B=A[0].length+A.index,H=A.input[B];if(H==="<"||H===","){C.ignoreMatch();return}H===">"&&(o(A,{after:B})||C.ignoreMatch());let W;const X=A.input.substring(B);if(W=X.match(/^\s*=/)){C.ignoreMatch();return}if((W=X.match(/^\s+extends\s+/))&&W.index===0){C.ignoreMatch();return}}},i={$pattern:Je,keyword:Ct,literal:kt,built_in:Bt,"variable.language":It},a="[0-9](_?[0-9])*",s=`\\.(${a})`,l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${l})((${s})|\\.)?|(${s}))[eE][+-]?(${a})\\b`},{begin:`\\b(${l})\\b((${s})\\b|\\.)?|(${s})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},g={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},d={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},m={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,{match:/\$\d+/},c];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(v)});const N=[].concat(m,f.contains),y=N.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(N)}]),D={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y},R={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,r.concat(u,"(",r.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},T={relevance:0,match:r.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:{_:[...hn,...dn]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},F={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(A){return r.concat("(?!",A.join("|"),")")}const U={match:r.concat(/\b/,P([...pn,"super","import"]),u,r.lookahead(/\(/)),className:"title.function",relevance:0},z={begin:r.concat(/\./,r.lookahead(r.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},K={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},de="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",E={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,r.lookahead(de)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:T},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,m,{match:/\$\d+/},c,T,{className:"attr",begin:u+r.lookahead(":"),relevance:0},E,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{className:"function",begin:de,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:h.begin,end:h.end},{match:n},{begin:t.begin,"on:begin":t.isTrulyOpeningTag,end:t.end}],subLanguage:"xml",contains:[{begin:t.begin,end:t.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,e.inherit(e.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},z,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},U,F,R,K,{match:/\$[(.]/}]}}function Ut(e){const r={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},o={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],h={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",keywords:{literal:u},contains:[r,o,e.QUOTE_STRING_MODE,h,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Pt(e){const r="true false yes no null",o="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},h={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},n={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,h]},t=e.inherit(n,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i="[0-9]{4}(-[0-9][0-9]){0,2}",a="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",s="(\\.[0-9]*)?",l="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",c={className:"number",begin:"\\b"+i+a+s+l+"\\b"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:r,relevance:0},g={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},d={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+o},{className:"type",begin:"!<"+o+">"},{className:"type",begin:"!"+o},{className:"type",begin:"!!"+o},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:r,keywords:{literal:r}},c,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,d,n],_=[...p];return _.pop(),_.push(t),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function xt(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Ht(e){const r=e.regex,o=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,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"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},s={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},l={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,l,s]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",g=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,d=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${g}))[eE][+-]?(${f})[jJ]?(?=${d})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${f})[jJ](?=${d})`}]},_={className:"comment",begin:r.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",a,p,c,e.HASH_COMMENT_MODE]}]};return s.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|->|\?)|=>/,contains:[a,p,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,o],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,o,/\s*/,/\(\s*/,o,/\s*\)/]},{match:[/\bclass/,/\s+/,o]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var le="[0-9](_*[0-9])*",me=`\\.(${le})`,ve="[0-9a-fA-F](_*[0-9a-fA-F])*",qe={className:"number",variants:[{begin:`(\\b(${le})((${me})|\\.)?|(${me}))[eE][+-]?(${le})[fFdD]?\\b`},{begin:`\\b(${le})((${me})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${me})[fFdD]?\\b`},{begin:`\\b(${le})[fFdD]\\b`},{begin:`\\b0[xX]((${ve})\\.?|(${ve})?\\.(${ve}))[pP][+-]?(${le})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ve})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function bn(e,r,o){return o===-1?"":e.replace(r,u=>bn(e,r,o-1))}function Ft(e){const r=e.regex,o="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=o+bn("(?:<"+o+"~~~(?:\\s*,\\s*"+o+"~~~)*>)?",/~~~/g,2),a={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"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},s={className:"meta",begin:"@"+o,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},l={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[r.concat(/(?!else)/,o),/\s+/,o,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,o],className:{1:"keyword",3:"title.class"},contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,qe,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},qe,s]}}function zt(e){const r=e.regex,o={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:r.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const h={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},t={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,h]};h.contains.push(t);const i={className:"",begin:/\\"/},a={className:"string",begin:/'/,end:/'/},s={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,o]},l=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],c=e.SHEBANG({binary:`(${l.join("|")})`,relevance:10}),f={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],d=["true","false"],p={match:/(\/[a-z._-]+)+/},_=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],m=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],v=["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"],N=["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"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:d,built_in:[..._,...m,"set","shopt",...v,...N]},contains:[c,e.SHEBANG(),f,s,e.HASH_COMMENT_MODE,n,p,t,i,a,o]}}function Gt(e){const r=e.regex,o=e.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},h={begin:/"/,end:/"/,contains:[{begin:/""/}]},n=["true","false","unknown"],t=["double precision","large object","with timezone","without timezone"],i=["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"],a=["add","asc","collation","desc","final","first","last","view"],s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],l=["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"],c=["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"],f=["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"],g=l,d=[...s,...a].filter(N=>!l.includes(N)),p={className:"variable",begin:/@[a-z0-9]+/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:r.concat(/\b/,r.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function v(N,{exceptions:y,when:D}={}){const R=D;return y=y||[],N.map(T=>T.match(/\|\d+$/)||y.includes(T)?T:R(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(d,{when:N=>N.length<3}),literal:n,type:i,built_in:c},contains:[{begin:r.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:d.concat(f),literal:n,type:i}},{className:"type",begin:r.either(...t)},m,p,u,h,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,o,_]}}Y.registerLanguage("xml",Ot);Y.registerLanguage("javascript",$t);Y.registerLanguage("json",Ut);Y.registerLanguage("yaml",Pt);Y.registerLanguage("plaintext",xt);Y.registerLanguage("python",Ht);Y.registerLanguage("java",Ft);Y.registerLanguage("bash",zt);Y.registerLanguage("sql",Gt);var M=(e=>(e.EQUAL="equal",e.DELETE="removed",e.ADD="added",e.EMPTY="empty",e))(M||{});const J="<code-diff-modified>",q="</code-diff-modified>",Kt=J.replace("<","<").replace(">",">"),Vt=q.replace("<","<").replace(">",">");function ce(e){return e===void 0?M.EQUAL:e.added?M.ADD:e.removed?M.DELETE:M.EQUAL}function Ne(e,r,o="word"){return typeof e=="undefined"?r:typeof r=="undefined"?e:(o==="char"?Ln:Cn)(e,r).filter(h=>ce(h)!==M.DELETE).map(h=>ce(h)===M.ADD?`${J}${h.value}${q}`:h.value).join("")}function _n(e,r){const o=new De.diff_match_patch,u=o.diff_linesToChars_(e,r),h=u.chars1,n=u.chars2,t=u.lineArray,i=o.diff_main(h,n,!1);return o.diff_charsToLines_(i,t),i.map(a=>{const[s,l]=a;return{count:l.trim().split(`
|
|
7
|
+
https://github.com/highlightjs/highlight.js/issues/2277`),H=E,B=A),C===void 0&&(C=!0);const W={code:B,language:H};K("before:highlight",W);const X=W.result?W.result:c(W.language,W.code,C);return X.code=W.code,K("after:highlight",X),X}function c(E,A,C,B){const H=Object.create(null);function W(w,S){return w.keywords[S]}function X(){if(!O.keywords){G.addText(x);return}let w=0;O.keywordPatternRe.lastIndex=0;let S=O.keywordPatternRe.exec(x),k="";for(;S;){k+=x.substring(w,S.index);const $=te.case_insensitive?S[0].toLowerCase():S[0],V=W(O,$);if(V){const[j,An]=V;if(G.addText(k),k="",H[$]=(H[$]||0)+1,H[$]<=Dt&&(_e+=An),j.startsWith("_"))k+=S[0];else{const Tn=te.classNameAliases[j]||j;G.addKeyword(S[0],Tn)}}else k+=S[0];w=O.keywordPatternRe.lastIndex,S=O.keywordPatternRe.exec(x)}k+=x.substring(w),G.addText(k)}function pe(){if(x==="")return;let w=null;if(typeof O.subLanguage=="string"){if(!r[O.subLanguage]){G.addText(x);return}w=c(O.subLanguage,x,!0,ze[O.subLanguage]),ze[O.subLanguage]=w._top}else w=g(x,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(_e+=w.relevance),G.addSublanguage(w._emitter,w.language)}function Q(){O.subLanguage!=null?pe():X(),x=""}function ne(w,S){let k=1;const $=S.length-1;for(;k<=$;){if(!w._emit[k]){k++;continue}const V=te.classNameAliases[w[k]]||w[k],j=S[k];V?G.addKeyword(j,V):(x=j,X(),x=""),k++}}function xe(w,S){return w.scope&&typeof w.scope=="string"&&G.openNode(te.classNameAliases[w.scope]||w.scope),w.beginScope&&(w.beginScope._wrap?(G.addKeyword(x,te.classNameAliases[w.beginScope._wrap]||w.beginScope._wrap),x=""):w.beginScope._multi&&(ne(w.beginScope,S),x="")),O=Object.create(w,{parent:{value:O}}),O}function He(w,S,k){let $=Kn(w.endRe,k);if($){if(w["on:end"]){const V=new Ve(w);w["on:end"](S,V),V.isMatchIgnored&&($=!1)}if($){for(;w.endsParent&&w.parent;)w=w.parent;return w}}if(w.endsWithParent)return He(w.parent,S,k)}function vn(w){return O.matcher.regexIndex===0?(x+=w[0],1):(Se=!0,0)}function yn(w){const S=w[0],k=w.rule,$=new Ve(k),V=[k.__beforeBegin,k["on:begin"]];for(const j of V)if(j&&(j(w,$),$.isMatchIgnored))return vn(S);return k.skip?x+=S:(k.excludeBegin&&(x+=S),Q(),!k.returnBegin&&!k.excludeBegin&&(x=S)),xe(k,w),k.returnBegin?0:S.length}function wn(w){const S=w[0],k=A.substring(w.index),$=He(O,w,k);if(!$)return je;const V=O;O.endScope&&O.endScope._wrap?(Q(),G.addKeyword(S,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Q(),ne(O.endScope,w)):V.skip?x+=S:(V.returnEnd||V.excludeEnd||(x+=S),Q(),V.excludeEnd&&(x=S));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(_e+=O.relevance),O=O.parent;while(O!==$.parent);return $.starts&&xe($.starts,w),V.returnEnd?0:S.length}function Nn(){const w=[];for(let S=O;S!==te;S=S.parent)S.scope&&w.unshift(S.scope);w.forEach(S=>G.openNode(S))}let be={};function Fe(w,S){const k=S&&S[0];if(x+=w,k==null)return Q(),0;if(be.type==="begin"&&S.type==="end"&&be.index===S.index&&k===""){if(x+=A.slice(S.index,S.index+1),!h){const $=new Error(`0 width match regex (${E})`);throw $.languageName=E,$.badRule=be.rule,$}return 1}if(be=S,S.type==="begin")return yn(S);if(S.type==="illegal"&&!C){const $=new Error('Illegal lexeme "'+k+'" for mode "'+(O.scope||"<unnamed>")+'"');throw $.mode=O,$}else if(S.type==="end"){const $=wn(S);if($!==je)return $}if(S.type==="illegal"&&k==="")return 1;if(Te>1e5&&Te>S.index*3)throw new Error("potential infinite loop, way more iterations than matches");return x+=k,k.length}const te=L(E);if(!te)throw se(n.replace("{}",E)),new Error('Unknown language: "'+E+'"');const Mn=Mt(te);let Ae="",O=B||Mn;const ze={},G=new i.__emitter(i);Nn();let x="",_e=0,ie=0,Te=0,Se=!1;try{for(O.matcher.considerAll();;){Te++,Se?Se=!1:O.matcher.considerAll(),O.matcher.lastIndex=ie;const w=O.matcher.exec(A);if(!w)break;const S=A.substring(ie,w.index),k=Fe(S,w);ie=w.index+k}return Fe(A.substring(ie)),G.closeAllNodes(),G.finalize(),Ae=G.toHTML(),{language:E,value:Ae,relevance:_e,illegal:!1,_emitter:G,_top:O}}catch(w){if(w.message&&w.message.includes("Illegal"))return{language:E,value:Re(A),illegal:!0,relevance:0,_illegalBy:{message:w.message,index:ie,context:A.slice(ie-100,ie+100),mode:w.mode,resultSoFar:Ae},_emitter:G};if(h)return{language:E,value:Re(A),illegal:!1,relevance:0,errorRaised:w,_emitter:G,_top:O};throw w}}function f(E){const A={value:Re(E),illegal:!1,relevance:0,_top:t,_emitter:new i.__emitter(i)};return A._emitter.addText(E),A}function g(E,A){A=A||i.languages||Object.keys(r);const C=f(E),B=A.filter(L).filter(P).map(Q=>c(Q,E,!1));B.unshift(C);const H=B.sort((Q,ne)=>{if(Q.relevance!==ne.relevance)return ne.relevance-Q.relevance;if(Q.language&&ne.language){if(L(Q.language).supersetOf===ne.language)return 1;if(L(ne.language).supersetOf===Q.language)return-1}return 0}),[W,X]=H,pe=W;return pe.secondBest=X,pe}function d(E,A,C){const B=A&&o[A]||C;E.classList.add("hljs"),E.classList.add(`language-${B}`)}function p(E){let A=null;const C=s(E);if(a(C))return;if(K("before:highlightElement",{el:E,language:C}),E.children.length>0&&(i.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),i.throwUnescapedHTML))throw new St("One of your code blocks includes unescaped HTML.",E.innerHTML);A=E;const B=A.textContent,H=C?l(B,{language:C,ignoreIllegals:!0}):g(B);E.innerHTML=H.value,d(E,C,H.language),E.result={language:H.language,re:H.relevance,relevance:H.relevance},H.secondBest&&(E.secondBest={language:H.secondBest.language,relevance:H.secondBest.relevance}),K("after:highlightElement",{el:E,result:H,text:B})}function _(E){i=Xe(i,E)}const m=()=>{y(),oe("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),oe("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function y(){if(document.readyState==="loading"){N=!0;return}document.querySelectorAll(i.cssSelector).forEach(p)}function D(){N&&y()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function R(E,A){let C=null;try{C=A(e)}catch(B){if(se("Language definition for '{}' could not be registered.".replace("{}",E)),h)se(B);else throw B;C=t}C.name||(C.name=E),r[E]=C,C.rawDefinition=A.bind(null,e),C.aliases&&F(C.aliases,{languageName:E})}function T(E){delete r[E];for(const A of Object.keys(o))o[A]===E&&delete o[A]}function I(){return Object.keys(r)}function L(E){return E=(E||"").toLowerCase(),r[E]||r[o[E]]}function F(E,{languageName:A}){typeof E=="string"&&(E=[E]),E.forEach(C=>{o[C.toLowerCase()]=A})}function P(E){const A=L(E);return A&&!A.disableAutodetect}function U(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=A=>{E["before:highlightBlock"](Object.assign({block:A.el},A))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=A=>{E["after:highlightBlock"](Object.assign({block:A.el},A))})}function z(E){U(E),u.push(E)}function K(E,A){const C=E;u.forEach(function(B){B[C]&&B[C](A)})}function de(E){return oe("10.7.0","highlightBlock will be removed entirely in v12.0"),oe("10.7.0","Please use highlightElement now."),p(E)}Object.assign(e,{highlight:l,highlightAuto:g,highlightAll:y,highlightElement:p,highlightBlock:de,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:R,unregisterLanguage:T,listLanguages:I,getLanguage:L,registerAliases:F,autoDetection:P,inherit:Xe,addPlugin:z}),e.debugMode=function(){h=!1},e.safeMode=function(){h=!0},e.versionString=Tt,e.regex={concat:ae,lookahead:rn,either:$e,optional:zn,anyNumberOfTimes:Fn};for(const E in Ee)typeof Ee[E]=="object"&&ke.exports(Ee[E]);return Object.assign(e,Ee),e};var he=Rt({}),Lt=he;he.HighlightJS=he;he.default=he;const Y=$n(Lt);function Ot(e){const r=e.regex,o=r.concat(/[\p{L}_]/u,r.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,h={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},n={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},t=e.inherit(n,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),a=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[h]},{begin:/'/,end:/'/,contains:[h]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[n,a,i,t,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[n,t,a,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},h,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:r.concat(/</,r.lookahead(r.concat(o,r.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:o,relevance:0,starts:s}]},{className:"tag",begin:r.concat(/<\//,r.lookahead(r.concat(o,/>/))),contains:[{className:"name",begin:o,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const Je="[A-Za-z$_][0-9A-Za-z$_]*",Ct=["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"],kt=["true","false","null","undefined","NaN","Infinity"],hn=["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"],dn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],pn=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],It=["arguments","this","super","console","window","document","localStorage","module","global"],Bt=[].concat(pn,hn,dn);function $t(e){const r=e.regex,o=(A,{after:C})=>{const B="</"+A[0].slice(1);return A.input.indexOf(B,C)!==-1},u=Je,h={begin:"<>",end:"</>"},n=/<[A-Za-z0-9\\._:-]+\s*\/>/,t={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,C)=>{const B=A[0].length+A.index,H=A.input[B];if(H==="<"||H===","){C.ignoreMatch();return}H===">"&&(o(A,{after:B})||C.ignoreMatch());let W;const X=A.input.substring(B);if(W=X.match(/^\s*=/)){C.ignoreMatch();return}if((W=X.match(/^\s+extends\s+/))&&W.index===0){C.ignoreMatch();return}}},i={$pattern:Je,keyword:Ct,literal:kt,built_in:Bt,"variable.language":It},a="[0-9](_?[0-9])*",s=`\\.(${a})`,l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${l})((${s})|\\.)?|(${s}))[eE][+-]?(${a})\\b`},{begin:`\\b(${l})\\b((${s})\\b|\\.)?|(${s})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},g={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},d={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},m={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,{match:/\$\d+/},c];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(v)});const N=[].concat(m,f.contains),y=N.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(N)}]),D={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y},R={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,r.concat(u,"(",r.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},T={relevance:0,match:r.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:{_:[...hn,...dn]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},F={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(A){return r.concat("(?!",A.join("|"),")")}const U={match:r.concat(/\b/,P([...pn,"super","import"]),u,r.lookahead(/\(/)),className:"title.function",relevance:0},z={begin:r.concat(/\./,r.lookahead(r.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},K={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},de="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",E={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,r.lookahead(de)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:T},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,m,{match:/\$\d+/},c,T,{className:"attr",begin:u+r.lookahead(":"),relevance:0},E,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{className:"function",begin:de,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:h.begin,end:h.end},{match:n},{begin:t.begin,"on:begin":t.isTrulyOpeningTag,end:t.end}],subLanguage:"xml",contains:[{begin:t.begin,end:t.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,e.inherit(e.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},z,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},U,F,R,K,{match:/\$[(.]/}]}}function Ut(e){const r={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},o={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],h={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",keywords:{literal:u},contains:[r,o,e.QUOTE_STRING_MODE,h,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Pt(e){const r="true false yes no null",o="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},h={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},n={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,h]},t=e.inherit(n,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i="[0-9]{4}(-[0-9][0-9]){0,2}",a="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",s="(\\.[0-9]*)?",l="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",c={className:"number",begin:"\\b"+i+a+s+l+"\\b"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:r,relevance:0},g={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},d={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+o},{className:"type",begin:"!<"+o+">"},{className:"type",begin:"!"+o},{className:"type",begin:"!!"+o},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:r,keywords:{literal:r}},c,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,d,n],_=[...p];return _.pop(),_.push(t),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function xt(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Ht(e){const r=e.regex,o=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,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"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},s={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},l={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,l,s]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",g=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,d=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${g}))[eE][+-]?(${f})[jJ]?(?=${d})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${f})[jJ](?=${d})`}]},_={className:"comment",begin:r.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",a,p,c,e.HASH_COMMENT_MODE]}]};return s.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|->|\?)|=>/,contains:[a,p,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,o],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,o,/\s*/,/\(\s*/,o,/\s*\)/]},{match:[/\bclass/,/\s+/,o]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var le="[0-9](_*[0-9])*",me=`\\.(${le})`,ve="[0-9a-fA-F](_*[0-9a-fA-F])*",qe={className:"number",variants:[{begin:`(\\b(${le})((${me})|\\.)?|(${me}))[eE][+-]?(${le})[fFdD]?\\b`},{begin:`\\b(${le})((${me})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${me})[fFdD]?\\b`},{begin:`\\b(${le})[fFdD]\\b`},{begin:`\\b0[xX]((${ve})\\.?|(${ve})?\\.(${ve}))[pP][+-]?(${le})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ve})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function bn(e,r,o){return o===-1?"":e.replace(r,u=>bn(e,r,o-1))}function Ft(e){const r=e.regex,o="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=o+bn("(?:<"+o+"~~~(?:\\s*,\\s*"+o+"~~~)*>)?",/~~~/g,2),a={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"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},s={className:"meta",begin:"@"+o,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},l={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[r.concat(/(?!else)/,o),/\s+/,o,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,o],className:{1:"keyword",3:"title.class"},contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,qe,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},qe,s]}}function zt(e){const r=e.regex,o={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:r.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const h={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},t={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,h]};h.contains.push(t);const i={className:"",begin:/\\"/},a={className:"string",begin:/'/,end:/'/},s={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,o]},l=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],c=e.SHEBANG({binary:`(${l.join("|")})`,relevance:10}),f={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],d=["true","false"],p={match:/(\/[a-z._-]+)+/},_=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],m=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],v=["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"],N=["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"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:d,built_in:[..._,...m,"set","shopt",...v,...N]},contains:[c,e.SHEBANG(),f,s,e.HASH_COMMENT_MODE,n,p,t,i,a,o]}}function Gt(e){const r=e.regex,o=e.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},h={begin:/"/,end:/"/,contains:[{begin:/""/}]},n=["true","false","unknown"],t=["double precision","large object","with timezone","without timezone"],i=["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"],a=["add","asc","collation","desc","final","first","last","view"],s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],l=["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"],c=["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"],f=["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"],g=l,d=[...s,...a].filter(N=>!l.includes(N)),p={className:"variable",begin:/@[a-z0-9]+/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:r.concat(/\b/,r.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function v(N,{exceptions:y,when:D}={}){const R=D;return y=y||[],N.map(T=>T.match(/\|\d+$/)||y.includes(T)?T:R(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(d,{when:N=>N.length<3}),literal:n,type:i,built_in:c},contains:[{begin:r.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:d.concat(f),literal:n,type:i}},{className:"type",begin:r.either(...t)},m,p,u,h,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,o,_]}}Y.registerLanguage("xml",Ot);Y.registerLanguage("javascript",$t);Y.registerLanguage("json",Ut);Y.registerLanguage("yaml",Pt);Y.registerLanguage("plaintext",xt);Y.registerLanguage("python",Ht);Y.registerLanguage("java",Ft);Y.registerLanguage("bash",zt);Y.registerLanguage("sql",Gt);var M=(e=>(e.EQUAL="equal",e.DELETE="removed",e.ADD="added",e.EMPTY="empty",e))(M||{});const J="<code-diff-modified>",q="</code-diff-modified>",Kt=J.replace("<","<").replace(">",">"),Vt=q.replace("<","<").replace(">",">");function ce(e){return e===void 0?M.EQUAL:e.added?M.ADD:e.removed?M.DELETE:M.EQUAL}function Ne(e,r,o="word"){return typeof e=="undefined"?r:typeof r=="undefined"?e:(o==="char"?Ln:Cn)(e,r).filter(h=>ce(h)!==M.DELETE).map(h=>ce(h)===M.ADD?`${J}${h.value}${q}`:h.value).join("")}function _n(e,r){const o=new De.diff_match_patch,u=o.diff_linesToChars_(e,r),h=u.chars1,n=u.chars2,t=u.lineArray,i=o.diff_main(h,n,!1);return o.diff_charsToLines_(i,t),i.map(a=>{const[s,l]=a;return{count:l.replace(/\n$/,"").split(`
|
|
8
8
|
`).length,value:l,removed:s===De.DIFF_DELETE,added:s===De.DIFF_INSERT}})}function Z(e,r){if(!r.match(new RegExp(`(${J}|${q})`,"g")))return Y.highlight(r,{language:e}).value;let u=r;const h=r.replace(new RegExp(`(${J}|${q})`,"g"),""),n=document.createElement("div");n.innerHTML=Y.highlight(h,{language:e}).value;let t=!1;const i=a=>{a.childNodes.forEach(s=>{if(s.nodeType===Node.ELEMENT_NODE&&i(s),s.nodeType===Node.TEXT_NODE){if(!s.textContent)return;let l=s.textContent,c="";for(t&&(c=c+J);l.length;){if(u.startsWith(J)){u=u.slice(J.length),c=c+J,t=!0;continue}if(u.startsWith(q)){u=u.slice(q.length),c=c+q,t=!1;continue}const f=u.match(new RegExp(`(${J}|${q})`)),g=f&&f.index?f.index:u.length,d=Math.min(g,l.length);c=c+u.substring(0,d),u=u.slice(d),l=l.slice(d)}t&&(c=c+q),s.textContent=c}})};return i(n),n.innerHTML.replace(new RegExp(Kt,"g"),'<span class="x">').replace(new RegExp(Vt,"g"),"</span>")}function En(e){const r=(h,n)=>(h.match(new RegExp(n,"g"))||[]).length;let o=0,u=0;for(const h of e)h.added&&(o+=r(h.value.trim(),`
|
|
9
9
|
`)+1),h.removed&&(u+=r(h.value.trim(),`
|
|
10
10
|
`)+1);return{additionsNum:o,deletionsNum:u}}function Wt(e,r,o="plaintext",u="word",h=10){const n=()=>({type:M.EMPTY}),t=(p,_,m)=>({type:p,num:_,code:m}),i=_n(e,r);let a=0,s=0,l=!1;const c=[],f={changes:c,collector:[],stat:En(i)};for(let p=0;p<i.length;p++){if(l){l=!1;continue}const[_,m]=[i[p],i[p+1]],[v,N]=[ce(_),ce(m)],y=_.value.replace(/\n$/,"").split(`
|
package/dist/v3/index.es.js
CHANGED
|
@@ -4594,7 +4594,7 @@ function Dn(e, r) {
|
|
|
4594
4594
|
return o.diff_charsToLines_(i, t), i.map((a) => {
|
|
4595
4595
|
const [s, l] = a;
|
|
4596
4596
|
return {
|
|
4597
|
-
count: l.
|
|
4597
|
+
count: l.replace(/\n$/, "").split(`
|
|
4598
4598
|
`).length,
|
|
4599
4599
|
value: l,
|
|
4600
4600
|
removed: s === Pe.DIFF_DELETE,
|
package/dist/v3/index.umd.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
`),a=0,s=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;a<i.length;){var l=i[a].match(s);if(!l)throw new Error("Invalid patch string: "+i[a]);var c=new r.patch_obj;for(t.push(c),c.start1=parseInt(l[1],10),l[2]===""?(c.start1--,c.length1=1):l[2]=="0"?c.length1=0:(c.start1--,c.length1=parseInt(l[2],10)),c.start2=parseInt(l[3],10),l[4]===""?(c.start2--,c.length2=1):l[4]=="0"?c.length2=0:(c.start2--,c.length2=parseInt(l[4],10)),a++;a<i.length;){var f=i[a].charAt(0);try{var g=decodeURI(i[a].substring(1))}catch(d){throw new Error("Illegal escape in patch_fromText: "+g)}if(f=="-")c.diffs.push(new r.Diff(o,g));else if(f=="+")c.diffs.push(new r.Diff(u,g));else if(f==" ")c.diffs.push(new r.Diff(h,g));else{if(f=="@")break;if(f!=="")throw new Error('Invalid patch mode "'+f+'" in: '+g)}a++}}return t},r.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0},r.patch_obj.prototype.toString=function(){var n,t;this.length1===0?n=this.start1+",0":this.length1==1?n=this.start1+1:n=this.start1+1+","+this.length1,this.length2===0?t=this.start2+",0":this.length2==1?t=this.start2+1:t=this.start2+1+","+this.length2;for(var i=["@@ -"+n+" +"+t+` @@
|
|
5
5
|
`],a,s=0;s<this.diffs.length;s++){switch(this.diffs[s][0]){case u:a="+";break;case o:a="-";break;case h:a=" ";break}i[s+1]=a+encodeURI(this.diffs[s][1])+`
|
|
6
6
|
`}return i.join("").replace(/%20/g," ")},e.exports=r,e.exports.diff_match_patch=r,e.exports.DIFF_DELETE=o,e.exports.DIFF_INSERT=u,e.exports.DIFF_EQUAL=h})(ze);var De=ze.exports,Re={exports:{}};function Le(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(function(r){var o=e[r];typeof o=="object"&&!Object.isFrozen(o)&&Le(o)}),e}Re.exports=Le,Re.exports.default=Le;class Ge{constructor(r){r.data===void 0&&(r.data={}),this.data=r.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function Ke(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function ne(e,...r){const o=Object.create(null);for(const u in e)o[u]=e[u];return r.forEach(function(u){for(const h in u)o[h]=u[h]}),o}const Rn="</span>",Ve=e=>!!e.scope||e.sublanguage&&e.language,Ln=(e,{prefix:r})=>{if(e.includes(".")){const o=e.split(".");return[`${r}${o.shift()}`,...o.map((u,h)=>`${u}${"_".repeat(h+1)}`)].join(" ")}return`${r}${e}`};class On{constructor(r,o){this.buffer="",this.classPrefix=o.classPrefix,r.walk(this)}addText(r){this.buffer+=Ke(r)}openNode(r){if(!Ve(r))return;let o="";r.sublanguage?o=`language-${r.language}`:o=Ln(r.scope,{prefix:this.classPrefix}),this.span(o)}closeNode(r){Ve(r)&&(this.buffer+=Rn)}value(){return this.buffer}span(r){this.buffer+=`<span class="${r}">`}}const We=(e={})=>{const r={children:[]};return Object.assign(r,e),r};class Oe{constructor(){this.rootNode=We(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(r){this.top.children.push(r)}openNode(r){const o=We({scope:r});this.add(o),this.stack.push(o)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(r){return this.constructor._walk(r,this.rootNode)}static _walk(r,o){return typeof o=="string"?r.addText(o):o.children&&(r.openNode(o),o.children.forEach(u=>this._walk(r,u)),r.closeNode(o)),r}static _collapse(r){typeof r!="string"&&r.children&&(r.children.every(o=>typeof o=="string")?r.children=[r.children.join("")]:r.children.forEach(o=>{Oe._collapse(o)}))}}class Cn extends Oe{constructor(r){super(),this.options=r}addKeyword(r,o){r!==""&&(this.openNode(o),this.addText(r),this.closeNode())}addText(r){r!==""&&this.add(r)}addSublanguage(r,o){const u=r.root;u.sublanguage=!0,u.language=o,this.add(u)}toHTML(){return new On(this,this.options).value()}finalize(){return!0}}function fe(e){return e?typeof e=="string"?e:e.source:null}function Qe(e){return ie("(?=",e,")")}function kn(e){return ie("(?:",e,")*")}function In(e){return ie("(?:",e,")?")}function ie(...e){return e.map(o=>fe(o)).join("")}function Bn(e){const r=e[e.length-1];return typeof r=="object"&&r.constructor===Object?(e.splice(e.length-1,1),r):{}}function Ce(...e){return"("+(Bn(e).capture?"":"?:")+e.map(u=>fe(u)).join("|")+")"}function Ze(e){return new RegExp(e.toString()+"|").exec("").length-1}function $n(e,r){const o=e&&e.exec(r);return o&&o.index===0}const Un=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function ke(e,{joinWith:r}){let o=0;return e.map(u=>{o+=1;const h=o;let n=fe(u),t="";for(;n.length>0;){const i=Un.exec(n);if(!i){t+=n;break}t+=n.substring(0,i.index),n=n.substring(i.index+i[0].length),i[0][0]==="\\"&&i[1]?t+="\\"+String(Number(i[1])+h):(t+=i[0],i[0]==="("&&o++)}return t}).map(u=>`(${u})`).join(r)}const Pn=/\b\B/,Ye="[a-zA-Z]\\w*",Ie="[a-zA-Z_]\\w*",Xe="\\b\\d+(\\.\\d+)?",je="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Je="\\b(0b[01]+)",xn="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Hn=(e={})=>{const r=/^#![ ]*\//;return e.binary&&(e.begin=ie(r,/.*\b/,e.binary,/\b.*/)),ne({scope:"meta",begin:r,end:/$/,relevance:0,"on:begin":(o,u)=>{o.index!==0&&u.ignoreMatch()}},e)},ge={begin:"\\\\[\\s\\S]",relevance:0},Fn={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ge]},zn={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ge]},Gn={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/},pe=function(e,r,o={}){const u=ne({scope:"comment",begin:e,end:r,contains:[]},o);u.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const h=Ce("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 u.contains.push({begin:ie(/[ ]+/,"(",h,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),u},Kn=pe("//","$"),Vn=pe("/\\*","\\*/"),Wn=pe("#","$"),Qn={scope:"number",begin:Xe,relevance:0},Zn={scope:"number",begin:je,relevance:0},Yn={scope:"number",begin:Je,relevance:0},Xn={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[ge,{begin:/\[/,end:/\]/,relevance:0,contains:[ge]}]}]},jn={scope:"title",begin:Ye,relevance:0},Jn={scope:"title",begin:Ie,relevance:0},qn={begin:"\\.\\s*"+Ie,relevance:0};var be=Object.freeze({__proto__:null,MATCH_NOTHING_RE:Pn,IDENT_RE:Ye,UNDERSCORE_IDENT_RE:Ie,NUMBER_RE:Xe,C_NUMBER_RE:je,BINARY_NUMBER_RE:Je,RE_STARTERS_RE:xn,SHEBANG:Hn,BACKSLASH_ESCAPE:ge,APOS_STRING_MODE:Fn,QUOTE_STRING_MODE:zn,PHRASAL_WORDS_MODE:Gn,COMMENT:pe,C_LINE_COMMENT_MODE:Kn,C_BLOCK_COMMENT_MODE:Vn,HASH_COMMENT_MODE:Wn,NUMBER_MODE:Qn,C_NUMBER_MODE:Zn,BINARY_NUMBER_MODE:Yn,REGEXP_MODE:Xn,TITLE_MODE:jn,UNDERSCORE_TITLE_MODE:Jn,METHOD_GUARD:qn,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(r,o)=>{o.data._beginMatch=r[1]},"on:end":(r,o)=>{o.data._beginMatch!==r[1]&&o.ignoreMatch()}})}});function et(e,r){e.input[e.index-1]==="."&&r.ignoreMatch()}function nt(e,r){e.className!==void 0&&(e.scope=e.className,delete e.className)}function tt(e,r){r&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=et,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function rt(e,r){Array.isArray(e.illegal)&&(e.illegal=Ce(...e.illegal))}function it(e,r){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function st(e,r){e.relevance===void 0&&(e.relevance=1)}const at=(e,r)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const o=Object.assign({},e);Object.keys(e).forEach(u=>{delete e[u]}),e.keywords=o.keywords,e.begin=ie(o.beforeMatch,Qe(o.begin)),e.starts={relevance:0,contains:[Object.assign(o,{endsParent:!0})]},e.relevance=0,delete o.beforeMatch},ot=["of","and","for","in","not","or","if","then","parent","list","value"],lt="keyword";function qe(e,r,o=lt){const u=Object.create(null);return typeof e=="string"?h(o,e.split(" ")):Array.isArray(e)?h(o,e):Object.keys(e).forEach(function(n){Object.assign(u,qe(e[n],r,n))}),u;function h(n,t){r&&(t=t.map(i=>i.toLowerCase())),t.forEach(function(i){const a=i.split("|");u[a[0]]=[n,ct(a[0],a[1])]})}}function ct(e,r){return r?Number(r):ut(e)?0:1}function ut(e){return ot.includes(e.toLowerCase())}const en={},se=e=>{console.error(e)},nn=(e,...r)=>{console.log(`WARN: ${e}`,...r)},oe=(e,r)=>{en[`${e}/${r}`]||(console.log(`Deprecated as of ${e}. ${r}`),en[`${e}/${r}`]=!0)},_e=new Error;function tn(e,r,{key:o}){let u=0;const h=e[o],n={},t={};for(let i=1;i<=r.length;i++)t[i+u]=h[i],n[i+u]=!0,u+=Ze(r[i-1]);e[o]=t,e[o]._emit=n,e[o]._multi=!0}function ft(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw se("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),_e;if(typeof e.beginScope!="object"||e.beginScope===null)throw se("beginScope must be object"),_e;tn(e,e.begin,{key:"beginScope"}),e.begin=ke(e.begin,{joinWith:""})}}function gt(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw se("skip, excludeEnd, returnEnd not compatible with endScope: {}"),_e;if(typeof e.endScope!="object"||e.endScope===null)throw se("endScope must be object"),_e;tn(e,e.end,{key:"endScope"}),e.end=ke(e.end,{joinWith:""})}}function ht(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function dt(e){ht(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),ft(e),gt(e)}function pt(e){function r(t,i){return new RegExp(fe(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(i?"g":""))}class o{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(i,a){a.position=this.position++,this.matchIndexes[this.matchAt]=a,this.regexes.push([a,i]),this.matchAt+=Ze(i)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const i=this.regexes.map(a=>a[1]);this.matcherRe=r(ke(i,{joinWith:"|"}),!0),this.lastIndex=0}exec(i){this.matcherRe.lastIndex=this.lastIndex;const a=this.matcherRe.exec(i);if(!a)return null;const s=a.findIndex((c,f)=>f>0&&c!==void 0),l=this.matchIndexes[s];return a.splice(0,s),Object.assign(a,l)}}class u{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(i){if(this.multiRegexes[i])return this.multiRegexes[i];const a=new o;return this.rules.slice(i).forEach(([s,l])=>a.addRule(s,l)),a.compile(),this.multiRegexes[i]=a,a}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(i,a){this.rules.push([i,a]),a.type==="begin"&&this.count++}exec(i){const a=this.getMatcher(this.regexIndex);a.lastIndex=this.lastIndex;let s=a.exec(i);if(this.resumingScanAtSamePosition()&&!(s&&s.index===this.lastIndex)){const l=this.getMatcher(0);l.lastIndex=this.lastIndex+1,s=l.exec(i)}return s&&(this.regexIndex+=s.position+1,this.regexIndex===this.count&&this.considerAll()),s}}function h(t){const i=new u;return t.contains.forEach(a=>i.addRule(a.begin,{rule:a,type:"begin"})),t.terminatorEnd&&i.addRule(t.terminatorEnd,{type:"end"}),t.illegal&&i.addRule(t.illegal,{type:"illegal"}),i}function n(t,i){const a=t;if(t.isCompiled)return a;[nt,it,dt,at].forEach(l=>l(t,i)),e.compilerExtensions.forEach(l=>l(t,i)),t.__beforeBegin=null,[tt,rt,st].forEach(l=>l(t,i)),t.isCompiled=!0;let s=null;return typeof t.keywords=="object"&&t.keywords.$pattern&&(t.keywords=Object.assign({},t.keywords),s=t.keywords.$pattern,delete t.keywords.$pattern),s=s||/\w+/,t.keywords&&(t.keywords=qe(t.keywords,e.case_insensitive)),a.keywordPatternRe=r(s,!0),i&&(t.begin||(t.begin=/\B|\b/),a.beginRe=r(a.begin),!t.end&&!t.endsWithParent&&(t.end=/\B|\b/),t.end&&(a.endRe=r(a.end)),a.terminatorEnd=fe(a.end)||"",t.endsWithParent&&i.terminatorEnd&&(a.terminatorEnd+=(t.end?"|":"")+i.terminatorEnd)),t.illegal&&(a.illegalRe=r(t.illegal)),t.contains||(t.contains=[]),t.contains=[].concat(...t.contains.map(function(l){return bt(l==="self"?t:l)})),t.contains.forEach(function(l){n(l,a)}),t.starts&&n(t.starts,i),a.matcher=h(a),a}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=ne(e.classNameAliases||{}),n(e)}function rn(e){return e?e.endsWithParent||rn(e.starts):!1}function bt(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(r){return ne(e,{variants:null},r)})),e.cachedVariants?e.cachedVariants:rn(e)?ne(e,{starts:e.starts?ne(e.starts):null}):Object.isFrozen(e)?ne(e):e}var _t="11.7.0";class Et extends Error{constructor(r,o){super(r),this.name="HTMLInjectionError",this.html=o}}const Be=Ke,sn=ne,an=Symbol("nomatch"),mt=7;var he=function(e){const r=Object.create(null),o=Object.create(null),u=[];let h=!0;const n="Could not find the language '{}', did you forget to load/include a language module?",t={disableAutodetect:!0,name:"Plain text",contains:[]};let i={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Cn};function a(E){return i.noHighlightRe.test(E)}function s(E){let A=E.className+" ";A+=E.parentNode?E.parentNode.className:"";const C=i.languageDetectRe.exec(A);if(C){const B=L(C[1]);return B||(nn(n.replace("{}",C[1])),nn("Falling back to no-highlight mode for this block.",E)),B?C[1]:"no-highlight"}return A.split(/\s+/).find(B=>a(B)||L(B))}function l(E,A,C){let B="",H="";typeof A=="object"?(B=E,C=A.ignoreIllegals,H=A.language):(oe("10.7.0","highlight(lang, code, ...args) has been deprecated."),oe("10.7.0",`Please use highlight(code, options) instead.
|
|
7
|
-
https://github.com/highlightjs/highlight.js/issues/2277`),H=E,B=A),C===void 0&&(C=!0);const W={code:B,language:H};K("before:highlight",W);const j=W.result?W.result:c(W.language,W.code,C);return j.code=W.code,K("after:highlight",j),j}function c(E,A,C,B){const H=Object.create(null);function W(w,S){return w.keywords[S]}function j(){if(!O.keywords){G.addText(x);return}let w=0;O.keywordPatternRe.lastIndex=0;let S=O.keywordPatternRe.exec(x),k="";for(;S;){k+=x.substring(w,S.index);const $=re.case_insensitive?S[0].toLowerCase():S[0],V=W(O,$);if(V){const[ee,pr]=V;if(G.addText(k),k="",H[$]=(H[$]||0)+1,H[$]<=mt&&(Me+=pr),ee.startsWith("_"))k+=S[0];else{const br=re.classNameAliases[ee]||ee;G.addKeyword(S[0],br)}}else k+=S[0];w=O.keywordPatternRe.lastIndex,S=O.keywordPatternRe.exec(x)}k+=x.substring(w),G.addText(k)}function we(){if(x==="")return;let w=null;if(typeof O.subLanguage=="string"){if(!r[O.subLanguage]){G.addText(x);return}w=c(O.subLanguage,x,!0,En[O.subLanguage]),En[O.subLanguage]=w._top}else w=g(x,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(Me+=w.relevance),G.addSublanguage(w._emitter,w.language)}function Z(){O.subLanguage!=null?we():j(),x=""}function te(w,S){let k=1;const $=S.length-1;for(;k<=$;){if(!w._emit[k]){k++;continue}const V=re.classNameAliases[w[k]]||w[k],ee=S[k];V?G.addKeyword(ee,V):(x=ee,j(),x=""),k++}}function pn(w,S){return w.scope&&typeof w.scope=="string"&&G.openNode(re.classNameAliases[w.scope]||w.scope),w.beginScope&&(w.beginScope._wrap?(G.addKeyword(x,re.classNameAliases[w.beginScope._wrap]||w.beginScope._wrap),x=""):w.beginScope._multi&&(te(w.beginScope,S),x="")),O=Object.create(w,{parent:{value:O}}),O}function bn(w,S,k){let $=$n(w.endRe,k);if($){if(w["on:end"]){const V=new Ge(w);w["on:end"](S,V),V.isMatchIgnored&&($=!1)}if($){for(;w.endsParent&&w.parent;)w=w.parent;return w}}if(w.endsWithParent)return bn(w.parent,S,k)}function ur(w){return O.matcher.regexIndex===0?(x+=w[0],1):(Pe=!0,0)}function fr(w){const S=w[0],k=w.rule,$=new Ge(k),V=[k.__beforeBegin,k["on:begin"]];for(const ee of V)if(ee&&(ee(w,$),$.isMatchIgnored))return ur(S);return k.skip?x+=S:(k.excludeBegin&&(x+=S),Z(),!k.returnBegin&&!k.excludeBegin&&(x=S)),pn(k,w),k.returnBegin?0:S.length}function gr(w){const S=w[0],k=A.substring(w.index),$=bn(O,w,k);if(!$)return an;const V=O;O.endScope&&O.endScope._wrap?(Z(),G.addKeyword(S,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Z(),te(O.endScope,w)):V.skip?x+=S:(V.returnEnd||V.excludeEnd||(x+=S),Z(),V.excludeEnd&&(x=S));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(Me+=O.relevance),O=O.parent;while(O!==$.parent);return $.starts&&pn($.starts,w),V.returnEnd?0:S.length}function hr(){const w=[];for(let S=O;S!==re;S=S.parent)S.scope&&w.unshift(S.scope);w.forEach(S=>G.openNode(S))}let Ne={};function _n(w,S){const k=S&&S[0];if(x+=w,k==null)return Z(),0;if(Ne.type==="begin"&&S.type==="end"&&Ne.index===S.index&&k===""){if(x+=A.slice(S.index,S.index+1),!h){const $=new Error(`0 width match regex (${E})`);throw $.languageName=E,$.badRule=Ne.rule,$}return 1}if(Ne=S,S.type==="begin")return fr(S);if(S.type==="illegal"&&!C){const $=new Error('Illegal lexeme "'+k+'" for mode "'+(O.scope||"<unnamed>")+'"');throw $.mode=O,$}else if(S.type==="end"){const $=gr(S);if($!==an)return $}if(S.type==="illegal"&&k==="")return 1;if(Ue>1e5&&Ue>S.index*3)throw new Error("potential infinite loop, way more iterations than matches");return x+=k,k.length}const re=L(E);if(!re)throw se(n.replace("{}",E)),new Error('Unknown language: "'+E+'"');const dr=pt(re);let $e="",O=B||dr;const En={},G=new i.__emitter(i);hr();let x="",Me=0,ae=0,Ue=0,Pe=!1;try{for(O.matcher.considerAll();;){Ue++,Pe?Pe=!1:O.matcher.considerAll(),O.matcher.lastIndex=ae;const w=O.matcher.exec(A);if(!w)break;const S=A.substring(ae,w.index),k=_n(S,w);ae=w.index+k}return _n(A.substring(ae)),G.closeAllNodes(),G.finalize(),$e=G.toHTML(),{language:E,value:$e,relevance:Me,illegal:!1,_emitter:G,_top:O}}catch(w){if(w.message&&w.message.includes("Illegal"))return{language:E,value:Be(A),illegal:!0,relevance:0,_illegalBy:{message:w.message,index:ae,context:A.slice(ae-100,ae+100),mode:w.mode,resultSoFar:$e},_emitter:G};if(h)return{language:E,value:Be(A),illegal:!1,relevance:0,errorRaised:w,_emitter:G,_top:O};throw w}}function f(E){const A={value:Be(E),illegal:!1,relevance:0,_top:t,_emitter:new i.__emitter(i)};return A._emitter.addText(E),A}function g(E,A){A=A||i.languages||Object.keys(r);const C=f(E),B=A.filter(L).filter(P).map(Z=>c(Z,E,!1));B.unshift(C);const H=B.sort((Z,te)=>{if(Z.relevance!==te.relevance)return te.relevance-Z.relevance;if(Z.language&&te.language){if(L(Z.language).supersetOf===te.language)return 1;if(L(te.language).supersetOf===Z.language)return-1}return 0}),[W,j]=H,we=W;return we.secondBest=j,we}function d(E,A,C){const B=A&&o[A]||C;E.classList.add("hljs"),E.classList.add(`language-${B}`)}function p(E){let A=null;const C=s(E);if(a(C))return;if(K("before:highlightElement",{el:E,language:C}),E.children.length>0&&(i.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),i.throwUnescapedHTML))throw new Et("One of your code blocks includes unescaped HTML.",E.innerHTML);A=E;const B=A.textContent,H=C?l(B,{language:C,ignoreIllegals:!0}):g(B);E.innerHTML=H.value,d(E,C,H.language),E.result={language:H.language,re:H.relevance,relevance:H.relevance},H.secondBest&&(E.secondBest={language:H.secondBest.language,relevance:H.secondBest.relevance}),K("after:highlightElement",{el:E,result:H,text:B})}function _(E){i=sn(i,E)}const m=()=>{y(),oe("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),oe("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function y(){if(document.readyState==="loading"){N=!0;return}document.querySelectorAll(i.cssSelector).forEach(p)}function D(){N&&y()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function R(E,A){let C=null;try{C=A(e)}catch(B){if(se("Language definition for '{}' could not be registered.".replace("{}",E)),h)se(B);else throw B;C=t}C.name||(C.name=E),r[E]=C,C.rawDefinition=A.bind(null,e),C.aliases&&F(C.aliases,{languageName:E})}function T(E){delete r[E];for(const A of Object.keys(o))o[A]===E&&delete o[A]}function I(){return Object.keys(r)}function L(E){return E=(E||"").toLowerCase(),r[E]||r[o[E]]}function F(E,{languageName:A}){typeof E=="string"&&(E=[E]),E.forEach(C=>{o[C.toLowerCase()]=A})}function P(E){const A=L(E);return A&&!A.disableAutodetect}function U(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=A=>{E["before:highlightBlock"](Object.assign({block:A.el},A))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=A=>{E["after:highlightBlock"](Object.assign({block:A.el},A))})}function z(E){U(E),u.push(E)}function K(E,A){const C=E;u.forEach(function(B){B[C]&&B[C](A)})}function ye(E){return oe("10.7.0","highlightBlock will be removed entirely in v12.0"),oe("10.7.0","Please use highlightElement now."),p(E)}Object.assign(e,{highlight:l,highlightAuto:g,highlightAll:y,highlightElement:p,highlightBlock:ye,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:R,unregisterLanguage:T,listLanguages:I,getLanguage:L,registerAliases:F,autoDetection:P,inherit:sn,addPlugin:z}),e.debugMode=function(){h=!1},e.safeMode=function(){h=!0},e.versionString=_t,e.regex={concat:ie,lookahead:Qe,either:Ce,optional:In,anyNumberOfTimes:kn};for(const E in be)typeof be[E]=="object"&&Re.exports(be[E]);return Object.assign(e,be),e}({}),vt=he;he.HighlightJS=he,he.default=he;const Y=Dn(vt);function yt(e){const r=e.regex,o=r.concat(/[\p{L}_]/u,r.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,h={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},n={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},t=e.inherit(n,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),a=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[h]},{begin:/'/,end:/'/,contains:[h]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[n,a,i,t,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[n,t,a,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},h,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:r.concat(/</,r.lookahead(r.concat(o,r.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:o,relevance:0,starts:s}]},{className:"tag",begin:r.concat(/<\//,r.lookahead(r.concat(o,/>/))),contains:[{className:"name",begin:o,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const on="[A-Za-z$_][0-9A-Za-z$_]*",wt=["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"],Nt=["true","false","null","undefined","NaN","Infinity"],ln=["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"],cn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],un=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Mt=["arguments","this","super","console","window","document","localStorage","module","global"],At=[].concat(un,ln,cn);function Tt(e){const r=e.regex,o=(A,{after:C})=>{const B="</"+A[0].slice(1);return A.input.indexOf(B,C)!==-1},u=on,h={begin:"<>",end:"</>"},n=/<[A-Za-z0-9\\._:-]+\s*\/>/,t={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,C)=>{const B=A[0].length+A.index,H=A.input[B];if(H==="<"||H===","){C.ignoreMatch();return}H===">"&&(o(A,{after:B})||C.ignoreMatch());let W;const j=A.input.substring(B);if(W=j.match(/^\s*=/)){C.ignoreMatch();return}if((W=j.match(/^\s+extends\s+/))&&W.index===0){C.ignoreMatch();return}}},i={$pattern:on,keyword:wt,literal:Nt,built_in:At,"variable.language":Mt},a="[0-9](_?[0-9])*",s=`\\.(${a})`,l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${l})((${s})|\\.)?|(${s}))[eE][+-]?(${a})\\b`},{begin:`\\b(${l})\\b((${s})\\b|\\.)?|(${s})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},g={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},d={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},m={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,{match:/\$\d+/},c];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(v)});const N=[].concat(m,f.contains),y=N.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(N)}]),D={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y},R={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,r.concat(u,"(",r.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},T={relevance:0,match:r.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:{_:[...ln,...cn]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},F={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(A){return r.concat("(?!",A.join("|"),")")}const U={match:r.concat(/\b/,P([...un,"super","import"]),u,r.lookahead(/\(/)),className:"title.function",relevance:0},z={begin:r.concat(/\./,r.lookahead(r.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},K={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},ye="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",E={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,r.lookahead(ye)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:T},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,m,{match:/\$\d+/},c,T,{className:"attr",begin:u+r.lookahead(":"),relevance:0},E,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{className:"function",begin:ye,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:h.begin,end:h.end},{match:n},{begin:t.begin,"on:begin":t.isTrulyOpeningTag,end:t.end}],subLanguage:"xml",contains:[{begin:t.begin,end:t.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,e.inherit(e.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},z,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},U,F,R,K,{match:/\$[(.]/}]}}function St(e){const r={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},o={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],h={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",keywords:{literal:u},contains:[r,o,e.QUOTE_STRING_MODE,h,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Dt(e){const r="true false yes no null",o="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},h={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},n={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,h]},t=e.inherit(n,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i="[0-9]{4}(-[0-9][0-9]){0,2}",a="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",s="(\\.[0-9]*)?",l="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",c={className:"number",begin:"\\b"+i+a+s+l+"\\b"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:r,relevance:0},g={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},d={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+o},{className:"type",begin:"!<"+o+">"},{className:"type",begin:"!"+o},{className:"type",begin:"!!"+o},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:r,keywords:{literal:r}},c,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,d,n],_=[...p];return _.pop(),_.push(t),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function Rt(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Lt(e){const r=e.regex,o=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,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"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},s={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},l={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,l,s]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",g=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,d=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${g}))[eE][+-]?(${f})[jJ]?(?=${d})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${f})[jJ](?=${d})`}]},_={className:"comment",begin:r.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",a,p,c,e.HASH_COMMENT_MODE]}]};return s.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|->|\?)|=>/,contains:[a,p,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,o],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,o,/\s*/,/\(\s*/,o,/\s*\)/]},{match:[/\bclass/,/\s+/,o]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var le="[0-9](_*[0-9])*",Ee=`\\.(${le})`,me="[0-9a-fA-F](_*[0-9a-fA-F])*",fn={className:"number",variants:[{begin:`(\\b(${le})((${Ee})|\\.)?|(${Ee}))[eE][+-]?(${le})[fFdD]?\\b`},{begin:`\\b(${le})((${Ee})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Ee})[fFdD]?\\b`},{begin:`\\b(${le})[fFdD]\\b`},{begin:`\\b0[xX]((${me})\\.?|(${me})?\\.(${me}))[pP][+-]?(${le})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${me})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function gn(e,r,o){return o===-1?"":e.replace(r,u=>gn(e,r,o-1))}function Ot(e){const r=e.regex,o="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=o+gn("(?:<"+o+"~~~(?:\\s*,\\s*"+o+"~~~)*>)?",/~~~/g,2),a={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"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},s={className:"meta",begin:"@"+o,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},l={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[r.concat(/(?!else)/,o),/\s+/,o,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,o],className:{1:"keyword",3:"title.class"},contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,fn,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},fn,s]}}function Ct(e){const r=e.regex,o={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:r.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const h={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},t={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,h]};h.contains.push(t);const i={className:"",begin:/\\"/},a={className:"string",begin:/'/,end:/'/},s={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,o]},l=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],c=e.SHEBANG({binary:`(${l.join("|")})`,relevance:10}),f={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],d=["true","false"],p={match:/(\/[a-z._-]+)+/},_=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],m=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],v=["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"],N=["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"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:d,built_in:[..._,...m,"set","shopt",...v,...N]},contains:[c,e.SHEBANG(),f,s,e.HASH_COMMENT_MODE,n,p,t,i,a,o]}}function kt(e){const r=e.regex,o=e.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},h={begin:/"/,end:/"/,contains:[{begin:/""/}]},n=["true","false","unknown"],t=["double precision","large object","with timezone","without timezone"],i=["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"],a=["add","asc","collation","desc","final","first","last","view"],s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],l=["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"],c=["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"],f=["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"],g=l,d=[...s,...a].filter(N=>!l.includes(N)),p={className:"variable",begin:/@[a-z0-9]+/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:r.concat(/\b/,r.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function v(N,{exceptions:y,when:D}={}){const R=D;return y=y||[],N.map(T=>T.match(/\|\d+$/)||y.includes(T)?T:R(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(d,{when:N=>N.length<3}),literal:n,type:i,built_in:c},contains:[{begin:r.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:d.concat(f),literal:n,type:i}},{className:"type",begin:r.either(...t)},m,p,u,h,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,o,_]}}Y.registerLanguage("xml",yt),Y.registerLanguage("javascript",Tt),Y.registerLanguage("json",St),Y.registerLanguage("yaml",Dt),Y.registerLanguage("plaintext",Rt),Y.registerLanguage("python",Lt),Y.registerLanguage("java",Ot),Y.registerLanguage("bash",Ct),Y.registerLanguage("sql",kt);var M=(e=>(e.EQUAL="equal",e.DELETE="removed",e.ADD="added",e.EMPTY="empty",e))(M||{});const J="<code-diff-modified>",q="</code-diff-modified>",It=J.replace("<","<").replace(">",">"),Bt=q.replace("<","<").replace(">",">");function ce(e){return e===void 0?M.EQUAL:e.added?M.ADD:e.removed?M.DELETE:M.EQUAL}function ve(e,r,o="word"){return typeof e=="undefined"?r:typeof r=="undefined"?e:(o==="char"?wn:Mn)(e,r).filter(h=>ce(h)!==M.DELETE).map(h=>ce(h)===M.ADD?`${J}${h.value}${q}`:h.value).join("")}function hn(e,r){const o=new De.diff_match_patch,u=o.diff_linesToChars_(e,r),h=u.chars1,n=u.chars2,t=u.lineArray,i=o.diff_main(h,n,!1);return o.diff_charsToLines_(i,t),i.map(a=>{const[s,l]=a;return{count:l.trim().split(`
|
|
7
|
+
https://github.com/highlightjs/highlight.js/issues/2277`),H=E,B=A),C===void 0&&(C=!0);const W={code:B,language:H};K("before:highlight",W);const j=W.result?W.result:c(W.language,W.code,C);return j.code=W.code,K("after:highlight",j),j}function c(E,A,C,B){const H=Object.create(null);function W(w,S){return w.keywords[S]}function j(){if(!O.keywords){G.addText(x);return}let w=0;O.keywordPatternRe.lastIndex=0;let S=O.keywordPatternRe.exec(x),k="";for(;S;){k+=x.substring(w,S.index);const $=re.case_insensitive?S[0].toLowerCase():S[0],V=W(O,$);if(V){const[ee,pr]=V;if(G.addText(k),k="",H[$]=(H[$]||0)+1,H[$]<=mt&&(Me+=pr),ee.startsWith("_"))k+=S[0];else{const br=re.classNameAliases[ee]||ee;G.addKeyword(S[0],br)}}else k+=S[0];w=O.keywordPatternRe.lastIndex,S=O.keywordPatternRe.exec(x)}k+=x.substring(w),G.addText(k)}function we(){if(x==="")return;let w=null;if(typeof O.subLanguage=="string"){if(!r[O.subLanguage]){G.addText(x);return}w=c(O.subLanguage,x,!0,En[O.subLanguage]),En[O.subLanguage]=w._top}else w=g(x,O.subLanguage.length?O.subLanguage:null);O.relevance>0&&(Me+=w.relevance),G.addSublanguage(w._emitter,w.language)}function Z(){O.subLanguage!=null?we():j(),x=""}function te(w,S){let k=1;const $=S.length-1;for(;k<=$;){if(!w._emit[k]){k++;continue}const V=re.classNameAliases[w[k]]||w[k],ee=S[k];V?G.addKeyword(ee,V):(x=ee,j(),x=""),k++}}function pn(w,S){return w.scope&&typeof w.scope=="string"&&G.openNode(re.classNameAliases[w.scope]||w.scope),w.beginScope&&(w.beginScope._wrap?(G.addKeyword(x,re.classNameAliases[w.beginScope._wrap]||w.beginScope._wrap),x=""):w.beginScope._multi&&(te(w.beginScope,S),x="")),O=Object.create(w,{parent:{value:O}}),O}function bn(w,S,k){let $=$n(w.endRe,k);if($){if(w["on:end"]){const V=new Ge(w);w["on:end"](S,V),V.isMatchIgnored&&($=!1)}if($){for(;w.endsParent&&w.parent;)w=w.parent;return w}}if(w.endsWithParent)return bn(w.parent,S,k)}function ur(w){return O.matcher.regexIndex===0?(x+=w[0],1):(Pe=!0,0)}function fr(w){const S=w[0],k=w.rule,$=new Ge(k),V=[k.__beforeBegin,k["on:begin"]];for(const ee of V)if(ee&&(ee(w,$),$.isMatchIgnored))return ur(S);return k.skip?x+=S:(k.excludeBegin&&(x+=S),Z(),!k.returnBegin&&!k.excludeBegin&&(x=S)),pn(k,w),k.returnBegin?0:S.length}function gr(w){const S=w[0],k=A.substring(w.index),$=bn(O,w,k);if(!$)return an;const V=O;O.endScope&&O.endScope._wrap?(Z(),G.addKeyword(S,O.endScope._wrap)):O.endScope&&O.endScope._multi?(Z(),te(O.endScope,w)):V.skip?x+=S:(V.returnEnd||V.excludeEnd||(x+=S),Z(),V.excludeEnd&&(x=S));do O.scope&&G.closeNode(),!O.skip&&!O.subLanguage&&(Me+=O.relevance),O=O.parent;while(O!==$.parent);return $.starts&&pn($.starts,w),V.returnEnd?0:S.length}function hr(){const w=[];for(let S=O;S!==re;S=S.parent)S.scope&&w.unshift(S.scope);w.forEach(S=>G.openNode(S))}let Ne={};function _n(w,S){const k=S&&S[0];if(x+=w,k==null)return Z(),0;if(Ne.type==="begin"&&S.type==="end"&&Ne.index===S.index&&k===""){if(x+=A.slice(S.index,S.index+1),!h){const $=new Error(`0 width match regex (${E})`);throw $.languageName=E,$.badRule=Ne.rule,$}return 1}if(Ne=S,S.type==="begin")return fr(S);if(S.type==="illegal"&&!C){const $=new Error('Illegal lexeme "'+k+'" for mode "'+(O.scope||"<unnamed>")+'"');throw $.mode=O,$}else if(S.type==="end"){const $=gr(S);if($!==an)return $}if(S.type==="illegal"&&k==="")return 1;if(Ue>1e5&&Ue>S.index*3)throw new Error("potential infinite loop, way more iterations than matches");return x+=k,k.length}const re=L(E);if(!re)throw se(n.replace("{}",E)),new Error('Unknown language: "'+E+'"');const dr=pt(re);let $e="",O=B||dr;const En={},G=new i.__emitter(i);hr();let x="",Me=0,ae=0,Ue=0,Pe=!1;try{for(O.matcher.considerAll();;){Ue++,Pe?Pe=!1:O.matcher.considerAll(),O.matcher.lastIndex=ae;const w=O.matcher.exec(A);if(!w)break;const S=A.substring(ae,w.index),k=_n(S,w);ae=w.index+k}return _n(A.substring(ae)),G.closeAllNodes(),G.finalize(),$e=G.toHTML(),{language:E,value:$e,relevance:Me,illegal:!1,_emitter:G,_top:O}}catch(w){if(w.message&&w.message.includes("Illegal"))return{language:E,value:Be(A),illegal:!0,relevance:0,_illegalBy:{message:w.message,index:ae,context:A.slice(ae-100,ae+100),mode:w.mode,resultSoFar:$e},_emitter:G};if(h)return{language:E,value:Be(A),illegal:!1,relevance:0,errorRaised:w,_emitter:G,_top:O};throw w}}function f(E){const A={value:Be(E),illegal:!1,relevance:0,_top:t,_emitter:new i.__emitter(i)};return A._emitter.addText(E),A}function g(E,A){A=A||i.languages||Object.keys(r);const C=f(E),B=A.filter(L).filter(P).map(Z=>c(Z,E,!1));B.unshift(C);const H=B.sort((Z,te)=>{if(Z.relevance!==te.relevance)return te.relevance-Z.relevance;if(Z.language&&te.language){if(L(Z.language).supersetOf===te.language)return 1;if(L(te.language).supersetOf===Z.language)return-1}return 0}),[W,j]=H,we=W;return we.secondBest=j,we}function d(E,A,C){const B=A&&o[A]||C;E.classList.add("hljs"),E.classList.add(`language-${B}`)}function p(E){let A=null;const C=s(E);if(a(C))return;if(K("before:highlightElement",{el:E,language:C}),E.children.length>0&&(i.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),i.throwUnescapedHTML))throw new Et("One of your code blocks includes unescaped HTML.",E.innerHTML);A=E;const B=A.textContent,H=C?l(B,{language:C,ignoreIllegals:!0}):g(B);E.innerHTML=H.value,d(E,C,H.language),E.result={language:H.language,re:H.relevance,relevance:H.relevance},H.secondBest&&(E.secondBest={language:H.secondBest.language,relevance:H.secondBest.relevance}),K("after:highlightElement",{el:E,result:H,text:B})}function _(E){i=sn(i,E)}const m=()=>{y(),oe("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),oe("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function y(){if(document.readyState==="loading"){N=!0;return}document.querySelectorAll(i.cssSelector).forEach(p)}function D(){N&&y()}typeof window!="undefined"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",D,!1);function R(E,A){let C=null;try{C=A(e)}catch(B){if(se("Language definition for '{}' could not be registered.".replace("{}",E)),h)se(B);else throw B;C=t}C.name||(C.name=E),r[E]=C,C.rawDefinition=A.bind(null,e),C.aliases&&F(C.aliases,{languageName:E})}function T(E){delete r[E];for(const A of Object.keys(o))o[A]===E&&delete o[A]}function I(){return Object.keys(r)}function L(E){return E=(E||"").toLowerCase(),r[E]||r[o[E]]}function F(E,{languageName:A}){typeof E=="string"&&(E=[E]),E.forEach(C=>{o[C.toLowerCase()]=A})}function P(E){const A=L(E);return A&&!A.disableAutodetect}function U(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=A=>{E["before:highlightBlock"](Object.assign({block:A.el},A))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=A=>{E["after:highlightBlock"](Object.assign({block:A.el},A))})}function z(E){U(E),u.push(E)}function K(E,A){const C=E;u.forEach(function(B){B[C]&&B[C](A)})}function ye(E){return oe("10.7.0","highlightBlock will be removed entirely in v12.0"),oe("10.7.0","Please use highlightElement now."),p(E)}Object.assign(e,{highlight:l,highlightAuto:g,highlightAll:y,highlightElement:p,highlightBlock:ye,configure:_,initHighlighting:m,initHighlightingOnLoad:v,registerLanguage:R,unregisterLanguage:T,listLanguages:I,getLanguage:L,registerAliases:F,autoDetection:P,inherit:sn,addPlugin:z}),e.debugMode=function(){h=!1},e.safeMode=function(){h=!0},e.versionString=_t,e.regex={concat:ie,lookahead:Qe,either:Ce,optional:In,anyNumberOfTimes:kn};for(const E in be)typeof be[E]=="object"&&Re.exports(be[E]);return Object.assign(e,be),e}({}),vt=he;he.HighlightJS=he,he.default=he;const Y=Dn(vt);function yt(e){const r=e.regex,o=r.concat(/[\p{L}_]/u,r.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),u=/[\p{L}0-9._:-]+/u,h={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},n={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},t=e.inherit(n,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),a=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:u,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[h]},{begin:/'/,end:/'/,contains:[h]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[n,a,i,t,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[n,t,a,i]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},h,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[a]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:r.concat(/</,r.lookahead(r.concat(o,r.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:o,relevance:0,starts:s}]},{className:"tag",begin:r.concat(/<\//,r.lookahead(r.concat(o,/>/))),contains:[{className:"name",begin:o,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const on="[A-Za-z$_][0-9A-Za-z$_]*",wt=["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"],Nt=["true","false","null","undefined","NaN","Infinity"],ln=["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"],cn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],un=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Mt=["arguments","this","super","console","window","document","localStorage","module","global"],At=[].concat(un,ln,cn);function Tt(e){const r=e.regex,o=(A,{after:C})=>{const B="</"+A[0].slice(1);return A.input.indexOf(B,C)!==-1},u=on,h={begin:"<>",end:"</>"},n=/<[A-Za-z0-9\\._:-]+\s*\/>/,t={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,C)=>{const B=A[0].length+A.index,H=A.input[B];if(H==="<"||H===","){C.ignoreMatch();return}H===">"&&(o(A,{after:B})||C.ignoreMatch());let W;const j=A.input.substring(B);if(W=j.match(/^\s*=/)){C.ignoreMatch();return}if((W=j.match(/^\s+extends\s+/))&&W.index===0){C.ignoreMatch();return}}},i={$pattern:on,keyword:wt,literal:Nt,built_in:At,"variable.language":Mt},a="[0-9](_?[0-9])*",s=`\\.(${a})`,l="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",c={className:"number",variants:[{begin:`(\\b(${l})((${s})|\\.)?|(${s}))[eE][+-]?(${a})\\b`},{begin:`\\b(${l})\\b((${s})\\b|\\.)?|(${s})\\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},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},g={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},d={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},p={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},m={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:u+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,{match:/\$\d+/},c];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(v)});const N=[].concat(m,f.contains),y=N.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(N)}]),D={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y},R={variants:[{match:[/class/,/\s+/,u,/\s+/,/extends/,/\s+/,r.concat(u,"(",r.concat(/\./,u),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,u],scope:{1:"keyword",3:"title.class"}}]},T={relevance:0,match:r.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:{_:[...ln,...cn]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},L={variants:[{match:[/function/,/\s+/,u,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[D],illegal:/%/},F={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(A){return r.concat("(?!",A.join("|"),")")}const U={match:r.concat(/\b/,P([...un,"super","import"]),u,r.lookahead(/\(/)),className:"title.function",relevance:0},z={begin:r.concat(/\./,r.lookahead(r.concat(u,/(?![0-9A-Za-z$_(])/))),end:u,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},K={match:[/get|set/,/\s+/,u,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},ye="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",E={match:[/const|var|let/,/\s+/,u,/\s*/,/=\s*/,/(async\s*)?/,r.lookahead(ye)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:T},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g,d,p,m,{match:/\$\d+/},c,T,{className:"attr",begin:u+r.lookahead(":"),relevance:0},E,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{className:"function",begin:ye,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:h.begin,end:h.end},{match:n},{begin:t.begin,"on:begin":t.isTrulyOpeningTag,end:t.end}],subLanguage:"xml",contains:[{begin:t.begin,end:t.end,skip:!0,contains:["self"]}]}]},L,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[D,e.inherit(e.TITLE_MODE,{begin:u,className:"title.function"})]},{match:/\.\.\./,relevance:0},z,{match:"\\$"+u,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},U,F,R,K,{match:/\$[(.]/}]}}function St(e){const r={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},o={match:/[{}[\],:]/,className:"punctuation",relevance:0},u=["true","false","null"],h={scope:"literal",beginKeywords:u.join(" ")};return{name:"JSON",keywords:{literal:u},contains:[r,o,e.QUOTE_STRING_MODE,h,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Dt(e){const r="true false yes no null",o="[\\w#;/?:@&=+$,.~*'()[\\]]+",u={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ ]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ ]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ ]|$)"}]},h={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},n={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,h]},t=e.inherit(n,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i="[0-9]{4}(-[0-9][0-9]){0,2}",a="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?",s="(\\.[0-9]*)?",l="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?",c={className:"number",begin:"\\b"+i+a+s+l+"\\b"},f={end:",",endsWithParent:!0,excludeEnd:!0,keywords:r,relevance:0},g={begin:/\{/,end:/\}/,contains:[f],illegal:"\\n",relevance:0},d={begin:"\\[",end:"\\]",contains:[f],illegal:"\\n",relevance:0},p=[u,{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+!"+o},{className:"type",begin:"!<"+o+">"},{className:"type",begin:"!"+o},{className:"type",begin:"!!"+o},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:r,keywords:{literal:r}},c,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,d,n],_=[...p];return _.pop(),_.push(t),f.contains=_,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:p}}function Rt(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function Lt(e){const r=e.regex,o=/[\p{XID_Start}_]\p{XID_Continue}*/u,u=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:u,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"]},a={className:"meta",begin:/^(>>>|\.\.\.) /},s={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},l={begin:/\{\{/,relevance:0},c={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,l,s]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,l,s]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,l,s]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",g=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,d=`\\b|${u.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${g}))[eE][+-]?(${f})[jJ]?(?=${d})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${f})[jJ](?=${d})`}]},_={className:"comment",begin:r.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",a,p,c,e.HASH_COMMENT_MODE]}]};return s.contains=[c,p,a],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|->|\?)|=>/,contains:[a,p,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},c,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,o],scope:{1:"keyword",3:"title.function"},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,o,/\s*/,/\(\s*/,o,/\s*\)/]},{match:[/\bclass/,/\s+/,o]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,m,c]}]}}var le="[0-9](_*[0-9])*",Ee=`\\.(${le})`,me="[0-9a-fA-F](_*[0-9a-fA-F])*",fn={className:"number",variants:[{begin:`(\\b(${le})((${Ee})|\\.)?|(${Ee}))[eE][+-]?(${le})[fFdD]?\\b`},{begin:`\\b(${le})((${Ee})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Ee})[fFdD]?\\b`},{begin:`\\b(${le})[fFdD]\\b`},{begin:`\\b0[xX]((${me})\\.?|(${me})?\\.(${me}))[pP][+-]?(${le})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${me})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function gn(e,r,o){return o===-1?"":e.replace(r,u=>gn(e,r,o-1))}function Ot(e){const r=e.regex,o="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",u=o+gn("(?:<"+o+"~~~(?:\\s*,\\s*"+o+"~~~)*>)?",/~~~/g,2),a={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"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},s={className:"meta",begin:"@"+o,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},l={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[r.concat(/(?!else)/,o),/\s+/,o,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,o],className:{1:"keyword",3:"title.class"},contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+u+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,fn,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},fn,s]}}function Ct(e){const r=e.regex,o={},u={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[o]}]};Object.assign(o,{className:"variable",variants:[{begin:r.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},u]});const h={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},n={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},t={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,o,h]};h.contains.push(t);const i={className:"",begin:/\\"/},a={className:"string",begin:/'/,end:/'/},s={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,o]},l=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],c=e.SHEBANG({binary:`(${l.join("|")})`,relevance:10}),f={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],d=["true","false"],p={match:/(\/[a-z._-]+)+/},_=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],m=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"],v=["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"],N=["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"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:d,built_in:[..._,...m,"set","shopt",...v,...N]},contains:[c,e.SHEBANG(),f,s,e.HASH_COMMENT_MODE,n,p,t,i,a,o]}}function kt(e){const r=e.regex,o=e.COMMENT("--","$"),u={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},h={begin:/"/,end:/"/,contains:[{begin:/""/}]},n=["true","false","unknown"],t=["double precision","large object","with timezone","without timezone"],i=["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"],a=["add","asc","collation","desc","final","first","last","view"],s=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],l=["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"],c=["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"],f=["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"],g=l,d=[...s,...a].filter(N=>!l.includes(N)),p={className:"variable",begin:/@[a-z0-9]+/},_={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},m={begin:r.concat(/\b/,r.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function v(N,{exceptions:y,when:D}={}){const R=D;return y=y||[],N.map(T=>T.match(/\|\d+$/)||y.includes(T)?T:R(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:v(d,{when:N=>N.length<3}),literal:n,type:i,built_in:c},contains:[{begin:r.either(...f),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:d.concat(f),literal:n,type:i}},{className:"type",begin:r.either(...t)},m,p,u,h,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,o,_]}}Y.registerLanguage("xml",yt),Y.registerLanguage("javascript",Tt),Y.registerLanguage("json",St),Y.registerLanguage("yaml",Dt),Y.registerLanguage("plaintext",Rt),Y.registerLanguage("python",Lt),Y.registerLanguage("java",Ot),Y.registerLanguage("bash",Ct),Y.registerLanguage("sql",kt);var M=(e=>(e.EQUAL="equal",e.DELETE="removed",e.ADD="added",e.EMPTY="empty",e))(M||{});const J="<code-diff-modified>",q="</code-diff-modified>",It=J.replace("<","<").replace(">",">"),Bt=q.replace("<","<").replace(">",">");function ce(e){return e===void 0?M.EQUAL:e.added?M.ADD:e.removed?M.DELETE:M.EQUAL}function ve(e,r,o="word"){return typeof e=="undefined"?r:typeof r=="undefined"?e:(o==="char"?wn:Mn)(e,r).filter(h=>ce(h)!==M.DELETE).map(h=>ce(h)===M.ADD?`${J}${h.value}${q}`:h.value).join("")}function hn(e,r){const o=new De.diff_match_patch,u=o.diff_linesToChars_(e,r),h=u.chars1,n=u.chars2,t=u.lineArray,i=o.diff_main(h,n,!1);return o.diff_charsToLines_(i,t),i.map(a=>{const[s,l]=a;return{count:l.replace(/\n$/,"").split(`
|
|
8
8
|
`).length,value:l,removed:s===De.DIFF_DELETE,added:s===De.DIFF_INSERT}})}function X(e,r){if(!r.match(new RegExp(`(${J}|${q})`,"g")))return Y.highlight(r,{language:e}).value;let u=r;const h=r.replace(new RegExp(`(${J}|${q})`,"g"),""),n=document.createElement("div");n.innerHTML=Y.highlight(h,{language:e}).value;let t=!1;const i=a=>{a.childNodes.forEach(s=>{if(s.nodeType===Node.ELEMENT_NODE&&i(s),s.nodeType===Node.TEXT_NODE){if(!s.textContent)return;let l=s.textContent,c="";for(t&&(c=c+J);l.length;){if(u.startsWith(J)){u=u.slice(J.length),c=c+J,t=!0;continue}if(u.startsWith(q)){u=u.slice(q.length),c=c+q,t=!1;continue}const f=u.match(new RegExp(`(${J}|${q})`)),g=f&&f.index?f.index:u.length,d=Math.min(g,l.length);c=c+u.substring(0,d),u=u.slice(d),l=l.slice(d)}t&&(c=c+q),s.textContent=c}})};return i(n),n.innerHTML.replace(new RegExp(It,"g"),'<span class="x">').replace(new RegExp(Bt,"g"),"</span>")}function dn(e){const r=(h,n)=>(h.match(new RegExp(n,"g"))||[]).length;let o=0,u=0;for(const h of e)h.added&&(o+=r(h.value.trim(),`
|
|
9
9
|
`)+1),h.removed&&(u+=r(h.value.trim(),`
|
|
10
10
|
`)+1);return{additionsNum:o,deletionsNum:u}}function $t(e,r,o="plaintext",u="word",h=10){const n=()=>({type:M.EMPTY}),t=(p,_,m)=>({type:p,num:_,code:m}),i=hn(e,r);let a=0,s=0,l=!1;const c=[],f={changes:c,collector:[],stat:dn(i)};for(let p=0;p<i.length;p++){if(l){l=!1;continue}const[_,m]=[i[p],i[p+1]],[v,N]=[ce(_),ce(m)],y=_.value.replace(/\n$/,"").split(`
|